Computational Thinking
How do you teach computing without a computer? More specifically, how do you teach computing without a computer to a group of very enthusiastic under 8s?
That was the challenge set for ISA’s high school programmers. David and Leo showed us how with a group of kindergarteners. They asked their younger peers - how would a robot make a sandwich?
David was the robot, Leo the programme and the children the programmers.
First, the children wanted the programme to tell the robot to make a sandwich - the obvious solution! But robots are stupid: they can only do exactly what they are told. Overwhelmed, the robot didn’t move. The children were told to break their instructions into steps. Step 1: put a slice of bread on the table, and so on. The kindergarteners learnt that In computational thinking this is called ‘decomposition’ and is the first thing programmers do: they break tasks down into separate parts. Then they sequence them.
It seems easy, but it was long before they met their first challenge. ‘Put spinach on the cheese’ they inputted into Leo the programme who passed on the instruction to David the robot. Robots are not bright, and this one put the entire packet on the cheese, wrapping and all. The children had to design a function for getting ingredients out of packets. Once designed they could abstract those steps to a general rule, and use them for any ingredients that came in a packet.
Slowly and through trial and error the students built up a series of steps that enabled the robot to make a sandwich. Their finished product was, on one level, a tasty snack; on another, an algorithm that could be transferred to any set of ingredients and not just cheese and spinach.
But kindergarteners don’t need robots to make them sandwiches. That is what mums and dads are for! The real lesson was a process of thinking: decomposing a complex task into simple steps; recognising patterns; abstracting from these patterns to make functions; putting it all together into an algorithm. Even a young child, given the right language, can describe their thinking; and once they understand what they are doing knowledge and technical skills fit neatly in. Content is not learned by rote, but understood on a deeper level.
There are many things to note about this experience: the opportunity to learn programming; the time to explore concepts deeply, and the space for children of greatly different ages to share in the joy of learning.
So how do you teach computing without a computer? You make a sandwich.
Comments
Post a Comment