I don't find most textbooks to be an actually good intro outside of a course setting. For example, I own Andrew Tannenbaum's Distributed System book and a few others of his. But his writing style is too dense for me to make enough progress without giving up.
What other books (probably not textbooks) do you recommend on distributed systems?
I am going to move onto either
* O'Rielly Designing Distributed Systems or
* O'Rielly Architecture Patterns with Python
Could anyone recommend either one?
I am mainly a Python dev (with no particular love for Python), but that doesn't necessarily make me want to use the Python book more. Having code examples I can grok immediately is nice, but I also enjoy the exercise of translating concepts to code myself.
When doing my MSc in CS at Uppsala University we implemented a distributed system. We used Tanenbaum's book and while very good it was a bit terse on details. Looking up the actual research papers referenced was helpful during implementations.
"Guide to Reliable Distributed Systems: Building High-Assurance Applications and Cloud-Hosted Services"
He even give a course about topics in cloud computing : https://www.cs.cornell.edu/courses/cs5412/2021sp/
Another interesting course about distributed system is from MIT https://pdos.csail.mit.edu/6.824/schedule.html
I'm pretty sure there is an online course available which you can watch, so it's a slightly different medium but may be a nice change of pace from reading. The course was really informative for me and has really been paying dividends in my career.
* Release It! by Michael Nygard
* System Design Interview by Alex Xu