Game Development:
Intro to Computer Science

CSC 105
Union College
Fall 2009

Exercises about dictionaries and to practice for the final are on Codelab.

Helpdesk in Olin 102, Sun-Thu 7-9pm.

Course Description

Introduction to the field of computer science with the theme of computer games. Introduces students to algorithms, basic data structures, and programming techniques. Computer game development is used as an example application area and students implement their own games throughout the course. Includes a laboratory.

When and where

MWF 11:45-12:50, Olin 102
TH 1:55-3:40, Olin 102

How to get in touch with me

office phone: [518 388] 6554
office: Steinmetz 233
office hours: Tuesdays 1-3, Fridays 1-3, by appointment
more info about me:

Textbook and Software

Starting Out with Python by Tony Gaddis, Addison-Wesley, 2009.
Amazon. Also available as an online book from CourseSmart.

Check the "Resources" page for more books as well as links to the Python online documentation.

We are going to use Python and the pygame library for the practical programming component of this class.

We will also use CodeLab, which is an online tool for practicing basic programming skills. More information on how to register for CodeLab etc. will be given in class.

Structure of this course

The classes will be a mixture of lecture, discussion and hands-on exercises.

There will be weekly homework assignments. Homework assignments are for you to play with and reinforce the concepts we talk about in class. They will normally be graded (see below), except for homework due in weeks where there is a take home exam. I encourage you to form study groups to work on the homework assignment. However, study groups should not be more than three people and you need to document on your assignment everybody who contributed to the solution as well as all resources you consulted. At the end of the term, you will design and develop a complete game of your own as a final project.

After most classes I will assign a small batch of CodeLab exercises. Ideally you will do those exercises right after that class and before the next class session. Once a week (on Wednesdays), I will check whether you have completed the CodeLab exercises due during the preceding week.

Three times during the term, in weeks 4, 7, and 9, I will give you a practical take home exam. That is, you will get a set of programming exercises (very similar to the homework assignments) and a set amount of time to solve them. Differently from the homework assignments, you have to work completely on your own for these exams.

Finally, there will be pen and paper exams: four quizzes on the first four Mondays of the term, one hour long exam in week 7, and a final exam during finals week.


participation10 %
CodeLab, homework assignments,
final project, lab and in-class assignments
take home exams15%
quizzes15 %
midterm exam15 %
final exam20 %

What you need to do for this course

Special Arrangements

If you need special accomodations because of a disability or other reasons, please come to see me as soon as possible so that we can find a solution. You may have to get proper documentation from the Dean of Student' office. All such discussions will, of course, remain confidential.