How can schools embed the skills and knowledge needed to excel in computing, with limited screen time and resources?
It’s often assumed that to teach coding, you need access to a computer. That might be true for a lot of coding activities, but it’s also true that a great way to introduce basic coding concepts is through the use of games and activities that don’t need a computer. They might require nothing more than pencils and paper, Lego bricks or even involve physical activity outside or in the dining hall. This type of activity is often called “Offline Coding” and they can teach children to begin to think like a coder before they start using a computer to take things further.
Introducing the terms
Algorithm: Put simply an algorithm is just a set of steps that need to be followed in order to solve a problem. These don’t necessarily have to be limited to using a computer, there are plenty of opportunities for exploring them in other subjects or everyday activities.
Decomposition: This involves breaking things down into smaller steps. You could use an example in terms of making breakfast – what are the steps involved? Some of the examples below require the children to break down a more complicated task into simpler steps.
Abstraction: This is the process of simplifying something to make it easier to understand or use. As an example, you could use a London Underground map (or any another local transit map). Discuss with the children how this shows how each of the stations links together, but doesn’t show you exactly where each station is in relation to each other. They could compare it to a Google Map of the stations.
Put the children into small groups of 4-5 and provide each group with large sheets of paper and marker pens. Ask them to write out an algorithm (sequence of steps) for an everyday activity such as brushing their teeth or making breakfast. Ask the groups to show their algorithms to each other. Act them out. Are they specific enough? Have they missed out any important steps or details?
For inspiration, check out the video “Making a jam sandwich” by educational expert, Phil Bagge, (available on YouTube) which demonstrates a nice way to act this out with a class with the teacher playing the role of the robot.
Draw a Monster
Give the children some simple instructions to draw a monster and ask them to follow the steps. For example: draw a circle, add some eyes, add antlers, add four legs. Ask them to compare what they have drawn to what others have drawn.
Then put the children into small groups. Within each group, each person sketches out a monster (without showing the others) and writes an algorithm to instruct someone else to draw it. Each member of the group takes it in turns to read out their algorithm and the others can try and draw it. Then compare what they’ve drawn.
Discuss with the children the need for accurate instructions. How precise do you need to be to replicate the monster accurately? What information do they need and what information is unimportant?
An alternative to this activity is to build a shape out of Lego bricks, then try and give instructions to replicate your build.
This could be a precursor activity to using floor roamers or turtles such a Bee-Bots. Put the children into small groups of 3 or 4. Ask them to write an algorithm to guide one child around the room using simple, pre-set commands. They can use the following commands: Start, Forward One Pace. Backwards One Pace. Right turn 90o, Left turn 90o, Stop.
As an extension task, could they use pick up and put down commands to have their robot deliver a package to another part of the room?
The children could devise an exercise routine comprising four different types of activity such as star jump, press up, run on the spot. Write each activity on a large sheet of paper, one per sheet. Decide on some finishing moves – sit cross legged, strike a post, lie on the floor and write these on some more sheets of paper. On a final sheet of paper write “Go”. The children can lay these pieces of paper on the floor to create an algorithm for a routine. Start with Go and end with a finishing move. Then carry it out.
As an extension, you could introduce the idea of a loop. Put one activity inside a hoop and write a number between 2 and 5 on a sheet of paper next to it. The activity inside the hoop can then be repeated for however many times the number on the paper tells them to.
Binary numbers form the basis of all coding languages. This activity gets the children thinking about how we write numbers in binary. Ask the children to get into groups of 4 or 5, and each group forms a line. Each child is going to represent one binary number as either a zero or a one. They should raise their hand to be a 1 and keep it down to be a zero.
The child furthest to the right in the line represents 1, the second 2, the third 4, the next 8 and the next 16. The teacher then calls out a number and the children work out how to represent it in binary. For example 16 would be 10000, 12 would be 01100 etc.
[Photo by John Schnobrich on Unsplash]
About the author
Danny Nicholson is an independent trainer and consultant. He is a former science teacher and now delivers computing and science training to teachers all over the UK as well as overseas. He regularly blogs about educational technology at The Whiteboard Blog and can be found on Twitter as @dannynic.