| Date | Topic | Milestone1 | Quiz2 | Extras |
|---|---|---|---|---|
| Th Jan 22 | Introduction | M0: Setup & Centralized Computing | Q1 | |
| Tu Jan 27 | Of Nodes and Servers | Node.js | ||
| Th Jan 29 | Communication & Serialization | M1: Serialization / Deserialization | Q2 | Cornflakes |
| Tu Feb 3 | Time and the Ordering of Events | Time, Clocks, & Ordering | ||
| Th Feb 5 | Models of Distribution | M2: Actors & RPCs | Q3 | Barrelfish |
| Tu Feb 10 | Broadcast Protocols | Hints for Designing Systems | ||
| Th Feb 12 | Groups & Gossip | M3: Node Groups & Gossip | Q4 | Gossip: Promise and Limitations |
| Tu Feb 17 | — | |||
| Th Feb 19 | Data Sharding & Partitioning | M4: Distributed Storage | Q5 | Hyperdex |
| Tu Feb 24 | Distributed Routing & Hashing | Chord | ||
| Th Feb 26 | Auto-sharding @ Google (J. Pattiz) | M6 Teams Due | Q6 | Slicer |
| Tu Mar 3 | Exam 1 Review | |||
| Th Mar 5 | Exam 1 | |||
| Tu Mar 10 | Distributed Processing | M5: Distributed Processing | MapReduce | |
| Th Mar 12 | More Processing | Q7 | Spark, Timely Dataflow | |
| Tu Mar 17 | Internals of Distributed Processing | DiSh | ||
| Th Mar 19 | Scalable DSLs (Dr. Lukas Lazarek) | Q8 | Bloom | |
| Tu Mar 24 | - | |||
| Th Mar 26 | - | |||
| Tu Mar 31 | Replication & Consistency | M6: Cloud Deployment | Dynamo | |
| Th Apr 2 | Fault Tolerance | Q9 | Consistency | |
| Tu Apr 7 | Byzantine Fault Tolerance | Paxos | ||
| Th Apr 9 | Special Topics: Microservices & Serverless | Poster PDFs due | Q10 | SigmaOS |
| Tu Apr 14 | Special Topics: Distributed Operating Systems | Plan9, Inferno | ||
| Th Apr 16 | Poster Session | |||
| Tu Apr 21 | Exam 2 Review / Course Recap | Scalability COST | ||
| Th Apr 23 | Exam 2 |
1: Milestones are released on Thursdays and are due on the next Wednesday, at 11:59pm.
2: Quizzes are released on Thursdays and are due on the next Monday, at 5:00pm.