Administrivia
Course meetings will be Monday thru Friday from 2:00-3:15pm in room 229
of the Social Sciences Building.
Staff
- Instructor
- Dietolf Ramm
- Office: D226 LSRC
- Office Hours: Tue 10:30, Thu 4:00, or any time for quick questions or by appointment
- Email: dr@cs.duke.edu
- Phone: 660-6532
- Graduate TA
- Jam Jenkins
- Office: ...
- Office Hours: Mon 3:15-5:00, 229 SocSci, or any time for quick questions or by appointment
- Email: cjj1@cs.duke.edu
- Phone: 641-7208
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.
Computing Concepts with JAVA 2 Essential, 3rd ed., by
Cay Horstmann, Wiley & Sons.
The textbook for this class is a secondary source to allow you to cover
standard Java in more depth.
Computing
This course will be taught in a workshop format in an Interactive Computer Classroom,
ICC, that contains twenty IBM 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, much of the graded work for the course will be done during the
class meeting time.
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
Information Online
- All of the materials for this course (including this page) are available on the web at
http://www.cs.duke.edu/courses/summer02/cps004.