The Paradox of Choice

Yesterday, a co-worker of mine and I had a lengthy discussion about this article posted on OSNews awhile back. My past writing about Linux has centered on general usability and sensible defaults, but his contention was that Linux is the Linux kernel and that anything beyond that is the responsibility of the distribution. The conversation took an interesting turn. Read on for more.

Certainly, the word “Linux” refers to a kernel. I believe, much like the old confederate flag, insistance on what it really is means little when most people perceive it as something else. “Linux,” that is, what it means to most of the word, is a complete, rapidly developing, open source operating system. Each distribution provides a mostly unique spin on it, and generally, most people’s perception of Linux is actually the spice added by their selected distribution. Some people think Gnome is Linux, some KDE, still others XFCE or Windowmaker. As a result, unsurprisingly, the choices a distribution maintainer makes affect not only their users, but the perception of Linux as a whole.

If you ask me, I’ll tell you straight out: I’m all for removal of choice from Linux distributions. Choice is generally good, but too much choice, and worse, uninformed choice, is bad. It’s no different than politics, choosing a text editor in Linux without any knowledge of how they work is like voting without any research into how the candidates stand on the issues. Fine. So let’s talk about choice.

As I said in the past, I believe a distribution should choose sensible default options and applications and leave the rest out. A user who wants specific applications should either a) choose the ditribution which best suits him by including them or b) download and compile those applications himself. Yet, everywhere I go and everyone I speak with tells me otherwise – Linux is about choice and removing the choice is akin to personal insult. It’s a strong voice that argues with me: “Choice is good.” But it’s not consistent.

Why? Because there’s another debate going on, unrelated, but behind the same four walls. That debate is about standards. Microsoft’s Internet Explorer has some amazing capabilities. Sure, I’ll give you that ActiveX and proprietary javascript elements can be terrible and/or security holes, but this is my point: the same community that argues for choice seems to stand behind consolidation and standards. I mean, in the last few years, we’ve seen the rise of open file formats, XML (and XHTML/XSL/RSS/Atom), and most recently, the new release of the Linux Standards Base (LSB2.) Sure, standards make everything easier for application developers to provide a consistent and clean experience, but at the heart of it, aren’t they also a kind of “removal of choice?” If guidelines tell you where you must store user data, or how your code must be written, doesn’t that limit the philosophical choice to do whatever you want? The same way people tell me “If you don’t like emacs, don’t use it,” why don’t people say, “if you don’t like IE’s behavior, don’t code for it.”?

I don’t pretend to be a supporter of non-standardized applications, protocols, and organizations, but I do wonder why there is such heated debate and inflexibility. There are keywords — FUD, troll, zealot — words that people call each other that incite the deepest sense of insult and argument. There is allegiance and faith in hardware, software, programming languages, and interfaces seemingly comparable only to religion in starting all out “flame wars.” Where, I ask, does this come from?!

We accept choice when it suits our needs and reject it when it doesn’t.

Serveral years ago, Linus Torvalds shared his new kernel with an audience employing technologies that would ultimately serve as the building blocks of the internet as we know it today. His kernel, a fully open sourced collection of code, invited developers from around the world to write their own applications and share their code too, to attempt to create best of breed applications. That much is undisputable.

Somewhere along the way, there became a nearly religious belief, some sort of wacky zen centering around “choice” being the key to the success of Linux. The monks who preach this gospel are all over the net. But I’ve never seen it that way. I’ve always felt as though I don’t want to spend my time trying to decide which word processor to use. I don’t want to flip flop between Kontact and Evolution, Gaim and Kopete, Abiword, KWord, Open Writer, etc. Applications are merely an aside to productivity, the key is a comfortable, cohesive system. And that is acheived with the input and contributions of the masses.

Along the way, I think we’ve gotten confused. Some stand for choice when it’s convenient, like in Linux distributions, but not when it’s painful, like in adherence, or lack thereof, to standards. Some vice versa – they believe in a free for all, with a Darwinistic belief that the best will win out. We rarely permit our OS installations to limit our choice, yet insist on an immediate cease of non-standard behavior. Funny that Linux survives by having a single maintainer deciding what goes into the kernel and what doesn’t, the near antithesis of too many of its followers, who feel as though the removal of some quirky option is unacceptable, and the inclusion of a specific rarely used app is a necessity. How is it that we contradict ourselves so much as a group pushing towards the same goals?

Communally, I feel we should be aware the strengths of Linux. Linux is a superior system, but isn’t always treated like one. Some would say “People won’t use Linux because it’s too confusing,” and the retorts are heard from miles “It works for me.” The trick to Linux isn’t just to get hardware compatibility and drivers, but that’s part of it. It isn’t to have a pretty GUI, but that’s part of it, it isn’t to have a polished, consistent system, but that’s part of it.

No, it’s all of those things, plus one more, ultra important thing: it’s a flexible, adaptable system which can be whatever you need it to be. Linux needs to flex. But more than that, Linux needs to unflex. The people that CAN use Linux often are. It’s the people that can’t that we need to start paying attention to. Linux – in a general sense – needs a good starting point that doesn’t call upon you to make a zillion decisions. And that, I’m beginning to learn, comes from removal of choice.

Users cannot be overwhelmed by Linux or they won’t use it. Applications attempt to become compatible by relying on standards. When Linux doesn’t behave in an expected way, there are dependancy problems, failed compiles, kernel panics, and packages that don’t work across distributions. When a web page fails to adhere to standards, some browsers sometimes misrender the pages, making them only a part of the browsing experience. When an application doesn’t write to open formats, we end up with the disaster we have today – a zillion Microsoft Word documents that still don’t open and format properly in anything but Microsoft Office.

There is a line from the movie The American President that says “The symbol of your country cannot just be a flag. The symbol also has to be one of its citizens exercising his right to burn that flag in protest.” Choice is golden. But part of choice is the ability to select the unpopular path. Part of that choice is the ability to remove choice or not follow standards. And part of it, I believe, is the choice to quietly not use the software that doesn’t meet your individual needs. Unfortunately, it appears that choice complicates things for those who are learning, and adds to the experience of experts. The paradox of technology, it would seem, is to accept choice as both a good thing and a bad thing at once.

If you would like to see your thoughts or experiences with technology published, please consider writing an article for OSNews.


  1. 2004-09-17 7:26 pm
  2. 2004-09-17 7:30 pm
  3. 2004-09-17 7:33 pm
  4. 2004-09-17 7:49 pm
  5. 2004-09-17 8:01 pm
  6. 2004-09-17 8:07 pm
  7. 2004-09-17 8:16 pm
  8. 2004-09-17 8:25 pm
  9. 2004-09-17 8:28 pm
  10. 2004-09-17 8:34 pm
  11. 2004-09-17 8:43 pm
  12. 2004-09-17 8:50 pm
  13. 2004-09-17 8:56 pm
  14. 2004-09-17 9:00 pm
  15. 2004-09-17 9:06 pm
  16. 2004-09-17 9:44 pm
  17. 2004-09-17 11:44 pm
  18. 2004-09-18 1:22 am
  19. 2004-09-18 6:17 am
  20. 2004-09-18 8:02 am
  21. 2004-09-18 3:10 pm
  22. 2004-09-18 7:05 pm
  23. 2004-09-18 9:35 pm
  24. 2004-09-19 3:47 am
  25. 2004-09-19 5:07 am
  26. 2004-09-19 12:30 pm
  27. 2004-09-19 4:58 pm
  28. 2004-09-19 9:03 pm
  29. 2004-09-20 6:04 am
  30. 2004-09-22 8:18 pm
  31. 2004-09-22 11:38 pm
  32. 2004-09-23 12:02 am
  33. 2004-09-23 1:04 am
  34. 2004-09-23 1:39 am
  35. 2004-09-23 6:46 pm
  36. 2004-09-23 7:32 pm
  37. 2004-09-24 9:13 am
  38. 2004-09-24 4:04 pm