[Chicago] python intro for 13 yo -- suggestions?

Jason R Huggins JRHuggins at thoughtworks.COM
Tue Jul 11 18:33:19 CEST 2006


"Michael Tobis" wrote on 07/11/2006 10:59:39 AM:
> "It is practically impossible to teach good programming to students
> that have had a prior exposure to BASIC: as potential programmers they
> are mentally mutilated beyond hope of regeneration."
>     - Edsger Dijkstra

Well, since I did admit to starting with BASIC, feel free to disregard 
anything else I say. :-)

> The design flaws of PHP and Javascript are not as severe as those of
> the BASIC circa 1970 to which Dijkstra refers, and they may or may not
> outweigh the benefits of instant motivation. Still, I have to
> disagree.

I think I'll agree and disagree with you. :-) I think the pedagogical 
tools available for Python are far superior to anything that's been 
created for JavaScript, if in fact, there *are* any pedagogical tools for 
JavaScript. :-) So, if the goal is finding a nice, slow-and-steady 
tutorial or textbook for introducing programming concepts, Python's got 
the goods in spades. Back to HyperTalk, I had "HyperTalk Programming" by 
Dan Shafer to guide me as I learned way back when. Most of the 
'pre-web-2.0' JavaScript books I've read are too-outdated now to be useful 
in the 'post-Ajax' world we live in today. And the Ajax/DTML books I've 
seen might be a bit too technical to be useful as tutorials/intros for 
novices. On the other hand, even considering its warts, the web client 
platform is a fun place to be these days. And with MochiKit, the 
heavily-influenced-by-Python JavaScript library, things are getting 
better.  Useful web stuff can be done with either JavaScript alone or 
(Python + JavaScript). So it's not an either/or thing.

> Python is intended as a learning language as well as a production
> language and we seem to agree it is a paragon of language design.
> Having all three in the same place has unique advantages.

I strongly agree. No arguments here! :-)

> Unfortunately, the educational aspects remain somewhat half-baked, but
> the right thing to do is to keep baking them, rather than steering
> kids to more awkward and shallower tools. 

One can argue that HyperTalk was equally [half-baked, awkward, and 
shallow][1]. :-)
[1]: 
http://groups.google.com/group/comp.sys.mac.hypercard/msg/d8a7f58ce7efef63?hl=en&

> There's active work on this,
> and there was a conference a few weeks ago that both Alan Kay and BDFL
> attended which was aimed at merging Python and Squeak.

I agree that would be cool. I also hear that [Firefox is merging (so to 
speak) with Python], too.
[2]: http://weblogs.mozillazine.org/roadmap/archives/008865.html

> Oh, and by the way,  Jason, <cue twinkly magic sounds> your wish is
> granted: http://pythoncard.sourceforge.net/

Yeah, I've seen PythonCard and have tried it... but it doesn't match 
HyperCard or TiddlyWiki in ease-of-use, fun-to-play-with-ness, or 
out-of-the-box utility. I think it's a side effect of PythonCard using 
wxPython as its GUI toolkit, which is cool, but I think a bit too 
technical for newbies. But then, again, that's just my opinion. :-)

- Jason


More information about the Chicago mailing list