While talking to a business owner recently, our discussion turned to a pesky problem the company had been facing: The irrigation system used for their plants consisted of a water delivery component which made use of emitters with tiny nozzles. Over time, the mix of nutrients in the water caused a buildup of deposits around the nozzle, eventually blocking water flow.
During our initial discussions, I proposed a solution involving a sensor network that would use an array of cheap moisture sensors to detect when soil moisture was below a certain threshold, and then fire off an alert to a human whenever an error was detected. But in the end, a simpler and more economic solution was discovered: Switching to a water delivery system that did not rely on the clog-prone emitters.
It’s a far less-sexy solution, certainly. But look at the upside: Additional components mean additional potential points of failure. The overhead of adding a new system to work around the problem was avoided, and instead the root cause of the problem was addressed.
Complexity is not always bad; sometimes you need to introduce complexity in the form of new systems or components that bring real value. But most of the time the very best solutions are simple. If you find yourself mired in a problem that seems to have no simple solution, take it as a red flag: You may be so focused on the minutia that you have lost the ability to zoom out and look at the bigger picture.
In other words, if no simple solution to your problem exists, you may be solving the wrong problem.