By Benjamin Farmer Lacombe
Technology, Innovation, Design, and Entrepreneurship Teacher
In 2018, Sean Hargrave published an article in The Guardian where he described code as “the language of the modern world.” Emphasizing that anyone can learn it, he juxtaposed the estimated 400M to 800M jobs to be lost to AI and other emerging technologies with a corresponding increase in demand for skilled programmers.
At BFIS, students are given multiple opportunities to engage with coding, in the hopes of igniting a lifelong passion. We are of the mind that being a consumer of technology alone doesn’t guarantee under-the-hood technical skills, and we are eager to show students that other side. Here, we outline our views on some of the most common questions parents have about coding and their children.
When can students start to learn code?
While there is no shortage of maxims that apply here, perhaps the best one would be “sooner than you might think.”
Marc Scott is a former teacher and Head of Curriculum at the Raspberry Pi Foundation, the UK-based charity behind the small Raspberry Pi computers that are hugely popular with learners and enthusiasts. He writes:
“My own child started to learn when they were about six years old. And you can never be too old to learn to code. I didn’t start learning to program until I was in my late thirties, and I know many learners who decided to take up coding after their retirement.”
Purpose-made languages and products exist to introduce children to coding at a young age, such as the free block-based ScratchJr, which is aimed at children aged 5-7 years old. The original Scratch platform is aimed at students 8-16 years old, and is bursting with learning resources and community-made content.
Scratch is well known to parents, but it is hardly the only choice available to students. Perhaps the most surprising insight from Scott’s article is the young age at which children can start learning to write text-based code.
“At around the ages of nine or ten, children’s typing skills are often sufficient for them to start using text-based languages.”
Many students and parents are under the impression that text-based coding is difficult, which leads us to our second question.
What makes for rich and authentic coding?
Coding is about computational thinking. According to the ISTE Standard, for students this means defining problems, collecting data, decomposing the problem, and thinking algorithmically to create and test automated solutions. In practice, this means not being afraid to get your hands dirty with the code: think, try, fail, research, discuss, and ultimately problem-solve. Being able to troubleshoot through a problem is perhaps the most important skill any aspiring programmer can learn, as this skill is applicable to any language and context.
Coding goals and projects should thus be rich enough for students to engage in meaningful problem-solving. At BFIS, all Grade 6 students take a Programming Design course, where they are guided to set their own goals based on their interests and coding experience, if any. Students are presented with options that have real-world, industry-standard skills, such as Python, HTML, and C# via the Unity 3D game engine.
Block-based coding solutions such as Scratch are meaningful in their ability to support learners thanks to their easy access points and vibrant learning communities. On the other hand, text-based languages offer the most freedom and authentic challenges that foster valuable transferable skills in learners. Students are encouraged to explore all of these options, and to see that coding—including text-based coding—is well within their reach.
How can parents support their children?
Parents who do not have a background in technology (and even those who do) are often eager and anxious to know how they can help their children. There is no single point of entry to learn coding, and some are less intuitive than others.
The Raspberry Pi Foundation has written an article that outlines different ways parents can start their children coding, with links to different resources. They have also proposed their learning projects around six paths: Python, web design, Scratch, micro:bit, physical computing, and Unity. All of these options have their ups and downs, but are also all approaches to learning code which we embrace at BFIS.
One of the best ways which parents can support their children is to learn to code with them, by embarking on the journey together through all of its highs and lows and seeing where it takes them. In the (common) case that the child outpaces their parents, the student can become the teacher and share what they’ve learned.
In practice, there is no single strategy or resource that is guaranteed to pique students’ curiosity or to match their learning needs. BFIS parents may want to consider the Barcelona-based Leagues of Code or the popular Hour of Code projects, which can be filtered by grade level and by “Blocks,” “Typing,” and “Other.” There is also an abundance of video lessons which can be followed online.
In the end, any positive engagement with coding is a step in the right direction. Scott writes:
“In my time at the Raspberry Pi Foundation, I have taught children as young as five and adults as old as seventy. There is no correct age at which a child can begin coding, and there are opportunities to begin at almost any age. The key to introducing coding to anyone is to make it engaging, relevant, and most of all fun!”