"You know that situation when you have brilliant idea for a small program that does one thing and does it well? You start working on it, and then you find some functionality that benefits from being user-modifiable using the command-line. So you add command-line parsing…
And then you find another bit that really should have a user-defined default value.
So you write:
And then people complain that no-one knew the configuration file existed, and that the format is opaque.