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