Teaching kids to code

In: Education|Kids

25 Nov 2016

Programming is probably one of the most important subjects that educators have identified as part of STEM that we need to encourage kids to get interested in at an early age. Almost everything in our daily lives is programmed in some fashion. Your car might have EFI (Electronic Fuel Injection) controlled by a computer, your washing machine might have a computer controlling cycles & timers to the smart card that you use during your daily commute.

Error 418 htcpcp teapot_R1

Someone, somewhere programmed that device you’re using… right now. So the importance of programming is now beginning to dawn on people everywhere all over the globe as we get more integrated Internet of Things spamming us with whatever it is they’re doing – brewing coffee?

So how do we get kids into programming? Lets take a step back, how did I get into programming?

I can remember my first programming language that I learned to use as a kid.


BASIC written for the VTech PRECOMPUTER 1000.

Now I’m showing my age, this thing is now classed as VINTAGE! Way to make me feel old.

It was HORRIBLE! It had a book with 3 or 4 BASIC word games such as Hang Man, Hello World, etc. You had to type each line painstakingly line by line following the instructions in the book. If you made a typo you would spend up to an hour looking for it. I can’t imagine how many kids of 13 would simply give up and consider it “too hard” or “too labor intensive” and instead go and play Sega.

MIT had exactly the same thought when they designed SCRATCH

Take a minute to watch the video below, SCRATCH in a single word is AWESOME!

A simple programming language where you drag logic blocks to form programming statements to make games, animations, sounds or anything you like.


I’ve been a coder-dojo mentor for a couple of years now, it’s a fantastic way to spend a weekend teaching kids to code. If your child can read and can perform basic logic they can learn to code. One of the best ways by far in teaching kids how to code is to get them to do something they love doing, play games.

If they can play games and learn something at the same time they will be motivated and more involved in the outcome. It’s simple, easy to understand and best of all it runs in your browser. If you’re looking for a iPad or Android version, fret not there is ScratchJr

I’ve developed a few resources for the kids to take an existing working game and to modify it to make it their own.
Feel free to make remixes of these and see what your kids can do with them.


Scratch Tutorials – http://kata.coderdojo.com/wiki/Scratch_Tutorials
Handout – ScratchGames
Pong – https://scratch.mit.edu/projects/11607748/
Helicopter – https://scratch.mit.edu/projects/11607952/
Space Invaders – https://scratch.mit.edu/projects/18797936/

Comment Form

About Justin


Justin is a Senior Software Engineer living in Brisbane. A Polyglot Developer proficient in multiple programming languages including [C#, C/C++, Java, Android, Ruby..]. He's currently taking an active interest in Teaching Kids to Code, Functional Programming, Robotics, 3D Printers, RC Quad-Copters and Augmented Reality.

About This Blog

Software Engineering is an art form, a tricky art form that takes as much raw talent as it does technical know how. I'll be posting articles on professional tips and tricks, dos and donts, and tutorials.

profile for Justin Shield on Stack Exchange, a network of free, community-driven Q&A sites


  • What I look for in a senior software engineer Justin Shield: […] I’m not going to list the design patterns that you’ll need, I’ve already [...]
  • Justin: Hi Ross, I do actually like Umbraco, it provides some nice abilities for creating websites that I [...]
  • Justin: Hi GordonBGood, Thanks for taking the time in replying. You're absolutely correct, it is turners s [...]
  • Ross Gallagher: Hi Justin, I'm a fellow Aussi looking to use Umbraco to create a simple website. I have downloaded [...]
  • GordonBGood: This is the "Turner Sieve" which **IS NOT** the Sieve of Eratosthenes (SoE) neither by algorithm nor [...]