CSCI 101-001: Intro To Computer Science, Summer 2016
Course Information and Syllabus



Prof. Douglas Moody

Adjunct Assistant Professor,
Computer Science Department,
Courant Institute of Mathematical Sciences,
New York University

Email address

Mailing address
251 Mercer Street,
Room 305
New York City, 10012

Office hours
Room 328
Tuesday 10:45 - 11:45 am
Unofficially before class: 8 - 9:00am


Course Essentials


Class meetings: Monday through Thursday from 9:00 AM 10:35AM in WWH Room 1302 (attendance is mandatory).

Office hours: Tuesday 10:45 - 11:45am, in WWH Room 328, and before class in the classroom.

Information and Assignments will be provided via the NYU Courses capabilities

Tutors: Tutors for the course are available in WWH on the fourth floor, more information given in class

How to get help? Talk to me! Email me! Use the tutoring services!
Make sure you let me know as soon as you feel lost in the course. Do not wait till you start getting failing grades because it might be too late by then.

Catalog Description


Introduction to Computer Science
CSCI-UA 101 Prerequisite: Introduction to Computer Programming (CSCI-UA 2) or departmental permission assessed by placement exam.
Offered in the fall and spring. 4 points.
Students learn how to design algorithms to solve problems and how to translate these algorithms into working computer programs. Experience is acquired through programming projects in a high-level programming language. Intended primarily as a first course for computer science majors but also suitable for students of other scientific disciplines. Programming assignments.

Important Dates


June 7 (Tuesday): Midterm Exam 1

June 22 (Wednesday): Midterm Exam 2

Final Exam (Friday July 1)

What will you learn?


In this course we will start with a quick review of elementary programming and make sure that everyone is familiar with Java syntax. Then we will move to more advanced object oriented concepts and you will learn how to write your own classes and use many of the classes that are provided by Java. Emphasis will be placed on solving problems and then applying Java based instructions.

Department Links


Computer Science Department

Statement of Academic Integrity

CS Minor course description/requirements



Introduction to Java Programming, Brief Version, 10/E
Note: You do not need the comprehensive edition
By Y. Daniel Liang
ISBN-10: 0133592200, ISBN-13: 9780133592207
2013 Prentice Hall
Publisher's website
Companion website
author's website



Students without programming experience should take the more introductory course -- CSCI.UA.0002.

Students with a lot of programming experience may take a test out exam to move directly to CSCI.UA.0102 (Data Structures).

In this course you will be using Java, an object oriented language. You do not need to have any experience specifically with Java, but you need to be familiar with the basic concepts of some programming language:



Your grade will be based on



There will be bi-weekly programming assignments. In general the assignments will be due 3 days or early the next week after they are assigned. All assignments will be graded out of 10. Assignments are due on the posted before 5pm. Assignments submitted after that and before 5pm two days later will be graded up to a maximum of 8 points. Assignments submitted later than the posted plus 2 days will not be accepted. Assignments will be reviewed in class generally 2 days after their due date.

Challenging assignment grade:
You can challenge grade on any assignment. To do so, you need to come to see me before class, during the office hours, or schedule an appointment. Grade challenges are not done via email .



There will be two midterms and a final exam. All exams are cumulative, although they will have larger emphasis on the new material covered since the previous exam.

Missing an exam: There will be no make-up exams. Failure to take an exam counts as a zero grade on that exam. The only exception to this rule is for students who have a legitimate medical or personal emergency (documented). These students need to talk to me as soon as possible (trying to excuse an exam absence three days after it happened will not work).

Academic Integrity Policy


I follow the department's academic integrity rules. In short, it is fine to talk to other students about your ideas and your programs, but it is not fine to work together on assignments or copy someone else's assignment. You cannot copy other people's work without giving them a proper credit (and part of your grade).
You may discuss any of the assignments with your classmates (or anyone else) but all work for all assignments must be entirely your own unless a group project is specifically assigned. Any sharing or copying of assignments will be considered cheating. By the rules of the College of Arts and Science, I am required to report any incidents of cheating to the department.
If you have any doubt if something that you are doing qualifies as academic dishonesty, talk to me!

Doing Well in This Course


In order to do well in this course you need to:

Talk to me whenever you start falling behind or have questions that you do not want to ask in class. Remember, professors have office hours for a reason to interact with students on course issues, material questions, or general information about the industry. My office hour is dedicated to this class, please take advantage of this time.

Topics Covered


This is a tentative list of the topics we will cover:


Java Documentation and Resources


Deena Engel's list of differences between Python and Java

Java Language Specification

Java API




Eclipse Download

Eclipse Help - go to Java development user guide for tutorials/instruction on creating your first project, running, debugging, and details of many tools available in Eclipse.

VideoNote on creating your first Eclipse project, writing the code, compiling and running from within the IDE.


NYU and CS Links


ACM Chapter


Academic Email Etiquette