[Edu-sig] Pygame etc.
kirby.urner at gmail.com
Thu Jun 19 18:23:07 CEST 2008
> Schoolchildren in the One Laptop Per Child program are writing
> graphical games in PyGame.
Of course there's a lot of mythology about what schoolchildren are and
aren't doing out there in the misty mountains of Peru or whatever,
maybe getting Pippy booted up, reading about Fibonacci numbers,
Pascal's triangle, turning to generator-based versions.
Actually, learning about the stomach was a first exercise, once the
dish was working, our chief of security Krstić (erstwhile) nearly
breaking his neck during the install process (certainly risking it).
In actual fact, Pygame is a rather low level API. A lot of what
happens with Python is veteran C coders with SDL kudos or whatever,
find to their relief a relatively painless way to turn fast code into
an importable module within a "slow" interpreted RAD language.
But so much game action isn't about "superhuman speed" -- just plod
along with your human user, 99% wait cycles, and you'll be fine.
So it turns out to *not* be so oxymoronic, to have game bindings for a
relatively slow but intelligent snake, other scripting languages also.
(IronScheme?). Here's a good example of when it makes sense to form
a hybrid, in this case machine-facing system language with
coder-facing agile (doesn't get all coders off the hook from learning
low level languages -- just some of 'em).
Guido, recall, was in a busy environment full of technophiles,
familiar with ABC, when he went off to write Python on a Lisa. His
"end users" weren't children, but experienced computerists, maybe with
foci in sciences, mathematics... die-hard nerds already, geeks, not
This is what Arthur (previously on edu-sig, lots in the archive)
really *liked* about Python, and he let us know he'd fight any effort
to dumb it down, make it "kid friendly" in a condescending way (like
Alice in his view -- which I defended, because I'm a cartoon nut, love
the idea of PySpongeBob).
Better to have kids come to love adult tools of the trade was his
attitude -- even wait until they're adults if that's what it takes.**
But of course no one wants to wait that long. The dream has always
been: more computing power to those who want it, no matter how young.
We'll get XOs in utero (with mom's permission) if that's the genetic
predisposition of the fetus (i/o hooks to umbilical cord?) -- a
twisted geek fantasy I realize, OK to LOL.
More seriously, Sugar itself is a lot like a Pygame creation, a 2D
iPod-like interface with apps running as pie wedges, helping with the
metaphor of finite memory (in a ring), but sure why not run several.
This isn't a "toy" interface -- extremely futuristic in a direction I
think we *are* set to go, Sugar a brilliant first draft of itself
(with many forks and rebrandings as we go forward). Python is very
lucky to be getting such a workout, in the hands of so many masters of
Back to Python books, I think the web edition format is best during
the transition, as all those print statements are about to switch over
to functional format as in "print( jabber jabber)" -- intead of "print
jabber jabber". Why waste a lot of paper teaching newbies 2.x? Of
course they'll need to learn retro dialects once making the commitment
to Python more professionally (a huge "if" in many cases -- as it
should be), but there's no reason not to go with "state of the art" on
intro. That's a privilege of being a newbie: no ties to the past, no
obligations, free to cut to the head of the line in some ways (in
terms of using the most up to date code).
Actually, now is a good time for CS departments to watch something
special, as having a live, happy language also be such a moving target
(a morpher, a transformer), in terms of jumping a chasm, from ASCII to
Unicode, dropping cruft, sleeking out... that doesn't happen every
day. Most languages of Python's maturity are considered
"quasi-frozen" by the time they get to this point. "Shedding skin"
wasn't an option, but Guido had this pre-announced break point (good
model, now that we see the pay off).
So those teaching "anthropology of computer language cultures" or
whatever UC-type stuff, might use this as an opportunity, lots of
interesting zine articles (adapted for-credit papers) just begging to
be written (and published even!).
PS: the Europython list is making me homesick for Vilnius, I should
sign off rather than read about taxi cabs from the airport, but
actually no, I'd rather stay tuned, plan to visit her again someday.
** Arthur was a financial sector guy near what used to be called the
Pan Am building when we first met, had some beers. Much later we met
up with Lansky and his boys, different part of Manhatten, had great
free ranging talk on the meaning of liberal arts, C.P. Snow's chasm
etc. Arthur was a strong player, miss him on edu-sig (sudden heart
attack, like Russert).
>>> The book, in HTML and PDF format, and all the games are located here:
>>> I'm planning on doing more books at some point in the future after getting
>> First of all, thank you for your work and making this available.
>> I first saw a link to your book on del.icio.us and read *quickly*
>> through a few sections of a few chapters. My first reaction was "hmm,
>> no graphics ... I wonder how that would interest kids nowadays...".
>> However, after looking at the beginning of the last two chapters, I
>> thought that this approach could very well work.
>> Overall, it looked like a good progression of topics and something
>> very much worthwhile. Still, I think that it might be useful to
>> include at least one graphics based game. I would suggest to
>> implement the Othello program using pyglet (www.pyglet.org),
>> introducing it at the very end. Actually, I would have the kids
>> download the finished Othello project and pyglet at the beginning,
>> just to try it out, and point out that this is the game that they
>> would be writing on their own at the end.
>> Just a thought... I should read it more closely to give you some
>> more detailed feedback.
>>> Thank you!
>>> Al Sweigart
>>> Edu-sig mailing list
>>> Edu-sig at python.org
> Edward Cherlin
> End Poverty at a Profit by teaching children business
> "The best way to predict the future is to invent it."--Alan Kay
> Edu-sig mailing list
> Edu-sig at python.org
More information about the Edu-sig