advanced

When to break a principle

Break a principle deliberately when simplicity, delivery risk, performance, or limited lifetime matter more, and record the follow-up trigger.

Principles are heuristics, not laws. Break them deliberately when simplicity, delivery risk, performance, or short lifetime dominate—inline duplication in a prototype, skip DIP in a one-file CLI, accept a god module for a deadline with a ticket to split. Record the trigger that will prompt cleanup.

Pragmatism with accountability beats purity that misses the market.

On interviews: describe a principled violation you shipped and the follow-up condition.

Common pitfalls: silent debt with no trigger, breaking principles from ignorance not choice, and never repaying intentional shortcuts.

The trade-off is short-term speed versus long-term maintainability—make the exchange explicit.

Checklist:

  • Name why the principle yields now.
  • Set measurable follow-up trigger.
  • Avoid silent permanent violations.