Fall 2024 Class Schedule

The following schedule is subject to change, and many slide links are not yet active.

Week 0 (September 26)

Topics

  • Course Introduction - slides

Tasks

  • Complete the introduction survey
  • Join the class on Piazza
  • Begin Project 0
  • Read chapters 1, and 2 of High Performance Browser Networking

Week 1 (October 1-3)

Topics

  • Hypertext Transfer Protocol (HTTP) - slides
  • HTTP Servers - slides
  • Application Servers - slides

Tasks

Week 2 (October 8-10)

Topics

  • Scaling Web Applications - slides
  • Architecting for High Availability slides

Tasks

Week 3 (October 15-17)

Topics

  • Working in teams slides
    • Agile Software Development
    • Test Driven Development (TDD)
    • Continuous Integration (CI)
    • Pair Programming / Mobbing

Tasks

Week 4 (October 22-24)

Topics

Tasks

Week 5 (October 29-31)

Topics

  • Guest Lecture on React (Tu 10/29)
  • Client-Side Caching - slides

Tasks

  • Complete Project 3
  • Complete Final Project Team Message
  • Form a team for Primary Project
    • Find teammates
    • Choose a project
      • Use one of the project ideas (2 to 3 people)
      • or combine multiple project ideas (4 - 6) people
      • or design your own (complexity should be similar to provided project ideas)

Week 6 (November 5-7)

Topics

  • Relational Databases slides
  • Relational Databases and Rails
  • RDBMS Scaling slides

Tasks

Week 7 (November 12-14)

  • Deep Dive: Load Testing with Tsung slides
  • Non-Relational Data Stores slides

Tasks

Week 8 (November 19-21)

Topics

  • Web Security slides
  • Guest Lecture w/ Andrew Mutz (Th 11/21)

Tasks

Week 9 (November 26)

Topics

  • TBD

Tasks

  • Primary Project Sprint 4
  • Read chapter 12 of High Performance Browser Networking

Week 10 (December 3-5)

Topics

  • Guest Lecture (Tu 12/3)
  • Scalable Machine Learning Inference

Tasks

Finals Week (December 10-12)

Tasks