Maxims

Wisdoms, aphorisms, and pointed observations — short principles I keep coming back to when talking about software, systems, and ways of working.

24 maxims searchable · linkable

Amdahl’s law#

The speedup of a system is limited by the portion of work that cannot be improved. Big wins in one stage mean little if the rest of the path stays slow.

Chesterton’s fence#

Don’t tear down a fence until you understand why it was put up. Reform after understanding, not before.

Gall’s law#

A working complex system evolved from a working simple system. Complex systems designed from scratch rarely work — and can’t be patched into working.

Hanlon’s razor#

Never attribute to malice that which is adequately explained by stupidity — or exhaustion, ambiguity, or a missing runbook.

Hyrum’s law#

With enough users, every observable behavior of your system becomes a dependency — not just what you promised in the docs.

Jevons paradox#

Making a resource more efficient can increase total consumption. Cheaper cycles invite more work, not less demand.

Kernighan’s law#

Debugging is twice as hard as writing the code. If you write it as cleverly as possible, you are by definition not smart enough to debug it.

Occam’s razor#

Entities should not be multiplied without necessity. Prefer the simplest explanation that still fits the facts.

Overton window#

At any moment only a narrow band of ideas feels “acceptable.” The window moves — and what was radical becomes ordinary.

Ringelmann effect#

As more people join a task, average individual effort tends to drop. More heads ≠ proportional output.

Segal’s law#

A person with one watch knows what time it is. A person with two is never sure. Conflicting sources create doubt, not clarity.

The Beyoncé rule#

If you liked it, then you shoulda put a test on it. Wanted behavior only stays wanted if something enforces it.

The ETTO principle#

People and orgs continually trade efficiency against thoroughness. You can’t maximize both at once forever.

Tesler’s law#

There is irreducible complexity in a system. You can move it between user, designer, and implementation — you can’t delete all of it.

The law of triviality#

Groups spend disproportionate time on easy cosmetic issues and under-discuss hard substantial ones. Bikesheds beat nuclear plants.

The Ulysses contract#

Bind your future self while you still have resolve — limits, checklists, and pre-commitments that survive weak moments.

The Unix philosophy#

Make each program do one thing well. Compose small sharp tools instead of one sprawling multipurpose beast.

No maxims match that filter.