> making it hard to do the wrong thing" is more or less my entire design ethos when it comes to software, particularly developer tools.
See also poka-yoke: https://en.m.wikipedia.org/wiki/Poka-yoke
See also poka-yoke: https://en.m.wikipedia.org/wiki/Poka-yoke
(This is another example of how legal-contract drafters can learn from the software world, including concepts such as, for example, orthogonality; modularity; R.O.O.F.; D.R.Y. [Don't Repeat Yourself]; graceful failure; and the benefit of sometimes explaining why things are done the way they are, to help future readers understand.)