Dates: | Topics: | Handouts: | Coursework:   | Reading: | |
---|---|---|---|---|---|
Week 0: | 1/21-1/27 | Course Tools; Setting up at home | Installation Guides |
Lab 0, Quiz 0 |
|
Week 1: | 1/28-2/3 | Syllabus & Class Policies, Introductions, Introduction to Python: definite loops, simple output, primitive data types, overview of objects & modules; What is an algorithm? Getting started with Python & IDLE |
Syllabus, Hello, World, Hexagon example, Fancier hexagon, Programming Assignments |
Lab 1, Code Review 1, Quiz 1, Programs 1-5 |
Think CS: Chapter 1 & Chapter 4 |
Wednesday, 1/29 | No Classes (Lunar New Year) | ||||
Thursday, 1/30 | 1001G Lab Opens for the Semester | ||||
Week 2: | 2/4-2/10 | Strings & Lists: looping through strings, console I/O, ASCII representation, string methods; Problem solving and the design process (simple parsing and translating) |
for-loop examples, input() example |
Lab 2, Code Review 2, Quiz 2, Programs 6-10 |
Think CS: Chapter 2 & Chapter 3 |
Wednesday, 2/12 | College Closed (Lincoln's Birthday): No Tutoring/Quizzes/Code Reviews available | ||||
Week 3: | 2/11-2/24 |
Arithmetic; Indexing & Slicing; Colors, Hexadecimal notation; Arrays and images in numpy, hexadecimal representation of colors (image processing) |
Slicing Challenges, Color Challenges |
Think CS: Section 8.11 &
Chapter 11, Numpy tutorial (DataCamp) |
|
Monday, 2/17 | College Closed (Presidents' Day): No Tutoring/Quizzes/Code Reviews available | ||||
Tuesday, 2/18 | Classes follow Monday Schedule: No Lecture | ||||
Week 4: | 2/25-3/3 |
More on Lists & Arrays; Images; Decisions; Programming with decisions & files (flood maps) |
Think CS: Chapter 7 & Chapter 11 | ||
Week 5: | 3/4-3/10 |
Logical Expressions, Circuits; More on Decisions (snow pack); Circuits & Logical Expressions |
Basic Gates, Circuit Challenge1, Circuit Challenge2 |
Think CS: Chapter 7, Burch's Logic & Circuits, Explain Logic Gates |
|
Week 6: | 3/11-3/17 |
Cropping images; Accessing formatted data; CSV files via pandas (population change); Shell Scripts, GitHub |
Think CS: Chapter 6, 10-minutes to Pandas Tutorial, DataCamp Pandas Tutorial, Ubuntu Terminal Reference Sheet |
||
Week 7: | 3/18-3/24 |
More on pandas; Intro to functions; continue lecture 6 notes, intro to functions OpenData NYC (shelter data); Using main() functions; Python from the command line |
Lecture slip example, |
Chapter 6, 10-minutes to Pandas Tutorial, DataCamp Pandas Tutorial |
|
Week 8: | 3/25-3/31 |
More Functions & Parameters; Binning data (parking tickets); Top-down design (herd of turtles); |
Lecture 8 programs, List Example 1 (Python Tutor) List Example 2 (Python Tutor) |
Think CS: Chapter 6 | |
Week 9: | 4/1-4/7 |
Programming with Functions, Top-down Design; Mapping GIS Data (Folium); Random Number Generation; Indefinite Loops Folium/leaflet.js (mapping CUNY locations); Finding errors; Regular expressions (command line) |
Sisters Example, num2string example |
Think CS: Chapter 6, Folium tutorial |
|
Week 10: | 4/8-4/21 |
Indefinite Loops; Simulations; Design Patterns: Max; Indefinite loops; random; More on command line scripts; |
cunyLocations.csv, Swap if smaller (Python Tutor) |
Think CS: Chapter 8 | |
4/12-4/20 | Spring Recess: No Tutoring/Quizzes/Code Reviews available. | ||||
Week 11: | 4/22-4/28 |
Python Recap; Simplified Machine Language; Design Patterns: Searching; WeMIPS |
WeMIPS Emulator, Lecture slip example |
U Idaho reference sheet, MIPS Wikibooks | |
Week 12: | 4/29-5/5 | Introduction to C++: program structure, data representation and I/O. Final Exam Overview |
cin/cout example, kg/lbs example, loops example, nested loops |
Cplusplus Tutorial, C++ Tutorials Point, The Rook's Guide to C++ |
|
Week 13: | 5/6-5/12 | C++ |
Lecture 13 programs, |
Cplusplus Tutorial, C++ Tutorials Point, The Rook's Guide to C++ |
|
Week 14: | 5/13-5/15 | Mock Exam | Exam Information | ||
Finals Week | TBA | Final Exam in Assembly Hall (118 HN) | Exam Information |