Back when I was a young geek, I spent endless hours at a TRS-80, and later an Apple ][e, entering BASIC games from books, tweaking them to better understand how they worked, and eventually creating my own. This was a great way to learn computers and to bring the joy of creation to the process of learning how they worked.
I’ve been looking for a while for a way to replicate this for my own kids. They certainly won’t have the patience to sit and type in endless lines of BASIC code, nor should they have to. Our computers are far to capable and powerful for anybody to have to suffer through that sort of thing any more. But how can one learn the sort of logical thinking necessary for writing software without necessarily having to deal with all that fussy syntax and unrewarding rote copying?
MIT has an excellent answer to these questions in the form of Scratch, a visual programming environment cum social web site. The free download makes it easy for people to create multimedia projects, games, interactive art pieces, and the like, and then to post and share them for other people to see. The development environment looks like this:
The key innovation here is the visual language; it allows programmers to create pretty complicated logic in a very intuitive, visually obvious way. [Liam->] and [Abigail->] both picked it up very rapidly, and with a bit of coaching for the trickier bits, Liam had knocked together a very passable maze game within an hour or so. Better yet, because Scratch includes a website as in integral part of the system, he was able to upload his new game and get comments from other people using the system immediately. And here it is:
You can try his game out right here. If you have a young one you’d like to get some programming experience, or you’re just looking for a fun and easy prototyping tool, I heartily recommend Scratch. Thanks, MIT!