This is really awesome. I've been spending my nights on improving my understanding and was wishing for a resource exactly like this. I've been going through Prof Aspnes (of Yale) notes - http://www.cs.yale.edu/homes/aspnes/classes/469/notes-2011.p...
A question to the HN folk - For a programmer who spends his day time writing web applications and no systems experience, are there any good project ideas you guys have to better understand Distributed systems? I was thinking of implementing Paxos in Go / Scala but something more practical would be better.