The only thing worse than having a problem is having a poor solution to a problem.
Because that prevents a good solution from being worked out. The usual symptom of this is having a complicated and brittle Rube Goldberg machine to do something that really should be a just simpler. It’s just that nobody bothers to do the Right Thing, because the solution that we have almost kinda, sorta works most of the time so there’s nothing to worry about, really.
Some examples include the following:
- X used to come with a configurator application that would examine your hardware and print a conf file, which you could then copy over (or merge with) the existing conf file. Nowadays X does the probing automatically.
- X clipboard was a complete clusterf*ck, but since middle button paste mostly worked it was not seen as an issue.
- The world is filled with shell script fragments with the description “I needed this for something long ago, but I don’t remember the reason any more and am afraid to remove it”.
- Floppies (remember those?) could be ejected without unmounting them causing corruption and other fun.
How can you tell when you have hit one of these issues? One sign is that you get one of the following responses:
- “Oh, that’s a bit unfortunate. But if you do [complicate series of steps] it should work.”
- “You have to do X before you do Y. Otherwise it just gets confused.”
- “It does not do X, but you can do almost the same with [complicated series of steps] though watch out for [long list of exceptions].”
- “Of course it will fail [silently] if you don’t have X. What else could it do?”
- “You ran it with incorrect parameters. Just delete all your configuration files [even the hidden ones] and start over.”
If you ever find yourself in the situation of getting this kind of advice, or, even worse, giving it out to other people, please consider just spending some effort to fixing the issue properly. You will be loved and adored if you do.