lamport-distributed-systems

Solid

Design distributed systems using Leslie Lamport's rigorous approach. Emphasizes formal reasoning, logical time, consensus protocols, and state machine replication. Use when building systems where correctness under concurrency and partial failure is critical.

Web & Frontend 364 stars 68 forks Updated today MIT

Install

View on GitHub

Quality Score: 89/100

Stars 20%
85
Recency 20%
100
Frontmatter 20%
70
Documentation 15%
100
Issue Health 10%
80
License 10%
100
Description 5%
100

Skill Content

# Leslie Lamport Style Guide ## Overview Leslie Lamport transformed distributed systems from ad-hoc engineering into a rigorous science. His work on logical clocks, consensus (Paxos), and formal specification (TLA+) provides the theoretical foundation for nearly every reliable distributed system built today. Turing Award winner (2013). ## Core Philosophy > "A distributed system is one in which the failure of a computer you didn't even know existed can render your own computer unusable." > "If you're thinking without writing, you only think you're thinking." > "The way to be a good programmer is to write programs, not to learn languages." ## Design Principles 1. **Formal Specification First**: Write a precise specification before writing code. If you can't specify it precisely, you don't understand it. 2. **Time is Relative**: There is no global clock in a distributed system. Use logical time (happens-before) to reason about ordering. 3. **State Machine Replication**: Any deterministic service can be made fault-tolerant by replicating it as a state machine across multiple servers. 4. **Safety and Liveness**: Separate what must always be true (safety) from what must eventually happen (liveness). Prove both. 5. **Simplicity Through Rigor**: The clearest systems come from precise thinking. Formalism isn't overhead—it's the path to simplicity. ## When Designing Systems ### Always - Write a specification before implementation (TLA+, Alloy, or precise prose) - Define ...

Details

Author
majiayu000
Repository
majiayu000/claude-skill-registry
Created
5 months ago
Last Updated
today
Language
HTML
License
MIT

Similar Skills

Semantically similar based on skill content — not just same category

Web & Frontend Listed

designing-distributed-systems

When designing distributed systems for scalability, reliability, and consistency. Covers CAP/PACELC theorems, consistency models (strong, eventual, causal), replication patterns (leader-follower, multi-leader, leaderless), partitioning strategies (hash, range, geographic), transaction patterns (saga, event sourcing, CQRS), resilience patterns (circuit breaker, bulkhead), service discovery, and caching strategies for building fault-tolerant distributed architectures.

368 Updated 5 months ago
ancoleman
AI & Automation Listed

principle-distributed-systems

Distributed systems principles — CAP, PACELC, consistency models (linearizable, causal, eventual, read-your-writes), consensus (Paxos, Raft), quorum, leader election, split-brain, replication, partitioning, gossip, logical clocks (Lamport, vector, hybrid), clock skew, delivery semantics (at-most-once, at-least-once, exactly-once effects), idempotency across nodes, two-generals problem, fallacies of distributed computing. Auto-load when reasoning about CAP/PACELC trade-offs, choosing a consistency model, designing consensus or leader election, sizing quorums, ordering events with logical clocks, distinguishing exactly-once delivery from exactly-once effects, designing replication or partitioning strategy, or assessing distributed failure modes.

2 Updated today
lugassawan
AI & Automation Listed

distributed-consensus

Distributed consensus algorithms and logical time for cloud and multi-node systems. Covers Lamport clocks, vector clocks, FLP impossibility, Paxos (basic, multi, fast), Raft, Viewstamped Replication, Byzantine fault tolerance basics, quorum reads/writes (N/R/W), leader election, and TLA+ specification style. Use when designing replicated state machines, picking a consensus protocol, reasoning about split-brain and quorum loss, or writing formal specs for distributed coordination.

62 Updated today
Tibsfox
Web & Frontend Solid

system-design

Design scalable distributed systems using structured approaches for load balancing, caching, database scaling, and message queues. Use when the user mentions "system design", "scale this", "high availability", "rate limiter", "design a URL shortener", "system design interview", "capacity planning", or "distributed architecture". Also trigger when estimating infrastructure requirements, choosing between microservices and monoliths, or designing for millions of concurrent users. Covers common system designs and back-of-the-envelope estimation. For data fundamentals, see ddia-systems. For resilience, see release-it.

1,169 Updated 2 weeks ago
wondelai
AI & Automation Solid

distributed-systems

Distributed systems patterns for locking, resilience, idempotency, and rate limiting. Use when implementing distributed locks, circuit breakers, retry policies, idempotency keys, token bucket rate limiters, or fault tolerance patterns.

180 Updated today
yonatangross