Schedule - Advanced
| Week | Topic | Software Carpenty Lectures |
Assignment |
| Aug. 29 | Programming Basics in Python (variables, if/then/else, loops, lists, etc.), Wing IDE | Intro, Basics, Control Flow, Lists, Input/Output, Strings, Slicing | |
| Sep. 5 | Functions & Libraries No Class on Monday - Labor Day | Functions, 1st Class Functions, Libraries | 1 |
| Sep. 12 | Version Control, Scientific Programming in Python | Version Control, Numpy*, Matplotlib* | 2.1 |
| Sep. 19 | Aliasing, Tuples, Sets, Dictionaries Last day to drop without notation | Aliasing, Tuples, Sets, Storage (or the nerdier version), Dictionaries | 2.2 |
| Sep. 26 | The Shell and Servers | Shell Lectures 1-4 (M), 5-7(W), 8-9(F) | 3 |
| Oct. 3 | Databases using SQL - Queries | Databases (SQLite lectures) 1-4 (M), 5-6 (W), 7-8 (F) | |
| Oct. 10 | Databases using SQL - Interfacing w/Python, Creating and Modifying, Database structure | Python + SQLite*, Creating Tables*, Modifying Tables* | 4 |
| Oct. 17 | Debugging, Error Handling, Testing Friday class on Thursday due to Fall Break | Debugger, Testing (including Exception Handling) | 5 |
| Oct. 24 | Object Oriented Programming Friday is the last day to drop with a W | Classes and Objects | |
| Oct. 31 | Program Design | Program Design | |
| Nov. 7 | Regular Expressions | Regular Expressions | 6 |
| Nov. 14 | Project | Project | |
| Nov. 21 | Project No class Wednesday or Friday - Thanksgiving | Project | |
| Nov. 28 | Project | Project | |
| Dec. 5 | Project Projects Due on Friday | Project |
*Not Software Carpentry material (but hopefully I'll get around to turning it into Software Carpentry material soon)
Other possible topics: Concurrency (multiprocessing), GUI programming (wxPython), Numpy, Scipy, Matplotlib, Biopython, R in Python, packaging (setuptools, py2exe)

