Tkinter: The good, the bad, and the ugly!

rantingrick rantingrick at gmail.com
Tue Jan 18 20:41:15 EST 2011


On Jan 18, 7:19 pm, Corey Richardson <kb1... at aim.com> wrote:

> I for one am quite pleased with Tkinter up to this point. It allowed me
> to come in with extremely minimal GUI experience, and make something
> that worked with minimal effort. It was simple to understand, no
> concepts of slots and signals to learn.

I agree. I have written tons of code with Tkinter and i love both the
simplistic API and the geometry managers to name a few pros.


> If something else were to take it's place (Tkinter) I would hope that it
> is as easy to learn/use as Tkinter is.

I completely agree! And we should expect it to be even better!


> But I think this whole thread has gotten off topic. Why should Tkinter
> be replaced?

Well there are many good reasons and most are not apparent to those
with minimal to average Tkinter experience. My main beef with Tkinter
is that it is limited --both widget wise and extensible wise-- and
that we must recognize that web and mobile platforms are getting
bigger every day. We cannot ignore this fact. The GUI landscape is
changing fast and whilst desktop support will be needed for many years
to come, mobile and web must be addressed and addressed quickly!

> Why was it added there in the first place?

Well from what i understand (and feel free to correct me anyone) Guido
wanted a GUI both for batteries included and for ease of introductory
GUI programming. So he choose Tkinter because it would be both easy to
integrate and easy to use. And i totally agree with these ideas.
However that was circa 1990's and we are now in 2011. I think Tkinter
(whilst still quite useful) is well pasted it's prime. We must
consider keeping Pythons stdlib up to date. And doing that might mean
we need to make some very tough decisions. Guido brought about
Python3000 and i think he's on the right track, however more must be
done. Change while painful is always necessary. "Change with the times
or get left behind."


> What should
> replace it, and why?

Well that seems to be the burning question. Now, after considering all
the options i can't see anything that truly moves us forward to were
we "should" be. I do think wx would be a move "forward" however only a
very *small* move in the larger scope of things. We need to think
bigger, we need to think of mobile and web interfaces if we want
Python to compete in the next 10 years. So when considering anything
we must consider all three.

> Instead of arguing about little piddly details like
> the difference between a button and a hyperlink, just stick to the task
> at hand that you yourself presented.

You are absolutely correct Corey. Thanks for getting us back on topic!




More information about the Python-list mailing list