Engineering laws & principles
A crawlable catalog of software engineering laws used by DevLaws — architecture, design, performance, teams, and process. Each page is static HTML so search engines can index the full text.
Architecture
Conway's Law
Organizations design systems that mirror their own communication structure.
CAP Theorem
A distributed system can only guarantee two of three: Consistency, Availability, Partition Tolerance.
Gall's Law
A complex system that works evolved from a simple system that worked.
Hyrum's Law
With enough users, every observable behavior of your system will be depended upon by somebody.
Robustness Principle
Be conservative in what you send, be liberal in what you accept.
Fallacies of Distributed Computing
Eight false assumptions that programmers new to distributed systems commonly make.
Inverse Conway Maneuver
Structure your teams to produce the system architecture you want.
Design Principles
YAGNI
You Aren't Gonna Need It — don't build features until they are actually needed.
KISS Principle
Keep It Simple, Stupid — most systems work best when kept simple.
DRY Principle
Don't Repeat Yourself — every piece of knowledge should have a single, authoritative representation.
Occam's Razor
The simplest explanation is usually the correct one.
Law of Demeter
A module should only talk to its immediate friends, not to strangers.
Evolution & Maintenance
General Principles
Performance
Premature Optimization
Premature optimization is the root of all evil.
Amdahl's Law
The speedup from parallelization is limited by the sequential portion of the task.
Knuth's Optimization Principle
Measure before you optimize — programmers spend time optimizing non-critical code.
Project Management
Hofstadter's Law
It always takes longer than you expect, even when you take into account Hofstadter's Law.
The Ninety-Ninety Rule
The first 90% of the code accounts for the first 90% of development time. The remaining 10% accounts for the other 90%.
Parkinson's Law
Work expands to fill the time available for its completion.
Psychology & Cognitive
Security
Team Management
Testing & Quality
Turn these principles into an enforced protocol for Cursor, Claude Code, Copilot, and more.
Get started free