Unplugged to Debugged: coding in the early years.

Bringing coding to the early years seems like a big step as the Early Learning Goal for technology narrowly states that young children should use technology for a particular purpose. It’s one strand of the curriculum where practitioners may be less confident in working that cross-curricular, linked-learning best practice that we are the true experts of.

To bring coding to the early years we need to better understand what coding is and how the skills of a good coder are related to the skills we are developing across the areas of learning.

The Cornerstones of Coding

Being good at coding is more than inputing commands in sequence. Good coders are actually good problem solvers. Coding is a process underpinned by the skills of:

  • Pattern Spotting and Sequencing
  • Breaking larger problems down in to small steps (Decomposition)
  • Looking for mistakes and correcting them (debugging)
  • Making predications based on prior knowledge (Logical Reasoning)
  • Testing out ideas (Evaluating)
  • Playing around (Tinkering – yes that’s a technical term too!)

Looking at this list of skills and the definitions, I immediately see a link to The Characteristics of Effective Learning.

Screenshot 2019-01-12 at 15.36.17.png


For readers who are new to the Early Years Foundation Stage in England, you can view the 2019 profile handbook here and read about The Characteristics of Effective Learning which underpin all learning for birth to 5 year olds here (page 22).


Skills for Effective Learning

We should be encouraging our young learners to play and explore by ‘learning through trial and error’. They should be active learners and ‘bounce back after difficulties’ or ‘persist with challenges that occur’. Children should also be creating and thinking critically by ‘finding ways to solve problems’, ‘testing their ideas’, ‘develop an understanding of cause and effect’ or ‘change their strategies as needed’.

There are clear links between the skills of coding and the characteristics of effective learning. In fact, providing opportunities for children to learn to code in the early years may well help them to be better critical thinkers in all aspects of their learning.

Progression for Coding

You can provide the skills for coding and prepare young children for Key Stage 1 Computing without any computers or devices, it’s called unplugged coding.

This activity from ‘Get Started with Code‘, a free teacher guide from Apple’s Everyone Can Code curriculum, is a perfect start for some unplugged thinking and problem solving.

Screenshot 2019-01-12 at 15.46.04.png

This is what it might look like in practice:

Screenshot 2019-01-12 at 15.45.33.png

In the picture on the left, the children are role playing as Little Red Riding Hood and giving her instructions to safely travel to Grandma’s house, avoiding the squares with The Big Bad Wolf. In the photograph on the left, children have progressed to using direction cards in a sequence for their human robot friend to read and follow to move through the maze.

This activity promotes good characteristics of learning, encouraging children to ‘think of ideas’, ‘find ways to solve problems’, ‘plan and make decisions about how to approach a task’ and ‘to reach a goal’; all skills from The Characteristics of Effective Learning. I also like how this activity encourages some learners to ‘take a role in their play’, engaging those children who may not visit your role play areas that often! It also supports a curriculum for coding. Children are sequencing, breaking the problem down in to steps (decomposition), applying logical reasoning to their play and evaluating their steps throughout the play. This product is a great resource if you want a ready made kit.

Little Red Riding Hood

Staying with the theme of traditional tales, this activity is another way to develop computational thinking and promote learning skills.

Here you can see that I have using masking tape tracks and wheeled trucks. There are 4 tracks, 4 strips of direction arrows and a problem to solve. The problem is, we don’t know which track leads us safely to Grandma’s house and which track leads us right in to the paws of The Big Bad Wolf! The children have to crack the code. They pick a strip of directions, physically push the wheeled toy along the track and follow the sequence. Does it match? Once all 4 tracks and sequences have been tested, evaluated and matched, the secret code can be unlocked.

Screenshot 2019-01-12 at 15.57.31.png

Inside Grandma’s scroll is a sequence of directions which matches to 1 of the 4 sequences the children have tested. Revealing the code in Grandma’s scroll shows which track is the safe way to Grandma’s house. The code has been cracked, without any devices at all!

This has taught children computing skills of sequencing and pattern spotting. It’s also facilitated an opportunity to practice those effective learning skills such as ‘testing ideas’, ‘making predictions’ and ‘noticing patterns in their experiences’.

It’s a good idea to then let them begin making their own tracks and writing their own instructions for each other to follow. This activity also worked well ‘plugged in’ with a BeeBot or a Dash Robot using the Blockly Jr app.

Make It Visible.

Using arrow symbols to program a robot is a great way to make coding visible, and as coding is linked to thinking skills, it makes thinking visible too. By looking at the track, grid or puzzle first and laying down the direction cards, children can spot the pattern, test the idea and use logical reasoning before programming the robot.

This is the same track activity as with the wheeled cars, but this time the children are sequencing the commands themselves and then programming the robot to travel across the track to get to Grandma’s house.

In one photo above you’ll see children using laminated arrow cards to sequence the commands for a Bee Bot. You’ll see in the other 2 images that the children are using a Blue Bot connected to an iPad. They are using the Blue Bot app to walk through the track first, holding the iPad and pushing the arrows on screen before pressing play and sending the commands to the Blue Bot wirelessly.

Both of these activities are coding activities and they promote the skills of critical thinking from the characteristics of effective learning. Children are definitely ‘planning, making decisions about to approach a task, solve a problem and reach a goal’ here. This activity could unlock this effective learning skills in children who may not otherwise demonstrate this learning behaviour elsewhere in the setting. This is important because these are the children who may want a career in computer science and we need to be inspiring them in our settings too!

The Floor Grid

Let’s go back to the original activity, Robot Fun, in the Get Started with Code teacher guide. Originally children acted as robots on a floor grid following instructions to walk through a maze to an end point. Since then, you’ve seen how the skills of sequencing have progressed through the masking tape tracks. In the photographs above you’ll see how children are now ready to work on the floor grids for the Bee Bot robot. In these images, children are helping Max sail back to the island of The Wild Things. This time they are using the Blue Bot tactile reader to support the sequencing through the floor grid maze. This device uses direction chips, placing them in sequence on the tactile reader. Pressing the green button on the reader sends the command sequence to the Blue Bot wirelessly. Of course, children can also use laminated picture cards or the Blue Bot app.

It’s a great way for children to see the commands they are inputting and if they need to change the sequence, their code is visible to them. Traditionally with the Bee Bot, children input the directions by pushing the buttons on top of the robot and there is no record of what they have pressed. If the code doesn’t work out, there is no way of going back to edit what they have done. They have to start again without any feedback of their own. You can still achieve this with laminated arrow cards the children sequence themselves and button push from, or using the Blue Bot iPad app. This is only another device for making code visible.

Working on a floor grid with a robot opens up more possibilities for the route to The Wild Things. Observing this play, you will probably see that children need to have ‘a can-do attitude’, that they need to ‘maintain focus for a period of time’ and ‘show high levels of fascination’ as they work through inevitable mistakes that need debugging. As they solve these mistakes in the code they will be ‘testing their ideas’ and ‘checking how well their activity is going’. All of those are linked to the Characteristics of Effective Learning but are mapped to the skills of computational thinking. Children are showing you how they can sequence, debug, apply logical reasoning from the previous activities and how they are able to debug.

Mapping The Characteristics of Effective Learning to Computational Thinking.

To help you make the most of computational thinking and coding in the early years I have cross-referenced these coding skills to the Characteristics of Effective Learning in this table:

Screenshot 2019-01-12 at 16.11.42.png

You can download a PDF copy of this table for free here.

I hope that this will help you provide better opportunities for your young learners to code. If you are looking to develop a particular learning behaviour then this table can help you identify a supporting skill from computational thinking. This should help you plan for coding more effectively and give other children the opportunity to show you what they know.




2 thoughts on “Unplugged to Debugged: coding in the early years.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s