Course Schedule
Part 1: Performance
Week 1
Tue: Reproducibility 1 (Jan 23)
- Course Overview
- Hardware, OS, Interpreters
Survey: Student Information Survey
Week 2
Tue: Performance 1 (Jan 30)
- check_output
- time
- identifying steps
- counting executed steps
- complexity analysis
Lecture notes: Code
Read: HTML1 (NB1), HTML2 (NB2)
Slides: PDF
Assigned:
Week 3
Tue: OOP 1 (Feb 06)
Classes- attributes
- methods
- constructors
Lecture notes: Code
Read: HTML (NB)
Slides: PDF
Optional Reading: Think Python 15, 16, and 17.1 - 17.5
Assigned: Due:
Thu: OOP 2 (Feb 08)
Special Methods- __str__, __repr__, _repr_html_
- __eq__, __lt__
- __len__, __getitem__
- __enter__, __exit__
- method resolution order
- overriding methods
- calling overridden methods
Lecture notes: Code
Read: HTML1 (NB1), HTML2 (NB2)
Slides: PDF
Optional Reading: Python Data Model
Optional Reading: Think Python 18
Assigned:
Week 4
Tue: Recursion and Graphs (Feb 13)
Recursion- functions that return something
- functions that do something
- graphviz
- types of graph
Lecture notes: Code
Read: HTML1 (NB1), HTML2 (NB2)
Worksheet: Question, Answer
Interactive Exercises
Assigned: Due:
Week 5
Tue: Graph Search 1 (Feb 20)
- depth-first search
Lecture notes: Code
Read: HTML (NB)
Honorlock: Practice with Honorlock
Assigned: Due:
Part 2: Web and Visualization
Week 6
Tue: Web 1 (Feb 27)
Selenium- web intro
- finding elements, text
- polling
- screenshots
- clicking, typing
- more tricky pages
- BFS for webpages
Watch: Lecture-part1, Lecture-part2
Git Workflow: Video
Lecture notes: Code
Read: HTML1 (NB1), HTML2 (NB2)
Slides: PDF
Assigned: Due:
Thu: Exam 1 (Online Exam with Honorlock) (Feb 29)
- Regular exam: during class time
- McBurney exam (with 1.5 x time): during class time
- McBurney exam (with > 1.5 x time): 5:45 to 7:15 PM
Week 7
Tue: Web 2 (Mar 05)
Flask- Internet overview
- flask
- headers, rate limiting (HTTP 429)
Lecture notes: Code
Read: HTML (NB)
Slides: PDF
Assigned: Due:
Week 8
Tue: Web 4 (Mar 12)
Dashboards- dashboards
- POST
- CDFs
Lecture notes: Code
Read: HTML (NB)
Assigned:
Week 9
Tue: Visualization 1 (Mar 19)
- matplotlib coordinate systems
- drawing custom lines/polygons
- geographic maps
- shapely
Lecture notes: Code
Read: HTML (NB)
Assigned: Due:
Week 10
Tue: Spring Break (Mar 26)
Thu: Spring Break (Mar 28)
Part 3: Machine Learning
Week 11
Tue: Linear Algebra 1 (Apr 02)
- Machine Learning (ML) overview
- regression, classification
- clustering, decomposition
- numpy arrays
- numpy images
- multiplication
Lecture notes: Code
Read: HTML (NB)
Slides: PDF
Assigned: Due:
Thu: Exam 2 (Online Exam with Honorlock) (Apr 04)
- Regular exam: during class time
- McBurney exam (with 1.5 x time): during class time
- McBurney exam (with > 1.5 x time): 5:45 to 7:15 PM
Week 12
Tue: Regression 1 (Apr 09)
- sklearn LinearRegression
- explained variance
Lecture notes: Code
Assigned:
Week 13
Tue: Linear Algebra 2 (Apr 16)
- fit with np.linalg.solve
- predict with np.dot
- column perspective
- column spaces
- projection matrices
Lecture notes: Code
Read: HTML1 (NB1), HTML2 (NB2)
Assigned: Due:
Week 14
Tue: Clustering (Apr 23)
- KMeans
- AgglomerativeClustering
- fit, transform, predict
- AgglomerativeClustering
- linkage
Lecture notes: Code
Slides: PDF
Assigned: Due:
Week 15
Tue: Unsupervised ML Recap (Apr 30)
- wrapup Dendrograms
- when to use the following:
- KMeans
- AgglomerativeClustering
- PCA
Lecture notes: Code
Slides: PDF
Due:
Week 16
Tue: No Class (May 07)
Tursday: Final Exam (Online Exam with Honorlock) (May 9)
Regular exam : 5/9/2024 12:25PM - 2:25PMMcBurney exam:5/9/2023 12:25PM - 4:25PM
Alternate exam:5/9/2023 4:25PM - 6:25PM