I finally ended up with an Arch system running xmonad and huge numbers of terminal based apps. I'm finally happy with my system again. What I realized is that I specifically don't want a Mac-like/Windows-like/shinkwrapped experience. I want choice and freedom, because what I like is not necessarily what the masses (or Mark Shuttleworth or Redhat or Gnome developers) want.
I kind of picked on your post because even though it is kind of negative, I think there are quite a lot of people who think the same way. It's a valid opinion, but a bit unfortunate. The advantage of a (dare I say Gnu/) Linux system or a BSD system is the freedom from being told how you are going to use your computer. It's not having to put up with some stupid design decision just because it was pushed by a popular company and now the masses are used to it. It the ability to explore, experiment and create with absolutely no boundaries.
It is popular enough and gives me more of everything I want than OSes that are more visible to the masses.
It's really the wave of the future.
Really? Looking at the docs (http://xmonad.org/manpage.html#default-keyboard-bindings) it looks like it has mod-KEY and mod-shift-KEY chords. Nothing wrong with that, of course.
It's easy enough to set up StumpWM to support those bindings, if one wishes. Not saying that everyone should be using it, of course! xmonad's a fine WM I'm sure.
It felt very liberating to suddenly be free of all the Gnome3 / Unity politics, developer fragmentation, and complex desktop systems that still feel inferior to the commercial OS-X/Windows alternatives.
But, giving general users Xmonad and a terminal isn't going to encourage more people to use Linux. Consequently, you land-up building applications that general users want and trying to make the environment more accessible to them.
Ah, but you might say that "more users" isn't an important goal for you [1].
But, the challenge is that below a certain level of users the hardware and software ecosystem isn't incentivised to make things "work with" Linux. If you have 5% of the PC user-base then Intel cares that WIFI chips work, Barclays cares that you can login to their web bank, etc [2]. So even if you don't want Linux to be 50%, you probably do want it to be an important platform.
I don't really buy into the idea that Linux can't be both mainstream and for expert users. The "general users" easy environments and the expert-user xmonad user environments can both co-exist. First, because the Linux distributions are an easy way for users to self-segment - particular types of users are attracted to different distributions. The slight downside of this being that we get tribal wars over distros'. And, really the differentiation between distros is mostly their default choices - you can run Xmonad on Ubuntu (I run i3 for example) and I'm sure you can run KDE on Arch. It's pretty much the same software underneath.
[1] And actually one of the things I dislike is when people say "the Community wants X" which is totally bogus because a lot of people have different goals, there is no "one" community.
[2] You might recall the 90's/early 00's where there was lots of Web tech that made sites not work where Linux was the browser such as e.g. ActiveX.