Future Makers aimed to introduce programming to a wide audience of children, including those who don’t readily engage or see themselves as coders or designers of the future. Reaching out to younger children is key to meeting this objective. Children as young as 5 years-old were invited to ‘drop-in’ sessions where they could play with the concepts behind programming.
The following features of coding could be used to design different exercises;
- algorithms (a set of instructions)
- sequencing instructions (order of instructions)
- conditionals (instructions with conditions)
- debugging (figuring out what might have caused an error in a sequence of instructions).
Is this a computer?
Children were shown an image and asked “Is this a computer?” or “Does this have a computer inside it?”. They were asked how they knew it was/wasn’t a computer. Going further they could be asked questions to uncover their thoughts on what a computer really is. Does it think? How does it know what to do?
Guide a robot round a maze Algorithms
Some examples in everyday life are: a recipe, a knitting pattern, the instructions for putting together a piece of flat-packed furniture. Computer programs are just algorithms written in a programming language that a computer can run rather than in English.
To introduce this concept, the children played with a robot toy and a grid. The children must guide the robot through the grid but the robot only understands simple commands: “move forward or turn right”.
The facilitator first checks that the children understand what is required by asking them to show what “move forward” or “turn right” looks like using the robot. The children then make the robot follow the facilitator’s instructions. After each set of instructions, the facilitator invites the children to reflect on the exercise: “So, where did it start?”, “Where did it end?”, “What way did it go, what path did it take? Can you draw that path with your finger?” “Can you draw another way the robot could have gone and end up in the same place?” “Is there a simpler way?” This exercise asks whether or not children in their early years can understand that different algorithms could be used to make the robot end up in a particular square facing a particular direction.
What would you put on first? Sequencing instructions
Sometimes it’s not enough to carry out some instructions, you need to carry them out in a particular order.
For example, putting your socks on before your shoes or breaking an egg before you put it in the cake mix.
To test a child’s understanding of sequencing instructions and conditionals, picture cards with images of clothes were used, children were asked ”What would you put on first?” then encouraged to place the cards in the correct order. You cannot put your shoes on without first putting on your socks but you can put your hat and your coat in any order.
Sometimes we only carry out an instruction if a certain condition is true. For example, when getting dressed you’d only put a raincoat on if it was raining or likely to rain. When baking a cake you’d only replace 50g of flour with cocoa powder if you wanted to bake a chocolate cake.
Debugging helps you realise something is wrong with the sequence of instructions and we have to work out what might have caused it. For example: switching on a lamp and nothing happens. This could be because: the bulb has blown, the fuse has blown or there’s a power cut. If we switch on another light and it works we know it’s not a power cut. Next we could try putting a new bulb in. If that works, we know the fuse is fine and the problem is fixed. If that doesn’t work, we’d have to try a new fuse. This process of narrowing down the cause of a problem in order to fix it is known as debugging when we’re talking about a computer program.
There is a wealth of teaching materials, tools, toys and applications available. These open source materials simply provide a simple introduction anyone can use with children and/or pupils.