I know who the maintainers are and what their responsibilities and trajectories are. While no one was looking (Linus), lots of diverse platforms became supported. Provisions were made for both very progressive (if often never ever ever used) modularity.
On the app side, an enormous number of apps found their way inside, often stuff that users (remember users?) didn't ask for but they got The Big Gulp anyway.
I indeed wrote operating systems before Linus Torvalds was born. Wrote in Byte about Linux long ago. Watched a ton of operating systems grow and fail for want of a practical purpose or momentum.
I've surfed the wave of FOSS and Linux (and various BSD) developments for a long time. I have an engineers sense of less is better, and that attack surface involves anchoring unmaintained yet still distributed JUNK into fun attacks. Or watching users (remember users?) become dogged by sheer inode displacement.
Distros don't use Darwin as their set of choices, or even public demand for their content choices. They simply shovel in stuff. More is better. This policy is provably a poor choice.
The relationship between enabling interesting stuff in the kernel and the bloat of distribution apps is highly intertwined. The kernel and app payload enable each other.
Philosophically and relating this to the OP, bloat is bad. It eventually serves too many at the price of integrity and TCO.