Comp 312 Information (Spring 2006)
Course Staff
| Lecturers: | Robert ``Corky'' Cartwright, Professor |
| Office: DH 3104 | |
| Email: cork@rice.edu | |
| Office Hours: MW 1-2 & by appointment | |
| Teaching Assistants: | Dan Smith |
| Office: DH 3109 | |
| Email: dlsmith@rice.edu | |
| Office Hours: TBA | |
| Jonathan Lugo | |
| Office: DH 3108 (PLT Lab) | |
| Email: jlugo@rice.edu | |
| Office Hours: TBA | |
Recommended Texts
References
Web Page
The course has a homepage on the web that contains all course materials including the syllabus, lecture notes, and homework assignments. It is your responsibility to check the page for homeworks at the beginning of each week. I will attempt to post homework assignments by late Sunday afternoon. It is up to you to exploit the page otherwise.
Homework and Slip Days
There will be a few individual assignments during the term. The purpose of the homework is to deepen your understanding of the material introduced in class and to prepare you for the coures programming projects. Your name must appear on the solution to get credit. The assignments will be posted on the Homework Web page for this course
http://www.cs.rice.edu/~cork/312/Assignments.
Late homework will not be accepted with one exception: each student has seven ``slip'' days that can be used for any homework assignment(s) during the semester. An assignment that is submitted up to one day late will be accepted at the cost of one slip day. Similarly, an assignment that is submitted up to two full days late will be accepted at the cost of two slip days. A day consists of 24 hours; weekend days are included.
Programming
We will use Java 1.5 for all programming assignments. Java 1.5 is an significant extension of Java that includes support for parameterizing classes and methods by type (generics). Java 1.5 does not yet run on Macs. Degraded support for the Java 1.5 language is available on Macs using the JSR-14 early access Java compiler (available from \url{java.sun.com}) that runs on Java 1.4, but DrJava cannot be built in this environment because DrJava uses Java 1.5 libraries. Until Apple starts supporting Java 1.5, the Mac is dead as a development platform for DrJava.
With the exception of an optional warm-up assignment near the beginning of the course, all programming will be done in teams. The class will be divided into two or three teams, each under the supervision of a teaching assistant who will serve as the team manager. Each team will design and implement a substantial extension to DrJava.
Workload and Grading
Students are expected to spend 10-12 hours per week (including lectures and team meetings) on the course, primarily working in teams on software projects. Students are graded primarily on their effectiveness as software developers. Performance on individual assignments will contribute less than 10/% of a students grade.
Each student is required to keep a log book recording the blocks of time (date, time, duration) spent on programming in the course. All phases of the program development process (design, coding, reviewing, testing, and debugging) are included.