Hi HN,<p>TLDR: What are the interactive tools to learn distributed systems?<p>I have been trying to learn distributed systems by reading papers, blogs, and open-source docs. Every time it feels I haven't grokked the fundamental concepts.<p>For no particular reasons, I have failed finish any book or complete an online courses on the topic.<p>So, I want to explore different approach to learn. For example, a visual or interactive tool like pythontutor.com<p>Thanks
Erlang. Specifically, <i>Programming Erlang: Software for a Concurrent World</i> by Joe Armstrong who designed Erlang for Ericisson. Whether or not Erlang is the right language for a particular distributed job, Erlang is a message passing system and messages are the logical construct by which any distributed system communicates among its parts. Whether they are called messages or not.<p>With a REPL and hot code swapping and remote launching Erlang is interactive at production scales and on a laptop.
Raft has a visualisation that you can interact with to understand it better <a href="https://raft.github.io/" rel="nofollow">https://raft.github.io/</a><p>Also might be worth checking out <a href="https://github.com/theanalyst/awesome-distributed-systems" rel="nofollow">https://github.com/theanalyst/awesome-distributed-systems</a> not sure if any of these resources are interactive though.