Course Schedule
Part 1: Performance
Week 1
[Wed, Jun 7]
Reproducibility 3
- git commands
- branching and merging
- conflict resolution
Slides
Lec Recording
Reading .nb
Week 2
[Mon, Jun 12]
Performance 2
- complexity analysis
- big O notation
Worksheet Answer
Lec Recording
Reading .nb
[Wed, Jun 14]
OOP 1: Classes
- attributes
- methods
- constructors
P2 Released
Slides
Lec Recording
Reading .nb
Week 3
[Mon, Jun 19]
OOP 3: Inheritance
- method resolution order
- overriding methods
- calling overridden methods
Slides
Lec Recording
Reading .nb
[Tue, Jun 20]
Recursion
- functions that return something
- functions that do something
Worksheet Answer
Lec Recording
Reading .nb
Lab 3A
[Thu, Jun 22]
Trees 1
- trees
- binary trees
- binary search trees (BSTs)
Lec Recording
Reading .nb
Lab 3B
Quiz 3
Week 4
[Mon, Jun 26]
Trees 2
- BSTs: height, for sets+dicts
- depth-first search
Slides
Lec Recording
Reading .nb
[Tue, Jun 27]
Graph Search 1
- breadth-first search
- stacks, queues, priority queues
Slides
Lec Recording
Reading .nb
Lab 4A
[Wed, Jun 28]
Graph Search 2
- deque (for queues)
- heapq (for priority queues)
- web intro
P3 Released
Lec Recording
Reading .nb
[Thu, Jun 29]
Web 1: Selenium
- finding elements, text
- polling
- screenshots
- clicking, typing
Midterm 1
Fri, June 30th, 7:00PM - 8:30PM
Slides
Lec Recording
Lab 4B
Quiz 4
Part 2: Web and Visualization
Week 5
[Mon, Jul 3]
Web 2: Recursive Crawl
- more tricky pages
- BFS for webpages
P2 Due
Lec Recording
Reading .nb
[Tue, Jul 4]
Independence Day
[Wed, Jul 5]
Web 3: Flask
- Internet overview
- flask
- headers, rate limiting (HTTP 429)
P4 Released
Slides
Lec Recording
Reading .nb
[Thu, Jul 6]
Web 4: More Flask
- robots.txt
- query strings
- decorators
P3 Due Fri, July 7th
Lec Recording
Lab 5B
Quiz 5
Week 6
Week 7
[Mon, Jul 17]
Visualization 1
- matplotlib coordinate systems
- drawing custom lines/polygons
P4 Due
Lec Recording
Reading .nb
[Tue, Jul 18]
Visualization 2
- geographic maps
- shapely
- coordinate reference systems
Lec Recording
Reading .nb
Lab 7A
[Thu, Jul 20]
ML Overview
- regression, classification
- clustering, decomposition
Midterm 2
Fri, July 21st, 7:00PM - 8:30PM
Slides
Lec Recording
Lab 7B
Part 3: Machine Learning
Week 8
[Mon, Jul 24]
Regression 1
- sklearn LinearRegression
- explained variance
- train/test split
P6 Released
Lec Recording
[Wed, Jul 26]
Linear Algebra 1
- numpy arrays
- numpy images
- multiplication
P5 Due
Lec Recording
Reading .nb
[Thu, Jul 27]
Linear Algebra 2
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Lec Recording
Reading .nb
Lab 8B
Quiz 8
Week 9
[Tue, Aug 1]
Classification 1
- LogisticRegression
- multiclass, proba
- decision boundaries
- standardization
P7 Released
Slides
Lec Recording
Lab 9A
[Thu, Aug 3]
Clustering 1
- KMeans
- AgglomerativeClustering
- fit, transform, predict
P6 Due
Lec Recording
Lab 9B
Quiz 9
Week 10
[Tue, Aug 8]
Decomposition
- Principal Component Analysis (PCA)
- Feature Dimensionality Reduction
- Compressing Data
Slides
Lec Recording
Reading .nb
Lab 10A
[Wed, Aug 9]
Parallelism
- threads vs. processes
- multiprocessing pools
- parallel map
- pytorch
P7 Due
Slides
Lec Recording
Reading .nb
[Wed, Jun 7]
Reproducibility 3
- git commands
- branching and merging
- conflict resolution
Lec Recording
Reading .nb
[Mon, Jun 12]
Performance 2
- complexity analysis
- big O notation
Lec Recording
Reading .nb
[Wed, Jun 14]
OOP 1: Classes
- attributes
- methods
- constructors
Slides
Lec Recording
Reading .nb
Week 3
[Mon, Jun 19]
OOP 3: Inheritance
- method resolution order
- overriding methods
- calling overridden methods
Slides
Lec Recording
Reading .nb
[Tue, Jun 20]
Recursion
- functions that return something
- functions that do something
Worksheet Answer
Lec Recording
Reading .nb
Lab 3A
[Thu, Jun 22]
Trees 1
- trees
- binary trees
- binary search trees (BSTs)
Lec Recording
Reading .nb
Lab 3B
Quiz 3
Week 4
[Mon, Jun 26]
Trees 2
- BSTs: height, for sets+dicts
- depth-first search
Slides
Lec Recording
Reading .nb
[Tue, Jun 27]
Graph Search 1
- breadth-first search
- stacks, queues, priority queues
Slides
Lec Recording
Reading .nb
Lab 4A
[Wed, Jun 28]
Graph Search 2
- deque (for queues)
- heapq (for priority queues)
- web intro
P3 Released
Lec Recording
Reading .nb
[Thu, Jun 29]
Web 1: Selenium
- finding elements, text
- polling
- screenshots
- clicking, typing
Midterm 1
Fri, June 30th, 7:00PM - 8:30PM
Slides
Lec Recording
Lab 4B
Quiz 4
Part 2: Web and Visualization
Week 5
[Mon, Jul 3]
Web 2: Recursive Crawl
- more tricky pages
- BFS for webpages
P2 Due
Lec Recording
Reading .nb
[Tue, Jul 4]
Independence Day
[Wed, Jul 5]
Web 3: Flask
- Internet overview
- flask
- headers, rate limiting (HTTP 429)
P4 Released
Slides
Lec Recording
Reading .nb
[Thu, Jul 6]
Web 4: More Flask
- robots.txt
- query strings
- decorators
P3 Due Fri, July 7th
Lec Recording
Lab 5B
Quiz 5
Week 6
Week 7
[Mon, Jul 17]
Visualization 1
- matplotlib coordinate systems
- drawing custom lines/polygons
P4 Due
Lec Recording
Reading .nb
[Tue, Jul 18]
Visualization 2
- geographic maps
- shapely
- coordinate reference systems
Lec Recording
Reading .nb
Lab 7A
[Thu, Jul 20]
ML Overview
- regression, classification
- clustering, decomposition
Midterm 2
Fri, July 21st, 7:00PM - 8:30PM
Slides
Lec Recording
Lab 7B
Part 3: Machine Learning
Week 8
[Mon, Jul 24]
Regression 1
- sklearn LinearRegression
- explained variance
- train/test split
P6 Released
Lec Recording
[Wed, Jul 26]
Linear Algebra 1
- numpy arrays
- numpy images
- multiplication
P5 Due
Lec Recording
Reading .nb
[Thu, Jul 27]
Linear Algebra 2
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Lec Recording
Reading .nb
Lab 8B
Quiz 8
Week 9
[Tue, Aug 1]
Classification 1
- LogisticRegression
- multiclass, proba
- decision boundaries
- standardization
P7 Released
Slides
Lec Recording
Lab 9A
[Thu, Aug 3]
Clustering 1
- KMeans
- AgglomerativeClustering
- fit, transform, predict
P6 Due
Lec Recording
Lab 9B
Quiz 9
Week 10
[Tue, Aug 8]
Decomposition
- Principal Component Analysis (PCA)
- Feature Dimensionality Reduction
- Compressing Data
Slides
Lec Recording
Reading .nb
Lab 10A
[Wed, Aug 9]
Parallelism
- threads vs. processes
- multiprocessing pools
- parallel map
- pytorch
P7 Due
Slides
Lec Recording
Reading .nb
[Mon, Jun 19]
OOP 3: Inheritance
- method resolution order
- overriding methods
- calling overridden methods
Lec Recording
Reading .nb
[Tue, Jun 20]
Recursion
- functions that return something
- functions that do something
Lec Recording
Reading .nb
Lab 3A
[Thu, Jun 22]
Trees 1
- trees
- binary trees
- binary search trees (BSTs)
Reading .nb
Lab 3B
Quiz 3
[Mon, Jun 26]
Trees 2
- BSTs: height, for sets+dicts
- depth-first search
Lec Recording
Reading .nb
[Tue, Jun 27]
Graph Search 1
- breadth-first search
- stacks, queues, priority queues
Lec Recording
Reading .nb
Lab 4A
[Wed, Jun 28]
Graph Search 2
- deque (for queues)
- heapq (for priority queues)
- web intro
Lec Recording
Reading .nb
[Thu, Jun 29]
Web 1: Selenium
- finding elements, text
- polling
- screenshots
- clicking, typing
Fri, June 30th, 7:00PM - 8:30PM
Slides
Lec Recording
Lab 4B
Quiz 4
Part 2: Web and Visualization
Week 5
[Mon, Jul 3]
Web 2: Recursive Crawl
- more tricky pages
- BFS for webpages
P2 Due
Lec Recording
Reading .nb
[Tue, Jul 4]
Independence Day
[Wed, Jul 5]
Web 3: Flask
- Internet overview
- flask
- headers, rate limiting (HTTP 429)
P4 Released
Slides
Lec Recording
Reading .nb
[Thu, Jul 6]
Web 4: More Flask
- robots.txt
- query strings
- decorators
P3 Due Fri, July 7th
Lec Recording
Lab 5B
Quiz 5
Week 6
Week 7
[Mon, Jul 17]
Visualization 1
- matplotlib coordinate systems
- drawing custom lines/polygons
P4 Due
Lec Recording
Reading .nb
[Tue, Jul 18]
Visualization 2
- geographic maps
- shapely
- coordinate reference systems
Lec Recording
Reading .nb
Lab 7A
[Thu, Jul 20]
ML Overview
- regression, classification
- clustering, decomposition
Midterm 2
Fri, July 21st, 7:00PM - 8:30PM
Slides
Lec Recording
Lab 7B
Part 3: Machine Learning
Week 8
[Mon, Jul 24]
Regression 1
- sklearn LinearRegression
- explained variance
- train/test split
P6 Released
Lec Recording
[Wed, Jul 26]
Linear Algebra 1
- numpy arrays
- numpy images
- multiplication
P5 Due
Lec Recording
Reading .nb
[Thu, Jul 27]
Linear Algebra 2
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Lec Recording
Reading .nb
Lab 8B
Quiz 8
Week 9
[Tue, Aug 1]
Classification 1
- LogisticRegression
- multiclass, proba
- decision boundaries
- standardization
P7 Released
Slides
Lec Recording
Lab 9A
[Thu, Aug 3]
Clustering 1
- KMeans
- AgglomerativeClustering
- fit, transform, predict
P6 Due
Lec Recording
Lab 9B
Quiz 9
Week 10
[Tue, Aug 8]
Decomposition
- Principal Component Analysis (PCA)
- Feature Dimensionality Reduction
- Compressing Data
Slides
Lec Recording
Reading .nb
Lab 10A
[Wed, Aug 9]
Parallelism
- threads vs. processes
- multiprocessing pools
- parallel map
- pytorch
P7 Due
Slides
Lec Recording
Reading .nb
[Mon, Jul 3]
Web 2: Recursive Crawl
- more tricky pages
- BFS for webpages
Lec Recording
Reading .nb
[Tue, Jul 4]
Independence Day
[Wed, Jul 5]
Web 3: Flask
- Internet overview
- flask
- headers, rate limiting (HTTP 429)
Slides
Lec Recording
Reading .nb
[Thu, Jul 6]
Web 4: More Flask
- robots.txt
- query strings
- decorators
Lec Recording
Lab 5B
Quiz 5
Week 7
[Mon, Jul 17]
Visualization 1
- matplotlib coordinate systems
- drawing custom lines/polygons
P4 Due
Lec Recording
Reading .nb
[Tue, Jul 18]
Visualization 2
- geographic maps
- shapely
- coordinate reference systems
Lec Recording
Reading .nb
Lab 7A
[Thu, Jul 20]
ML Overview
- regression, classification
- clustering, decomposition
Midterm 2
Fri, July 21st, 7:00PM - 8:30PM
Slides
Lec Recording
Lab 7B
Part 3: Machine Learning
Week 8
[Mon, Jul 24]
Regression 1
- sklearn LinearRegression
- explained variance
- train/test split
P6 Released
Lec Recording
[Wed, Jul 26]
Linear Algebra 1
- numpy arrays
- numpy images
- multiplication
P5 Due
Lec Recording
Reading .nb
[Thu, Jul 27]
Linear Algebra 2
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Lec Recording
Reading .nb
Lab 8B
Quiz 8
Week 9
[Tue, Aug 1]
Classification 1
- LogisticRegression
- multiclass, proba
- decision boundaries
- standardization
P7 Released
Slides
Lec Recording
Lab 9A
[Thu, Aug 3]
Clustering 1
- KMeans
- AgglomerativeClustering
- fit, transform, predict
P6 Due
Lec Recording
Lab 9B
Quiz 9
Week 10
[Tue, Aug 8]
Decomposition
- Principal Component Analysis (PCA)
- Feature Dimensionality Reduction
- Compressing Data
Slides
Lec Recording
Reading .nb
Lab 10A
[Wed, Aug 9]
Parallelism
- threads vs. processes
- multiprocessing pools
- parallel map
- pytorch
P7 Due
Slides
Lec Recording
Reading .nb
[Mon, Jul 17]
Visualization 1
- matplotlib coordinate systems
- drawing custom lines/polygons
Lec Recording
Reading .nb
[Tue, Jul 18]
Visualization 2
- geographic maps
- shapely
- coordinate reference systems
Reading .nb
Lab 7A
[Thu, Jul 20]
ML Overview
- regression, classification
- clustering, decomposition
Fri, July 21st, 7:00PM - 8:30PM
Slides
Lec Recording
Lab 7B
[Mon, Jul 24]
Regression 1
- sklearn LinearRegression
- explained variance
- train/test split
Lec Recording
[Wed, Jul 26]
Linear Algebra 1
- numpy arrays
- numpy images
- multiplication
Lec Recording
Reading .nb
[Thu, Jul 27]
Linear Algebra 2
- more multiplication
- fit with np.linalg.solve
- predict with np.dot
- column perspective
Reading .nb
Lab 8B
Quiz 8
Week 9
[Tue, Aug 1]
Classification 1
- LogisticRegression
- multiclass, proba
- decision boundaries
- standardization
P7 Released
Slides
Lec Recording
Lab 9A
[Thu, Aug 3]
Clustering 1
- KMeans
- AgglomerativeClustering
- fit, transform, predict
P6 Due
Lec Recording
Lab 9B
Quiz 9
Week 10
[Tue, Aug 8]
Decomposition
- Principal Component Analysis (PCA)
- Feature Dimensionality Reduction
- Compressing Data
Slides
Lec Recording
Reading .nb
Lab 10A
[Wed, Aug 9]
Parallelism
- threads vs. processes
- multiprocessing pools
- parallel map
- pytorch
P7 Due
Slides
Lec Recording
Reading .nb
[Tue, Aug 1]
Classification 1
- LogisticRegression
- multiclass, proba
- decision boundaries
- standardization
Slides
Lec Recording
Lab 9A
[Thu, Aug 3]
Clustering 1
- KMeans
- AgglomerativeClustering
- fit, transform, predict
Lec Recording
Lab 9B
Quiz 9
[Tue, Aug 8]
Decomposition
- Principal Component Analysis (PCA)
- Feature Dimensionality Reduction
- Compressing Data
Lec Recording
Reading .nb
Lab 10A
[Wed, Aug 9]
Parallelism
- threads vs. processes
- multiprocessing pools
- parallel map
- pytorch
Slides
Lec Recording
Reading .nb