[Rice Logo]

Comp 212: Intermediate Programming

Spring 2005

News  Course Description Lectures Labs Assignments Textbooks Resources Syllabus Staff

Course Description:

COMP 212 introduces students to object-oriented program design and the fundamental algorithms and data structures of imperative programming. All programming assignments are done in the Java programming language. Several programming projects of moderate size will help students to learn

The exercises will involve common data structures such as lists, stacks, queues, search trees, syntax trees, and hash tables, and will use algorithms for sorting, searching, and graph traversal. Some exercises will involve writing programs driven by a graphics user interface (GUI).


Any student with a documented disability needing academic adjustments or accommodations is requested to speak with us during the first two weeks of class. All discussions will remain confidential. Students with disabilities should also contact Disability Support Services in the Ley Student Center.

News and Updates: as of  Thursday, 11-May-2006 04:19:30 CDT

05/04/05: Othello Tournament Results are in:

  1. bdodson_srooke
  2. ttorous
  3. algo86gmalecha
  4. derrley & ttj (tie)

Click here to see round 1.

Click here to see the final round between the top four finishers of the first round.

Thanks to all participants!  It was a very exciting tournament that came down to the wire for a tie for fourth place.  And congratulations to the top four finishers for a job well-done!


04/29/05: The submission instructions for the Othello tournament have been posted. Note: The tournament will now be held in Symonds 1, WHICH IS NOW LOCATED IN SEWALL 207!

04/25/05: Please study the final exams from previous semesters, particularly those from Spring semesters. Scroll down for links to the webpages of previous semesters.

04/25/05: Please send an email to Dr. Nguyen stating who your Project #4 (Games) partner is. If you are working by yourself, please let him know as well.

04/07/05: Milestone 2 for Project #3 (MBS) is now available. Students who have been given an extension on milestone 1 may not look at milestone 2 until after they have turned in milestone 2.

03/28/05: Project #3 (MBS) has been assigned. Milestone 1 is due at 11:59PM, Wednesday, 04/06/05. Milestone 2 is due at 11:59PM, Wednesday, 04/13/05.

03/27/2005: Here are the links to old #2 exams:

Spring 2003

Spring 2004

03/27/2005: Here is the new link to the latest (unpublished) version of DrJava , which has numerous bug fixes.

03/21/05: Exam 2 will be given on Wednesday, 03/30/05 from 7:30PM to 10PM in DH 1075.

03/13/05: Project #2 (Koch) has been assigned. Milestone 1 is due at 11:59PM, Friday, 03/18/05. Milestone 2 is due at 1PM, Monday, 03/28/05.

02/23/05: Project #1 (Hangman) has been assigned. Milestone 1 is due at 1PM, Monday, 02/28/05. Milestone 2 is due at 11:59PM, Monday, 03/14/05. Note: the Hangman documentation is now available from the project webpage.

02/07/05: If you are having problems generating javadoc from within DrJava, you can generate it from the command line. Change into your project's directory (using cd), make a docs subdirectory for your javadocs (using mkdir docs), then run javadoc using: javadoc -d docs -private -subpackages <list of packages> *.java
The <list of packages> should include the names of all top-level packages you want to recursively include. If, for example, you specify javadoc -d docs -private -subpackages listFW foo *.java, javadocs will be generated for all classes in the default package, all classes in the listFW package, the foo package, and all packages contained inside those two.

02/07/05: We found a book that may be of some use to the class: Head First Design Patterns from O'Reilly.  Check it out!

01/20/05: Submission instructions for homeworks have been posted.

01/12/05: Welcome to a new semester of Comp 212.  Please come to the first lecture to sign up for the labs.  The following labs are available:

There are two special labs on Friday, Jan. 14, 2005 from 3:30 PM to 5 PM and from 7 PM to 8:30 PM. Please check the lab roster. See you there!

Staff List

Lab Lectures

Course Lectures



Recommended Books:

Resource Links:

Connecting to WebCT:

Using WebCT, you can participate in general discussions of class materials, use chat rooms to communicate live with others, in particular the teaching staff, check your grades and find out about other details of the course.  Follow the discussion boards on WebCT regularly).  In order to use WebCT, you will need to have a WebCT account.

If you do not have a WebCT account,



Note About E-Mail Addresses

To protect the COMP 212 staff against spam from automated programs, all e-mail addresses on this website were changed to an alternate spelling. The @ symbol was changed to the word "at". To send a staff member an e-mail, please change the word "at" back to the @ symbol.

Example: The address "foo at bar.com" would have to be changed to "foo@bar.com".

Thank you for your understanding.