This is a rough schedule of topics for each day and the release and due dates for each homework assignment.

Class topics and homework information may change over the course of the term. Please treat this schedule as a rough guide for seeing what we’ll be focusing on, and expect that there will be shifts as the term progresses.

Preparation should be completed before the class day that they are listed. Class is structured expecting that you have completed the preparation activities and responded to them on Moodle.

Date Homework/Reading Due In Class Homework Out
Week 1 Algorithmic Thinking    
M 9/12 Start of Class Prep Intro to the class  
W 9/14 Intro Python Prep Starting with Python HW1
F 9/16 Building Blocks Prep Values, Operations, and Types  
Week 2 Building Blocks Part 1    
M 9/19 Variables Prep Variables and Evaluation  
W 9/21 Modules Prep; HW1 Quiz 1; Random Turtles HW2
F 9/23 Sequences Prep Using Sequences  
Week 3 Building Blocks Part 2    
M 9/26 Iteration Prep Iteration Lab  
W 9/28 Conditionals Prep; HW2 Quiz 2; Conditionals Lab HW3
F 9/30 Debugging Prep Debugging Strategies and Nested Structures  
Week 4 Advanced Blocks    
M 10/3 Mutating Lists Prep Working with Lists  
W 10/5 Files Prep; HW3 Quiz 3; Working with Files HW4
F 10/7 Functions Prep 1 Function Basics  
Week 5 Functions    
M 10/10 Functions Prep 2 Return of the Functions  
W 10/12 Indefinite Loops Prep; HW4 Quiz 4; Using While Loops HW5
F 10/14 Dictionaries Prep Using Dictionaries  
Week 6 Objects and Classes    
M 10/17   Mid-term Break!  
W 10/19 OOP Preparation; HW5 Quiz 5; Graphics Intro Lab HW6
F 10/21 Working with Classes Creating Flower Classes  
Week 7 Recursion and Efficiency    
M 10/24 Recursion Prep Intro to Recursion  
W 10/26 Algorithm Analysis Prep; HW6 Quiz 6; Analyzing Algorithms HW7
F 10/28 Lists and Dictionary Analysis Prep Efficiency of Python Lists and Dictionaries  
Week 8 Searching and Sorting    
M 10/31 Searching Prep (Guest Prof) Sequential and Binary Search  
W 11/2 Sorting Prep 1; HW7 Quiz 7; Slow(ish) Sorting Algorithms  
F 11/4 Sorting Prep 2; Final Project Info Mergesort and Final Project Final Project Proposal
Week 9 Final Project    
M 11/7 Final Project Proposal Making Simulations  
W 11/9 Study! Quiz 8 Final Project
F 11/11 None Catch-up and work day  
Week 10 Wrapping Up    
M 11/14 Project First Draft Working on Final Projects  
W 11/16 Study! Quiz 9; Wrap-up and course evals  
Exam Period      
  Final Project