4 ms·
It seems I'm a few weeks ahead of you on this same problem. What I did was just notice a discussion in a HN thread and reached out to the guy in the discussion
by ianleeclark 10y ago
It seems I'm a few weeks ahead of you on this same problem. What I did was just notice a discussion in a HN thread and reached out to the guy in the discussion who seemed the most knowledgeable: joke's on me, that guy's the CTO of hashicorp.
Anyway, I just asked him how I should go about in learning and he linked me to (presumably) his alma mater's course list for distributed systems: https://courses.cs.washington.edu/courses/cse452/16wi/calendar/lecturelist.html https://courses.cs.washington.edu/courses/cse452/16wi/calend...
Moreover, he linked me some fundamentals:
* Lamport Time
* CAP Theorem
* FLP Impossibility Theorem
* Bimodal Multicast
* Paxos
What I would advise doing with those fundamentals is going to google scholar and finding the original papers and adding them to your watch list. Then you can see wherever they're referenced, go through the list and pick out papers and read one a day (I advise no matter what, but that's not feasible for everyone--just keep reading!)
I can't say I'm a guru at all in this sphere, but this is how I'm approaching it. Hopefully you can take some of my advice and tailor it to best suit your needs and how you learn best. Beyond that, I'd say build, build, build: start out at your naive solution and improve over time. I've been working on a distributed key-value storage (https://github.com/GrappigPanda/Olivia https://github.com/GrappigPanda/Olivia) and once you get deeper entrenched into a problem like this, a lot of the problems really make themselves apparent and you can learn exactly where your naive solution differs from more optimal solutions.
- deleted 10y ago[deleted]
- elfuego 10y agoInteresting approach. I'd like to know some of the specific lessons learnt using the naive approach and things to look out for.
- deleted 10y ago[deleted]