Course Information

The goal of this course is to introduce the field of computer science, its main subject areas, its recurring concepts, and its mathematical foundations via a term-long programming project.

Last time I taught the course (Fall 2000) we implemented a ray tracer for our project. This consisted of taking as input a description of a scene and producing an image as output. Re-doing the project this year is an option.

Another option is to write a library for compression, encryption, and decryption of English text. This is a more open-ended project which would allow you to come up with creative cyphers for secret communication and programs that try to break them.

Distribution

Your grade will be computed as follows: