I’ve been gathering the best resources to teach children & teens programming — books, environments, apps, courseware and games.
These resources are meant for teachers and parents who want to have their children fall in love with computers and see the magic of programming.
I’m staying away from philosophical debates of whether kids should learn to program, when they should start and other such topics. I know this — I fell in love with computers in 3rd grade (a beautiful ZX Spectrum), and I want to share the joy of programming with others.
I’ve chosen in this list to be quite comprehensive in listing all resources — but also choosy to restricting this to things I found useful & of high quality.
I’ve also started this list with my own opinionated picks on what kind of material from the large list of resources may be suitable for children with different interests and at different points in their learning.
Sharing this broadly, do let me know what else I can add to this list.
The Opinionated Picks
- For children aged 5 — 8: Cargo-Bot, Hopscotch, TurleAcademy.
- For children aged 9 — 12: Python for Kids, Hakitzu, Code and Conquer, Lego Mindstorms, RaspberryPi & HacketyHack,
- For children aged 12 and above: MIT Scratch, Super Scratch Programming, CODE, The New Way Things Work, The Cartoon Guide to the Computer
- For children interested in robotics: The Tinkertoy Computer, Roborally — Wizards of the Coasts, Sparki the Robot
- For children interested in games: Land of Lisp, Kodu (on the XBox) & Processing
- For beginning adults: CODE, Learn to Program using Ruby
The Large List of Resources
Books about Computing
- CODE — Charles Petzold
- Lauren Ipsum — Carlos Beuon
- The New Way Things Work — David Macaulay
- The Cartoon Guide to the Computer — Larry Gonick
- Computational Fairytales — Jeremy Kubica
- Best Practices of Spell Design — Jeremy Kubica
- Hello, World — Warren Sande
Advanced Books on Computing
- The Elements of Computing Systems — Noam & Shimon
- The Tinkertoy Computer — A K Dewdney
- Inside the Machine — Jon Stokes
Books on Programming for Children
- Learn to Program using Ruby — Chris Pine
- Super Scratch Programming — The LEAD Project
- Python for Kids — Jason Briggs
- Land of Lisp —Conrad Barski
Offbeat pick: Manga Guide to Databases
Environments for Programming
Advanced pick: Processing
iPad or Android apps — Great to learn programming
MOOC / Courseware
- Teaching Programming to Kids — Pluralsight
- Khan Academy CS
- Microsoft Beginner Resource Center
- CodeHS, Codecademy, Coursera, Udacity & EdX
Other games & tools
Pick of the games: Code and Conquer