2017 Lecture Schedule

Below you can find the mostly set schedule for the course. Note that the guest lecture dates are subject to change.

September 28, 2017 (slides)

  • Introduction to Scalable Internet Services

TODO:

October 3, 2017 (slides)

  • Introduction to HTTP

TODO:

October 5, 2017 (slides)

  • Introduction to HTML and CSS
  • Agile/Scrum

October 10, 2017 (slides)

  • TDD, CI, and Pairing
  • Web Server Architectures (very brief)

October 12, 2017 (slides)

  • Web Server and Application Server Architectures

TODO:

October 17, 2017 (slides)

  • Vertical Scaling
  • Horizontal Scaling with Load Balancing

October 19, 2017 (slides)

  • Architecting for High Availability
  • Client-side Caching

October 24, 2017

  • Story Splitting Workshop: Elephant Carpaccio

October 26, 2017 (slides)

  • Server-side Caching
  • Deploying on AWS

October 31, 2017 (slides)

  • Relational Databases
  • Database Concurrency Control
  • Query Analysis

November 7, 2017

  • Guest Lecture: Sean Maloney, Engineering Lead @ Riot Games

November 9, 2017 (slides)

  • Database Scaling
    • Sharding
    • Service Oriented Architectures
    • Read-only Secondaries

November 14, 2017 (slides)

  • Guest Lecture: Dr. Andrew Mutz, CTO @ AppFolio
  • Load testing with Tsung

TODO:

November 16, 2017 (slides)

  • Non-relational Data Stores

November 21, 2017

  • Guest Lecture: Courtney Wang, Senior Software Engineer @ Reddit

TODO:

November 23, 2017 (Thanksgiving, no class)

Novemver 28, 2017 (slides)

  • An Introduction to Web Security
    • HTTPS
    • Firewalls
    • SQL Injection
    • XSS
    • CSRF

TODO:

  • Read Chapter 12: HTTP/2 in High Performance Browser Networking

Novemver 30, 2017 (slides)

  • HTTP 2.0
  • QUIC

TODO:

  • Read chapter 15: XMLHttpRequest in High Performance Browser Networking

December 5, 2017 (slides)

  • Clients
  • JavaScript
  • Client-side MVC

December 7, 2017 (Monday)

  • Final presentations