Scratch the surface of primary computing

Schools need to embrace text-based coding languages to ensure a richer programming experience for KS2 pupils, says Claire Lotriet
23rd January 2017, 1:15pm
Magazine Article Image

Share

Scratch the surface of primary computing

https://www.tes.com/magazine/archived/scratch-surface-primary-computing

There are many things I love about Scratch: it’s free, it can be used online so no installation is necessary, and its block interface means it’s great for young children yet you can still do some complex programming with it, making it great for more experienced programmers, too. 

You could probably deliver most, if not all, of the programming elements of the primary computing programme of study through Scratch and have done with it. 

However, I think if children just stick to Scratch, they might not be getting as rich a computing experience as they could be, which is why primary schools need to wean themselves off using it in isolation and embrace text-based coding languages as well. 

Why?

As the leader of teaching and learning at my school, as well as computing, one of the key things I’m currently working on is a clear definition of what mastery means for us and, in turn, subject leaders will then use this to define what mastery looks like in their subjects. 

Thinking about this idea in maths and making a comparison with computing might be helpful. Take an objective such as adding three-digit integers using a column method: 355 + 293, for example. This could be presented in a number of different ways:

1. What is 293 more than 355?

2. _______ = 293 + 355

3. Find the total of 355 and 293.

You can also present it using symbols and diagrams, such as bar models. We should be aiming to present a concept from the computing programme of study with similar variations. 

Exposing children to a variety of coding languages is one way to do this. And for primary schools, that should mean moving away from a purely visual coding language and embracing text-based languages. 

Which language? 

If you’re going to introduce text-based coding, I’d suggest giving it a go in Year 6, possibly Year 5. Logo is an obvious choice - it’s been around for years and you can do some nice things with repetition and pattern design. You can also program similar things using Scratch and then compare the two.

Python is also a good choice for beginners. This is because it’s a dynamic programming language (as opposed to a static one), which in essence means that the coding is less rigid and ultimately requires fewer lines of code - a big bonus in a primary classroom. 

Method

I was a little apprehensive before beginning a unit of work on Python programming with Year 6 at the start of this year. I was concerned about the children’s reactions and was fully prepared for them to find it a bit heavy going and for me to struggle to enthuse them. 

I needn’t have worried. Even just two or three weeks into the unit, I could see this categorically wasn’t the case - it was possibly the most enthusiastic I had seen them about a programming task. This was because of the context and the purpose of the project.

From the outset, I had explained that the children would be working towards programming a text-based adventure game where the reader/player is given a choice about what happens next in the story. After collectively playing one online, they were hooked - they loved it and wanted to create their own. The Python coding that they had to learn and do was almost incidental, and there was a reason why it had to work - if it didn’t, their game would flop. 

At the beginning, I had to allow plenty of time for children to get to grips with the syntax and the programming environment - I used an online Python interpreter (bit.ly/PythonInterpreter).

I showed them two commands first of all - the print and repetition commands - and allowed them plenty of time to practise and debug. Children shared problems they had found and also solutions.

The next step was planning an algorithm for their program. As their text-based adventure game involved giving the user a choice at the end of each section of the story, a tree diagram was the perfect format for this. This took quite a while but was vital. The plan meant that they could explain, in natural language, the sequence of their program. When it later became time to code it, we would refer back to their plans to relate the code and make it meaningful.

When looking at code together, we would read what it said but then I would always model how to explain it in natural language, too, so they could then go on and describe what the syntax actually meant. Again, being able to do this really helps when debugging their code.

Challenges

For some children, starting with a blank screen is intimidating, so something that worked well was to provide them with some code to copy and paste into their interpreter, which they then altered. One child, who has dyslexia, commented that they were worried about struggling with this type of coding, but altering code and having examples of code to compare it to really helped them.

Top tips

If you give children an engaging and purposeful context, plenty of time to practise executing a few key commands, ensure that they have the plan clear in their head and provide them with some sample code to alter if needed, they can definitely have a go at text-based programming and produce some impressive outcomes.

Claire Lotriet writes the World of Edtech column for TES. She is also a teacher at Henwick Primary School in London. She tweets @OhLottie and blogs at clairelotriet.com

You need a Tes subscription to read this article

Subscribe now to read this article and get other subscriber-only content:

  • Unlimited access to all Tes magazine content
  • Exclusive subscriber-only stories
  • Award-winning email newsletters

Already a subscriber? Log in

You need a subscription to read this article

Subscribe now to read this article and get other subscriber-only content, including:

  • Unlimited access to all Tes magazine content
  • Exclusive subscriber-only stories
  • Award-winning email newsletters
Recent
Most read
Most shared