Asee peer logo

Programming Games To Learn Algorithms

Download Paper |


2007 Annual Conference & Exposition


Honolulu, Hawaii

Publication Date

June 24, 2007

Start Date

June 24, 2007

End Date

June 27, 2007



Conference Session

Programming for Engineering Students

Tagged Division

Computers in Education

Page Count


Page Numbers

12.1191.1 - 12.1191.14



Permanent URL

Download Count


Request a correction

Paper Authors


Timothy Baibak Kettering University

visit author page

Tim Baibak graduated Summa Cum Laude from Howell High School. He is a Computer Science Major at Kettering University and currently a Software Engineer Intern at Gabriel Roeder Smith and Company. Apart from programming, he enjoys tennis, fishing, and playing video games.

visit author page


Rajeev Agrawal Kettering University

visit author page

Rajeev Agrawal received his BS and MS, both in Computer Science, from India and currently working on his PhD thesis at Wayne State University. Since 2001, he has been with Kettering University as a faculty member in Science and Math department. His research interests are Content Based Image Retrieval, Data Mining, eGovernment and Personal Data Privacy.

visit author page

Download Paper |

NOTE: The first page of text has been automatically extracted and included below in lieu of an abstract

Programming Games to Learn Algorithms


This paper discusses using the creation of computer games as a Computer Science course curriculum. It illustrates the benefits of such a curriculum, being that it would be a fun and engaging learning environment, it would attract new Computer Science students, and it would provide a solid foundation for the understanding of how to create algorithms. It goes on to suggest different kinds of games that could be assigned in a course, as well as the kinds of algorithms that can be learned in this process. Finally, this paper demonstrates different types of programming tools that can assist in the creation of the video games, eliminating some of the less important and more complicated algorithms necessary to make the games function, leaving the core ideas that are important for the students’ growth.

1. Introduction

“Games are thus the most ancient and time-honored vehicle for education. They are the original educational technology, the natural one, having received the seal of approval of natural selection”1. Written by Chris Crawford, in his book The Art of Computer Game Design, this statement proves the importance of games in any aspect of education. Games have been used throughout time as an instrument of instruction for all different aspects of life. Puzzles to learn logic, mathematical games to enhance basic math skills, and even reading games to increase reading ability have all been used successfully to teach children the basic skills that they will need in life. It logically follows, then, that using computer games is an effective way to teach computing skills, and utilizing course curriculums that teach how to program computer games would invariably teach the basic skills required to program anything.

While learning basic programming skills, students who are assigned to program video games will learn the ability to formulate algorithms to solve particular problems, and will do so not only because are they having fun in creating these games, but they are also driven by a desire to solve the problems imposed in order to create something that they can be proud of creating, and show to their friends and relatives.

There are several benefits to teaching through the guided creation of video games. Not only does it provide a fun learning environment, but video games require several different kinds of algorithms to function, including database management algorithms, collision algorithms, input algorithms, path-finding algorithms, and even graphical algorithms. Even having students program simple arcade games, such as a Pong style game or a Pac-man style game, could cover pretty much all of the topics introduced in a traditional intro to programming course, while providing the educational drive for students to complete their work and discover more efficient algorithms to solve any problem they might encounter.

Programming games will encourage students to learn more, and to apply what they learn to create new things, reaching the ultimate goal of education. Through the establishment of programming games as a core curriculum of Computer Science classes, students will learn

Baibak, T., & Agrawal, R. (2007, June), Programming Games To Learn Algorithms Paper presented at 2007 Annual Conference & Exposition, Honolulu, Hawaii. 10.18260/1-2--1748

ASEE holds the copyright on this document. It may be read by the public free of charge. Authors may archive their work on personal websites or in institutional repositories with the following citation: © 2007 American Society for Engineering Education. Other scholars may excerpt or quote from these materials with the same citation. When excerpting or quoting from Conference Proceedings, authors should, in addition to noting the ASEE copyright, list all the original authors and their institutions and name the host city of the conference. - Last updated April 1, 2015