~3 sessions a week: read the lesson (~15 min) + run and change its section of dist/demo.py (~25 min). Tick lessons off — progress is saved in this browser.
Partial failure, clocks, ordering. Lab: raise the loss rate; send notes both ways; make two events concurrent.
Failure detection, replication, quorums. Lab: change the timeout; ship more of the log before failover; try every R and W.
Consistency models, CAP/PACELC, Raft. Lab: cut the road differently; elect with 2, 3 and 4 alive; append with and without a majority.
Locks and leases, exactly-once, backpressure. Lab: remove the fencing check; redeliver more messages; change the queue limit.
Next: the System Design school uses all of this in real designs, the Scaling school handles the traffic, and the School portal has the rest.