CPS 4
Fall 2001

Home
Administrivia
Calendar
Students
Quizzes
Resources

Administrivia

Course meetings will be on Monday, Wednesday, Friday from 2:20-3:35pm in room 229 of the Social Sciences Building.

Staff

Robert C. Duvall
Office: D228 LSRC
Office Hours: TBA, or any time for quick questions or by appointment
Email: rcd@cs.duke.edu
Phone: 660-6567
 
Dietolf Ramm
Office: D226 LSRC
Office Hours: TBA, or any time for quick questions or by appointment
Email: dr@cs.duke.edu
Phone: 660-6532
 
Undergraduate TAs
Rafael Angelats
Rob Reagan
Day Sunday Monday Tuesday Wednesday Thursday Friday
Class (2:20-3:35pm)
SS 229
  Rob   Rob   Rob
Evening (7-8pm)
SS 229
Rafael Rob Rob   Review  

Text Books

You will use one primary book as well as online readings in the course. Copies are available at the Duke book store, but you can find also find it and other useful resources at the Gothic bookstore, Barnes and Noble (also at New Hope Commons), or Amazon books.
 
Prelude to Patterns in Computer Science Using Java by Ed C. Epp, Franklin Beedle & Associates
 
In general you should read the text in order to be prepared to ask and answer questions in class. If you have looked at material before it is discussed in class you will get much more out of the class work. Although time will be given at the beginning of lecture for you to ask questions about the reading, the majority of the lecture will be an extension of the reading, not a summary.

Computing

This course will be taught in a workshop format in an Interactive Computer Classroom, ICC, that contains twenty HP workstations running Windows. If some of the software and descriptions do not include other computing platforms, like Macintosh or Linux, it is not meant to show a bias, simply the reality of the working environment.

In general, students will be expected to be active participants in group exercises involving the computers available during class time. This makes it vital that you prepare before coming to class. In fact, most of the graded work for the course will be done during the class meeting time and why we feel that three 75 minute periods each week are needed. 

You should expect to work with another student during class. This process is often referred to as pair programming, which is defined as follows:

Two programmers working side-by-side, collaborating on the same design, algorithm, code or test. One programmer, the driver, has control of the keyboard/mouse and actively implements the program. The other programmer, the navigator, continuously observes the work of the driver to identify tactical (syntactic, spelling, etc.) defects and also thinks strategically about the direction of the work. On demand, the two programmers can brainstorm any challenging problem. Because the two programmers periodically switch roles, they work together as equals to develop software.

-- Laurie Williams, North Carolina State University

In other words, it is essential that all students in the group are active participants. Done right, this can be a very positive experience for all involved. Here are some students enthusiastic responses to pair programming.

Policies

Collaboration
Grading
Late assignments
Submitting Projects Electronically

Information Online

All of the materials for this course (including this page) are available on the web at http://www.cs.duke.edu/courses/cps004/current.
 

Feedback?