As with many other things, I want a clean and minimalist design on my software. I don't want any other than the necessary at hand, so I can concentrate at the task I'm working on.
Yet, I've found that designing anything to be like this is a hard feat to get correctly. It's incredibly easy to over or under do it, for the have the right tools at hand while arranging them just the right way. Not only that, it irks me when I'm not allowed to take features in or out so I can get it to be as I want it to be.
I can understand that any software comes with the features most uses as default. In any case, the user needs to be able to make any change to the configuration to make it work better for him or her.
Making the design clean and minimalist doesn't equate to taking away functionalities, it just means that there is a need to better need to understand how those functionalities are used. This way they can be better placed, so that those most commonly used can be accessed faster, while giving the user the chance to configure a way to put the functionalities favored by him in a way they can be accessed with ease.
In many ways, designing this way can be one of the hardest thing to get right since every user can have a different idea of what it means. That why it's important to give the user some freedom to configure the software he uses, and also having a wide rage of options, so that users can be the ones choosing the one that works best for them.
On what it works for the user, the user knows best.