Teaching programming to kids
By sundararajan on Jul 21, 2009
I've been experimenting/playing with programming tools for kids. I've two kids - 8 and 5 year old.
Great multimedia rich introduction to programming for kids. My son keeps playing with it! If you are after ease-of-use, this is probably the best choice. Available for download on Mac and Windows. If you have Squeak installed, you can get Scratch running on Linux as well (possibly with some audio problems). It is possible to export your Scratch projects as applets from your website
- Website: http://scratch.mit.edu
- Examples/Repository: Register @ scratch.mit.edu to download lots of great samples! You can view scratch programs online if you have Java plugin installed.
EToys is an tool to teach children a multimedia rich authoring environment and visual programming system. If you have OLPC laptop (or emulation environment for OLPC), it comes pre-installed with EToys. Or else you can download EToys for your platform. It is avaliable for Linux, Mac and Windows.
- Website: www.squeakland.org
- Examples: http://www.etoysillinois.org/
Although StarLogoTNG is described as "tool to create and understand simulations of complex systems", it can be used as a tool to teach programming. It supports 3D and it is cross-platform a (Java) tool.
- Website: http://education.mit.edu/drupal/starlogo-tng
- Tutorial video at http://education.mit.edu/starlogo-tng/tutorial-videos/. These videos describe slightly different interface. Menus/buttons have changed a bit in the recent version but it is still very useful.
- Examples: I am looking at Starlogo TNG Treasure Game Curriculum
This is an environment to teach programming in a 3D environment. This is a cross-platform (Java) tool.
- Website: http://www.alice.org.
- There is a very nice tutorial series of worlds within the tool.
Turtle Art activity is bundled with OLPC. If you don't have OLPC, you can use an emulator environment. For example, you can download VirtualBox and run OLPC inside it following the steps here. I run VirtualBox on Mac, Ubuntu and Windows XP.
- Website: http://wiki.laptop.org/go/Turtle_Art
- Examples: http://www.turtleart.org/
Want to work with source code?
So far, we looked at visual programming tools. But, if you think it is better to expose to source code ("they have to look at code at somepoint anyway, let them see syntax errors sooner"), then you may want to try these:
GreenfootFrom the site:
"Greenfoot as a combination between a framework for creating two-dimensional grid assignments in Java and an integrated development environment (class browser, editor, compiler, execution, etc.) suitable for novice programmers". This is a cross-platform (Java) tool.
- Website: http://www.greenfoot.org
- Examples/Repository: http://greenfootgallery.org/
With Bots Inc we can learn how to program robots interactively. Language used to program is Smalltalk (BotsInc is built with Squeak). Since BotsInc is a Squeak image, it possible to slowly graduate to full Smalltalk. It is available on all platforms.