I literally was told not to narrow down the features too much or the product would be too constrained... well then wtf does it actually _do_ for anyone?
I literally was told not to narrow down the features too much or the product would be too constrained... well then wtf does it actually _do_ for anyone?
The idea is that the user should be able to be productive more or less immediately after installing the software, and then incrementally customize it as they discover they have different needs than the defaults give them.
A lot of developers/companies forget the first part, and ship something that requires a team of consultants six months to set up before anyone can do anything useful with it. Of course no one wants that. (Well, except for the highly-paid consultants.)
This is a classic IDE problem. The IDE has a preferred directory layout it wants, and some other build tool you're using has a different directory layout.
The problem seems to be that there's not many such great abstractions to be found.
I have seen dozens upon dozens of Excel sheets which "just worked" until they didn't and then of course person who could fix that left company 10 years ago.
Besides I also know dozens of people whose life would be easier if they would learn a bit more of Excel like pivot table is there for them.
So which is preferable - customisability or very limited feature set?
But I would not expect a large percentage of developers to want to do that. I've used IDEs as well, and they're mostly fine, and work really well for lots of people. Many IDEs are pretty damn customizeable too, though most people may not change many settings.
There is no general answer that will answer which is preferable.
It is easy for people to come up with features they want or a customisation and they don't care for the cost of actually maintaining that feature or customisation.
I work on building SaaS platform, we had multiple customers for whom we build custom features and they paid for development of those features. Not fun part is after 2-3 years those customers are gone (for example employees at customer rotated and they switched to something totally different) — but now we are left with dead feature no one is paying for supporting, some are easy to remove, some are not.