## The Activities

**Topic: Proofs:**Book: Cat Secrets by Czekaj. This is a very funny book about a bunch of cats trying to prove whether the reader is cat or not. Afterward we talked a bit about proofs and how they would prove this.**Topic: Proofs, Pigeon Hole Principle:**Prove that if your first grade class has 15 kids in it, then at least 2 of them must share the same birthday month.**Topic: Spatial Reasoning:**I made some shapes (some of them very similar to each other), out of Pattern Play Blocks, and then I took pictures of various sides of the shapes. We printed out a worksheet with the pictures, and the kids had to say which shapes was in the picture, and which side the camera was on.**Topic: Programming:**Teach the kids a simple computer language that has ‘print’ ‘loops’ and ‘variables’. I told the kids that they were all computers, and that they had to follow some programs I had written, just like real computers have to follow programs.

Program 1 ———————- Print “i” Print “love” Print “math” |
Program 2 ———————– Print “i” Do 3 times: ___Print “love” Print “math” |

Program 3 ———————- Print “L” Print “i” Do 2 times: ___Print “t” Print “L” Print “E” |
Program 4 ———————– Box_A = 1 Print Box_A Box_A = 2 Box_A = 3 Print Box_A |

Program 5 ———————- Box_A = 100 Do 3 times: ___Print Box_A ___Box_A = 5 |
Program 6 ——————– Box_A = “Elsa” Print “Anna’s sister is” Print Box_A |

## Preparation

We decided on the commands we wanted to teach, and made short programs demonstrating them. I built the rainbow block structures, took pictures, and David made the worksheets. Here are the two worksheets: One, Two.

## How did it go?

All 6 kids were at the circle, which led to a high-energy environment, but overall it went pretty well. The spatial reasoning was easier than expected, and the programming was much harder.

#### Birthday Proof

I started this by asking the kids how many people are in their 1st grade class. The answers varied from 15 to 24. Then I asked them if they thought two of the kids in their class had the same birthday month. They started giving examples of kids in their class who have the same birthday. So I said that I claimed that in any class of 15 kids, at least two would have the same birthday month.

Unfortunately, some of the kids got stuck on the idea of their own classes, so they kept wanting to work on 22 or 24 kids instead of 15. Eventually one kid said that it must be true because 15 is higher than 12. I asked her why that was important? and she had a bit of trouble explaining. I got a paper, and wrote the 12 months on it. Then I got out 15 base ten cubes to be the kids.

They immediately started assigning one block to each month. At the end there were 3 blocks left, so they said they’d proved it. I said, but what if you just put all the leftovers on September? But the kids said “No, then September would have more than 2 kids”. What if I just take these 3 cubes? “Then you wouldn’t have 15!”. So I was pretty convinced.

#### Spatial Reasoning

I expected this to be a bit difficult, because drawing the shapes was so tough last week. But this turned out to much easier than expected. Almost all the kids did well on this. As the kids finished the first sheet of photos, I passed out the second one. Eventually, one of the kids noticed that one of the photos could be from either of two shapes. I said to just put down both answers. Several kids later independently also noticed this.

#### Programming

The kids loved the idea of pretending to be a computer and following the programs.

The first 3 programs were quite easy…everyone understood the idea of the “print” statement, and even loops were no problem. The kids were able to guess what that meant.

Program 4 is the first one that has variables. This concept turned out to be way harder than I expected, though I think I’ll be able to a better job explaining it next time.

I told the kids that “Box_A” is called a variable, and that we should write “Box_A” on our paper, and underneath, put the value: 1. They all did this. The next command says Print Box_A. I asked what they thought that meant. One kid said we should write “Box_A”, and several other kids agreed. I then explained that it means we should print whatever is the value of Box_A.

The next line: Box_A = 2. The kids figured out we should cross off the 1 and put a 2 in Box_A. I agreed, and then all the kids started to do that…but they had different ideas about whether to cross off the old value, or keep it there, or erase it. Also, a couple of the kids crossed off the ‘1’ that they had printed, and put a ‘2’ there too. I tried to explain that what we print can never change but what we keep in the box can.

One kid didn’t want to put a 2 in Box_A because she saw that the next command was Box_A = 3, so she’d just have to cross off the 2. Several kids were concerned that we didn’t print the 2, but I said that they are computers, and they have to do what the program says.

By this time, 4 of the 6 kids were pretty confused, so we restarted Program 4 with clean sheets of paper. This time I asked the kids to draw a line that would be our “Printing Area”. Then we put “Box A” off to the side so it wasn’t in the way. This time it went a bit more smoothly and the kids seemed less confused. They were concerned at the end that the answer was ‘13’ which didn’t make sense.

After this, we worked slowly through Program 5 and 6…the kids seemed closer to understanding, but next time I’ll make sure to differentiate the ‘Printing area’ from the variables more clearly.