Sunday, September 25, 2016

Huang - Board games are fun (and how game design supports computational thinking)

To refer back to Grover & Pea’s 9 elements of computational thinking, the two aspects most strongly or easily supported through making and playing games are “efficiency and performance constraints” and “debugging and systematic error detection”.

As illustrated by the case study on Jorge creating a variation of Metal Slug, there is a large difference between playing and making video games (Peppler & Kafai 2007). While playing video games allows for interaction with interfaces and various game design activities, it is through designing these interfaces and games that one recognizes the difficulties and challenges. Just as teaching and designing lesson plans affords a more in depth understanding of the material, programming and designing games allows for a deeper analysis of the inner workings of interfaces. Understanding the code and algorithms that are in place behind games gives students the chance to explore efficiency and performance constraints. This is often missed while kids play games, as the seamless shifts in character movement and scene transitions seem to come naturally. However, programming affords the opportunity to examine how those movements and transitions appear so seamless.

The other element of computational thinking that I think is very strongly supported by making and playing games is debugging and systematic error detection. When creating programs, one of the really important aspects to remember is that the computer is only designed to do what you tell it to. This is a concept that I think children might struggle with at first. However, designing games is one of those areas where students may have an easier time understanding this concept. Kids usually come to the computer with an idea of what they want to happen in the game, and this knowledge helps them in the debugging process. They come with an idea, attempt to write code to implement this in the program, and then do a trial run. When this doesn’t quite work the way they want, they return to the code, then run another trial run. This cycle of error detection and debugging comes naturally when designing games and thus is one of the most easily supported aspects of computational thinking.


On a slightly related note, I love the game Pandemic and love that there are people like Berland & Lee that perform studies on why Pandemic is an awesome game (besides the fact that it is a lot of fun). It’s interesting that we all play games, and yet don’t realize how much we are actually learning from playing them.

No comments:

Post a Comment