finds.dev← search

// the find

pingcap/talent-plan

★ 10,937 · Rust · updated Sep 2023

open source training courses about distributed database and distributed systems

PingCAP's structured curriculum for learning distributed systems from the ground up, covering Rust, Go, Raft consensus, and the Percolator transaction protocol. It's best suited for backend engineers who want to build real understanding of how distributed databases work by implementing the pieces themselves, not just reading about them. The Raft and KV store projects in particular are well-scoped: hard enough to be instructive, not so open-ended that you're lost.

The Raft implementation course is adapted from MIT 6.824 but done in Rust, which forces you to actually think about ownership and concurrency together rather than getting away with sloppy GC-backed code. The KV store series (projects 1–5) builds incrementally — each project compiles and passes tests before the next one adds complexity, so you always have a working baseline. The Percolator implementation is a rare find: most distributed transactions tutorials stay theoretical, this one makes you write the two-phase commit logic against a simulated TiKV. Test infrastructure (labrpc, linearizability checker) is provided so you can verify correctness, not just eyeball it.

The repo is effectively abandoned — last push was September 2023 and several courses are marked WIP with no apparent progress. TP 401 and TP 402 (Deep Dive into TiDB/TiKV) have been "WIP" since the project launched, so don't expect those to materialize. The Go exercises in tidb/ (mapreduce, mergesort, join) are thin compared to the Rust track — a few hundred lines of scaffolding, not a real course. There's no cohesive forum or Q&A anymore; the Slack invite link in the README is years old and the community activity has largely dried up, so you're on your own when you get stuck.

View on GitHub → Homepage ↗

// want more like this?

We dig through GitHub every week and send a few repos picked for what you actually care about — each with an honest take like this one.

Get finds in your inbox → Search again →