Make The Change Easy First
make-the-change-easy-first
Summary
Some changes are risky because the path to make or verify them is unnecessarily hard. First add the smallest harness, boundary, helper, tool, or runbook that makes the real change cheaper to understand and review.
Problem
Some changes feel hard because the system makes the desired path slow, risky, or unpleasant. Pushing through that friction can produce a larger, riskier diff than first improving the path.
Preferred Move
When the change is blocked by friction, first make the change easier: add a test harness, improve a tool, clarify a boundary, extract a helper, write a runbook, or simplify the workflow. Then make the now-easy behavior change as a separate reviewable unit when practical. Prepare first when the benefit is immediate: the code becomes easier to understand or the next behavior change becomes cheaper to make and review.
Tradeoff
Do not spend unbounded time building infrastructure for a one-off task. Make the path easier when the friction is repeated, risk-reducing, or necessary to validate the real change. If the preparatory work is large and the payoff is not immediate, record it for later instead of letting the current change become an infrastructure project.
Agent Instruction
If a requested change is risky because the workflow is missing a check, harness, or boundary,
propose the smallest preparatory improvement first. Keep preparatory work separate from behavior
changes when that improves review.Examples
Bad: the agent changes behavior without creating a way to validate it.
Edited the import retry loop directly and manually inspected the diff.
Good: the agent first creates the path that makes the change safe.
Added a failing retry-order test, then changed the retry loop so the behavior change is reviewable
against that test.
References
| Source | Use | Note |
|---|---|---|
| Opening Mail | adapts |
Tools can make unpleasant work easier and more reliable. |
| Tidy First, Ch. 21 | supports |
Prepare first when the current change benefits directly. |