Welcome to MSDN Blogs Sign in | Join | Help

Computer Science Teacher - Thoughts and Information from Alfred Thompson

Alfred Thompson's blog about teaching computer science at the K-12 level. Alfred was a high school computer science teacher for 8 years. He has also taught grades K-8 as a computer specialist. He has written several textbooks and project books for teaching Visual Basic in high school and middle school. Alfred is the K-12 Computer Science Academic Relations Manager for Microsoft and is trying to be the Microsoft Education Blogger.

Syndication

News


Featured in Education.AllTop.com



TwitterCounter for @alfredtwo




The Problem with Games in Computer Science Class

Leigh Ann Sudol is one of those exciting and energetic teachers that make one ask "where were teachers like that when I was a student." She's awfully smart and has taught computer science both in high school and more recently at Carnegie Mellon University. I first met her while grading the AP CS exam a number of years ago. I was her "acorn" which means she was in charge of training me as a grader. What a ride that was - let me tell you!

So when Leigh Ann challenges the rush toward using games and robots to teach computer science as short sighted and with only short term benefits it made me think. She says:

I believe that the “programming to write games” approach in isolation is actually incorrect in its underlying premise that because students enjoy playing games, teaching them to program games will motivate them to deep learning in CS.

I don't know that everyone rushing to use games in their computer science class has that for their underlying premise and I said so in a comment at her blog. I thought I might bring the discussion up over here as well, add a few more thoughts, and see what others think.

My motivation for using games in high school computer science classes (and textbooks) was largely several fold.

  • Students understand the games which saves me time
  • Games are generally seen as more relevant than contrived examples
  • Testing games is more fun than testing other projects which makes students more likely to test their programs
  • Students can more easily share game projects with peers

Take a game like tic tac toe which I often used as an early project for decision structures and arrays. Students all know how to play the game so they know when it works and when it doesn't. I don't have to explain why a particular result is wrong. I don't have to explain the rules in great detail. Setting the back story is easy.

Since students understand the game and have played it all their lives they see it as relevant. Is it an important skill/concept that prepares them for life? Not hardly but I can wait for later to take them down that path.

Students, because they know when the game is right, can test it easily. Not only that but they can get their friends to help. This adds a cool factor that I believe helps some students. When is the last time kids got together to have fun proof reading each others "perfect paragraph?" Ok there is a contrived counter example but you get the idea.

Now I do agree with a lot of what Leigh Ann writes about "the reasons to learn and explore CS are larger in nature." Clearly there are a lot more great reasons to learn computer science than to create games or run robots around the room. And there are programs looking at exploring computer science in the context of other diciplians. Georgia Tech's "Media Computation" for example. Or the Connections program at Wheaton (MA) College that intigrates computer science with a number of different diciplanes including a genomics program that integrates biology and computer science.

Each of those seems to attract students who are interested in "the other field" ie the one that isn't computer science to some extent. But at least there is some intrinsic motivation to learn the CS concepts. The fact is that there are a lot of areas that require computation and those of us who are trying to encourage students to enter the field probably need to use every tool at our disposal.

Published Tuesday, September 04, 2007 11:00 AM by Alfred Thompson

Comments

# re: The Problem with Games in Computer Science Class @ Tuesday, September 04, 2007 11:48 AM

Computer programs are tools used to do something.  Games are an easily recognized domain and there are many others:

- graphic arts

- music

- text

- communication

Computers as personal enrichment tools have many possibilities. There are so many things that can be done and many of them have not been thought of yet or could be implemented much better.

Doug

# re: The Problem with Games in Computer Science Class @ Tuesday, September 04, 2007 2:25 PM

ok, so thanks for the plug Alfred, but I do want to point out the phrase "in isolation".  I was looking at game programming in the classroom not as an educational tool for understanding individual assignments (in fact I have a battleship example I use with my classes that I hope will be included in the Nifty panel at SIGCSE in March) but more the idea that using games in classes as a motivator for enrollment and retention.

Citations: "Teaching with games: The minesweeper and asteroids experience" - 2001 CCSC - makes reference to the fact that when current cs students are asked games and game playing is what got them into CS.

"CSE - Incremental game development in an introductory programming course" - ACM Southeast 1995

And these are just a few.  I totally believe in using games in classes to motivate individual assignments, but I think that needs to be tempered with "broader picture" type ideas as well.

:)

Leigh Ann

New Comments to this post are disabled
Page view tracker