Write Predictable software, not Ergonomic
As software engineers, when we build software, we often choose the configuration defaults that our language or the framework provides to us. And most of the time, the default options work well. At least for a while, until something unexpected happens that reveals that the configuration which has been in place for years can cause an outage under specific circumstances.
In this article, I’ll go over a few examples illustrating the issues arising from misconfiguration. I also suggest a mental model and an API style that can help reason about configuration more effectively.
Source: Write Predictable software, not Ergonomic, an article by Sergey Tselovalnikov.