
Ask HN: How do I study distributed sytems? - borncrusader
I&#x27;m at the juncture of my career where I want to focus more on Distributed Systems and specialize more in it. Short of reading seminal papers, understanding existing data systems like Spark, Kafka etc., how do I gain more working knowledge so as to improve my implementation skills of such a system.<p>While I haven&#x27;t really worked on a major project that explores core problems, I&#x27;d like to spend the next year or two learning more about it.<p>Looking forward to learning from the pioneers in this field who have implemented many such systems.
======
bharatm
These are good places to start exploring.

MOOCs:

[https://www.edx.org/course/architecting-distributed-cloud-
ap...](https://www.edx.org/course/architecting-distributed-cloud-
applications-1)

[https://www.edx.org/course/reliable-distributed-
algorithms-p...](https://www.edx.org/course/reliable-distributed-algorithms-
part-2-kthx-id2203-2x) \- Part 2 contains all material from part 1 and part 2.

Books:

Big Data: Principles and Best Practices of Scalable Real-time Data Systems

Designing Data‑Intensive Applications

Programming Models for Distributed Computation

There are assignments in Go and other course material at MIT distributed
systems course:
[https://pdos.csail.mit.edu/6.824/](https://pdos.csail.mit.edu/6.824/)

[https://disco.ethz.ch/courses/podc/](https://disco.ethz.ch/courses/podc/) has
some good lecture notes as well.

------
slimshady94
This is a mid-level (not too simple, not too complex) introduction about the
basics that I found useful
[http://book.mixu.net/distsys/](http://book.mixu.net/distsys/)

------
DevX101
Check out relevant posts from this site:

[http://highscalability.com/all-time-
favorites/](http://highscalability.com/all-time-favorites/)

------
sidcool
Thanks for the question. I have been interested in distributed systems for a
long time but so far haven't got a solid material.

