Monday, March 9, 2009

Creating computer games to introduce programming

Do you like to play computer games? If you don't, I bet you know someone who does. Gaming is a big industry and it's a growing field. Have you ever played or watched a computer game and wondered how it was written? What skills are necessary in order to write a simple PacMan, Tetris, or Halo game?

Many students who are now entering college have literally grown up with technology. These students are not afraid to program a cell phone, set up TiVo, or even to install a driver onto their computer systems. However, not all feel comfortable with programming a small application. In fact, many students find programming, in the traditional sense, a bit dry. If it's not flashing and running from bad guys, it isn't all that interesting.

I currently teach COP1000 - Introduction to Programming at Santa Fe College in Gainesville, FL. Our programming classes have been taking a hit with the downturn of the economy as well as the news indicating that all the computer jobs are being sent overseas. Think about it - you may have called tech support for help on your computer and chances are you've spoken to someone in India.

I get calls from employers who are eagerly wanting to hire students who can program. The need is here. The problem is now just trying to get our students to become interested in programming. To do this, I'd like to use this blog to promote gaming as the course content for students to learn the programming structures. If chasing a bad guy means you need to program a loop - then by all means go for it!

Some of the topics I'd like to include in this blog will introduce logic, variables, decision-making, loops and arrays, just to name a few. Games will be used to introduce these terms and how they work. Hangman, Poker, Guess-a-number, finding the states and their respective capitals are just a few of the types of games that may be introduced.

These may not make sense now, but as this blog progresses it will be interesting to see how the course curriculum may benefit from this experiment.

Thanks for your interest and please let me know if you'd like to see any other topic included.

4 comments:

  1. Hi Debbie,

    This is great -- not only will I get to learn about my own topic but, by reading what you learn about teaching control structures through gaming, I'll get to learn about another topic that is of special interest to me. --> Liz

    ReplyDelete
  2. Debbie,

    I love your topic from a number of standpoints: every time I teach programming, I love to use games as a basis for teaching logic. The students seem to enjoy it. Also, one of the programs I manage at my college is our Game and Simulation Production degree program. In fact, I'm taking 10 of our students from 10 different campuses to the Game Developers' Conference in San Francisco at the end of March. We're all looking forward to that.

    What types of exercises have you used or plan on using? And what kind of programming environment do your students work in for your class?

    I'm really interested in seeing how your blog unfolds!

    - Hap

    ReplyDelete
  3. Hi Hap,

    How exciting to be able to take your students to the Games Developers' Conference. I know many students who would love to see what that's all about.

    Our intro to programming class uses C++ in the .NET environment. We stick strictly with console at this point. We were finding that students could set up a great form, but had no clue on how to program it. That's why we scraped the visual side and stuck with console.

    I'm finding (and it's not a big find here) that students seem to enjoy programming the games as projects. At the intro level, we use the random generator and play guessing games. Of course, as we grasp new concepts, the games become more involved. Hangman is always a favorite - I'm always amazed how much time student's spend on the hangman drawing itself! I've also done poker - again, the time spent actually drawing cards on the screen is amazing. AND - the games actually work quite well.

    I'd love to hear your ideas.

    ReplyDelete
  4. Debbie,
    I am excited to read your posts about programming because I've always wondered what goes into it! I didn't realize there was such a need for programmers. Your idea of introducing programming concepts through the use of games is wonderful! What a great way to get people excited about pursuing this!
    Kelly

    ReplyDelete