CSC 160
A First Course in Computer Programming

Spring, 2002

Syllabus and Textbooks

The syllabus is available in HTML, LaTeX, and DVI.
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?


An updated schedule will contain the latest updates to homework due dates, lecture topics, etc. Please check the schedule regularly and keep up on the assigned reading!

Homework Assignments

Partners for upcoming assignments

If you need a partner for the next homework, please e-mail me immediately and I'll try to match you up with someone.

Recipes and Syntax Rules

You'll get through this course a lot more easily if you follow the 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 freely-downloadable software package DrScheme.

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

Getting Help

My office hours (in Alumnae Hall 114; if I'm not there, look next door in 112) are

We also have several student tutors who can help with this course:
Tutor Aisha Ahmad's office hours (in Alumnae 112 or 118) are Tuesday and Thursday from 12:00-2:00 PM.
Tutor Arvind Budhram's office hours are MWF 1:00-3:00 PM. He'll be in Science 227 immediately after class; if nobody stays there to ask for help, he'll move to Alumnae 112 or 118.
Tutor Chane Kampanatsanyakorn's office hours (in Alumnae 112 or 118) are Wednesday 11:00 AM-12:00 noon, Thursday 3:00-5:00 PM, and Friday 1:00-2:00 PM.
Various computer science tutors in the Learning Center (Earle Hall, lower level) are on duty Monday through Friday from 9:00-11:30 AM.

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 /