[Python-ideas] A GUI for beginners and experts alike

Steven D'Aprano steve at pearwood.info
Thu Aug 23 20:44:27 EDT 2018


Hi Mike, and welcome!

On Thu, Aug 23, 2018 at 06:49:48PM +0000, Mike Barnett wrote:

> Python has dropped the GUI ball, at least for beginners (in my opinion)

Sadly I think that GUIs is one area where Python has not excelled.


> While the Python language is awesomely compact, the GUI code is far 
> from compact.  Tkinter will create a nice looking GUI, but you've got 
> to be skilled to use it.  A student in their first week of Python 
> programming is not going to be working with tkinter.

I've been using Python for 20 years, and I'm still intimidated by 
Tkinter's learning curve, let alone products like wxPython.


> I think I've stumbled onto a framework that could work very well for 
> creating fairly complex custom-layout GUIs.
> 
> A package was released recently that uses this framework. It's called 
> PySimpleGUI<https://github.com/MikeTheWatchGuy/PySimpleGUI>.  It is a 
> wrapper for tkinter so that it'll run on almost any system Python will 
> run on.

Provided they have tkinter.


> I am not seeking fame, recognition, or any other personal gain.

Good, because you won't get it :-)


> I am, however, making a serious in my attempt to get serious Python 
> community members to weigh in on the best approach for getting 
> acceptance.

Acceptance for *what* precisely?

I appreciate your enthusiasm, but I think you forgot to actually make a 
proposal. Is this an attempt to draw people's attention to PySimpleGUI? 
To start a dialog about finding something better?

Do you want PySimpleGUI to be added to the Python standard library?

(If so, then I don't understand the comment about pip install and 
dropping the PySimpleGUI into people's project folder -- that isn't 
necessary if its a std lib module.)

If this is about adding PySimpleGUI to the std lib, then there's a 
few things to keep in mind:

* We don't conscript library authors; they have to volunteer, or at 
least agree, to donate their library to the Python std lib. Have you 
approached the author of PySimpleGUI to see what he or she has to think 
about this idea?

* Even if they are agreeable, we don't take software until it has proven 
itself, both that there is a need for it and that it is the right 
solution.

Being in the std lib is not for every project. It means following 
Python's release cycle, which is too slow for some projects and too fast 
for others. It also means being limited by some rather hard backwards- 
compatibility constraints, and a cultural reluctance to grow libraries 
beyond a certain size. Sometimes even adding a single function to a 
library can be controversial.

Projects in their early days that are still experimenting with their 
interfaces, or intending to add new functionality, are generally not a 
good fit to the std lib. There's a saying that the standard library is 
where good libraries go to die. While that's somewhat of an exaggeration 
(there's plenty of life left in the std lib) it is true that libraries 
in the std lib should offer a stable interface and functionality.


-- 
Steve


More information about the Python-ideas mailing list