COMS S1004

Introduction to Computer Science and Programming in Java

Summer 2009


Statistics for homeworks #1-4 are available in the Discussion Board in CourseWorks.

If you are interested in learning more about using Eclipse and its features, please contact Swapneel. We may arrange a brief tutorial (outside of class) if there is enough interest.

Chris will have office hours Weds Jul 1 from 3-5pm in 608 CEPSR.

A list of concepts and Java API methods that you should know for the final exam are listed here. Practice questions are available here, and solutions are here.

Teaching Staff

Instructor: Chris Murphy (; office hours: Weds 3-5pm, 608 CEPSR

TA: Swapneel Sheth (; office hours: Mon 11am-1pm, 608 CEPSR

TA: Suhas Prakash (; office hours: Thu 5-7pm, 122 Mudd

Syllabus (Tentative)

Date Topics Covered Reading Notes Assignments
May 27 Introduction to Computer Science
Computing and Society
Intro to Algorithms
S&G 1-2, 15 slides  
May 29 Comparing Algorithms
Introduction to Java
Intro to object-oriented programming
S&G 3
Hor 1.1-1.4,
1.8, 2.1-2.5
Jun 1 More object-oriented programming
Java datatypes
Hor 2.6-2.7,
3.1-3.5, 4.1-4.6
Project proposal due
Jun 3 Programming environments
Common programming mistakes
In-class programming exercise
Hor 1.5-1.7 slides
in-class assignment
(Solution: and
Jun 8 Loops
Hor 5.1-5.4,
Homework #1 due (solutions)
Homework #2 due (solutions)
Jun 10 Binary numbers
S&G 4 slides  
Jun 15 Arrays
File I/O
Hor 7.1-7.7
11.1, 11.4-11.5
Homework #3 due (solutions)
Jun 17 Von Neumann architecture
System software
S&G 5-6 slides
OS history slides
Jun 22 Debugging
Software testing
Java odds & ends
Hor 2.8, 3.6, 6.6 software testing slides
software engineering slides
Homework #4 due (solutions)
Jun 24 Computer networking
S&G 7 slides
Internet history slides
Project papers due
Jun 29 Exam review
Homework #5 due (solutions)
Jul 1 Final exam      

For the readings, "S&G" means Schneider & Gersting, Invitation to Computer Science (Java version), 3rd edition. "Hor" means Cay Horstmann, Big Java, 3rd edition.

Class Policies

There will be an in-class final exam on the last day of classes. No makeup exams will be given.

Grading Grades will be assigned using the following guidelines:
Homework 50%
Research Project 15%
Final Exam 35%
Late Policy Because of the tight schedule, it is important that assignments be submitted on time. Homeworks may not be submitted after the deadline.
Academic Honesty Please familiarize yourself with the Computer Science Department's academic honesty policy.