Friday, August 8, 2008

Alice: a very cool way to teach programming

Alice is a freely available teaching tool designed to be a student's first exposure to object-oriented programming.

The idea reminds me of the Turtle Graphics of LOGO, that is, making the programming activity more "tangible" by leveraging a parallel with the real world, where (real) objects can interact. Anyway, about thirty years have passed since those seminal ideas were born and Alice is definitely up-to-date.

Alice is an innovative 3D programming environment that allows to learn fundamental programming concepts in the context of creating animated movies. In Alice, 3-D objects (people, animals and so on) populate a virtual world and students can create programs to animate these objects. I've particularly liked the way programs can be built: everything is very visual and you can do a lot of things by simply choosing actions and their objects. The environment is a sort of an extremely simplified IDE, which is great as the students can get accustomed to the environments they will use later. Also, it's easy to construct new actions by making sequences, loops and so on... that, is programming but without the hassle of pairing curly braces ;)

The current version of Alice (2.0) seems very promising but rather limited in what you can do after the basic skill has been acquired (which is quite a goal anyway!), however the next version promises to bring Java and the Sims-2 characters into play! I'm looking forward to that: if I have to teach basic programming skills, that's a tool I'd love to play with.
If you're a teacher, then I strongly suggest to check Alice out!
(it requires no installation and can run on Windows, Linux and Mac OS X)

No comments: