Another in my continuing series of attempts to coin, or popularize, terms that software engineers don’t know they need yet. This one comes from my apprentice, Ian Bruene.
“Builder gloves” is the special knowledge possessed by the builder of a tool which allows the builder to use it without getting fingers burned.
Software that requires builder gloves to use is almost always faulty. There are rare exceptions to this rule, when the application area of the software is so arcane that the builder’s specialist knowledge is essential to driving it. But usually the way to bet is that if your code requires builder gloves it is half-baked, buggy, has a poorly designed UI or is poorly documented.
When you ship software that you know requires builder gloves, or someone else tells you that it seems to require builder gloves, it could ruin someone else’s day and reflect badly on you. But if you believe in releasing early and often, sometimes half-baked is going to happen. Here’s how to mitigate the problem.
1. Warn the users what’s buggy and unstable in your release notes and the rest of your documentation.
2. Document your assumptions where the user can see them,
3. Work harder at not being a terrible UI designer.
4. Watch the issues list/user’s forum/mailing list, and actually respond.
5. When someone tells you it requires builder gloves, believe them. And fix it so it doesn’t.
Becoming really good at software engineering requires that you care about the experience the user sees, not just the code you can see.