Week 1
- Welcome, A lesson in indirection (Room change!), and Administrivia
- Representation -- More than notation, Structure drives thinking
- Algorithms -- Not all solutions are alike (but many problems are)
- Python -- Quick start
- Decision making -- Conditionals
Week 2
- No class -- Independence Day!
- Repetition -- Loops
- Getting Organized -- Functions and Code Reuse
- Pretty -- Tkinter
- Software Development -- Personal Process
Week 3
- Exam #1 -- Show your stuff
- Lists, 1D and 2D
- Tuples, Dictionaries
- Reinforcement
- Recursive thinking and problem solving
Week 4
- Recursive programming, call stack, mechanics
- Recursive programming, tail recursion, recursion removal
- Reinforcement
- Events and Animation
- Events and Animation
Week 5
- Databases, Interacting with databases
- SQL Primer
- Exam #2 -- A day to be proud of!
- Regular Expressions, Regular Languages, and Finite State Machines
- Files, Web Scraping
Week 6
- Data analysis, Mining, K-Means clustering
- Generators, Coroutines, and the Producer-Consumer Model
- Extra day
- Review, Recap
- Final Exam -- The best is saved for last
|