It is now just as important to teach children coding as it is reading and writing – John Dabell gives us his comprehensive guide to the best resources for teaching children to code.
14 of the Best Resources for Teaching Children to Code: A Guest blog by John Dabell – Primary Teacher and Writer
In this blog I will briefly consider why coding is such an important skill for children to learn. I will then give you an overview of what I have found to be 14 of the best resources for teaching children to code – they all help to teach the fundamentals of coding and real-world programming skills.
Codebreakers – get with the programme!
The 2017 Royal Society report, After the Reboot – Computing Education in UK Schools argues that computing is a subject that all young people should learn in order for them to have a knowledgeable understanding of the increasingly digital world that surrounds them.
The report builds on the Children’s Commissioner’s publication ‘Growing Up Digital’ and the importance of children and young adults growing their digital resilience, information and power.
Basic computer science and computational skills are as important to teach as reading and writing – coding is a fundamental skill 21st century that children need to learn.
What is coding?
At its simplest, coding is telling a computer what you want it to do, which involves typing in step-by-step commands for the computer to follow. There are lots of different coding languages, each one designed with precise things in mind.
Code powers our digital world: every computer, website, smartphone app, tablet, video game and even washing machine relies on code in order to work. Coders are the architects, engineers and builders of the digital age.
Coding isn’t just a skill but a complete way of thinking that seasons our reasoning.
Why should children learn how to code?
We are controlled by technology and so learning code enables children to interact with the world around them, understand how the technology works, put them in control and make it worker better for them.
It is the best way for children to understand technology, evaluate its benefits and disadvantages, its opportunities and risks. Coding enables children to question how and why computers work.
Knowing how to code is a massive advantage because if we don’t have coders then things will soon come to a grinding halt! Coding is central to so many jobs such as web designers, software developers, robotic engineers and cybersecurity but also for professional fields that have yet to be invented.
10 Reasons why we need children to speak code:
- Coding builds confidence: learning how to code empowers children.
- Coding powers computational thinking: it allows children to approach problems in a structured way and use abstractions to represent particular concepts.
- Coding fuels creativity: coding lets children express themselves, create projects and do some amazing things all by themselves. It’s tailor-made for innovating and inventing.
- Coding stretches minds: coding helps children develop fluidity in their thinking and become critical thinking trouble-shooters able to face a problem from different viewpoints.
- Coding teaches perseverance: debugging (editing and improving) drives determination and resilience by teaching children to keep searching for a solution whenever they encounter an obstacle. It normalises mistake-making as learning.
- Coding drives innovation: from self-driving cars to robot-assisted surgery, coding has amazing real-world practical applications that are revolutionary.
- Coding builds literacies: coding is like learning a family of second languages and supports a range of processing skills.
- Coding is a transferable: coding and maths go hand-in-hand but learning to code supports learning in subjects across the curriculum.
- Coding is fun: web design, games, animations, physical computing – learning to code is enjoyable, engaging and entertaining.
- Coding supports collaboration: teamwork and social skills can be developed through coding as it enables children to work creatively together.
Where to go for help - 14 of the best resources for teaching children to code
When taught properly, coding can be very engaging, teaching a range of skills in a relatable way but there aren’t many of us that are confident coders and teaching children to code is daunting.
If you are teaching coding for the first time then some general tips on coding can be found on the LEGO website which has a nice cheat sheet of top tips here.
To develop your skills then there are lots of excellent organisations to help ‘get with the programme’. Some are online, some offer practical hands-on workshops and some do both – they all help to teach the fundamentals of coding and real world programming skills.
So, without further ado, here are what I have found to be 14 of the best resources for teaching children to code...
The most popular organisation amongst primary school teachers according to the Royal Society is Barefoot which was first set up in 2014 to help primary school teachers in England get ready for the computer science element of a new computing curriculum. BT have now taken over the lead and offer a variety of free resources including exemplar teaching activities and high-quality lesson plans, Teach yourself resources and local CPD sessions.
Next most popular with teachers is Computing At School (CAS) which aims to promote the teaching of computer science at school and put the excitement back into Computing. Part of the British Computing Society (BCS), the Chartered Institute for IT, CAS is packed with lesson plans, KS1 and KS2 activities and a CPD Toolkit full of help. Apply here also for the new BCS Certificate in Computer Science Teaching.
If you want to start coding from scratch then Scratch is a free programming language and online community where you can create your own interactive stories, games, animations, music, and art using drag and drop. There is a Getting Started guide with lots to try and with every activity there is a tutorial with downloadable activity cards and teacher guide. There’s an online community called ScratchEd developed and supported by the Harvard Graduate School of Education where you can share stories, swap resources and ask questions.
ScratchJr is designed for young children (ages 5-7) so they can programme their own interactive stories and games. Take a look at the ‘10 things to try right now with your child on Scratch and ScratchJr’ here.
Featuring a funky bearded character that can be programmed to dance, collect stars and more, children will enjoy learning basic programming whilst developing their critical thinking and problem solving skills. Learn more about Busy Code resources in this Innovate My School article
Busy Code resources are included within the cross-curricular platform Busy Things (a paid-for website).
This website includes free coding lessons and plenty of inspiration for helping children get excited about code. It produced a video featuring Bill Gates, Mark Zuckerberg, Jack Dorsey amongst others promoting the coding ‘superpower’. Here you will find the HourOfCode.com which is stuffed with 60 minute fun coding tutorials. For example, one of my favourites is creating your own Google logo which you can bring to life using Scratch to make the letters dance, tell a story or create a game.
The Raspberry Pi Foundation aims to advance computing education through the Raspberry Pi - a credit card-sized, low-cost computer that allows pupils to learn how to program. Supplementing the Raspberry Pi is an abundance of educational resources. They also run outreach programmes, such as the Raspberry Jam, a regular meetup for pupils to learn more about using the Raspberry Pi.
Part of the Rasberry family is the brilliant CoderDojo a global network of free, volunteer-led, community-based programming clubs. CodeClub have also joined with Raspberry Pi and provides pupils with further opportunities to code through extracurricular sessions typically held in after-school hours, with approximately 6,000 code clubs across the UK for 9–13 year olds.
You’ll need a tiny programmable classroom-friendly computer for this site called a micro:bit which contains all the features you need to code everything from dancing robots to banana keyboards and other “cool stuff” backed by academic research. You can now borrow a BBC micro:bit from hundreds of libraries.
A free site designed to enable children learn programming in an easy and fun way using the LOGO language.
Discovery Education Code is a paid for collection of resources (from £200). Resources include a scheme of work, lessons with videos, lesson plans for Block coding, Python and HTML, debugging lessons and a personal school webpage.
Codecreated contains online lesson plans, video tutorials, and resources for teachers. It also offers coding workshops for schools led by real app and game developers. Their workshops include teaching coding for apps and games and include workshops for the new BBC micro:bit featured on BBC Click.
Kodable is a US site that contains dozens of lesson that you can filter by content area. It includes teacher guidance, vocabulary words, and pupil materials.
MIT App Inventor is an intuitive, visual programming environment that allows you to build fully functional apps for smartphones and tablets. This blocks-based tool lets you create a simple first app in less than half an hour.
For the iPad then you could try Swift Playgrounds, a free app using Apple's new Swift programming language. The idea is you solve interactive puzzles and learn the basics of coding as you go. Further challenges allow you to explore code and create programs that are engaging and unique.
Final thoughts on the best resources for teaching children to code...
The earlier children are acquainted with topics like sequencing, loops, and conditionals, the more likely they are to bend, join, break and combine codes of their own. Mastering concepts such as logic and consequences enables them to go from interacting with technology to creating technology and expressing themselves in new ways.
Ultimately, coding makes children better thinkers, decision-makers and communicators.
Programming is a relatively new discipline, requiring a new way of thinking and a whole new strange vocabulary to boot! It's not surprising then, that so many teachers find coding intimidating and a daunting prospect to teach. I have found that there is a wealth of resources out there to not only demystify the subject but to also make it enjoyable - I hope this will give teachers confidence to get stuck in and embrace this exciting new world!
We hope John's finds for the best resources for teaching children to code have given you plenty of inspiration to make programming fun and accessible. If you have any more resources to add please leave a comment below and remember sharing is caring!