Scratch Programs at Digital Media and Learning Conference
A big takeaway that I got from the 2010 Digital Media Learning conference was that the Scratch programming language seems have really taken hold for creating interactivestories/animation/and games and for people to share and remix projects.
Scratch is a project of the Lifelong Kindergarten research group at MIT http://media.mit.edu/. It is available as a free download for either mac or pc at http://scratch.mit.edu/ and it is also a web-based community where 'scratchers' can share their work and their scripting. Scratch is based on a set of programming blocks that can be snapped together in different sequences and combinations. Control structures (like forever and repeat) are 'C' shaped to suggest that other blocks should be placed inside them --different color blocks for sound, motion, operatives, variables, oval shaped blocks for numbers etc. These blocks can be used to animate any number of characters (sprites) that you can choose from a menu of existing sprites, create yourself, import or remix from other projects. You also create stages or backdrops for the action. Place a group of blocks in the scripting area of the Scratch interface, click on a group of blocks and Scratch executes the code.
I thought this quote from the developers of Scratch was interesting as it speaks to the mission of my own organization: The Jacob Burns Film Center in a way that I have not seen previously from game programs:
"It has become common to refer to young people as "digital native". Indeed many young people are very comfortable sending text messages, playing online games, and browsing the Web. But though they interact with digital media all the time, few are able to create their own games, animations or simulations. It's as if they can "read" but cannot "write". Digital fluency requires the ability to design, create and invent. To do so you need to learn some kind of programming. The ability to program greatly expands the range of what you can create, it also expands the range of what you can learn: programming supports computational thinking and design strategies (such as modularization and iterative design) that carry over to non-programming domains" Scratch for All in Communications of the ACM, Nov 2009, vol 52, 11.
As an example, I have attached a screen shot showing the scratch interface, 15 sprites and 1 of 45 scripts that make up an animation called Underwater Problems. There is also a link to the completed animation.