@FullstackZip@fireship_dev System design case studies are the best learning format. Reading architecture docs is one thing but seeing the actual feature breakdown and tradeoffs is where the real lessons live. Subbed.
We're on YouTube!
The channel: https://t.co/wZgiqlX7Gn
The format: system design case studies.
Architecture -> feature breakdown -> takeaways
If @fireship_dev is espresso, this is pour-over.
What powers the world's largest independent DevOps platform?
A Ruby on Rails monolith.
Yes, really.
Here's how it comes together. https://t.co/ifkBpfYVgd
3 levels of system design thinking
1) Facts. The difference between SQL and NoSQL.
2) Heuristics. SQL for structured data, NoSQL for unstructured data.
3) Inventions. Distributed SQL.
Problem: Race conditions
Solution: Ban direct state access
If you want something from another node, you send a message to its mailbox.
Nodes process messages one at a time, update their own state, and send messages back out.
That's it.
Tradeoffs?
(Looking at you, DDD fans)
The 5 stages of an integration:
Denial — "The docs say it's just a few calls"
Anger — "Why didn't they mention this?!"
Bargaining — "There's gotta be an npm pckg"
Depression — "Guess I'm not going to brunch"
Acceptance — eats two boiled eggs
https://t.co/4ehpnMidAK