[Tutor] Learning books

Alan Gauld alan.gauld at freenet.co.uk
Sat Dec 24 15:33:11 CET 2005

> Okay, so I have been reading some of the tutorials around the net on 
> Python. great stuff I might add but I am getting all confused with the 
> TCL, xwwidgets etc. I want to be able to program and I am just using the 
> standard IDE that comes with Python. Am I on the right track? 

Yes, when beginning stick to the most basic tools.

The wxWidgets stuff is the underbelly of wxPython but you should 
only need to worry about that once you get into quite deep GUI design.
Similarly Tcl/Tk is the underbelly of Tkinter and again you should rarely
ever  see Tcl nowadays in Python, apart from a deeply nested error 
message from Tkinter - where you can nearly always ignore the Tcl 

Other languages are useful to compare with, seeing the same basic 
structures in different languages can emphasise that the concepts are
the same, it's only syntax that changes. But only try to *learn* one 
lot of syntax at a time, otherwise you will get confused.

> with  C++ but heck, I just want to learn Python for now. I do want the 
> widgets to look nice sure. HELP!

wxWidgets is written in C++, as are most native code applications etc.
Unfortunately most of the documentation for wxPython still uses the 
C++ documents so you either have to work from the higher level Python 
documents or learn to read (at a superficial level) the C++ documents.
To do that you really need to have covered the basics of OOP - which 
is one thing I like about Tkinter, you don't need OOP to use it, although
OOP makes it easier...

But as a beginner most of your programs should be targetted at the 
command line. To try to build GUIs too soon will simply distract 
from  the fundamental proinciples of programming. And once you 
have a working command-line version its usually fairly easy to convert 
it for GUI use later, especially if you keep the display functions
(ie. print statements) separate from the logic.


Alan G
Author of the learn to program web tutor

More information about the Tutor mailing list