| 
    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
     |