Princeton University
Computer Science Department

Computer Science 217
Introduction to Programming Systems

Thomas Funkhouser

Spring 2002

General Information | Schedule | Lectures | Precepts | Assignments | Policies



You will be responsible for the material presented in every lecture. Some of that material will not be in the textbooks.


You should attend one TTh precept-pair each week.  As with lectures, you are responsible for the material presented in every precept.  Some of that material will not be in the textbooks.

Assignments:  Late Submission

You should submit your work on an assignment (electronically) before its due time. If you submit your work late, we will give you credit for it on this scale: You are granted three "free late days."  After using those free late days, we will grant extensions only in the case of illness (with a doctor's note) or extremely extenuating circumstances.  If you do have an extremely extenuating circumstance, please discuss it with us as soon as possible.  Please plan your work on the assignments so that travel, religious holidays, etc. do not cause you to submit it late.

Assignments:  Collaboration

Your first step when doing an assignment is to reach your own conceptual understanding of the problem and discover a path to its solution. We encourage you to discuss the assignment with friends during this time. Your second (and final) step is to write the code that solves the problem.  During that time, discussions with friends are no longer allowed.  You must write your program alone, or with help only from us or the lab assistants.

Examples of unacceptable behavior include:

Of course it is acceptable to ask friends generic questions about the tools and techniques that are prerequisites for an assignment, or to answer such questions.  For example, you may ask friends generic questions about the C programming language, the UNIX operating system, etc. at any time.

You are responsible for insuring that your assignment files are not readable by your classmates. We recommend that you store all of your assignment files in a private directory.  You can create a private directory using commands similar to these:

% mkdir cs217
% chmod 700 cs217
Failure to adhere to the assignment collaboration policy constitutes a violation of the University's honor code, with all of the associated consequences. We cannot accept ignorance of the assignment collaboration policy as an excuse for violating it. When in doubt, please ask us before acting.


You may post questions/comments to the course newsgroup. We will make every effort to respond promptly. We may also post unsolicited information to the newsgroup. You should check the newsgroup frequently, especially while working on assignments.

Alternatively you may send e-mail to us. In general, if you have a question/comment that will be helpful to other students, then you should post it to the newsgroup; if you have a question/comment that is specific to your work, then you should send us e-mail.


Your final grade is weighted as follows:
Midterms (2) :  30%
Programs (6): 60%
Class participation: 10%