Computer Science Syllabus

From Knowledge Kitchen
Jump to: navigation, search


This course is about designing algorithms to solve problems. This is meant to be the first course for computer science majors or for students from other scientific disciplines. We use the Java programming language.



You are expected to already be familiar with the the basics concepts behind all high-level programming languages:

What you should already know before taking this course



Students are required to acquire this textbook:


Excellent quality free online Java tutorials that may be helpful in addition to the required textbook:


  • weekly and sometimes bi-weekly
  • due before class on the due date
  • you lose a 10% penalty for every 24 hours an assignment is late, up to a maximum penalty of 30%
  • late homework will not be accepted after a week
  • submit assignments to cs-homework [at] knowledge [dot] kitchen
  • include your name and the assignment in the subject of your email
  • if submitting one or more files with your email, send them as a single zip file
  • unless you have good reason to do otherwise, follow best-practices for all basic file names and file extensions


Approximate grading breakdown:

  • 20% assignments
  • 20% midterm #1
  • 25% midterm #2
  • 35% final exam

The Tentative Plan

  • Chap. 1, Introduction to Java
  • Chap. 2, Elementary Programming (Primitive Data Types)
  • Chap. 3, Selections (Control Statements)
  • Chap. 4, Loops
  • Chap. 5, Methods
  • Chap. 6, Single dimensioned Arrays
  • Chap. 7, Multiply dimensioned Arrays
  • Chap. 8, Objects and Classes
  • Chap. 9, Strings and Text I/O
  • Chap. 10, Thinking in Objects
  • Chap. 11, Class Inheritance and Polymorphism
  • Chap. 12, GUI Basics
  • Chap. 14, Exception Handling
  • Chap. 15, Abstract classes and Interfaces
  • Chap. 18, Applets: sec 18.1, 18.2, 18.3
  • Chap. 20, Recursion

Getting help

Help resources available to you are listed in order of “seriousness” of your problem:

Frequently asked questions

Many practical questions are answered in the Student FAQ.

Course email discussion list

  • You should receive notification that you have been automatically signed up for this
  • Use this as a student-to-student discussion forum


Tutors are waiting to answer your every question. Visit them at the Kimmel Center, 4th Floor, 60 Washington Square S, New York, NY 10012, USA (view map)


  • 12:30 - 5:30pm - Daria Tsenter (5h)
  • 6-8:00pm - Jeffrey Asamoah (2h)
  • 5:00-8:00pm - Rye Hollister (3h)
  • 12:00-2:00pm - Goktug Saatcioglu (2h)


  • 12:30-1:30 - Kelly Hogan (1h)
  • 2:00-5:00pm Liana Najaroen (3h)
  • 5:00-8:00pm - Jeffrey Asamoah (3h)


  • 2:00-4:00 - Christopher Okorodudu (2h)
  • 3:00-5:00pm - Vikas Nair (3h)
  • 12:00-2:00 PM – Goktug Saatcioglu (2h)


  • 11:00-1:00 – Gilad Waldman (2h)
  • 12:30-1:30 - Kelly Hogan (1h)
  • 3:30pm-5:30pm – Liana Najaroen (2h)
  • 5:00-7:00 PM - Goktug Saatcioglu (2h)


  • 1:00pm-4:00 - Christopher Okorodudu (3h)
  • 3:00 - 6:00* – Vikas Nair (2h)


  • 1:00-5:00 PM -– Goktug Saatcioglu (4h)


  • 12:00-2:00 - Rye Hollister (2h)
  • 2:00-5:00 - Kelly Hogan (3h)
  • 5:00 – 8pm - Gilad Waldman (3h)

Talk with the professor

  1. see me before class
  2. raise your hand during class
  3. see me after class
  4. come to my open office hours

Additional tutoring resources

Inspirational quote

Object-oriented programming is an exceptionally bad idea which could only have originated in California.
–Edsger Dijkstra

Academic Integrity

Working with others and leveraging all resources available to you is a prerequisite for success. This is different from cheating, plagiarism, and mental laziness. All submitted work must be your own. If you submit any work that is not your own, you risk failure or worse.

Please read our policy on academic integrity.