I am sorry for missing that. Thank you for correcting.
About friend - I know why he is busy. He is not of the type that makes lame excuses. He will say it on my face if he does not want to do it.
I understand your point though and agree with your judgement. Reason I asked was that I can imagine myself doing the same for someone else. But maybe I am too naive.
I already practiced on those sites but there's a big difference between coding alone vs coding in an interview setting. That's the aspect I am trying to work on.
I am just trying to find someone who I can connect to outside HN for this purpose.
I tried implementing Raft, which is supposed to be the most understandable out of all available consensus algorithms, but wasn't able to make it work 100%.
I came close but in the end gave up on resolving some concurrency issues :/
I'm not sure if you are aware of it, but check out MIT 6.824 on opencourseware (pick 2020, not 2021).
In Lab 2 they provide you with a frame for raft with RPC, etc. already in place leaving only protocol for you. Lab is also split into 3 logical parts - leader election, append entries, persistence. Highly recommend.
Chain Replication (and friends) are vastly simpler than Paxos (and friends) in many ways, but do have the same requirement for determinism. That's because chain replicated systems typically need to be confluent (see https://pathelland.substack.com/p/dont-get-stuck-in-the-con-...), which means that all the replicas need to have the same value in them when replication is done. Conceptually simpler, for sure, but many of the same challenges remain.
Heh... knowing for certain that you've gotten all the concurrency issues is hard. Knowing that a specific code base has concurrency issues can be very easy, by virtue of them clearly exhibiting bugs. I haven't tried to implement RAFT myself but I've certainly had code bases that clearly had concurrency bugs in them, even if I didn't know exactly what they were. :)
Depends on the type of person you are. If you are ambitious, then why not? But if the upside is capped in any way, then I see no harm in doing regular jobs. It's not just about money, there is safety, perks, social aspect etc.