How to introduce a child to code, how to teach kids programming skills.
I'm introducing a my son to programming. Here are some of the ways I found for teaching kid coding concepts at an early age.
My son is seven years old. He is just like his dad, he loves computers and he loves building games (even more than playing them), he's driven and knows what he wants to achieve and just needs the tools to achieve it.
Even at the tender age of 7 he spends hours designing level in the Marble Arena 3D editor which is very kid friendly (and so is the game, BIG recommend!). It uses the 3D editing system from Cube 2 Sauerbraten.
When my son draws pictures on paper he draws turrets and tower defence maps. He wants to make games.
But if he is going to build games by himself he might need to learn to program. Sure, he might just want to be a 3D artist, but I suspect that he will want the freedom to do everything his way without having to wait for help. He's interested in programming and so here are some ways I am introducing him to programming code.
First steps: (Before talking about programming code)
Before I got into showing him programs on a computer, I decided to teach him fundamentals. I feel it is important for the children to understand how any computer works with a central processing unit and memory allowing the machine to process a list of instructions. I sat him down and showed him an old computer and talked about the parts. I also told him that a computer is a machine that processes instructions and that we are the people who write these instructions.
From there I introduced him to programming by showing lots of way we use programming in real life. Anywhere where a list of instructions is followed can be a great place to introduce a child to how a computer executes a program. I showed him recipes and instructions manuals which allow us to cook and build by following the instructions step by step.
By far the best way to teach a kid to program that I found was my iPad. The quality of Apps is better and for a small kids hands, tapping away on an iPad is easy and intuitive leaving them more time to learn code.
Daisy the Dino (APP STORE).
Teach your kids to code by dragon and dropping from a list of available actions that daisy the Dino will follow. Great fun.
Hopscotch (APP STORE):
A similar way of learning programming to Daisy the Dino, nicer graphic and a long list of available command allow you to control a number of animals.
Cargo Bot (APP STORE):
Cargo Bot doesn't just teach kid programming skills, the actual game was written on the iPad using the codea app. Cargo bot is a no brainer, go get and let your kids control a crane moving crates using simple commands and subroutines.
Kodable (APP STORE):
Kind of a mixture of those above. Control furry balls as the move a long a path. Kids will enjoy the achievement as the negotiate the path by programming the movement of the furry balls.
Move Turtle (APP STORE):
Move a turtle, teach a child to code... and, who doesn't want to move a turtle!
Computer programs and Apps for teaching children to code:
Then I looked for computer programs a child can use to learn to write instructions (and later code). I was surprised to find a good selection of tools and games for teaching young children programming. Most involve teaching kids to write instructions (not necessarily programming code per se, just instructions for a given process or robot to execute). But I'll be honest. The iPad games we bar far the best quality and convenience. However here are the best of the bunch (in no order, check 'me all out):
Web/Flash games to tech children programming:
Programs to teach kids programming I have not yet tested:
Although programable robot Kits can get pricey, a toy robot which can be programmed with a number a basic steps. Your child with get her/his first steps with programming and instantly be able to observe their efforts. You can search online robot kits, try and check what age they are recommended for and keep an eye on how they would be programmed.
Lego Mindstorms (VIDEO)
Bo and Yana (Play-i - Delightful Robots for Children to Program)
Teaching Kids to write REAL programs on the computer:
These are programs who's goal it is to teach actual code. Not code theory.
(!) Top tip
If your kid is older than 7 years or old, why not introduce them to UNITY? Unity is a complete cross platform game building program with a 3D editor and everything you need to build 2D and 3D games. My son loves it, sure it's an adults program, but check out the motorbike game my son and I made when he was 8 years old (in an afternoon!): Motorbike made by an 8 year old.
Unity game Engine.
One of the easiest programming languages for kids is still beginners all purpose symbolic instructions code (BASIC). I learn't basic from the Osbourne guide to computing. Because it uses plain english (which, but the way young kids might are still be learning) it can easily understood. Here are some basic compilers so you can start to show your child how to write programs with basic.
Basic For Qt®
Alternative ways you can introduce or teach your children code:
Programming isn't always about "code" , if you have a Roomba (or similarly programable cleaning robot), go throughout the programming option with you child and encourage them to improve the code.
Not exactly a 'teach your child programming' tool, but growing kids might learn the fundimentals of coding thier own android app using the App inventor.
Know any other good ways kids can lear programming? Comment!