by | Jun 7, 2018

Coding for children: problem-solving, precision, and going unplugged

Back in 2014, the primary curriculum as we knew it was dramatically overhauled in pretty much every area of learning. ICT (information and communication technology) saw some of the biggest changes — namely because it ceased to exist as a subject from that point onwards! It was replaced by computing, which placed a much heavier emphasis on computer science, amongst other changes.

Guest blogger Claire Lotriet explains the benefits of encouraging children to code.

The computing curriculum can be broadly divided into three main strands:

  • Computer science – programming and computer networks.
  • Information technology – using technology purposefully to create digital content.
  • Digital literacy – using technology safely and respectfully and evaluating digital content (a lot of this strand falls under what is often referred to as ‘online safety’ or ‘esafety’).

The computer science strand has received a lot of attention because it is the bit that contains the newest content and, to be honest, also the one that a lot of teachers needed support with as many didn’t have any experience of teaching programming.

So, what is coding?

At its simplest, coding is really about telling a computer what to do. Computers can’t think for themselves and need to be programmed to perform tasks. Specific step-by-step instructions that perform a specific task or solve a specific problem are called algorithms. Algorithms can then be implemented in code as a program for a computer to follow.

Why should children learn how to code?

In any discussion about children learning coding, there is often a lot of talk about filling the gap in industry that is desperate for programmers and preparing them for such jobs in the future. For me, teaching children about coding is not about creating a group of future coders — after all, we don’t teach children poetry because we believe that loads of them will become poets as adults — but instead about reaping the rewards of the other benefits of learning how to code.

Coding is a tricky business and it is rare for code to work the way you want it to work first time around — getting to grips with this can help children develop resilience and get comfortable with not finding solutions straightaway, which is valuable for almost any learning. Learning to code can also develop problem-solving skills: identifying what you are trying to do, considering the options available, trying out solutions, evaluating their success, and then trialling more if needed. There’s a huge overlap here with problem-solving in other areas of the curriculum, particularly maths and science.

Top tips for helping at home

1. Learn alongside your child

Chances are, unless you are a programmer, you have had little to no coding experience yourself. I mean, we all learned maths and science at school, but computer science? Not so much. The first thing to do is embrace this fact and be open to learning how to do some coding alongside your child and be up front about the fact that you’re learning too — this sets a great example.

2. Solve problems together

Also, when things go wrong, model how to try different strategies. Debugging — the process of finding and correcting errors in your code — is vital to becoming a successful coder. Good debugging strategies include explaining your code to another person to see if you can spot the errors, and predicting what will happen when you run the program — another reason why doing some coding alongside your child can be so beneficial rather than them doing it in isolation. Those conversations can help them solve problems and is something I encourage when coding in class all the time. Often I will set it up so children work in pairs on a coding project for this reason.

3. Try some free coding-based games

There are some coding-based games that require no previous coding experience to explore together such as Lightbot, which is available as an app and in the browser. If you want to have a go at Scratch, there are some step-by-step tutorials that again require no previous experience. These include creating an animation of your name and coding a hide and seek game.

4. Go unplugged!

You might like to try the unplugged method mentioned earlier too. Help your child develop computing concepts without even going near a computer by asking them to come up with algorithms for different daily tasks. For example, they could give you instructions to make a cup of tea. You must stick to their exact instructions even if you know they have missed out a bit. This may lead to some strange cups of tea, but any errors will teach them to create instructions that are as precise as possible. Other day-to-day tasks such as tying shoelaces can be approached in this way too. They might also record algorithms as numbered bullet points or as images in a comic strip.

5. Use building blocks

Lego, or any other building blocks, also provide great opportunities for developing skills such as decomposition (breaking down a big problem or task into smaller parts). You could start with a picture of the final object you want to make and decide which sections you are going to make first, second, and so on. Equally, you can use Lego to explore algorithms too. One of you can be the builder, who handles the Lego pieces, and the other is the programmer, instructing the builder on which pieces to pick up and what to do with them. Developing precise, unambiguous language is what’s really useful here.

Ultimately, learning to code with your child, whether it’s using an app or doing it unplugged, is what’s really going to support their learning. The conversations you have while problem-solving together and the precise language you practise using can really help them develop as coders.


About the author

Assistant Headteacher Claire Lotriet leads on teaching, learning & assessment, computing and enterprise at a south London primary school, as well as frequently writing on computing in Primary schools.


More from Oxford Owl