3 ms·
Distributed systems always ends up a dumping ground of failed tech solutions to deep org dysfunction. Weak tech leadership? Let's "fix" that with some microser
by intelVISA 2y ago
Distributed systems always ends up a dumping ground of failed tech solutions to deep org dysfunction.
Weak tech leadership? Let's "fix" that with some microservices.
Now it's FUBAR? Conceal it with some cloud native horrors, sacrifice a revolving door of 'smart' disempowered engineers to keep the theater going til you can jump to the next target.
Funny because dis sys is pretty solved since Lamport, 40+ years ago.
- rbjorklin 2y agoWould you mind sharing some more specific information/references to Lamport’s work?
- vitus 2y agoThe three big papers: clocks [0], Paxos [1], Byzantine generals [2]. [0] https://lamport.azurewebsites.net/pubs/time-clocks.pdf https://lamport.azurewebsites.net/pubs/time-clocks.pdf [1] https://lamport.azurewebsites.net/pubs/lamport-paxos.pdf https://lamport.azurewebsites.net/pubs/lamport-paxos.pdf [2] https://lamport.azurewebsites.net/pubs/byz.pdf https://lamport.azurewebsites.net/pubs/byz.pdf Or, if you prefer wiki articles: https://en.wikipedia.org/wiki/Lamport_timestamp https://en.wikipedia.org/wiki/Lamport_timestamp https://en.wikipedia.org/wiki/Paxos_(computer_science) https://en.wikipedia.org/wiki/Paxos_(computer_science) https://en.wikipedia.org/wiki/Byzantine_fault https://en.wikipedia.org/wiki/Byzantine_fault I don't know that I would call it "solved", but he certainly contributed a huge amount to the field.
- madhadron 2y agoLamport's website has his collected works. The paper to start with is "Time, clocks, and the ordering of events in a distributed system." Read it closely all the way to the end. Everyone seems to miss the last couple sections for some reason.
- whstl 2y agoI suffered through this in two companies and man, it isn't easy. First one was a multi-billion-Unicorn had everything converted to microservices, with everything customized in Kubernetes. One day I even had to fix a few bugs in the service mesh because the guy who wrote it left and I was the only person not fighting fires able to write the language it was in. I left right after the backend-of-the-frontend failed to sustain traffic during a month where they literally had zero customers (Corona). At the second one there was a mandate to rewrite everything to microservices and it took another team 5 months to migrate a single 100-line class I wrote into a microservice. It just wasn't meant to be. Then the only guy who knows how the infrastructure works got burnout after being yelled at too many times and then got demoted, and last I heard is at home with depression. Weak leadership doesn't even begin to describe it, especially the second. But remembering it is a nice reminder that a job is just a means of getting a payment.