CSC 160
A First Course in Computer Programming

Spring, 2003

Syllabus Calendar Homework Assignments PSP Downloadable Examples Textbook Design recipes

Getting Help

My office hours (in Alumnae Hall 113A; if I'm not there, look around the corner in 112) are

We also have several tutors capable of helping with this course:

Aisha Ahmad
by appointment
Faith Barclay
office hours MW 2:00-4:00 in Alumnae 112
Arvind Budhram
office hours TTh 11:00-1:00, and possibly F 1:00-3:00, in Alumnae 112
Sasha Pogornets
office hours probably Monday 4:00-6:00 and Wednesday 12:00-2:00, also in Alumnae 112


The main textbook for this class is How to Design Programs, by Felleisen, Fisler, Flatt, and Krishnamurthi, published by MIT Press. The text of the book is available on-line, but I've also ordered the printed version through the bookstore; you are encouraged, but not required to buy the printed version.
This textbook uses the Scheme programming language. Why Scheme?

Recipes and Syntax Rules

You'll get through this course a lot more easily if you follow the design recipes! Here are the recipes and syntax rules we've seen so far, and you can also read about the spelling, grammar, vocabulary, and idioms of Scheme.

Software support

We use the software package DrScheme, which is available for free download for Windows, Mac, and Unix.

I've set up some forms for entering and viewing PSP data. You may use these forms to record defect and time information. To use the forms successfully, make sure your browser accepts JavaScript and cookies. (For those with a moral opposition to cookies, I assure you that they're all "temporary" -- they disappear as soon as you quit the browser.) (For more information about PSP, see the PSP page at Carnegie-Mellon or read Watts Humphrey's Introduction to the Personal Software Process.)

Reading List

Who should take this course?

This course is intended primarily for people who have not previously studied computer programming, both CS majors and non-majors. For non-majors, this course counts towards your math/science distribution requirement. Students who have passed at least a semester (half a year) of computer programming with a "B" or better, or who have a strong math background, may skip this course and go straight to CSC 171, or they may take this course anyway; some of the concepts will be familiar, but they'll probably still learn a lot.

You are visitor number to this page since June 4, 2001.
Last modified:
Stephen Bloch /