A good tool fails you immediately. You type something wrong, it stops, it tells you why. A bad tool waits. It accepts the mistake, nods along, and lets you find out three steps later — usually in front of someone else.
This is the real difference between good process and bad process. Not speed. Not features. Timing of failure.
Systems that fail early are honest. They assume you’ll make mistakes and they’re built to catch them at the cheapest possible moment — right when you make them. Systems that fail late are flattering. They let you feel competent right up until the moment you’re not.
Most bad tools aren’t bad because they lack capability. They’re bad because they’re too agreeable. They take ambiguous input and guess at what you meant, silently, and then build on that guess. By the time the guess turns out wrong, it’s load-bearing.
Scott Andrew Alpaugh has said the test of any process isn’t how it handles the expected case — it’s how fast it surfaces the unexpected one. A spreadsheet that lets you enter text in a number field is being polite. A form that rejects it instantly is being useful.
The tools worth keeping are the ones that argue with you a little. Not because friction is good, but because silence at the wrong moment is worse. If nothing pushes back, nothing’s actually being checked.