Improving The Linux Desktop
Ken Starks writing for Foss Force asks What Would You Do to Improve Linux?, and I'm glad he did, because I have a list. Oh my do I have a list. For me, the Linux desktop has been full of promise, but the promise has always been just out of reach. It's been full of "the next version is going to be awesome", for every version that comes out. It's been chasing fifty rabbits at once, and almost catching a few. Linux desktops, I think it's time we had a talk.
Computers can be endlessly fascinating; there is an entire universe of things that can be done with one. In this fascination we can get lost, and believe that the universe we are so enthralled with is just as important to everyone else as it is to us. We love to explore minutia, argue about the differences between GPL and the LGPL, and why we should call it "GNU/Linux" instead of just "Linux", and most of all, explain why everyone else should use our favorite flavor of desktop Linux. "It's about freedom" we say, "look at how Apple restricts your choice", unaware that to those who have chosen a different rabbit hole to go down computers are just another tool that they need to work. To us, it can feel a bit like magic, the first time you change something important about how your computer works. It can be exhilarating, that feeling of accomplishment, of power. In open source, you control your universe, and this control can be intoxicating. However, like many who have been given power they were unprepared to wield, the open source community has not always made the best choices.
Most engineers are not designers, but open source gives developers the ability to design interfaces as they see fit. Hence, we have disappearing menus in Unity, windows that fly around the screen in Gnome 3, and the KDE desktop that I have found to be completely incomprehensible for so many years that I gave up looking at it (apologies to the KDE team and enthusiasts, it's been a few years, I'm sure it's awesome now). The Foss Force article has a series of good points about why desktop Linux hasn't reached as widespread of an adoption as hoped, and the comments below the article are full of members of the community voicing their complaints and suggestions. In the comments are ideas like "make Windows integration better" and "make it easier to add disks". Many of the comments have good and valid suggestions, but most of them ignore the core of what makes Linux both wonderful and doomed to existence as an enthusiasts system. The Linux distributions are all made from various software packages, each with a different set of maintainers, with a different set of values and agendas. While each group has given their software and their efforts to the open source community, each group is just a little bit different. It is in these differences that our love of minutia starts to show through. Some people don't like the default Ubuntu desktop, so they clone Ubuntu and add a slightly different desktop and release it as a new derivative. This is good because it brings new ideas into the fold, and shows how things can be done just a little differently. However, each time this happens it also fragments the community just a little bit more. Is this good or bad? Depends on how you look at it.
The Linux desktop is built from thousands of little parts, interlocing together, each built by a different team. At times it is a wonder that it ever works at all! But it does work, and most of the time it works well. Sometimes, however, things don't work, they start to fall apart, and it is during these times we like to make lists of ten things we'd like to change about Linux, and put our pet peeve that just happened at the top.
So, after all this, here are my suggestions, my list that I set out to write. Point one: keep doing what you are all doing. Technology is always going to be a reflection of the values of the people who create it, and the Linux desktop is a reflection of the multi-cultural, multi-national, and inclusive culture that we have. Linux, for all it's warts and bumps and bruises, is also beautiful because of what it is. The world needs the Linux desktop just as it is right now. But it also needs more.
Point two: pick one distribution, say, Ubuntu, and burn it to the ground. Then, pick up the pieces, and build something completely new. Take no software from the rest of the community, or the rest of the tech industry, and take only ideas. Build the entire operating system from the ground up, based on the Linux kernel, with a single team, under a single roof, with a single design and philosophy. Focus on the best of what has come before, and the best new ides that need solid implementation. Leave behind all the cruft and build something entirely new.
So far, the closest thing I've seen to this vision is Aral Balkan's Indie project. However, he seems focused on the mobile market right now, I'd like to see this approach geared towards the desktop. Is it possible? Sure, anything is possible. Likely? Who knows. The entire Linux ecosystem is unlikely, and yet, here it is. There are no limits to what we can accomplish.