Founder & CEO
This post isn’t about why you should teach your kids to code (there’s plenty of those out there), it’s about the how. I’ve detailed several tools below which should be useful for children of all ages to learn programming concepts and languages.
I only really started programming at university, which is a shame because I could have gotten a massive head start on peers if I had dived in a bit earlier.
I know software engineering isn’t for everyone but I believe more people should get involved in the field, at least to have a better understanding of the technology that’s becoming an ever increasing part of our lives, and what better way to do this than by sparking an interest with your kids when they‘re young.
I decided to research what options are available for teaching kids how to code, or at least how to get them interested in that way of thinking (i.e. the logical and problem solving mindset). There are a ton of resources out there, far more than I will mention here, but the ones I’ve listed below should cover a wide range of ages and levels of understanding. I’ve listed my personal recommendations at the bottom of the page, for those of you who want to skip the others.
The visual language and interface was created at MIT Media Labs to get kids coding early, even if they can’t yet understand the complicated syntax that makes up written computer languages.
“One of the best ways to take the first leap into programming. Developed by the MIT Media Lab, Scratch is a visual programming language. It allows kids to build interactive stories, animations, games and music. This visual approach to programming is the perfect way to teach kids the fundamental concepts behind programming and software development.”
Platform: Web. Age Group: 8–17.
App Inventor is a cloud-based tool for building Android apps right in your browser. The website provides tutorials and support for students to create (and possibly release) their very own android apps!
Platform: Web (and optionally your Android phone). Age Group 12+.
Code Monster is a gentle and fun introduction to programming concepts. It’s quite enjoyable and gets kids actually manipulating code right away, although it lacks some of the dazzle that some other graphical solutions may offer and the visuals are a little outdated.
Platform: Web. Age group: 9–14.
A brand new app from Apple. Learning to code with Swift Playgrounds is incredibly engaging. The app comes with a complete set of Apple-designed lessons. Play your way through the basics in “Fundamentals of Swift” using real code to guide a character through a 3D world. Then move on to more advanced concepts. Thanks to Matthew Fitch for the suggestion.
Platform: iPad. Age group: 8+.
A bit similar to Scratch although it’s more basic. Specifically designed for the iPad, Hopscotch is simple enough for most kids to get into it quickly but allows for them to set up all kinds of events and actions from a simple play button to more advanced things like tilting/shaking the iPad and drawing/colliding characters.
Platform: iPad. Age group: 8+.
Same idea as hopscotch, except this game targets the youngest coders. I didn’t get a chance to use it but from what I’ve seen it’s extremely basic and it’s probably a good introduction to coding for 4–8 year old children. It allows kids to create basic events like “on dinosaur touched, move dinosaur”.
Platform: iPad. Age group: 4–8.
Created as a fun and simple way to get people of all ages to begin coding. Uses a social element of earning badges for completing bits of code and progressing through tutorials which can be shared to friends. It’s very interactive and shows immediate feedback/outputs of your code.
Platform: Web, iOS. Age group: 12+.
Alice is a 3D programming environment that allows kids create animations, interactive games, or videos. The application introduces and will help kids understand key principles such as object orientated programming. Programs are created by drag and dropping graphic tiles. Each instruction corresponds to standard statements in a programming language, such as Java, C++, and C#. This tool looks a little outdated (but the core concepts aren’t) and support is still provided.
Platform: Desktop. Age group: 12+.
Designed as a cheap, accessible, programmable computer for kids, the Raspberry Pi is an excellent starting place for children of all ages to learn how to code, and it makes it even more enjoyable when it’s their every own computer!
The Raspberry Pi website also offers an educational manual as a free download, which guides students on how to set it up. It also contains tutorials for the aforementioned and popular Scratch programming language. Older/more experienced kids may also wish to avail of the python tutorials the manual provides.
Platform: RaspberryPi (of course). Age group: 8+.
This is one of the better places to start if your child has never programmed before. The age range on the site says 6–106 because they believe that anyone can and should go to code.org and learn the basics of coding for one hour.
Engineers from Google, Microsoft, Facebook at Twitter helped create the one hour tutorial and it has been endorsed by many celebrities (which will likely encourage kids to give it a go even more). It also uses graphics from the immensely popular Angry Birds and Plants vs. Zombies, which certainly can’t hurt. After completing one hour of coding the site offers recommendations on where to go next to continue learning.
Platform: Web. Age group: 6+.
LightBot is a programming puzzle game in which you have to move a robot to the end of each level using high level programming concepts like loops and procedures. Gameplay involves dragging and dropping simple instructions to form a procedure for the robot to carry out to complete each level.
Platform: iOS, Android, Windows, Mac, Kindle. Age group: 4–8 (for junior coding puzzles) and 9+.
Some others that I was quite impressed by but didn’t get a chance to properly look at: Stencyl, Tynker and Hackety Hack.
Okay, I know I’ve mentioned quite a few above so here are my top three recommendations, in no particular order:
Scratch — http://scratch.mit.edu/
CodeCademy — http://www.codecademy.com/
Hour of Code — https://hourofcode.com/
Thanks for reading, I hope you found some of this useful.
Create your free account to unlock your custom reading experience.