Com S 100J Introduction to Computer Programming Grade: letter or S/U Spring 2005
655-085 TR 09:05 Kimball B11 Instructor: David Gries 4 credits
655-276 TR 11:15 Olin 255 Newsgroup: cornell.class.cs100j

Course materials
About email
Academic Excellence Workshop
Academic integrity
Exams & grades
Handouts, general
Staff info
Times & places
Email Gries

The text for programming in Java

The main text for CS100J is Multimedia Introduction to Programming Using Java, by Paul and David Gries. This is a paper text together with a CD, called ProgramLive, which is "livetext". It comes on a CD and has over 250 recorded lectures, with synched animation. The text for each lecture is readily available (and you could print them out). The availability of recorded lectures makes it easy for you to listen to material as often as and whenever you wish. Moreover, some concepts are made far more understandable using recorded lectures rather than printed material.

In addition, the livetext has an extensive glossary, a hypertexted index, lab material, and much more. Make heavy use of it! Finally, the livetext comes with a workbook, which we will reference from time to time.

The text is available only in the Cornell bookstore. Previous versions of the ProgramLiveCD are out of date and are not used in this course.

Listen-to-Watch the CD ProgramLive often.

Other Java texts

You may use any other text that you wish as a reference, although with Course text and accompanying CD, another text should not be necessary. Here is a sample of conventional texts:

  • Cai Horstmann, Big Java.John Wiley, 2002. (Horstmann has some other books that you might use.)
  • Nino/Hosch, Introduction to Programming and Object Oriented Design using Java. John Wiley, 2002.
  • Lewis/Loftus, Java Software Solutions: Foundations of Program Design (3rd edition). Addison-Wesley, 2000.

The Engineering Library (Carpenter) maintains a number of books on reserve, including the required and optional textbooks for this course.


The optional text for the two weeks of programming in Matlab is: S.J. Chapman, Programming for Engineers. Brooks/Cole, 2000. We will hand out notes for Matlab and the apprpriate time.

Floppy disks or USB storage device

You will need either a few 3.5" floppy disks for your assignments or a USB storage device, often called a "storage key". This USB storage device will hold anywhere from 50MB to 256MB. It looks like a fat pencil and can fit in your pocket. They are far better than floppy disks.

You need some way to save your work that you do in the labs because:

  • No personal files may be left on CIT's public machines.
  • CIT frequently cleans out files on the public machines.

So, you must store your files on your own disks.

REMEMBER: Back up your programs to protect yourself in case something is lost, e.g. the night before the due date.