Voices Off!

“Hello, my name is Mr. Farmer and I am a computer scientist. Who thinks they know what a computer scientist does?”

“You use science to work on computers.”

Well, I suppose I should have seen that coming.

This week I gave my “I’m a scientist” lesson. Usually when I tell someone I study computer science, they assume that means I build or fix computers for a living. But what I am really interested in is programming languages and tools for working with them. To quote Edsger Dijkstra: “Computer science is no more about computers than astronomy is about telescopes.”

My inquiry-based lesson plan had the students working in groups to create instructions for building a small Lego structure. I chose Legos because they are fairly abstract but still “hands on” enough to engage the students. My goal was to get them thinking about formal languages for describing how to build/compute something.

After 15 minutes, I had each group dismantle their structure and pass the pieces and instructions to another group, which then had to rebuild it. Afterwards, we compared the results to pictures of the original structures. There was rarely any resemblance.

The idea was to show that instructions in natural language are usually ambiguous or poorly specified, and depend greatly on context. I feel like this came across strongly to each class, especially as we compared the results. When I asked what had gone wrong, they had great answers, and we explored as a class why phrases like “on top of” and “the blue brick” were too ambiguous.

Next we worked on creating a formal language for describing how to build a Lego structure. This part of the lesson was more hit or miss. One class had great suggestions for describing shape and position using a coordinate plane. Another class stayed focused on the fact that Legos usually come with picture-based instructions, so I spent considerable time discussing why Computer Vision is a hard problem.

I certainly learned a lot about managing a classroom of eighth graders. I can now yell the words “Voices Off” like a pro. Keeping them focused and engaged can be tiring, and my teacher was very helpful by suggesting some adjustments I could make to streamline things. Little things like giving all the instructions before splitting them into groups made a huge difference in the amount of time it took to get everyone going. Also, being explicit about what I was trying to teach them (designing a programming language) at the beginning helped keep them focused.

Overall I think the lesson was a success! We’ll see how their “homework” turns out next week. (I asked them to use the language we developed in class, or one they create, to design their own structure.)


About Andrew Farmer

I am a PhD student in Computer Science at the University of Kansas. I'm interested in functional programming languages, compilers, and language transformation tools.
This entry was posted in 2011-2012 GK12, Uncategorized. Bookmark the permalink.

2 Responses to Voices Off!

  1. Drew,

    You did an amazing job with this lesson. Not only did it introduce to the class what you do as a computer scientist but you took on the task of hands-on group work on your first time out. You took suggestions to heart and adjusted the lesson accordingly as the day progressed. Simply teaching is taxing but doing hands-on work and using groups is ambitious….I tip my hat to you Mr. Farmer!

    It was wonderful to watch each block of students focus on different parts of the lesson differently. I can tell you that you are making a difference with the students. The different perspective on math is appreciated and refreshing for the students.

    I am excited to see their homework as well. Hopefully on your next lesson you will only have to say “voices off” 2000 times instead of 4000!

  2. Nice! This was a fun Science Olympiad event back in the day. I just now realized a coordinate position relative to the last placed block might be a good way forward…

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google+ photo

You are commenting using your Google+ account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )


Connecting to %s