Automate only fully-specifiable tasks — if it needs judgment, keep it human
Automate only tasks where the rule can be stated completely (fixed rule, known inputs, predictable outputs) and execution requires no judgment about exceptions or novel cases.
Why This Is a Rule
Fitts' list (1951), foundational to human factors engineering, distinguishes what machines do well from what humans do well. Machines excel at: consistent repetition, fixed rule execution, processing known inputs into predictable outputs. Humans excel at: handling exceptions, making judgment calls under ambiguity, adapting to novel situations, detecting patterns in incomplete data.
Automating a task that requires judgment produces a system that works correctly in the common case and fails catastrophically in edge cases — because the automation can't recognize that it's in an edge case. The result is worse than no automation: without automation, a human would have caught the exception. With automation, the exception is processed as if it were a normal case, producing silently wrong output.
The test for automation readiness: can you write the rule completely — every input case, every branch, every output — without the phrase "use your judgment"? If yes, automate. If any branch requires "evaluate whether..." or "decide if..." — that branch needs human involvement.
When This Fires
- Evaluating whether to automate a recurring task
- Designing automation for a process with known edge cases
- When an existing automation starts producing incorrect outputs (it hit an un-specified case)
- Any time someone says "we should automate this" about a judgment-heavy process
Common Failure Mode
Automating the 80% of cases that are straightforward while the remaining 20% require judgment — and forgetting that the automation will process the 20% identically to the 80%. The automation confidently handles edge cases wrong because it can't distinguish them from normal cases. The silent failures accumulate until someone discovers them, often too late.
The Protocol
Before automating any task: (1) Write out the complete rule: every input condition, every branch, every output. (2) Check: does any branch require judgment, evaluation, or assessment of ambiguity? (3) If the rule is completely specifiable with no judgment → automate. (4) If some branches require judgment → automate the judgment-free branches and route the rest to human processing. (5) Never automate the judgment step itself — that's where automation fails silently.