Please check here regularly for announcements.
Click an item to expand.
In Reverse Chronological Order:

Wed May 2, Extra Office Hours in Last Week
Prof. Yap's office hours:
Thu May 3: 5-6
Fri May 5: 5-6
Mon May 7: 5-6
Tue May 8: 3-6

Chang's office hours:
Thu: 2-3:30
Fri: 2-4
Tue Apr 24, Final Exam is announced
It will be held in lecture room on Wednesday, May 09, 4:00pm - 5:50pm.
Wed Feb 29, Extra Office Hours for Midterm
Chee's extra hours are 10:30am -- 12:30pm on Tuesday Mar 6.
Chang's extra hours are 2:00pm -- 3:30pm on the same day.
Mon Feb 27, Two Special Java Programming Sessions (Mar 5 and 19)
The department has authorized two special sessions for those of you who want to brush up on Java. Bring your questions. They are held from 7:10-9:00pm on Mondays March 5 and March 19. Please note that the latter is the day right after Spring Break. Room is 201 in WWH.
Mon Feb 27, Midterm moved to Wed March 7
The midterm was originally scheduled for Mon March 5. One reason is that you will get the graded hw3 on March 5.
Mon Feb 13, Class cancelled today
The Courant Building is closed today because the water tank on the roof broke. We expect to resume our usual Wednesday class.
Wed Feb 8, README file formats
Students have sent us README and Makefile files that are not quite suitable:
(1) README files that are called "README.txt" . This problem is not too serious, but PLEASE rename your file.
(2) The same issue with "Makefile.txt". This is actually serious, as the "make" program would not find the file.
(3) README or Makefiles that are not just (plain) ASCII, but in "enriched" format.
I realized that some of you may not be aware of such enriched formats (thinking they are all the same). But they will mess up our editors or is not very cross-platform compatible. If you have such editors, please make sure to explicitly save your file as "plain text" or "plain ASCII". We will not remove points this time, but in the future we will.
Wed Feb 1, Class Participation, Changed office hours, class mailing list
I noticed that our class attendence is below the registration level. I want to remind you that class participation counts towards your grades -- as in class quizzes and sundry.

By a general vote in class today, we decided to change the Tuesday 2-3 office hours to Monday 5-6. The Wednesday 2-3 office hours is intact.

By now, all of you should be in our class mailing list. You recognize this if you get an email from If you have not received such an email you must let me know at once.
Wed Jan 25, Classroom for Recitation
This is to clarify the classroom for recitation.
The room is WWH 101 in the same building as the lectures (which is in WWH 109).

Recall that some students saw some strange room designation in Albert (?I think?). Please ignore that information.
Tue Jan 24, First Reading Assignments and Getting Setup for Programming
This information was in an email. Your reading assigment for the first 2 weeks is to read Chapters 1 and 2 of the text.

Getting ready for programming. On our class webpage, under the Assignments Page, please click on the "Pickup Directory". You will see two files: Makefile and Please download them, and put them into a directory. E.g., under your home directory under

1. First make sure you have installed Java, so that you can compile the program. Using some command window, type these:

> javac (This compiles
> java Box (This runs the Box program)

2. Next try to download a version of the program called "make" (it might be variously called "gmake", "Make", etc). Read up about "Make" on my page
After installing "make" you may type:

> make (same as "javac")
> make run (same as "java Box")

Why? Because the file "Makefile" that you have downloaded defines these default actions.

If you have trouble, bring your issues to class tomorrow.

3. If you use Windows, I highly recommend installing the free unix-like system called "cygwin" in order to get "make" and other unix tools. See my notes If you use MacOS, you basically have a unix-like system under the hood.