Do the poka-yoke: building error proof software
dontbuildsoftware.substack.comI would say that the US/EU plugs which are symmetric are more resilient than AU plug: with AU plug, an electrician can connect wires the wrong way, yet with EU/US plug there is no wrong way: devices handle either polarity because the sockets and plugs are symmetric.
US plug has a drawback that there could be a live connection with exposed prongs, similar to two pronged EU plugs: both apply with flat sockets (eg. you may touch the exposed pins).
The example is not a poka yoke.
A poka yoke is an implement that prevents or calls attention to an error state. It's shaping objects so that they can only be inserted a certain way, it's a flexible barrier that bumps against tall vehicles before they hit the tunnel entrance.
An enum is not that, I think.
TBH, this doesn't sound more useful than saying "make mistakes impossible".
No surprise it hasn't caught up outside Japan like "kanban", "lean", "stop-the-line" etc have.
Having a wordvfor it tells you "This is an established thing people do".
Saying "Make mistakes impossible" invites people to say "Lol you can't, and why do you want to help idiot users anyway". Part of the software community right now seems to think "git gud" is the answer to mistakes and you don't need anything else.
New terms are introduced to have a meaning longer than the replacement.
If people say "you can't make mistakes impossible" but not "you can't poka yoke that", it's not about the terms.
Obviously, you can't make mistakes impossible, but the intent should be clear only if the reader wants it to be clear, and it's not much difference to "poka yoke it".
> Having a wordvfor it tells you “This is an established thing people do”.
Words are coined for fictional, hypothetical, and/or idealized things that people don’t actually do all the time.
Words and phrases like “reincarnation”, “sorcery”, and “free markets” exist, that doesn’t mean that they correspond to phenomena that actually occur in the real world.