Consider eclipse. It allows the user to configure every. Single. Thing. And in doing so makes configuration difficult because there are so many options. Sane defaults and a consistent environment are better, imho.
Sane defaults and extremely detailed configuration options can coexist.
Those users who like the sane defaults can just stick with them. Those users who don't like those defaults can use the configuration options to fine-tune their experience.
If you have loads of options it can be almost impossible to know the options. Even basic things can be difficult to find. This is usually "solved" by things like an "advanced" button but that means you'll just end up clicking the advanced button in loads of places.
IMO sane defaults and extremely detailed configuration go against each other. The detailed configuration makes it impossible to find the option you want.
Yeah. A great point. I do find eclipse to be too configurable, and part of why I use IntelliJ (for Java). Apple software is generally on the other end of that spectrum, which annoys many people; although you'll notice that even there you can put the bar on the left, right or bottom.