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 | 22 Aug | lecture | Types and Expressions |
| lab | Getting Started | ||
| 24 Aug | lecture | Variables and Assignments | |
| lab | Expressions & Variables | ||
| 2 | 29 Aug | lecture | Functions and Modules |
| lab | Modules | ||
| 31 Aug | lecture | User-Defined Functions | |
| lab | Functions | ||
| 3 | 5 Sep | lecture | Strings |
| lab | Strings | ||
| 7 Sep | lecture | Specifications and Testing | |
| lab | Testing | ||
| 4 | 12 Sep | lecture | Conditionals and Program Flow |
| lab | Conditionals | ||
| 14 Sep | lecture | Algorithm Design | |
| lab | Assignment 1 | ||
| 5 | 17 Sep | assignment | Currency |
| 19 Sep | lecture | Objects | |
| lab | Objects | ||
| 21 Sep | lecture | Memory in Python | |
| lab | Debugging | ||
| 6 | 24 Sep | assignment | Call Frames |
| 26 Sep | lecture | Asserts and Error Handling | |
| lab | Asserts | ||
| 28 Sep | lecture | Lists (and Sequences) | |
| lab | Sequences | ||
| 7 | 3 Oct | lecture | For-Loops |
| lab | For-Loops | ||
| 5 Oct | lecture | Nested Lists | |
| lab | Assignment 3 | ||
| 6 Oct | assignment | Color Models | |
| 8 | 12 Oct | lecture | Recursion |
| lab | Recursion I | ||
| 12 Oct | exam | Prelim 1 | |
| 9 | 17 Oct | lecture | More Recursion |
| lab | Recursion II | ||
| 19 Oct | lecture | Dictionaries | |
| lab | Nested Lists & Dictionaries | ||
| 10 | 24 Oct | lecture | Classes |
| lab | Blackjack | ||
| 26 Oct | lecture | Object-Oriented Design | |
| lab | Object-Oriented Design | ||
| 27 Oct | assignment | Turtles | |
| 11 | 31 Oct | lecture | Inheritance |
| lab | Subclasses | ||
| 2 Nov | lecture | While Loops | |
| lab | While Loops | ||
| 3 Nov | assignment | Class Folders | |
| 12 | 7 Nov | lecture | Operators and Abstraction |
| lab | Abstraction | ||
| 9 Nov | lecture | Advanced Error Handling | |
| lab | Advanced Error Handling | ||
| 13 | 14 Nov | lecture | GUI Applications |
| lab | GUI Classes | ||
| 14 Nov | assignment | Connect-N | |
| 16 Nov | lecture | Searching and Sorting | |
| lab | Assignment 7 | ||
| 14 | 21 Nov | lecture | Advanced Sorting |
| 21 Nov | exam | Prelim 2 | |
| 23 Nov | break | THANKSGIVING | |
| 15 | 28 Nov | lecture | Generators |
| lab | Generators | ||
| 30 Nov | lecture | Course Wrap-Up | |
| 4 Dec | assignment | Alien Invaders | |
| 8 Dec | exam | Final |