Semester Calendar
This page is a high level overview of the what the course will cover. The lectures are subject to change, and this page will be updated as changes are made. For a more detailed summary of the lectures, including suggested readings, class handounts, and demo code, you should refer to the lectures page.
Week | Date | Event | Topic |
---|---|---|---|
1 | lab | Getting Started | |
26 Aug | lecture | Types and Expressions | |
lab | Expressions | ||
2 | 31 Aug | lecture | Variables and Assignments |
lab | Assignments | ||
2 Sep | lecture | Functions and Modules | |
lab | Modules | ||
3 | 7 Sep | lecture | User-Defined Functions |
lab | Functions | ||
9 Sep | lecture | Strings | |
lab | Strings | ||
4 | 14 Sep | lecture | Specifications and Testing |
lab | Testing | ||
16 Sep | lecture | Conditionals and Program Flow | |
lab | Conditionals | ||
5 | 21 Sep | lecture | Algorithm Design |
lab | Assignment 1 | ||
22 Sep | assignment | Currency | |
23 Sep | lecture | Objects | |
lab | Objects | ||
6 | 28 Sep | lecture | Memory in Python |
lab | Debugging | ||
30 Sep | lecture | Asserts and Error Handling | |
lab | Asserts | ||
30 Sep | assignment | Call Frames | |
7 | 5 Oct | lecture | Lists (and Sequences) |
lab | Lists | ||
7 Oct | lecture | For-Loops | |
lab | Assignment 3 | ||
8 Oct | assignment | Color Models | |
8 | 14 Oct | lecture | Recursion |
lab | Recursion I | ||
9 | 19 Oct | lecture | More Recursion |
lab | Recursion II | ||
19 Oct | exam | Prelim 1 | |
21 Oct | lecture | Nested Lists and Dictionaries | |
lab | Nested Lists & Dictionaries | ||
10 | 26 Oct | lecture | Classes |
lab | Blackjack | ||
28 Oct | lecture | Object-Oriented Design | |
lab | Object-Oriented Design | ||
28 Oct | assignment | Turtles | |
11 | 2 Nov | lecture | Inheritance |
lab | Subclasses | ||
4 Nov | lecture | Operators and Abstraction | |
lab | Abstraction | ||
4 Nov | assignment | Class Folders | |
12 | 9 Nov | lecture | Dynamic Typing |
lab | Dynamic Typing | ||
11 Nov | lecture | While Loops | |
lab | While Loops | ||
11 Nov | exam | Prelim 2 | |
13 | 16 Nov | lecture | GUI Applications |
lab | GUI Classes | ||
18 Nov | lecture | Generators | |
lab | Generators | ||
18 Nov | assignment | Clustering | |
14 | 23 Nov | lecture | Coroutines |
25 Nov | break | THANKSGIVING | |
15 | lab | Coroutines | |
30 Nov | lecture | Searching and Sorting | |
lab | Sorting | ||
2 Dec | lecture | Advanced Sorting | |
16 | 7 Dec | lecture | Course Wrap-Up |
7 Dec | assignment | Alien Invaders | |
10 Dec | lecture | Review Session | |
12 Dec | exam | Final |