CS Unplugged For Kindergarteners

September 12, 2016   

I have done a series of computer-sciency exercises with Kindergarteners during their weekly maths groups. I was inspired by the original CSUnplugged website and the first exercise is directly off that site. The children’s literacy and numeracy skills weren’t quite up to doing all the subsequent exercises, and our lessons were only 40min long, so I improvised the rest. Here’s my lesson plan:

Week 1 - Binary Numbers

For this activity, I used the templates provided in the CSUnplugged Binary Numbers Worksheet to create a set of cards for each student. I also got 5 A4 pieces of cardboard, and put 1, 2, 4, 8 and 16 dots on them, just like the little cards, but bigger.

First the whole group (about 10 students) completed a table of binary numbers on the playground floor: attachment:BinaryNumbers.jpg, with each student taking their turn to write their number.

Then they sat down and completed the first worksheet. We didn’t have time to complete the 2nd worksheet in class, so the children took it home to do if they wanted to.

This exercise is really good at getting the children practicing quick addition and subtraction. It’s also a good pattern spotting exercise.

Week 2 - Encoding and Decoding our names

In this activity the children used the cards from the previous lesson to represent their first name in binary. They filled out this worksheet: attachment:binary_name.pdf. Then they handed in their worksheets to the adults, who cut out the ASCII column, and gave the worksheet to a random classmate. The children then had to work out whose name they had by decoding the binary name!

They enjoyed this code cracking exercise!

Week 3 - Finding patterns, Square numbers

The children were learning about areas and measurement in their normal lessons, so we did a count the area of a square exercise in this extension lesson. We gave them small plastic cubes, and told them to make squares of various sizes, starting with an edge length of 1, and working their way up to 12. They counted the little squares in each big square, and wrote it all up in this worksheet : attachment:squares.pdf. After they’d finished making a few squares (at least 6 or 7), they were asked to find the numbers in the “number of squares” column in the grid below. If they’d done all 12 before doing this part of the exercise, they quickly observed that the coloured in squares form a diagonal line in the times table. If they hadn’t finished, they were asked to guess what the result of the next big square would be, and then try it out and see if they are right.

The idea of this exercise was for them to spot patterns, and use patterns as a tool for prediction. This is something we do a lot in computer science. This exercise could be continued for a few more sessions, and they could learn more about the times tables and its relationship with the areas of squares and rectangles.

Week 4 - Sorting and decision trees

The children were learning about sorting objects in class, which inspired this activity. I borrowed a big box of buttons of varying shapes and sizes from the local preschool, and sorted them based on their shape, size and number of holes until they were in a few different groups. I stuck these little round coloured stickers on the back of each button, using a different colour for each group. My own children helped me sort the buttons and stick the stickers on. I split the labelled buttons into two groups, a training set, and a testing set. I also had a substantial amount of unlabelled buttons.

At school, we had a group of about 10 students. I gave each student a handful of buttons from the training set, and ask them to have a look and feel of them. The children’s eyes lit up, because buttons are cool! I asked them to split up their buttons based on the colours of the stickers on the back. Once they’d done this, I asked them join up with a partner, combine their groups of buttons, and try to figure out what the buttons of the same colour have in common. Most of the children worked out that the number of holes a button had were significant, so we started our decision tree with the number of holes. Then we looked at each subgroup, and the children came up with the properties that are the same and different in each subgroup, and we constructed the rest of our tree. The final tree looked like this: attachment:decision_tree.jpg. I showed the students the buttons I’d reserved in my testing set, and taking turns, they checked each button against the decision tree to make sure it was the right colour.

Last, the children got to take turns being “robots”. They pick a random button out of the unlabelled set, and use the decision tree to work out what colour sticker it should have on its back. Then they could stick the sticker onto it. I think this made the whole exercise fall into place for them, and they liked this bit the most.

Week 5 - Your Friend is a Robot

We haven’t done this activity yet, but what I wanted to do was make an obstacle course/maze in the classroom/playground. We’d have a volunteer “robot”. The children would write instructions for the robot to get through the obstacle course. We could have a set of pre-defined instructions written on cardboard that they could put in sequence in order to do this (a bit like scratch blocks!).

We’d go through several iterations of the algorithm, in order to iron out bugs. Then we could change the obstacle course slightly, and get the children to “re-factor” their code so it also works with this new obstacle course (for example, say walk until you get to the wall, then jump, instead of saying walk 5 steps then jump).

Later on they could start playing with Kodable on the iPads.

This would tie in with their lessons on distance and direction. It’d also get them to think algorithmically.