Course: Introduction to Computer Programming (using python)


Course Syllabus | Home

Professor: Sana Odeh

Email: Odeh (AT) courant (DOT) nyu (DOT) edu
Office: 251 Mercer Street, Room 321 :: New York City, 10012

Class Time: Mon/Wed, 11:00-12:15 PM, room 102 CIWW (Courant)
Office hours: Mon/Wed, 12:30-1:30 PM, room 321 in Courant) or at other times by appointment.
Office: room 321 in Courant

Exams: Please note that all Exams are hand-written exams: no books, and no computers.

  • Midterm#1: October 16th (During Class)
  • Midterm#2: November 13th (During Class)
  • FINAL EXAM: December 16, 10:00am - 11:50am, WWH 102


Course Description:

This course provides a gentle introduction to the fundamentals of programming, which is the foundation of Computer Science. It is intended as a first course in programming; No prior computing programming experience is needed. Programming has revolutionized every aspect of our lives from art and other media to education, business, and the core sciences. Students will understand the basics of how computer programs are created. Students design, write, and debug simple computer programs.


Three years of high school mathematics or equivalent. No prior computing experience is assumed. Students with any programming experience should consult with the computer science department before registering. Students who have taken or are taking Introduction to Computer Science (CSCI-UA 101) will not receive credit for this course. Note: This course is not intended for computer science majors, although it is a prerequisite for students with no previous programming experience who want to continue into CSCI-UA 101.

Course goals

  • Learn the foundations of Programming.
  • Learn Control Structures
  • Learn Repetition Structures
  • Learn how to Process Text
  • Learn to use Functions and Modules
  • Learn Lists
  • Learn Dictionaries
  • Learn to Read and Write to Files
  • Additional topics, such as graphics, may be covered at the instructor's discretion and time-permitting.


  • Grading

    • There will be two midterm exams and one final exam. If you plan to continue with computer science courses such as CSCI-UA.101, you must get a grade of C or better in this course.
    • Grades are weighted as follows:
      • Midterm #1 - 20% of the final grade
      • Midterm #2 - 20 % of the final grade
      • Homework - 20% of the final grade
      • Final Exam - 40% of the final grade.
    • The homework assignments are required and will consist of programming assignments. Details will be posted later.
    • Computer Science Department: Statement on Academic Integrity


How to get help for this class:

  • Tutoring (Additional Help): Please see lab tutors in person for help or email our Etutor Rachel Rosen (
    • Lab Tutoring (In person Tutoring)(Make sure to check the Tutoring website for updated tutoring hours):
      • MON: Ben 12:15-3:15, Casey 2:00-3:15, Eric 3:30-4:45, Casey 5:00-6:00
        TUES: Casey 12:00-1:45, Ben 12:15-2:15, Eric 2:00-3:15, Casey 5:00-6:00
        WED: Eric 11:00-12:15, Ben 12:15-3:15, Casey 2:00-6:00, Eric 3:30-4:45
        THURS: Eric 12:30-3:30, Ben 12:15-2:15, Casey 5:00-6:00
        FRI: Eric 5:00-7:00
    • Email Class Tutor (Help via email)
        • E-tutor: Rachel Rosen - send email to:
  • Professor Office Hours: Prof. Sana Odeh
    • M 12:30 - 1:30  in office 321 Courant
  • Additional tutoring resources at the NYU Learning Center


Required Textbooks:

the book Starting Out with Python – Second Edition
by Tony Gaddis

Soft cover: ISBN-10: 0132576376, ISBN-13: 9780132576376

Ebook: ISBN-10 0-13-265619-1, ISBN-13 978-0-13-265619-1


Optional TextBooks:


the other book




Visual Quickstart Guide to Python (on reserve at the Bobst Library)

by Tony Donaldson

Soft cover: ISBN-10: 0321585445



the other book

How to Think Like a Computer Scientist: Learning with Python 3 (available free on-line)

by Peter Wentworth, Jeffrey Elkner, Allen B. Downey, and Chris Meyers

Online and PDF: ISBN-10: 0321585445, ISBN-13: 978-0321585448




 Software: We will use Python software (Version 3.3.2) in this class. This is a free, and open-source software. The python software includes the Integrated Development Kit (IDE) called IDLE. IDLE is easy-to-use and is available for different operating systems such as Windows, Linux and Macintosh.

Click here to view instructions for downloading Python software (Includes Idle ) used for this class (by Prof Joshua Clayton)


Links to Course Sections

Course # Instructor Days Time Room
CSCI-UA.0002-001 Sana Odeh MW 11:00AM — 12:15PM CIWW 102
CSCI-UA.0002-002 Andrew Case MW 2:00PM — 3:15PM CIWW 317
CSCI-UA.0002-003 Amos Bloomberg TR 9:30AM — 10:45AM CIWW 109
CSCI-UA.0002-004 Joshua Clayton MW 9:30AM — 10:45AM CIWW 102
CSCI-UA.0002-005 Joshua Clayton TR 2:00PM — 3:15PM 194M 203
CSCI-UA.0002-006 Craig Kapp MW 12:30PM — 1:45PM CIWW 109
CSCI-UA.0002-007 Jerry Waxman TR 3:30PM — 4:45PM CIWW 202
CSCI-UA.0002-008 Syed Salahuddin TR 11:00AM — 12:15PM CIWW 317
CSCI-UA.0002-009 Joseph Versoza MW 3:30PM — 4:45PM CIWW 102


Online Useful Resources:

Late Assignment Policy:

  • Extension: Every student in this class is permitted one extension of one week - no questions asked! - during the course of the semester. You need to email your professor about extension before assignment due date. Assignments with extensions (late assignments) should be submitted within one week from the assignment's due date.
    - However, please do not hesitate to see me if you are falling behind, if you would like assistance, or there are circumstances beyond your control which delay your work.
  • Late assignments (without extensions) will be penalized as follow:
    • 10% for One class late after the due date.
    • 20% for Two classes late after the due date.
    • 30% for Three classes late after the due date.
    • No assignments are accepted after the last day of class.

Plagiarism policy:

  • Discussing homework concepts is fine, but you must submit your own work (except otherwise noted as in the case of the group project).
  • Copying all or part of another student's homework, project or exam or copying from any other resource is prohibited without proper attribution.
  • Allowing another student to copy all or part of your homework, project, or exam is prohibited.
  • Make sure to read the CS department statements on Academic Integrity for more details.

Student Conduct Policy:

 In an effort to make this class enjoyable for everyone, I would like you to be guided by the following policies:

  • Please be on time to class.
  • Please do not talk to your friends and neighbors in class.  It disturbs everyone, and makes it hard to concentrate.  If you have a question, just ask me!
  • Don’t be distracted by passing notes to your neighbors during class.
  • Don’t use laptops to read emails and browse the web during class.
  • Please turn your pagers and cell-phones off!
  • Maintain a professional attitude during class and be civil toward everyone at all times.
  • Make sure to be prepared by doing the readings and class assignments on time.

Links to Computer Science Department Sites

NYU / Dept of Computer Science - Prof  Sana Odeh / Updated Fall 2013::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::::  |