CSCI 101-007: Intro To Computer Science, Spring 2014
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 321
Friday 9:30 - 10:30 am


Course Essentials


Class meetings: Wednesdays and Fridays from 8:00 AM 9:15AM in WWH Room 101 (attendance is mandatory).

Office hours: Fridays 9:30 - 10:30am, in WWH Room 305,

Information and Assignments will be provided via the NYU Courses capabilities

Tutors: Tutors for the course are available at 14 Washington Place (at the room in the back of the lab) during the following days and times: TBD

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


February 28 (Friday): Midterm Exam 1

March 17-23: Spring Recess

April 11 (Friday): Midterm Exam 2

May 16 (Friday): Final Exam 8:00AM - 9:50AM (date and time subject to change by CAS)

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. We will use another IDE NetBeans in order to demonstrate GUI objects (SWING Controls).

Department Links


Computer Science Department

Faculty Office Hours

Statement of Academic Integrity

CS Minor course description/requirements



Introduction to Java Programming, Brief Version, 9/E
Note: You do not need the comprehensive edition
By Y. Daniel Liang
ISBN-10: 0132923734, ISBN-13: 9780132923736
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

In addition class attendance and participation will count towards your final grade.



There will be weekly (sometimes bi-weekly) programming assignments. In general the assignments will be due one week after they are assigned. All assignments will be graded out of 100. All assignments will count towards your final grade (I do not drop any assignments).

Late assignments: Any other assignment submitted late will lose 10% of its value for each day that it is late (i.e. your assignment is worth only the total of 6 points out of possible 10 points four days after the 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.



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 weeks 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.

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


CAS Course/Instructor Evaluations

Faculty Mentor Program

ACM Chapter


Academic Email Etiquette