CSC 160
Computer Programming for Non-Majors

Spring, 2010

syllabus calendar homework PSP daily survey recipes
Syllabus Calendar Homework PSP Moodle
(incl. my textbook)
Pictures used
in my textbook
Worked Exercises
from my textbook
Daily Survey Design recipes

Lab software:

If you're working in Science 227,
you should just need the line
(require installed-teachpacks/picturing-programs)
at the top of your Definitions pane.
If you're working on a Windows machine in another lab on campus,
before starting DrScheme, download this file, unzip it, and double-click copyit.bat. It'll take a few seconds. Then you can run DrScheme as usual, putting the line
(require installed-teachpacks/picturing-programs)
at the top of your Definitions pane as usual. But you'll have to do this all over again every time you sit down at such a computer.
If you're working on your home computer,
follow the directions in Chapter 1 of the textbook to download and install the picturing-programs library once and for all. You'll still need the line
(require installed-teachpacks/picturing-programs)
at the top of your Definitions pane.
If you're working on a Macintosh in an on-campus lab,
I'm not sure how they're set up.

Course meeting

This course meets on Tuesdays and Thursdays from 3:05-4:20 PM in Room 227 of the Science Building. The last time I taught this course was Fall 2008.

Getting Help

My office hours (in Post Hall 203; if I'm not there, look downstairs in the computer lab, Post 102) are M 1:00-4:00, TTh 12:00-3:00. Student tutor Anton Soradoi can help with this course, and has office hours MF 9:55-10:55 AM, I think in Post 102. I think the Learning Center will be hiring some additional student tutors, but I'm not sure of that yet; watch this space.


The main textbook for this class is Picturing Programs: an Introduction to Computer Programming, which I'm still writing; it'll be available, chapter by chapter, on Moodle. I use a lot of pictures in the book; if you'd like to be working with the same pictures, you can download them from here. In past semesters, I've used How to Design Programs, by Felleisen, Fisler, Flatt, and Krishnamurthi, published by MIT Press, and you're encouraged to read parts of that book too.
We'll be programming in the Scheme programming language. Why Scheme rather than C++ or Java?

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 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. You are encouraged to install it on your home computer. Version 4.2.2 is installed in the computer labs on campus. The latest released version is 4.2.4; either one (or 4.2.3, in between) should work.

After you've installed it, please also download and install the picturing-programs teachpack, following the directions in Chapter 1 of the textbook.

Reading List

Who should take this course?

This course is intended primarily for people who have not previously studied computer programming, primarily non-majors. Math and CS majors are allowed to take the course, and will almost certainly learn something, but this course isn't part of the Math or CS major. For non-majors, this course counts towards your math/science distribution requirement.

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