All Things Pythonic

Alan Kay's EuroPython Keynote - Children First

by Guido van van Rossum

July 5, 2006



Summary

Two days ago, Alan Kay gave a very inspiring keynote here at EuroPython. I can't possibly do it justice but I want to describe it anyway.


Alan was still recovering from a recent bout of pneumonia, so instead of delivering the presentation in person, he talked to us from his living room in California over a video link provided by CERN. It was one of the best video presentations I've ever seen -- delivered in person it would have been even more stunning.

The entire presentation (slides and interactive demos) was done as a Squeak program, although I'm not sure about the details. I believe that the entire thing was running in a browser plugin -- quite an amazing feat if you ask me! http://www.squeakland.org has more info about the plugin.

Alan's subject was "Children First". He started out by telling some anecdotes about how children can learn math without realizing it. For example, a project for 6-year olds involved taking a shape and increasing its size by repeating the basic shape. Then they are asked to count how many squares they added; then do it again. By tabulating the results they (at least the smart ones) discover that the deltas form a series of consecutive odd numbers, and the sums form a series of squares. The amazing thing is that the whole project is presented as a kind of art project, not as a math class!

Alan then dove into a demo of the capabilities of Squeak. Turtle graphics are nice, but the more interesting property is of course that you can "open" any object, which shows a menu that lets you apply a wide range of commands to it, including a script that can make it move, respond to events or other objects, and so on. Great hilarity when Alan demonstrated that not only can we let any object on the screen start rotating, but you can recursively open the menu itself and make it rotate!

Back to a kids' science project: studying gravity, and repeating Galileo's experiment. Kids (this time about 10-11 years old I believe) climb a garage and attempt to measure with a stopwatch how long various objects take to fall. One girl comes up with the big idea: drop two objects simultaneously, which makes comparison much simpler. Kids are scientists!

And back to squeak -- using frames from a video recording of a ball falling, kids develop a program that helps them discover or verify the formula for speed under constant acceleration.

Other experiments that Alan showed (everything still running live in his browser!) included a simulation of ants discovering food, dropping feromones and following the trails, and more stuff that I can't remember right now.

Alan also talked about the $100 laptop project; he is on the OLPC advisory board. Apparently Python is specifically involved. There was little Python content to Alan's talk, which is fine by me -- Keynotes like this one are supposed to challenge or tickle the audience, not necessarily to confirm their world view. Alan did end by expressing the hope that a system like he demonstrated will be implemented in Python; apparently (or just for the occasion :-) Alan believes that Python has a much larger mindshare than Smalltalk or Squeak, and that because of this a similar environment in Python will have a greater chance of succeeding than the current Squeak one. Also, the $100 laptop already has Python, and Alan is of course hoping that a Squeak-like environment will be part of it, so this appears expedient. (At the Shuttleworth summit in April I believe Alan also suggested that Squeak is suffering from its extremely simple graphics model; apparently it cannot benefit from graphics accelerator cards because of its platform-independent architecture. [Update: this is incorrect, see responses below.] Python on the other hand already has bindings to OpenGL and DirectX, for example.)

In conclusion, Alan's talk was extremely inspiring to many of the attendees (including myself). Alan's primary message, "Children First", will ring true throughout the Python community.

Talk Back!

Have an opinion? Readers have already posted 14 comments about this weblog entry. Why not add yours?

RSS Feed

If you'd like to be notified whenever Guido van van Rossum adds a new entry to his weblog, subscribe to his RSS feed.

About the Blogger

Guido van Rossum is the creator of Python, one of the major programming languages on and off the web. The Python community refers to him as the BDFL (Benevolent Dictator For Life), a title straight from a Monty Python skit. He moved from the Netherlands to the USA in 1995, where he met his wife. Until July 2003 they lived in the northern Virginia suburbs of Washington, DC with their son Orlijn, who was born in 2001. They then moved to Silicon Valley where Guido now works for Google (spending 50% of his time on Python!).

This weblog entry is Copyright © 2006 Guido van van Rossum. All rights reserved.