Syllabus
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. Most of the links will be dead until closer to the date.
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 |
|
|
W 1/3 |
Start of Class Prep |
Slides, Intro to the class |
|
F 1/5 |
Intro Python Prep |
Slides, Starting with Python |
HW1 |
Week 2 |
Building Blocks Part 1 |
|
|
1/8 |
Building Blocks Prep |
Quiz 1; Slides, Building Blocks Lab |
|
1/10 |
Variables Prep |
Slides, Variables and Evaluation |
|
1/12 |
Modules Prep; HW1 |
Slides, Random Turtles |
HW2 |
Week 3 |
Building Blocks Part 2 |
|
|
1/15 |
Sequences Prep |
Quiz 2; Using Sequences |
|
1/17 |
Iteration Prep |
Slides, Iteration Lab |
|
1/19 |
Conditionals Prep; HW2 |
SlidesConditionals Lab |
HW3 |
Week 4 |
Advanced Blocks |
|
|
1/22 |
Debugging Prep |
Quiz 3; Slides, Debugging Strategies and Nested Structures |
|
1/24 |
Mutating Lists Prep |
Slides, Working with Lists |
|
1/26 |
Files Prep; HW3 |
Slides, Working with Files |
HW4 |
Week 5 |
Functions |
|
|
1/29 |
Functions Prep 1 |
Slides, Quiz 4; Function Basics |
|
1/31 |
Functions Prep 2 |
Slides, Return of the Functions |
|
2/2 |
Indefinite Loops Prep; HW4 |
Slides, Using While Loops |
HW5 |
Week 6 |
Objects and Classes |
|
|
2/5 |
|
Midterm break! |
|
2/7 |
Dictionaries Prep |
Slides, Quiz 5;Using Dictionaries |
|
2/9 |
OOP Preparation; HW5 |
Slides, Graphics Intro Lab |
HW6 |
Week 7 |
Recursion and Efficiency |
|
|
2/12 |
Working with Classes |
Slides, Quiz 6; Creating Flower Classes |
|
2/14 |
Recursion Prep |
Slides, Intro to Recursion |
|
2/16 |
Algorithm Analysis Prep; HW6 |
Slides, Analyzing Algorithms |
HW7 |
Week 8 |
Searching and Sorting |
|
|
2/19 |
Lists and Dictionary Analysis Prep |
Quiz 7;Slides, Structures Efficiency |
|
2/21 |
Searching Prep |
Slides, Sequential and Binary Search |
|
2/23 |
Sorting Prep 1; HW7 |
Slides, Slow(ish) Sorting Algorithms |
|
Week 9 |
Final Project |
|
|
2/26 |
Sorting Prep 2; Final Project Info |
Slides, Mergesort and Final Project |
Final Project Proposal |
2/28 |
Final Project Proposal |
Slides, Making Simulations |
|
3/1 |
Study! |
Slides, Quiz 8 |
Final Project |
Week 10 |
Wrapping Up |
|
|
3/4 |
Final project initial submission |
Slides, Minimum Viable Product |
|
3/6 |
|
Slides, Final project peer review |
|
3/8 |
Study! |
Slides, Quiz 9; Wrap-up and course evals |
|
Exam Period |
|
|
|
W 3/13 12-2:30pm |
|
Quiz 10 (No new learning objectives) |
|
|
|
All revisions due Wednesday, 3/13, 6pm. Any request for an extension must go through the Dean of Students office as I am not otherwise permitted to consider work submitted after this time. |
|