Build Real Systems
Implement actual distributed algorithms, from message passing to consensus protocols.
Progressive Learning
Start simple and build complexity. Each track builds on the previous one.
Hands-on Coding
Write and test code directly in the browser with immediate feedback.
Concept Explanations
Each task includes detailed explanations of the distributed systems concepts involved.
Learning Path
Four categories with 15 tracks total. Each track builds on concepts from previous ones, creating a comprehensive distributed systems curriculum.
Foundations
Core distributed systems concepts: RPC, unique IDs, and broadcast protocols.
Consensus
State management and agreement: CRDTs, leader election, Raft, and linearizable KV stores.
Scalability
Scaling building blocks: caching, load balancing, and message queues.
Advanced
Complex topics: sharding, distributed transactions, and MapReduce.
Learning by Building
Distributed systems are notoriously difficult to understand through passive learning. The only way to truly grasp concepts like consensus, eventual consistency, and partition tolerance is to implement them yourself.
This platform takes inspiration from the Fly.io Gossip Glomers challenges and the Maelstrom testing framework. You will write code that runs against simulated distributed environments, complete with network partitions, message loss, and timing failures.
Each challenge is designed to teach a specific concept through implementation. By the time you complete all tracks, you will have built everything from simple echo servers to fully functional Raft consensus implementations.