We think that for girls and boys, all over the world, learning to program will be as important as their ABCs and 123s in helping them understand the world around them. We believe that introducing children to a world of algorithms, bugs and queues also develops their problem-solving skills, encourages collaboration and nurtures children’s creativity.
As part of that mission we created a free ebook: Beginning Computer Programming for Kids. It’s an introductory guide to computational thinking and coding for kids aged 3-6 years old. In it you’ll find programming ideas for kids, and the best programming languages for kids.
Who is the ebook for?
The ebook is primarily for parents who are keen to find out more about what computer programming is, and how they can introduce easy programming for kids in a fun and engaging way.
We also hope that teachers, particularly those less familiar with coding and its key concepts, will find it useful both as an introduction and a tool for their lessons.
Why should kids learn coding and computational thinking at all?
There’s a common assumption, not always helped by the tech industry itself, that kids need to learn coding because we need more computer scientists. More software engineers, the argument goes, would help shape our our digital world for the better and, you know, it wouldn’t be so bad for the economy either. (The term ‘workforce-ready’ comes to mind).
To which the obvious response for a parent or educator is: ‘But what if my child or student doesn’t want to be a computer scientist?’
Coding for kids is a fundamentally creative process – starting with nothing and finishing with something
While it’s true that the big tech firms – Google, Facebook, Apple, Tesla – are snapping up whizzkid engineers, there are far more exciting and compelling arguments for why children should learn to code, beyond: ‘Because it’s great for GDP.’ Below are five of them.
1) Coding nurtures creative expression
Coding for kids is a fundamentally creative process. Just like painting or cooking, with coding a child benefits from the satisfaction – even the exhilaration – that comes from starting with nothing and finishing with something.
And it goes further. In the real world, creative acts are often limited by the materials we have at our disposal – like ingredients when we cook, or the canvas when we paint. But with programming, where the virtual world is infinite, the only restriction is the child’s imagination.
In the next 20 years as many as 47 per cent of jobs in the United States will become completely automated
2) Programming demystifies tech
The University of Oxford forecasts that in the next 20 years as many as 47 per cent of jobs in the United States will become completely automated. Meanwhile, predictions on the number of connected devices that will be in use by 2020 as part of the Internet of Things vary from 20 billion to 75 billion.
Because of this proliferation of devices and computers, there’s a growing anxiety about the increasing role of artificial intelligence and computers, in particular whether machines will make workers obsolete. Understanding what computers can and can’t do is fundamental in addressing these anxieties. If we can teach children how to remodel the technological world around them, we can help them become creators rather than just consumers of technology.
3) Programming requires persistence and problem-solving
Anyone who’s played with code, from beginners to professionals, will tell you that writing programs can get quite challenging quite quickly. Or put more simply: coding can be frustrating. Really, really frustrating.
This, says computer scientist and educator Sheena Vaidyanathan, is unreservedly a good thing: children ‘learn that something doesn’t work out but you can quickly fix it and try it again in different ways.’
With an introduction to programming, children learn to think laterally when faced with a problem in coding: ‘If A + B didn’t work, then maybe A + C will.’ Coding also equips kids with the ability to stick with a problem and work on finding a solution.
With programming, children learn to think laterally when faced with a problem
4) Children learn by thinking about doing
The grandfather of coding education, Seymour Papert, was a huge advocate of teaching by using programmable robots for kids. He was also a huge advocate of the principle that we learn by doing. As he saw it, the two worked hand in hand: ‘Programming the robot to do something helps a child to think about “doing”.’
However, to this he added an interesting qualification: ‘You learn by doing but you learn better by thinking about what you are doing. I think this is what is most important.’
In essence, thinking about what you want to do, one step at a time, before you do it, enhances the learning process.
5) But children also learn to think about thinking
Papert (him again) also spoke of the discovery and the sense of wonder children that experience when first introduced to programming. ‘In teaching the computer how to think, children embark on an exploration about how they themselves think. The experience can be heady: Thinking about thinking turns the child into an epistemologist, an experience not even shared by most adults.’
For us, this is the argument that is the most exciting. More than anything, computational thinking is an unbelievably valuable thinking tool – perhaps the thinking tool of the 21st century – and one that can be applied throughout our lives to incredible effect.