Mikey (as he often likes to be called) Goldweber started off the session by looking out at the audience and saying "This is the group of people who want to save the world". Yes. Yes we do. We want the world to be a better place, and how really terrific it was to be in a room full of people who felt likewise and are using their professional experience and skills to that end. I had a no holds barred warm and fuzzy moment.
Moments later, Mikey G. made a provocative statement that caused us to stop in our tracks:
"What is the message we send when we teach games in introductory computing?"
If you aren't in computing education you may not realize the full impact of that question. Many computing programs have infused game development, or "gamification" as it is sometimes called, into the curriculum. There has been solid evidence in favor of doing so. Games appeal to many students' interests. Replacing deadly dull applications (e.g. the fibonacci sequence, tic-tac-toe, vending machine simulation) with game development has become quite popular. Faculty like it, students like it, enrollments in these classes often increase.
On the other hand...games are a form of entertainment. Mikey's question asked us to consider what we are saying about what computer science is when we introduce it via entertainment. It certainly made me stop and think. Does this approach help our overall perception problem? Are we as professionals primarily about entertainment? Are we primarily about short term mindless gratification? Is this a beneficial way to teach first concepts and principles?
Interestingly, there is evidence that although students may enjoy some early gamification, it isn't enough to sustain their interest in studying computer science. After all, this field isn't all about games. In fact, it is very little about games, unless you just happen to get a job as a professional game developer. A lively discussion ensued as some in the room wanted to defend the game approach.
Mikey went on to suggest that there was a difference between appealing to student interests and student values. He posited the idea that in fact, appealing to student values was a more effective way to engage students and that it also provided an opening, not provided by most gamification, to address meaty societal concerns. Also something to stop and ponder.
How to do it? The session members discussed quite a few approaches. One division stood out: there are some areas of integrating social good into computing that necessitate additional content knowledge in another field. In this case it might pay off to collaborate with a content expert in that other field. Or a variety of other approaches to bring in that depth knowledge. Then there is the wrapper approach, which is to repurpose something you are already teaching.
I loved the radioactive rodent example. Apparently, during the Fukushima power plant crisis in Japan a whole lot of mice became radioactive. Now, humans may obey instructions and stay outside the radioactive perimeter, but mice don't obey instructions They migrate wherever they feel like going. Along the way they may die, they may get eaten by other animals, they may (nay, will) poop. This is a problem. So the Japanese sent in robots to hunt down and kill the mice.
I'm not going to comment on the complicated ethics of mouse slaughter. But to some people, this would be a relevant issue. That question did not come up this morning, but I point it out because I know people for whom killing any living animal presents an ethical quandary. An interesting ethics question - the value of human life as compared to animal life. Are there alternatives to addressing the contamination problem? How might the robots be reprogrammed? What are the costs and benefits? Where do values fit into the decisions?
But, back to the discussion this morning. One session member told about how he turned a cops and robber application in his introductory computing class into a cat and mice application. Instead of a police officers hunting down bad guys, he turned the robbers into mice and the cop into a cat. The amount of work on his part was minimal and suddenly he had an activity for his computing students that engaged with a contemporary complicated social issue. And taught core computing concepts at the same time.
This session was chock full of examples of how computing could connect with values rather than interests. Others included, water pollution (modeling?), voting systems (security? algortihms?), sexually transmitted diseases (graph theory), Red Cross disaster relief (Dijkstra's shortes path algorithm).
That was just the beginning. We hadn't even gotten to lunch yet.