A WORKSHOP, NOT A LIBRARY
You don't read about Redis — you build one. Guided sheets on this site, code on your machine, a local test harness certifies every stage. The harness is the truth; we just keep your logbook.
OPEN TRACK 02 — BUILD YOUR OWN REDIS →
Designing Data-Intensive Applications — Martin Kleppmann
Storage engines, replication, consensus — built small instead of read about.

Head First Design Patterns — Freeman & Robson
The gang-of-four patterns that matter, each earned through a refactoring bench.

Clean Code — Robert C. Martin
Names, functions, tests, refactoring — practiced on real messes, not slides.
Processes, pipes, signals — the terminal stops being magic.
A real key-value server: sockets, RESP, concurrency, TTLs, crash-safe persistence.
Lexer, parser, evaluator — a small language that actually runs.
Reverse proxying, health checks, graceful drain — infra 101, by hand.
Pages, B-trees, a WAL, a tiny SQL — the storage engine DDIA describes.
Consensus from the paper: elections, replication, and a cluster that survives kills.
Building Resilient HTTP Clients: A Deep Dive into Retry Logic
Most distributed-system incidents aren't caused by hard failures. They're caused by transient ones handled badly.
How Django's get_or_create Quietly Solves Race Conditions You Thought Were Your Problem
When concurrent requests race to insert the same record, most teams reach for retry logic. Django's get_or_create handles it in one line.