Hacker News new | ask | show | jobs
by AbbeFaria 15 days ago
+1 to this. I am on Assignment 3D (dealing with log compaction in Raft). I have learnt more about Distributed Systems just by "auditing" this course.

For Paxos, I also recommend reading Paxos v Raft, Have we reached consensus on distributed consensus ? by Heidi Howard et al. It explains Multi-paxos by using the style and abstractions from the Raft paper, which makes it much more understandable. Paxos can be intimidating but this was the paper that made it click for me.

I highly recommend doing the labs from 6.824.

1 comments

are you by chance watching the spring 2020 version? [1]

[1]: https://www.youtube.com/playlist?list=PLrw6a1wE39_tb2fErI4-W...

I haven’t watched the lectures yet. Reading the papers and using Claude/GPT to ask for references etc is good enough for me. I did watch a few, ones on GFS and Raft but didn’t see the ROI, lectures are too long. Reading the papers multiple times and reading blogs, references and asking Q’s to GPT is what I am doing.

Obviously for the assignments themselves, I use AI sparingly. Mostly as a sounding board when I have doubts or to know how to do something in golang, since it isn’t my primary programming language.

Note, I am not asking for solutions like “implement Append Entries RPC”, the solutions are public so AI could probably implement everything. My workflow is to implement it first, debug test failures, go through each individual test and then come up with clarifying Q’s, such as the one below,

In Raft paper by Ongaro et al, for the below condition, If there exists an N such that N > commitIndex, a majority of matchIndex[i] ≥ N, and log[N].term == currentTerm: set commitIndex = N (§5.3, §5.4).

Is commitIndex changed only when we receive a successful reply for Append Entries ?

Lastly I have an AGENTS.md that prohibits GPT from giving solutions directly, that would defeat the purpose of doing the assignments. It was used in one of Stanford’s GenAI course, look it up.