Week | Topics |
---|---|
Week 0:
Prep for class |
Work through ”Learn Python the Hard Way, 2nd Ed.”. Email the group about things that don’t make sense. It is not expected that everything will be crystal clear, but figuring out which parts of this are hazy will give us a good starting point and some momentum going into the start of class. |
Week 1:
Building Software: Some Best Practices |
Python Review
Source Control: DVC, Git, github Exceptions in Python Testing: Motivations, TDD, Unit Testing Code from Class: inclass.py inclasstest.py Code from Lab: inlab1.py inlab1test.py Homework 1 - Due next class |
Week 2:
Object Oriented Programming |
Object Oriented Concepts: Motivations, Polymorphism, Inheritance, Encapsulation, Static/Instance, Public/Private
How does Python do it?: Python classes, constructors, __str__ Code from Class: fib.py polymorphism.py polymorphismtest.py sports.py Code from Lab: inlab2.py - starter file lab2.py - completed file Homework 2 - Due next class |
Week 3:
Algorithms |
Exception Handling
Sort: Selection Sort, Merge Sort, Quick Sort, others Search: Binary Search Complexity: How is it measured? Big O notation Code from Class: exc_ex.py sort.py Code from Lab: scope.py inlab3.py lab3tests.py lab3times.py Homework 3 - Due next class |
Week 4:
Data Structures |
Common Data Structures: Array, List, Stack, Queue, Tree, Graph, Dictionary
Python’s Data Structures: What does Python have? Code from Lab: inlab4.py factorial.py Homework 4- Due next class |
Week 5:
I/O |
File I/O: reading and Writing
HTTP: GET/POST The structure of the web: HTML Performance Code from Class: filestuff.py csvstuff.py url_grabbing.py Code from Lab: regexp.py obama-nh.txt example.html lab5.py moatscrape.py Homework 5 - Due next class |
Week 6:
APIs |
What are APIs?
HTTP in depth REST/SOAP Twitter API with Tweepy Code from Class: twitter.py urlparsing.py Code from Lab: pollsterpy gmaps.py Homework 6 - Due next class |
Week 7:
Databases |
Relational Database Design
Database performance considerations Using databases with Python Code from Class: sqlex.py Code from Lab: lab7geog.py Homework 7 - Due next class |
Week 8:
NoSQL Data stores |
What do we mean by NoSQL?
Why should we care? MongoDB for structured documents Code from Class: mongo.py mongolab.py Code from Lab: mapcities.py create_db.py inlab8.py latlong.csv No Homework this week |
Week 9:
Classification |
Classification algorithms
Naive Bayes Nearest Neighbor Neural Networks Code from Class: naivebayes.py Code from Lab: lab9.csv inlab9.py No Homework this week |
Week 10:
Linear Programming |
What is an LP?
What types of problems can we solve? Applications in MathProg Applications in Python Code from Class: paninting.lp paninting.mod matching.mod Code from Lab: hello.py |
Week 11:
Slack / Special Topics |
|
Week 12:
Project Checkins / Code Reviews |
|
Week 13:
Project Checkins / Code Reviews |