Schedule

Please note that this schedule is subject to change.

Calendar

Date Topic Readings Assignments
1/13 Introduction Ch. 1
1/15 Setup & Notebooks A1
1/20 No Class
1/22 Syntax & Types Ch. 2
1/27 Control Statements Ch. 3 A2
1/29 Sequences Ch. 5.1-11
2/03 Functions Ch. 4
2/05 Dictionaries and Sets Ch. 6 A3
2/10 Comprehensions & Iterators Ch. 5.12-14
2/12 Lazy Evaluation
2/17 String Processing Ch. 8
2/19 Test 1
2/24 Files & Scripts Ch. 9.1-7 A4
2/26 Modules & Packages
3/03 Object-Oriented Programming Ch. 10.1-6
3/05 Object-Oriented Programming Ch. 10.7-10 A5
3/10 No Class
3/12 No Class
3/17 Object-Oriented Programming Ch. 10.12-13
3/19 Exceptions Ch. 9.8-11, 10.11
3/24 Testing Ch. 10.14 A6
3/26 OS Integration
3/31 Concurrency
4/02 Test 2
4/07 Structural Pattern Matching
4/09 Arrays Ch. 7 A7
4/14 Data
4/16 Data
4/21 Visualization
4/23 Visualization A8
4/28 Machine Learning
4/30 Review
5/05 Final Exam (12:00pm)

Lectures

(01/13) Introduction
(01/15) Setup & Notebooks
(01/22) Syntax & Types
(01/27) Control Statements
(01/29) Sequences
(02/03) Sequences
(02/05) Functions & Dictionaries
(02/10) Sets & Comprehensions
(02/12) Iterators, Generators, & Lazy Evaluation
(02/17) String Processing
(02/24) Files
(02/26) Scripts & Modules
(03/03) Packages
(03/05) Object-Oriented Programming
(03/17) Object-Oriented Programming
(03/19) Exceptions
(03/24) Debugging & Testing
(03/26) OS Integration
(03/31) Concurrency
(04/07) Structural Pattern Matching
(04/09) Arrays
(04/14) Data
(04/16) Data
(04/21) Visualization
(04/23) Visualization
(04/28) Machine Learning
(04/30) Review