Introduction to Computer Science
CS-UH 1001
Introduction to Computer Science
CS-UH 1001
Sections 3 and 4
Professor Sana Odeh
Clinical Professor
Faculty Liaison for Global Programs of Computer Science
Computer Science Department
Courant Institute of Mathematical Science
New York University, New York
Affiliated Faculty, NYU Abu Dhabi
sana [AT] nyu.edu | |
---|---|
Office | NYU NY: 321 in Courant, 251 Mercer Street, Courant Institute, NYU, 251 Mercer Street, New York University NYUAD: C1-154 |
Help | Whenever you have a question about the course material, please feel free to see me during my office hour via zoom, or write me an email message. If at any time you feel that you are falling behind or are overwhelmed by the material, let me know: I will be very happy to help you. |
Class Time and Office Hour
Class Time Section 3 |
Please note that the first few weeks of this class will be via zoom (zoom link is posted in NYU's Brightspace! CS-UH 1001 Intro to Computer Science (section 3)
|
Office Hours | Mon/Wed 5:30-6:30PM Or other times by appointments |
Course Description:
This course introduces students to the various topics within, and applications of, the field of computer science. The goal of the course is to teach students how to think like a computer scientist. The single most important skill for computer scientist is problem solving. Problem solving means the ability to formulate problems, think creatively about solutions, and express a solution clearly and accurately.
On one level this course teaches students programming concepts, in particular, binary logic and algorithmic problem solving. On another level this course uses programming as a means to an end, focusing on understanding the fundamental problems within computer science, such as looping, searching, sorting, and backtracking. As programming skills are mastered, students are then introduced to various advanced computer science topics, such as object-oriented programming and graphical user interfaces. The course concludes with a group-based project.
Learning Outcomes:
Students who successfully complete this course will be able to:
- Understand concepts of computer science and programming languages.
- Write computer programs using the Python programming language.
- Understand the procedural and object-oriented programming both conceptually and practically, and be able to make critical arguments about their differences.
- Use abstraction to think algorithmically and solve problems programmatically.
- Present algorithmic and programmatic solutions.
Teaching and Learning Methods:
There are 4 main teaching and learning methods employed in this course:
- Class discussions. During each class, numerous questions will be posed by the Instructor to help students engage in the topics and to promote discussion.
- Group programming. Some class discussions will be interactive, with the instructor writing portions of a program while the class observes, and students writing portions of the program while their peers observe.
- Individual programming. Lab sessions will be an opportunity for students to master the day’s discussion by completing a series of small programming assignments. This is a chance to get help from the instructor and discuss topics with peers.
- Final project. A final project will force students to display a solid grasp of all concepts covered during the semester. Students are required to develop algorithms to solve a chosen problem, map those algorithms to computer code, and present the final outcome to a large audience.
- Midterm Exam: TBA. Please note that there is no make up exam so you need to take the exam during the exam assigned time and date.
- Final Exam TBA. Please note that there is no make up exam so you need to take the exam during the exam assigned time and date.
Course Materials:
Required course texts:
- Gaddis, “Starting out with Python”, Pearson; 4th edition, ISBN: 97892225852
Recommended readings:
- How to Think Like a Computer Scientist (online version): Learning with Python 3, Peter Wentworth, Jeffrey Elkner, Allen B. Downey and Chris Meyers
Other learning resources:
- Students are required to possess a laptop, which should be brought to class daily.
Assignments and Grades:
- 5 Assignments
- Labs after each lecture
- Final project: Group-based project
- Exams: Midterm and Final
Grading:
The final grade will consist of the following:
Activity | Percentage |
Participation and Class Practice Labs | 10% |
Pop Quizzes |
5% |
Assignments |
15% |
Final Project |
15% |
Midterm Exam |
25% |
Final Exam |
30% |
Grade roster:
Score | Grade |
95 – 100 |
A |
90 – 94 |
A- |
87 – 89 |
B+ |
83 – 86 |
B |
80 – 82 |
B- |
77 – 79 |
C+ |
73 – 76 |
C |
70 – 72 |
C- |
67 – 69 |
D+ |
63 – 66 |
D |
< 63 |
FAIL |
Grading Policy:
- Ten percent points of the grade will be deducted per class an assignment is late (–1 sec = 1 minute = 1 hour = 1 day).
- 20% for each day late and assignments will not be accepted past the 7th day after the due date without the instructor's permission.
- You should save all of your programs and keep backups for the entire semester.
- Programs should be tested and should run with syntax errors- programs with syntax errors will receive a zero on the assignment.
- Programming style will be considered when grading the assignments: You are expected to use meaningful names for your variables and files and provide sufficient comments in the body of the programs.
Teaching Assistant(TA):
We have an excellent Teaching Assistants (TA), supporting this class during this semester (Helping with labs (during lab session) and Homework via email, and during office hours.
- Section 3: Dena Ahmed <daa4ATnyu.edu>,will run the Labs for section 3 (Mon,Wed 2:40 - 3:55 PM)
- Section 4: Muhammad Shujaat Mirza <shujaat.mirzaATnyu.edu> will run the recitations for section 4 (Mon,Wed 4:05 - 5:20 PM)
Course Schedule:
Week | Topic |
Readings (Gaddis) |
1 |
|
|
2 |
|
|
3 |
|
|
4 |
|
|
5 |
|
|
6 |
|
|
7 |
|
|
8 |
|
|
9 |
|
|
10 |
|
|
11 |
|
|
12 |
|
|
13 |
|
|
14 |
|
Plagiarism and Cheating: [Zero tolerance]
NYU Abu Dhabi expects its students to adhere to the highest possible standards of scholarship and academic conduct. Students should be aware that engaging in behaviors that violate the standards of academic integrity will be subject to review and may face the imposition of penalties in accordance with the procedures set out in the NYUAD policy.
Full details at: https://students.nyuad.nyu.edu/campus-life/student-policies/community-standards-policies/academic-integrity/
Homework Submissions:
Please submit assignments and labs through NYU Brightspace under assignments.
Please note that once you have submitted an assignment you can only resubmit it twice (within the due date), so make sure that what you are submitting is the final version of your assignment.
Make sure that any program you submit as part of the assignment is working (i.e. contains no syntax errors). Otherwise, you will not receive credit for the assignment.