There are many benefits to teaching young people to code. As a musician starts learning a piece of music, the process can be daunting. Musicians, however, naturally start breaking the song into parts. By slowly mastering small phrases, scales, chords, and patterns, the song slowly emerges from the student. The discipline of decomposition and persistence shows up in computer programming too.
Chris Betcher during a talk during the K12 Online Conference did a AWESOME introduction to a number of tools that help students get started with coding. Mr. Betcher introduces the tools in order of learning complexity. My five year old has been playing with BeeBot and Hopscotch. It’s really fun to see him having fun programming. His survey of tools starts with teaching students basic sequencing, looping, and branching. For advanced students, he recommends tools to help students get started with Python and Ruby.
I also appreciate that Mr. Betcher highlights the ethos of sharing in programming. Since the world of technology is changing rapidly, computer professionals are constantly teaching and learning from each other. The act of reading code is an act of education. The practice of pair programming is another fantastic way to pass on the craft of code in a social and collaborative way.
I hope you enjoy Chris Betcher’s talk!
Sequencing, Branching, and Looping using Blocks
- Beebot: My little 5 year old has been enjoying this app. In the game, you need to navigate a small robot through a maze. The player needs to issue the right sequence of movement commands(forward, backward, left, right). While this app is simple, it’s very fun.
- Daisy the dinosaur
Advanced Block Programs
- Scratch: MIT’s Scratch from the “Life long kindergarden” lab at MIT is amazing since it introduces fun programming features using puzzle or visual programming. Check out our full post on this tool here.
- Blockly : This is a great find! As a programmer, you can use this open source library to create your own visual programming environment. I really want to create a robot control system with this! From a teaching stand point, it has a number of samples that your students will find fun.
- Star Logo
Game, Apps, and Robots
- Ruby for Kids
- Python for iOS
We would love to hear from you!
Do you have a favorite tutorial for introducing code to new programmers?