WxPython and TK

A

azrael

Today I found a quote from Guido.

wxPython is the best and most mature cross-platform GUI toolkit, given a number of constraints. The only reason wxPython isn't the standard Python GUI toolkit is that Tkinter was there first.
-- Guido van Rossum

OK, now. Isn't it maybe time to throw out TK once and for all? Python is missing one of the most important aspects of todays IT industry. GUI development native library (I mean a serious one).

If I would have gotten a dollar for every time I talked to someone in a company about why they dont use python for their products and I was served the answer "Well it kind of sucks in GUI development", I would be a millionaire.
 
I

Ian Kelly

Today I found a quote from Guido.

wxPython is the best and most mature cross-platform GUI toolkit, given a number of constraints. The only reason wxPython isn't the standard Python GUI toolkit is that Tkinter was there first.
-- Guido van Rossum

OK, now. Isn't it maybe time to throw out TK once and for all? Python is missing one of the most important aspects of todays IT industry. GUI development native library (I mean a serious one).

If I would have gotten a dollar for every time I talked to someone in a company about why they dont use python for their products and I was served the answer "Well it kind of sucks in GUI development", I would be a millionaire.

That may be the only reason Tkinter was originally added to the
standard library rather than wxPython, but there are plenty of reasons
against changing it now. Even ignoring for the moment the fact that
wxPython *still* doesn't work with Python 3 (2.5 years now since the
initial release of Python 3.0), here is a nice, recent summary of some
of the issues involved:

http://mail.python.org/pipermail/python-list/2011-January/1264955.html

Cheers,
Ian
 
G

Gregory Ewing

azrael said:
If I would have gotten a dollar for every time I talked to someone in a company
about why they dont use python for their products and I was served the answer
"Well it kind of sucks in GUI development", I would be a millionaire.

Even assuming that Python + wxPython sucks less than
Python + Tkinter (which is a matter of opinion), putting
wxPython in the standard library would change very little.
Anyone who wants to is already free to use wxPython now.
 
S

Steven D'Aprano

Today I found a quote from Guido.

wxPython is the best and most mature cross-platform GUI toolkit, given a
number of constraints. The only reason wxPython isn't the standard Python
GUI toolkit is that Tkinter was there first. -- Guido van Rossum

I'd like to see the context for this quote, because I don't think it is
correct. Even if Guido did say it :)

Other reasons contributing to why wxPython is not in the standard library:

- Differences in the licence. I understand the wxWidgets licence is more
restrictive than the Python licence.

- Size: wxPython is much larger than Tkinter. By one account, adding
wxPython would triple the size of the standard library.

- Tcl/Tk is likely to already be installed on most Linux systems, wxWidgets
may not be.

- Stability: at least a few years ago, it was quite easy to get wxPython to
seg fault.

- Pythonicity: Tkinter code is much closer to Pythonic style of code than
wxPython code, which is stylistically closer to C++.

- Release schedules: this is likely to be the fatal sticking block. To be
part of the standard library, wxPython would have to keep to Python's
release schedule.

If wxPython had been in the standard library, it would have been tied to
Python's relatively sedate schedule, and would not have been able to keep
up with wxWidgets.

OK, now. Isn't it maybe time to throw out TK once and for all? Python is
missing one of the most important aspects of todays IT industry. GUI
development native library (I mean a serious one).

Python is not missing any such thing. It has a plethora of GUI libraries:

wxPython
Tkinter
Pyjamas
Dabo
PyGTK
PythonCard
etc.

See http://wiki.python.org/moin/GuiProgramming

If I would have gotten a dollar for every time I talked to someone in a
company about why they dont use python for their products and I was served
the answer "Well it kind of sucks in GUI development", I would be a
millionaire.

What, these millions of companies don't have internet?

http://www.wxpython.org/download.php#stable
 
L

ln4

azrael said:
Today I found a quote from Guido.

wxPython is the best and most mature cross-platform GUI toolkit, given a
number of constraints. The only reason wxPython isn't the standard Python
GUI toolkit is that Tkinter was there first. -- Guido van Rossum

OK, now. Isn't it maybe time to throw out TK once and for all? Python is
missing one of the most important aspects of todays IT industry. GUI
development native library (I mean a serious one).

If I would have gotten a dollar for every time I talked to someone in a
company about why they dont use python for their products and I was served
the answer "Well it kind of sucks in GUI development", I would be a
millionaire.

This quote from guido is perhaps from many, many years ago. I don't like
wxpython so much. There is a much better solution available: using PyQt. Qt
libraries are cross platform too, mature code and very fast. Including lots
of tools for development without typing all the graphics code.
Taco
 
P

python

Azrael,
Isn't it maybe time to throw out TK once and for all? Python is missing one of the most important aspects of todays IT industry. GUI development native library (I mean a serious one).

Check out enhancements to Tk like Ttk included in Python 2.7 and 3.1 and
above.
http://www.tkdocs.com/tutorial/styles.html

Tk/Ttk is a much lighter weight GUI than wxPython and allows for
commercial quality, cross-platform GUI development.

Malcolm
 
P

Philip Semanchuk

Today I found a quote from Guido.

wxPython is the best and most mature cross-platform GUI toolkit, given a number of constraints. The only reason wxPython isn't the standard Python GUI toolkit is that Tkinter was there first.
-- Guido van Rossum

OK, now. Isn't it maybe time to throw out TK once and for all? Python is missing one of the most important aspects of todays IT industry. GUI development native library (I mean a serious one).

I don't see how removing TK from the standard library helps to fill the native GUI development library void that you see in
Python. I guess you're promoting wxPython as the library to fill that void. Getting rid of TK is one argument, adding wxPython is different argument. Are you advocating one, the other, or both?


If I would have gotten a dollar for every time I talked to someone in a company about why they dont use python for their products and I was served the answer "Well it kind of sucks in GUI development", I would be a millionaire.

And if I had a dollar for every "Let's replace TK with XYZ" post, I'd also be a millionaire.

I don't object to your argument; criticism of standard library is how it advances. But you're going to have to come up with a better argument than a 5+ year old quote from Guido and an exaggerated claim about why people don't use Python. The "best Python GUI library" conversation is repeated on this list at least once every few months. If the subject really interests you, I recommend that you read the archives and see some of the arguments for and against various GUI toolkits.

Cheers
Philip
 
G

gb

azrael said:
OK, now. Isn't it maybe time to throw out TK once and for all?

no, because Tk has a clear advantage over many other UI tolkits
Tk _was designed_ and it was designed by very competent people [1]

good luck with smurfs' hunting [2], ciao
gb

[1]: 1986-91 ACM's Grace Murray Hopper Awards
1986 William N. Joy, BSD Unix, Sun;
1987 John Ousterhout, Tcl/TK;
1988 Guy L. Steele, Scheme, Java;
1989 W. Daniel Hillis Thinking Machines;
1990 Richard Stallman Emacs, Gcc, FSF;
1991 Feng-hsiung Hsu Deep Blue;

[2] http://www.smurf.com/smurf.php/www/who/en/azrael
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

Forum statistics

Threads
473,755
Messages
2,569,534
Members
45,007
Latest member
obedient dusk

Latest Threads

Top