- Why
- A decision that lives only in someone's memory isn't a decision, it's a rumor with a half-life. Three months later nobody can remember whether we chose Postgres because of a real constraint or because someone had a bad week with the alternative, and the reasoning that would let us revisit it sensibly is simply gone. Writing it down, the decision, the date, who made it, and crucially why, turns a moment of judgment into a durable artifact the team can build on and argue with. It protects us from relitigating the same question every quarter, and it protects the decider from being second-guessed by people who never saw the constraints they were working under. It's also how new people absorb why the system is the way it is, instead of assuming everything that looks odd is a mistake. The written record is the difference between a team that accumulates wisdom and one that just accumulates code. If it's not written down, it didn't happen, and we'll pay for it later in a meeting we could have skipped.
- In practice
- For any decision that's expensive to reverse or affects more than one person, write a short decision record before you consider it settled. Capture the context, the options you weighed, the choice, and the reasoning, in a few paragraphs, not a dissertation. Note who owns the decision and the date, so future readers can weigh how stale it is. Put it somewhere durable and findable, linked from the relevant project, not buried in a chat scroll. Record the decision even when it's unanimous and obvious, because obvious-in-the-moment is exactly what gets forgotten. When you later change your mind, don't delete the old record, write a new one that supersedes it and says why, so the trail of reasoning stays intact.
- Exceptions
- Small, easily reversed decisions don't need a formal record; deciding what to name a variable or which morning to ship is not a constitutional matter. The bar is roughly: would someone reasonably ask 'why did we do it this way?' six months from now. If yes, write it down.