Teaching Kids Programming
The goal of this document is to collect resources for teaching kids programming.
This document aims to:
- Be a resource for someone who desires to teach kids (or anyone, really) programming
- To serve as a reference of prior art in preparation for a new curriculum
- WIP: please send suggestions to @eigenjoy or open a GitHub issue
Soapbox
There are many attempts to provide structure for kids who want to learn programming, but my experience is that there generally isn't a good curriculum to send someone who wants to teach a child how to program.
The core issue, I believe, is that almost all of these resources:
- progress through concepts too quickly
- assume a parent / teacher present that already knows how to program
Visual programming only helps with syntax - the logic is just as difficult. A useful teaching tool will teach the mental models and concepts along with the actual programming.
Another trend I'm noticing is that all of my nephews/nieces (age 8-15) want to build games for their phone. All of them have iPhones and none of them have $99 for developer tools.
Mobile Apps
Programming
Logic and Conceptual
- Cargo-Bot
iOS
- Move the Turtle
iOS
- Bee-Bot
iOS
- Kodable
iOS
Interactive Programming Teaching
Pre-programming Concepts
- Robot Turtles: Physical board game for little programmers
- Primo - Teaching programming logic to children age 4 to 7
- Light-Bot 2 Online Flash Game
Game Creation Frameworks
Web Based Editors
Visual Programming
- Stencyl
Mac
Traditional Environment
Programming Environments
Robotics
Web Development
Logo-like
- Turtle Academy
Web
- ASCLogo
Mac
- Kojo
Desktop Java
Programs and Schools
Books
- Super Scratch Programming Adventure!: Learn to Program By Making Cool Games
- Invent Your Own Computer Games with Python
- Land of Lisp
- Python for Kids
- Hello World! Computer Programming for Kids and Other Beginners
- Learn to Program Ruby