Ideally, every default option and behavior would have the exact perfect setting upon release. But that’s not reality. And it’s common to push back on suggestions to change the defaults to what are arguably better values because, “Well, it’ll make current users upset.”
I was thinking about a month ago about a program that’s been pushing back on those suggestions for decades, and how easy it would be to solve the problem.
Upon installation, write the following to wherever user settings are stored:
x.y.z is the version that was installed.
The application/package then uses that version to load the appropriate config set.
Now, there is no Silver Bullet. For example, documentation likely describes the default behavior, and if a new user is reading the docs from a different version than they have installed, there will be a disconnect. Or, the user could change the
use-defaults-from version number to
But this seems like a low-impact way to improve the user experience by being able to choose better defaults without angering existing users.
Thoughts? Other solutions?