Distributed Systems Classics

(nvartolomei.com)

66 points | by grep_it 1 hour ago

5 comments

  • mjb 1 minute ago
    This is not a bad list for sure. Here are some deeper cuts for those looking for something a bit less mainstream:

    "The Maintenance of Duplicate Databases" https://datatracker.ietf.org/doc/html/rfc677 (AFAIK the genesis of the use of logical clocks in distributed systems).

    "Chain Replication for Supporting High Throughput and Availability" https://www.usenix.org/legacy/event/osdi04/tech/full_papers/... (Chain replication is how a huge percentage of real-world cloud-scale data replication is done).

    "Brewer’s Conjecture and the Feasibility of Consistent, Available, Partition-Tolerant Web Services" (The formalization of CAP, which caused a ton of very poor trade-off thinking in the decade that followed by defining Availability in a very goofy way. Still a classic.)

    "Paxos Made Live" https://research.google/pubs/paxos-made-live-an-engineering-... (Brought a much-needed engineering perspective to a conversation that was largely theoretical up until this time.)

    "Practical Byzantine fault tolerance" (Moved the conversation on Byzantine faults forward significantly).

    This is just a short selection. There's so much good stuff going back in the 70s and 80s distributed database literature, for example (and in the modern systems and DB literature too).

  • nesarkvechnep 51 minutes ago
    As always, lists like these don’t include Joe Armstrong's PhD thesis “Making reliable distributed systems in the presence of software errors” - http://erlang.org/download/armstrong_thesis_2003.pdf
    • jermberj 37 minutes ago
      No disrespect meant to Mr. Armstrong, but it's possible it's never listed because it's basically a textbook. It's 295 pages. The rough average of all papers in OP is like 15 pages.
      • moritz 27 minutes ago
        One can skip the Erlang-specific things/the description of the programming language.

        Just the first 2 chapters (~30p) + the Conclusion (~10p) contain a lot of useful food for thought.

      • vulcan01 34 minutes ago
        His thesis is only slightly longer than typical PhD theses, I think.
    • brcmthrowaway 5 minutes ago
      Does anyone use Elixir/Erlang anymore?
      • appstorelottery 2 minutes ago
        WhatsApp backend in Erlang + used in telecoms
    • Suhinnall27 46 minutes ago
      Are there any other works that should also be included that you know of?
      • FabHK 0 minutes ago
        [delayed]
  • nylonstrung 39 minutes ago
    Lamport is the author of more than half of these, it's crazy how influential he is in this space

    In addition to making LaTex which has almost nothing to do with it

    • phtrivier 10 minutes ago
      It's the thing that baffles me the most with those people, the Knuths and Lamports and Carmarcks, and whatnot.

      It's not like they have light schedules - they do research, they have classes, they attendconference, and they have jobs, etc...

      And some benefit from tenure, which give them time to deeply focus on some topics.

      But I can't imagine how I would write tex in ten years in Pascal on archaic machines if I had all the time to myself.

      Doing that in the middle of understanding more computer science than my eyes would ever read ?

      What do they do with their time ? What do they don't do ? Are they able to skip the eating and pooping and sleeping and cleaning their house and picking up parcels at the post office and grocery shopping parts ?

      Or a proto Unix being written in three weeks. Concretely, what are the days of those three weeks made of ? Especially since it's famously when the spouse was NOT there to handle the housekeeping...

      I see not amount of "life hacks" and "atomic habits" and whatnot helping with that. But it's probably just as natural to them as biking - and you can't explain biking, I guess ?

  • Aditya_0315 3 minutes ago
    [flagged]
  • bestpickle 28 minutes ago
    [dead]