Kids learning to code in school is a craze that has hit public schools in the last several years. It’s all the rage from high schools to elementary schools to after-school clubs at all levels. The movement to teach children to code is widespread. Countries around the world – not just the United States – are jumping on board and teaching their young students to code. Children are being exposed to programming languages earlier and earlier. How young can a child be, however, for it to make sense to teach that child coding?
Some research has suggested that it is pointless to teach coding to children before they can learn to read and write. However, pioneering coding teachers are finding that, in practice, this is simply not the case. J. Paul Gibson, a programming teacher, quoted in an article for Wired by Brendan I. Koerner, said that “’Children aged from 5-11 have so much potential for learning about algorithms and computation that it would be a shame to wait until they are teenagers before we teach them the foundations.’”
When you read research on second language acquisition, you’ll find that the general consensus is to expose children to another language as early as possible. This is because their brains are better at creating “procedural” memories, or memories that are super easy to recall. It’s more of a natural reflex than “declarative” memory, which is use to collect facts. With declarative memory, you have to use mental energy to access it, and this is not very helpful when you have to do something like conjugate a difficult verb in another language. However, if you learned the verb young, when your procedural memory was stronger than it is an adult, you won’t have much trouble at all conjugating it.
Coding classes for young children don’t really emphasize memorizing how to use particular tools. Instead, the focus is on becoming familiar with ideas that are the foundation of all programming, like debugging, sequencing, and conditionals. Kids learn how to create rules and conditionals that are brought together to create something, like a new video game.
Coding classes in elementary school aren’t just sitting kids in front of the computer and teaching them to write lines of code. In fact, there are many activities teachers can use to teach the basics of computational thinking, or a way of thinking to solve problems by thinking abstractly. Some of them are games that encourage students to work together and to build their skills in computational thinking, such as those available from Code.org and CSUnplugged.
Many of these activities can also easily be done at home without a computer. Thinking computationally is a life skill that can serve children well in many areas of life and in different disciplines. So if you’re homeschooling or just want to teach or reinforce computational thinking at home, there are many simple resources for you to guide your children in discovering it.
Children in other countries are also engaging with coding at young ages. For instance in Estonia, the ProgeTiiger program has a goal to teach coding basics to every first grader in the country. The U.K. has also made coding a priority for children in its schools.
Teach Them Young
Children do not have to wait until they are teenagers to start to learn to code. As the world has seen more and more young app creators come into their own, it does not make sense to hold kids back by not teaching them the basics of computational thinking and coding as young as possible. In 1998, Gibson was teaching at the National University of Ireland, and he got tired of having 18 and 19 year-old students who had difficulties with basic programming concepts that he had learned when he was 12. That’s when he started teaching coding to younger students.
There are many free and inexpensive resources available online and through the marketplace on your tablet, smartphone, iPad, or iPhone that can help your child learn to code. No matter whether your child is three or 13, the time to begin teaching them to code is now. It’s vital that they learn how to understand how computers function so that they have a better grasp of how technology affects their daily lives and how it can be used to solve problems. The younger you and/or school can teach them, the better.