974: The General Problem
In this comic, Cueball asks a friend or relative to pass him the salt, a common request when dining with others. Usually it is expected that the person will simply pass the salt immediately; however, the offscreen person doesn't get back to him until 20 minutes later, when Cueball repeats his request. The friend explains that they're attempting to solve the general problem of passing any table condiment, not just salt.
This is a common mistake made in software development, wherein an developer tries to solve a problem far more general than the specific one they have been tasked to solve. Sometimes, this foresight can be useful, if the developer has predicted use cases that later turn out to be needed; other times, it can lead to wasted time, or worse, overengineering, where a system is made more complex and fragile than it needed to be, instead of robustly solving a single, well-defined problem.
It isn't clear what exactly the offscreen friend is doing (or even what they could do) to solve the general condiment-passing problem; most likely they are still in the design stage of their solution and have not even started implementing it, much to Cueball's chagrin. Nonetheless they are convinced that it is worth taking the time to do this now due to the potential time-saving in the long run. In doing so, they are overlooking the more salient facts of the situation; namely, that passing condiments is not something that requires a solution or takes up any significant amount of time, and that Cueball would probably prefer to have the salt while his meal is still warm.
In the title text, Randall notes a social paradox: that people tend to be disparaging of such inefficient time-wasting while it's not producing any results, but will heap praise on it when they're able to reap the benefits of that foresight.
- [Cueball sits at a table, eating a meal.]
- Cueball: Can you pass the salt?
- [Cueball pauses, a bite of food on his fork, silently.]
- [Cueball still has fork in mid-air.]
- Cueball: I said-
- Off-screen person: I know! I'm developing a system to pass you arbitrary condiments.
- Cueball: It's been 20 minutes!
- Off-screen person: It'll save time in the long run!
add a comment! ⋅ add a topic (use sparingly)! ⋅ refresh comments!