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
15 28 Nov lecture Generators
lab Generators
30 Nov lecture Course Wrap-Up
4 Dec assignment Alien Invaders
8 Dec exam Final