DEV Community

Cover image for Many Nodes, One Distributed System

Many Nodes, One Distributed System

Vaidehi Joshi on January 02, 2019

They say that no man (or woman, or person, really) is an island; these days, we could really just add โ€œcomputerโ€ to the list. We are surrounded by ...
Collapse
 
aspittel profile image
Ali Spittel

I am so excited about this! ๐Ÿ™Œ๐Ÿ™Œ๐Ÿ™Œ I learned so much from BaseCS, and it was a big reason I started writing. Canโ€™t wait to follow along this year with BaseDS!

Collapse
 
andy profile image
Andy Zhao (he/him)

New series? What!! ๐Ÿ™Œ๐Ÿ™Œ๐Ÿ™Œ

Collapse
 
ben profile image
Ben Halpern

Can't wait for more!

Collapse
 
rhymes profile image
rhymes

Vaidehi, you're the best teacher ever :-)

Collapse
 
zetaomegagon profile image
zetaomegagon

In case anyone is interested: The Open Stack docs are great reading to look at a specific implementation of distributed-- and a level of virtual-- computing. Also, if you have a few spare boxes lying around, you can do a really ad-hoc experiments with parallel programming (spreading parts of the same job over nodes and then splicing the parts back together) using GNU Parallel.

Collapse
 
adityavarma1234 profile image
Aditya Varma

Hey Vaidehi thanks for sharing the article.

I am not sure about what to expect from base distributed series.

I being a professional software engineer, could expect what topics would be present in your basecs series but my distributed systems knowledge is pretty weak and I am not able to come up with topics that you are going to discuss in this series except CAP theorem, storage scalability, system design.

Can you please share the topics you are planning on sharing here? I want to improve my distributed system knowledge. Any book recommendations?

Collapse
 
vaidehijoshi profile image
Vaidehi Joshi

Hi Aditya,

I am writing this series as I am learning about distributed systems as well! Basically this means that I also don't know all the topics I will cover, and in what order, so I can't share them because I also don't know just yet. I am basically covering the topics as I go along writing them :)

As far as recommendations go, at the bottom of every post I share a bunch of resources that I found useful in my learning, and I recommend taking a look at those. I hope that this is helpful!

Collapse
 
adityavarma1234 profile image
Aditya Varma

Hi Vaidehi,

Thanks for a quick response, this helps. I am curious to know about how are you going about learning distributed systems? What resources are you using?

Whenever I learn a new programming language, I learn the basic syntax and solve standard algorithm problems to get the hang of the language. Later I keep picking up new stuff as I am working.

This method doesn't work for distributed systems. For example CAP theorem, I need to figure out use cases in which availability or consistency or partition tolerance is preferred. May be you will run into this issue as well.

I am not sure how to practically apply distributed systems having a single laptop. May be I need to use docker images, free tire of firebase or aws to learn more about this.

Collapse
 
andre profile image
Andrรฉ Kรถnig

Great post! Thanks for sharing your thoughts. ๐Ÿ™‚

Collapse
 
nestedsoftware profile image
Nested Software

This is great @vaidehijoshi ! Just a minor correction, add "no", so "no man is an island".

Collapse
 
vaidehijoshi profile image
Vaidehi Joshi

Fixed, thank you!

Collapse
 
skurfuerst profile image
Sebastian Kurfรผrst

Thanks for your writeup, really nice overview :)

Collapse
 
walkhard13 profile image
Phillip Smith

This was a joy to read! Clear, concise, easy-to-digest chunks of information. Thank you

Collapse
 
theodesp profile image
Theofanis Despoudis

Ow boy, DS is no walk in the park if you ask me ๐Ÿ˜…

Collapse
 
shanecourtrille profile image
shanecourtrille

Love the series.. one thing though..

"We can think of a non-distributed system as a โ€œsingleโ€ system. A single system is one that does not communicate with others and functions on its own is not a distributed system."

Should probably read...

"We can think of a non-distributed system as a โ€œsingleโ€ system. A single system that does not communicate with others and functions on its own is not a distributed system."

Collapse
 
jatinkrmalik profile image
Jatin K Malik

Good to see you here @vaidehijoshi
A big fan from India! :)

Collapse
 
erlangsolutions profile image
Erlang Solutions

This is a fantastic read. Thanks for sharing.