PySimpleGUI 6

(github.com)

103 points | by geophph 3 days ago ago

60 comments

  • GeorgeTirebiter a day ago ago

    I had heavily used PySimpleGUI in various work projects, and one day, when I had to run some older piece of code I had not run in a while, I get a notice that PySimpleGUI won't work, because was free, but nobody paid, and so, good luck! So I was piping mad, paid the 3-year or whatever the max license fee was, received a code, and THEN I was able to get my stuff to work, like it used to.

    LESSON: N E V E R Use code that can "stop working" until you pay ransom. N E V E R.

    At this point, it's irrelevant, because the LLMs can replace PySimpleGUI with PyQt etc so --- thanks but no thanks. I did like it because you could throw up something around a CLI and it looked at least presentable. Now, since 2025, nobody codes anymore, so ... seems to me, this PySimpleGUI 6 is just a bit of history.

    • ezst a day ago ago

      > never use code that can stop working until you pay ransom

      Funny because that describes pretty much exactly "cloud-first" software architecture, and people jumping on it in troves, unexplainably.

      • kergonath a day ago ago

        I suppose at some point enough of them will get burned, there will be a swing back and everything old will be new again, and so on and so on.

    • foolswisdom a day ago ago

      Given it was older code, were you not able to use an older version of pysimplegui that was freely available?

      • kergonath a day ago ago

        The problem with old Python code is that you then have to hunt for exactly the right version of the right libraries that can work together when the stars are aligned.

        • bdcravens a day ago ago

          Isn't that true of any packaging system? (npm, RubyGems, etc) Perhaps it's a bit easier, with the respective spec files, but it's still a bit of a hunt.

          • lmm a day ago ago

            No. Decent packaging systems like used in the Java world have deterministic or mostly-deterministic dependency resolution; semi-decent packaging systems like the ones you mention have lockfiles. Pre-uv Python packaging is uniquely awful.

            • acdha a day ago ago

              What do you prefer for lockfiles in the Java world? I’ve been trying to drag a couple of Maven teams into the 2010s after finding that they weren’t.

              • lmm a day ago ago

                You don't need them. Maven has deterministic dependency resolution (unless you use version ranges, but don't do that), so you just write your dependencies. (The flipside is you may want to get in the habit of doing something like versions:use-latest-releases as a regular housekeeping task so that you pick up any security updates, but that tends to be less of an issue in Java-land for other reasons)

                • acdha 11 hours ago ago

                  Why don’t I need them? I can’t make every third-party package do exact version pins and it’d be miserable if I could because then I couldn’t patch a transitive dependency faster than the upstream even if there’s a drop-in patch release which is 100% compatible.

                  Even if that worked, I’d also want hashes to avoid file modification, although that’s less of a concern for anything on Maven Central where the releases are immutable.

          • foolswisdom a day ago ago

            Depends on exactly how the project is managed. Older python tooling (`pip` module) doesn't have a native mechanism to differentiate between the spec (direct dependencies) and freeze (all dependencies, including transitive).

      • GeorgeTirebiter a day ago ago

        It was written in older version of PySimpleGUI -- it just stopped working! Pretty annoying.

    • PufPufPuf a day ago ago

      You didn't have a lockfile? Or a commit date you could use with --exclude-newer?

    • daemoncoder 15 hours ago ago

      I switched to Freesimplegui as a replacement.

  • crazybonkersai a day ago ago

    First they made it commercial. Then they realised there were not enough people prepared to pay for the project and shut down the project. But now it is back in free form?

    • geophph a day ago ago

      Seems it. A nice gesture of sorts to make it available to everyone after the updates made during the commercial phase.

  • dilawar a day ago ago

    This project started when I started my Ph.D.. I had a few interactions with the author when I added UI to some programs I wanted to showcase as TA.

    Every time I needed a GUI, I reached out to this library. Very beginner friendly. Good memories.

  • DonThomasitos a day ago ago

    It would be great to have a few screenshots on the readme.md or Doc pages to understand quickly what we‘re talking about.

    • harwoodr a day ago ago
      • nicce a day ago ago

        Should be in the README.md

        They kinda assume everyone knows it. Maybe the same thought process led to commercialization…

        • PapstJL4U 15 hours ago ago

          There is a Link in the About Section AND a Link in the readme.md

      • sinpif a day ago ago

        Maybe it's just because I'm more of a SwiftUI person, but in the example on the homepage, the event == 'Cancel' condition seems like a strange and fragile way to check if a certain button was pressed...

  • ilaksh a day ago ago

    I understand that people have had bad experiences and in general I don't want to pay for software components either. But it's weird how much hate there is against developers sometimes just for even trying to make money from their libraries.

    • GeorgeTirebiter a day ago ago

      If we used it more than just "ok look it works, we'll standardize on this internally" we'd have been happy to buy it, as we all other open source that has a donation option. We were just getting our feet wet, tho, and that's where it seemed burdensome; heck, if it phoned home every time it was used, it would have noticed we only used it about 3 times!

  • 999900000999 a day ago ago

    NiceGUI is MIT licensed. Not perfect , but no bizarre shenanigans when it comes to releasing commercial software.

    • roflcopter69 a day ago ago

      How has your experience with NiceGUI been like? I was thinking about giving it a try some day but didn't get the chance to do so.

      • trueno 16 hours ago ago

        it's chill, works well. way better than streamlit but out of box i'm not a huge fan of material ui in nicegui. but good lord it actually behaves like an app. events and state management via event queue between the browser are great. it just looks kinda ugly, but you can at least rapidly prototype a working web app really quickly with it. solid for office tooling. i've moved on from python apps though, i for whatever reason just woke up one day and decided im tired of runtime dependencies and i wanted compiled binaries serving up whatever.

  • mutagen a day ago ago

    Great to see this back as Open Source (LGPL 3.0). However, it points out the continuous need for proper funding for Open Source. Tough in ZIRP times, exponentially more difficult in more difficult economic times.

  • haunter a day ago ago

    Loaded question but why does Visual Basic 6.0 (both the IDE and the language) for modern languages / OSes doesn't exist anymore? I feel like it was way ahead of its time and there is no similar RAD and GUI design tool ever since

    • mewse-hn a day ago ago

      I was a VB6 user back in the 90s, I think there's a bunch of reasons:

      - Microsoft killed it: "let's rewrite the entire thing as VB.NET and make it completely different"

      - The UIs designed in the RAD weren't particularly responsive in the sense of "responsive design" - generally you couldn't resize a window and have all the elements resize correctly. When I learned Java Swing and elements were defined programmatically as percentages of their container that was kind of eye opening to me.

      - The small-time apps that were being developed with VB6 in the 90s are basically all web apps now.

    • chungy a day ago ago

      Delphi and Lazarus are still kicking, the latter is free and open source.

      I know you asked for "the language", but Object Pascal really ain't that bad to get around. If you were proficient in VB6, you should be fine adapting. :-)

    • kjellsbells 3 hours ago ago

      imho: because Microsoft fabulously, utterly dropped the ball. I suspect a combination of well-meaning intentions, Microsoft inanity, and their infamous internal politics helped.

      - VB apps weren't great from the point of view of internationalization, accessibility. Nor were they easy to adapt to multiple screen sizes. Hard to retrofit the ecosystem to make that right it seemed.

      - Microsoft decided to solve that problem by attacking a different one (symptomatic of their internal politics), by pushing .Net. That smelled to me of the victors of an internal battle (VB vs .Net) taking over the real estate of the VB ecosystem. However, the developers of VB apps got a vote, and they bailed.

      Microsoft's timing was also not great in that the web and mobile revolution arrived just as they were wrangling with all this and made a lot of the discussion irrelevant. No one starting a new app today is going to reach for VB.Net, they're going to default to a web app. If desktop perf is the target, they'll grit their teeth and try to figure out what desktop tookit (WinForms, XAML, MAUI etc) they should be using...yet more friction compared to webapps.

      It's a tragedy that scratch-your-own-itch desktop apps went away, but I can't say I am at all surprised.

    • ilaksh a day ago ago

      There have been and are many, many similar no code or low code tools. And actually Visual Basic 6 still works.

      What changed was the level of popularity and acceptance of those tools.

      I think it comes down to trends and programmers psychologically subconsciously not wanting to be mistaken for users.

      Because unfortunately what subconsciously is accepted as programming must involve colorful cryptic text. And if you are just dragging things around and setting parameters, you are not doing that, and someone might accuse you of being a user.

      Not saying it makes sense, but that seems to be the explanation.

      But look at WordPress, VB.NET, n8n, LabView, Unreal Engine, Houdini, Unity, etc.

    • overgard a day ago ago

      C# with WinForms and Visual Studio was a decent successor for a while, but for whatever reason microsoft decided to go all in on XAML and then a bunch of other half baked frameworks. I have no idea what to even use anymore if I wanted to make a native Windows app, it's a mess.

    • askvictor a day ago ago

      Have a look at https://anvil.works

    • parlortricks a day ago ago

      You could try Lazarus + FreePascal or even Delphi

  • bobajeff a day ago ago

    I remember looking into GUI libraries for Python a while back and this one and qt came up.

    However I ended up settling on making a Web UI served via FastAPI. I'm still happy about that decision but this one sounded really nice back then.

    • nomel a day ago ago

      WebUI (assuming you're mean python-WebUI) doesn't actually include any UI. This is why PySimpleGUI is nice...you can make a button!

      • bobajeff a day ago ago

        No, sorry, I wasn't referring to any library. I just meant a UI I made out of HTML, JavaScript and CSS.

  • whatever1 a day ago ago

    Today I wanted to build a simple ui that maps time across 3 time zones.

    After spending some time thinking about using it across my Mac and Linux machines, I just had Claude write an html file.

    Nice, simple runs everywhere.

    • HPsquared a day ago ago

      Local HTML files with embedded JavaScript are fantastic for mini portable apps. You can even load/save files with some finesse.

  • xenophonf a day ago ago

    I stopped using this when the dev did their rugpull and won't go back.

  • dartharva a day ago ago

    LOL, I remember this one being a famous traitor to FOSS by starting out as a community project and then closing doors to make money from it. Guess they weren't able to make any money after all. Karma in action.

    • matsemann a day ago ago

      Or it's just another example of why FOSS fails - people (like you) expect free labor and never want to pay for it. They tried to make it a sustainable project, and it would probably have died even earlier if they didn't.

      > For the last 5 years, PySimpleGUI offered free software with the hope of sustaining the project with donations. We appreciate the support we received, but the amount has been too small to support the project.

      • NewsaHackO a day ago ago

        I don't think this is a complete characterization of what happened. From looking at a previous thread (https://news.ycombinator.com/item?id=39369353), the owner curiously did not allow outside contributions to his GPL project. This is odd, especially if it seems like he was complaining about having issues with maintenance of the project. Then, after he tried to switch the license, he deleted/obfuscated the repo history. Even though it is GPL, because he had the "foresight" of not allowing outside contributions, he was able to take this action unilaterally. I suspect that the owner had his mind on commercialization from the very beginning, and was using the whole FOSS bit as a way to get free publicity before rugpulling.

      • Chris2048 17 hours ago ago

        > They tried to make it a sustainable project

        > with the hope of sustaining the project with donations.. the amount has been too small to support the project

        So shut it down, lock the repo, invite new maintainers indefinitely. It's only non-sustainable for the price the author is asking. It'll still be FOSS even if no longer maintainer by the original author, whether a new maintainer steps in or not.

        And if they want to fork it an create a commercial alt, no problem - anyone can!

        The problem arises, IMHO, when they develop (accept contributions) or propagate (lock-in) a FOSS project in good-will, then somehow leverage their position as a FOSS maintainer transform it to non-FOSS.

    • elteto a day ago ago

      And you say this as a prolific open source contributor I’m sure.

  • IshKebab a day ago ago

    Hmm apart from distribution (which is a pain to set up) I still don't think you can beat QtWidgets and QtCreator for simplicity of getting a professional GUI. It has a form editor that actually works. I think maybe the only one I've ever used. Then you can pretty much just click on buttons and add event handlers. Very easy to get going and it scales very far.

    There are a few downsides... there are better options than C++ these days (Rust most obviously), QtWidgets is in maintenance mode, it's a bit of a pain to make an installer from your app, and it doesn't really support modern styling.

    But I'd still pick it over this in a heartbeat.

    • NewsaHackO a day ago ago

      Yes, especially with AI unless the user has literally never programmed anything before, it seem actually easier to use Qt for something like this (honestly, it probably would be easier to just make a webapp if they have no experience)

  • ltbarcly3 a day ago ago

    I think AI coding has made these "we dumb down a real UI framework for you" libraries obsolete. Anyone can get a GTK or QT app up and running now. This isn't a criticism, they were very useful to build GUIs in the past, but now they are just obsolete and more likely to introduce bugs or limitations you can't work around than to help much.

    • sinpif a day ago ago

      Taken to an extreme, what's stopping us from going back to C? The security issues will be found and resolved, performance will be great and it will compile on all platforms that ever existed.

      • lmm a day ago ago

        > The security issues will be found and resolved

        Will they though?

      • ltbarcly3 a day ago ago

        well I think C is just a bad Rust now so yes, I think everything is going to get rewritten in rust.

    • marshray a day ago ago

      Is this a new form of gatekeeping?

      I.e., "too human-friendly to survive in the presence of The Great AI™".

      If so, where does that lead us?

      • hereme888 a day ago ago

        That's an aggressively negative over-interpretation of OP. Clearly not what was meant.

      • ltbarcly3 a day ago ago

        These libraries are not more human friendly. Humans can write GTK or win32 or QT or Cocoa code just fine. GUI frameworks are very complex and often have very in depth setup code that is required. It requires a huge investment to get an app up and running with a GUI framework, and AI makes setting that up approachable when it was a real challenge before.

        Have you ever written GUI code using one of the big GUI frameworks?

        • PapstJL4U 15 hours ago ago

          I, not the previous writer, have and PSG did exactly this. It made writting compact GUIs for smaller projects manageable without going into the deeps of GTK, win32 or QT.

          I tried a bunch of Frameworks and some were easier (PSG, Kivi) and others much harder.

    • huflungdung a day ago ago

      [dead]