[Pythonmac-SIG] Beginners Questions
Russell E Owen
owen@astro.washington.edu
Tue, 26 Nov 2002 09:37:23 -0800
Angela Blank wrote:
>...Currently most students are working with Mac OS 9.1, MacPython v.
>2.2.1. I would like do more with graphics and just the appearance
>of the output(GUI's).
> What do I need to do to get Tkinter to work? or is it possible to
>use pygame or something similar? Also, if all the students were
>using OS X, would we be better off?
I think you can still get Tkinter working under MacOS 9 using the
classic version of the interpreter (but definitely NOT the carbon
version!). It has some limitations (Menus are somewhat broken; file
events definitely are broken, which is only an issue if you are doing
networked GUIs).
For now this is probably your best best. When Python 2.3 is
available, I suggest you consider switching to MacOS X. Python
already runs pretty well on OS X, but installation is difficult, it
cannot read files with Mac line endings, and things are still
evolving (including the aqua version of Tk). OS X has some
advantages, including:
- unix, always a good thing to teach programmers
- a command line with readline support (command history)
- it can wxPython (a nice competitor to the Tkinter GUI package)
- it can probably run significantly more 3rd party Python packages than MacOS 9
I don't know about pygame, though I believe it was discussed on the
list awhile back (to Those in the Know: is there a searchable version
of the mailing list archives? All I've seen is the ability to look at
a month at a time).
-- Russell
P.S. This is radically off-topic, but if GUI is an issue, another
option is teaching Smalltalk. Squeak (free, includes the wonderful
Morphic graphical environment) and VisualWorks (very solid and
polished; the NC version is free) both run well on MacOS. It's a
language that shares many strengths with Python (including
simplicity, power and an excellent implementation of objects), the
GUI is totally integrated and the development environment is first
rate (editor, brwoser, debugger and object inspectors are always
instantly available).