Continuing the discussion from Repetitive gutter links?:
I can see both sides and I think a balanced approach is best.
First, “You can’t please all of the people all of the time” is very true.
Some apps go for a bare-bones Core to keep it light weight. Users need to use plugins for just about everything.
Some apps succumb to feature bloat in an effort to do everything. The app is heavy, and for most users many features aren’t ever used. The features also present users with a lot of configurations done either by editing files or a complex ACP
IMHO either of these extremes is not the optimal solution.
Perhaps the best way is to have anything not “essential” be a plugin, and when a certain number of users find that plugin useful then consider incorporating it into the Core?