Architecture & practice·topic 10 of 10
Judgement and reasoning traps
The named ways that competent people talk themselves into the wrong answer. Knowing them is not about winning arguments; it is about noticing, mid-sentence, that the thing you are about to say is one of these.
Read in order · tick what you already know
- 01
you stopped comparing frameworks and worked out what the system actually has to do, in numbers.
First principles
- 02
the graph turned at 14:07 and someone asked what shipped at 14:05.
Null hypothesis of an outage
- 03
latency and CPU rose together and you spent two hours on the CPU, which was a symptom of the same queue.
Correlation is not causation
- 04
you believed it was the cache and read the logs looking for the cache, and found something.
Confirmation bias
- 05
reading the timeline afterwards, the cause was obvious, and at 02:00 it had not been obvious to anyone.
Hindsight bias
- 06
you copied the architecture of a company that succeeded, and never saw the twenty that did the same and folded.
Survivorship bias
- 07
someone said two weeks before anyone had estimated, and every number afterwards was near two weeks.
Anchoring
- 08
the migration has taken eight months, so the argument for continuing was that it has taken eight months.
Sunk cost fallacy
- 09
the decision has been in review for six weeks, and the options have not changed since week two.
Analysis paralysis
- 10
the design covered what happens when it works and the review found nothing about what happens when the vendor is down.
Happy path thinking
- 11
someone asked how to parse a filename with a regex, and what they actually needed was the file's creation date.
XY problem
- 12
you explained the bug out loud to a colleague and worked out the answer before they said anything.
Rubber duck debugging
- 13
the team adopted the whole process from a conference talk without the constraints that made it work there.
Cargo cult
- 14
the team wrote its own scheduler because the existing one did not fit exactly, and now maintains a scheduler.
Not invented here
- 15
the new technology was chosen before the requirements were written, by the person who wanted to learn it.
Resume-driven development
- 16
the build took forty seconds two years ago and takes eleven minutes now, and nobody remembers a day it got slower.
Boiling frog