CSE160 Home Page (Spring 2006)

Welcome to the CSE160 (Computer Science A: Honors) home page for Spring 2006. This page will be the main source of course information throughout the semester.


Important Course News and Messages

Please check this page regularly for new messages. The newest messages will always appear first.

Stoplight solution
Here is my solution to the stoplight problem from the final exam. You didn't have to make yours into an applet, and I wasn't expecting you to use the Thread stuff or synchronized methods. I added these because when I was making it into an applet I needed a separate thread to avoid hanging the applet display activities. For your solution, you could just use the main thread.

No Lab 5/5
Come to the final exam on 5/16 at 11:00AM. Note that the final exam will be held in the lab room, not in Humanities 3020 like it says on the final exam room schedule.

End-of-semester course evaluations
As part of our continuing efforts to improve the Stony Brook Computer Science major, we regularly try to assess how well each of our courses are satisfying their intended objectives. Your feedback will help. Please go here to fill out a brief survey about this course and the other CS courses you are taking this semester. Thanks!

My Compress program and tests:
I have placed here the Compress program I wrote during the midterm exam, together with tests that I used to grade yours.

Midterm Exam Grades:
Midterm exam grades are available. Maximum score was 43/60, minimum score was 23.5/60 (one person who did not take the exam scored 0/60). Median score was 37/60. Those who aren't coming to class or submitting homework should at least read the book. Those who are not submitting homework in many cases still need the practice they would get if they did do it.

Our versions of Zuul:
In lecture on 3/23 and 3/28 we worked interactively on some modifications to the "zuul-bad" project from the BlueJ book. On 3/23 we did refactoring to generalize Rooms to have arbitrary numbers of arbitrarily named exits. We also did refactoring to localize information about commands: what commands do is defined in the Game class, and the mapping of command words to commands is handled by the Parser class. The result of that exercise is zuul1.

On 3/28 we did refactoring (not quite completed) to try to separate the user interface from the game engine, with the idea that this would enable use to use either graphical or text-based user interfaces, or even to drive the game from a script in a file (e.g. for testing purposes). The result of that exercise is zuul2.

Mid-semester course evaluations:
As part of our accreditation efforts for the Stony Brook Computer Science major, we are required to assess how well each of our courses are satisfying their intended objectives. Your feedback will help. Please go here to fill out a brief survey about this course and the other CS courses you are taking this semester. Thanks!

Notebook example from 2/14/2006:
Here is the modified version of the "notebook" example we were looking at in class. We pursued a particular idea for making a notebook whose note numbers would be stable under deletion of notes. This is almost certainly not the best way of doing it, but it led to an interesting programming problem and discussion of data invariants.

Academic Dishonesty Form:
Some of you have not yet submitted the Academic Dishonesty Form. If you do not submit this, I will not give you any grade. Please take a few minutes and submit this right away.

HW/Lab Grades:
I have begun to make grades available. You can view your available grade sheets here.

BlueJ Submitter Definitions:
You will be using the "submitter" extension built into BlueJ to submit your work this semester. In order to do this, you must download this submission.defs file and place it in the folder where BlueJ keeps its preference settings (.bluej subdirectory of your home directory on Unix, \bluej subfolder of your home folder on Windows). This file simply contains a link that points the submitter at another file on the course server. I will be updating that file as the course proceeds.

Get BlueJ 2.1.1:
We will be using the "BlueJ" Java environment this semester. The course text comes with a CD-ROM that contains a version of BlueJ, however it is almost certainly not the most recent. You should go to the BlueJ web site, download and install BlueJ 2.1.1 on any personal computer you plan to use for the course. For convenience in case the BlueJ site is not accessible, I have cached local copies of some of the BlueJ files. However, I recommend you visit the official site if at all possible.

Personalized Course Information Area:
If you are taking the course, please visit the Personalized Course Information Area, register a user ID there, and fill out the Academic Dishonesty Form.

I will be using this system to manage assignment handin and distribute grades.


Eugene W. Stark