BwackNinja's Hideout

Where Did All the Power Users Go?

An analysis of the changing userbase of GNU/Linux operating systems and the effects on the success of open-source software projects

I was young and naive and eager to learn about this thing people called "Linux." It represented much of what I found to be important to myself, as well as changed me to care about what it represented as well. It took far too long and a lot of manual changes to my xorg.conf before I even realized that there was a virtual terminal gui program and I didn't have to switch to a tty any time that I wanted work in the command line. But that in itself made me more comfortable with that environment and the idea of users having power. Change was accessible, and it didn't involve pressing a few buttons on the screen or the small list of options shown in a preferences pane. I saw graphics drivers stabilize to the point where Beryl was a common window manager to run, and I saw the consolidation of forks to become Compiz-Fusion and then simplified to Compiz. Finally, we have a desktop shell built upon this once-mighty window manager on the most popular Linux distribution, but something is missing. CCSM, or CompizConfig Settings Manager isn't something that is installed by default or something anyone talks about. In fact, no one talks about Compiz itself - merely the shell that's built on top of it, Unity. Gnome-Shell has its popularity with an advanced desktop shell but nowhere near the effects or configuration options in the window manager itself. Yet it remains called a "replacement" compositing window manager as though that's all it took. You'd have to be naive to look at the current landscape and not believe that they're right.

Who uses Compiz? To answer that question, we need to first understand what Compiz is and was and why people stopped caring. Out of every window manager that has ever existed, Compiz was the most ambitious. Coming at a time when Linux graphics meant talking about XGL, not even AIGLX, and not even DRI2, its very success was a masterful feat. Compiz had bugs, or to be more correct, every fork of Compiz had different bugs, but it was exciting and customizable to whatever level you were looking for. Those who looked down on it were the traditionalists, the old hats, the grumpy individuals from yesteryear who weren't keeping up with where things were going. To begin with, it has a plugin architecture. That means that the simple notion of how it operated was to be messed with from outside the core. You didn't interact with the core, you interacted with the plugins. An architecture like that implies a need for a good developer community. Ironically, the best time for Compiz was when it had so many forks because that meant that there was a lot of varied developers with different ideas pushing the whole project forward. It was a political mess, but it meant that people cared enough to keep innovating and keep stabilizing and keep experimenting with what it could do. It tried to be everything to everyone, had no hard dependencies on any desktop environment, provided integration with all of the main ones, and had an extensive interface for configuring what you wanted and how you wanted it. Nothing before or since has achieved all of that.

If it was so great, why did the vast majority of people stop caring? At one point, there was integration in the Appearance Settings of Ubuntu. You could choose between "Basic Effects", "Extra Effects", and "Custom". This was an effort to make the features of Compiz more accesible with sane default so that less savvy individuals would be able to make simpler choices. What it also represents is the changing landscape of the userbase. No longer are the ones using Compiz the savvy individuals or even the adventurous no-so-savvy ones. It is advertised as being "safe" and "standard". An increased userbase isn't always a good thing. Linux evangelism is something that I stopped liking as well. I loved and still love the fundamentals of how Linux works, but I don't express it to people anymore. I don't push new people to try Linux or make it easier for them. Instead, it's a decision up to them. I'll provide as much information and support as anyone asks for, but they are the ones whose interest drives these discussions, not mine. A large userbase doesn't mean a strong userbase. A community tends to cater to the majority of its constiuents. When the barrier for entry is higher, you have more power users and more incentive to be a power user. The fabled "Year of the Linux Desktop" is the year when running Linux stops being interesting as a hobby. Only the vocal minority are the ones who are care about configurability, who complain about Gnome Tweak Tool existing rather than having its functionality integrated, who cringe when someone says "Just Works" as though simply working is sufficient for an enjoyable experience. We are no longer a community of developers with power users excitedly trying new things. We're a community of users with whose expectations of stability involve application stability not system stability. Applications are supposed to know what to do better than the user does. The old hat of today is the power user of yesterday, and it's hard to argue that this minority is more important and should be what things are catered to. Moving back to Compiz, it was run and loved by power users. Without those power users, Compiz becomes unexciting and complicated and not worth it for the new average Linux user.

If something is immensely featureful and extensively configurable but no one knows that it exists, who complains about it? The power users of course. Now we're talking about systemd. In contrast with Compiz, it is fundamentally an entirely irrelevant project. The vast majority of people who use it don't even know it's there, don't know what they can do with it, and it isn't meant for them to deal with at all. It is for distro maintainers to wrestle with. It is meant to be configured for others, not one's own use. It is the plumbing, not the bathroom. Those complaining about systemd or praising it should be truly proud of themselves. Not for their opinion, but because they can even manage such an opinion. To have seen enough information and/or misinformation to agree or disagree, and that means that they are the power users of today. They are the miscreants of today shunned by current development that need not acknowledge their existence to succeed, and would probably fail if they did take them into account.

Bringing this together for the purpose of this blog, I'm working on this Linux distro project because I'm one of the power users left behind. I acknowledge the advances made, but there are a lot of actions that are steps back from my perspective and are only seen that way from a perspective like mine. I'm not the majority. I'm not the average Linux user. If I am to have something made for me, I'll have to make it myself. I just also hope that there will be those around to follow me on this journey as well as those to lead me on new and exciting journeys of their design. I don't ever want my Linux experience to be a boring afterthought, and I'll fight any way I know how to keep the fire alive.