Wednesday, August 8, 2007

Linux compared to communism: Why it will never work on the desktop.

In theory, communism is a good sounding idea. The government dispenses wealth to everyone and provides the services everyone needs. Everyone gets what they want/need, and no one is out on the streets. However, in practice, it works horribly. People have no incentive to work hard, bad products are produced, the government becomes corrupt, and everything falls apart.

Now, let's look at Linux(and its associated open source applications). The applications are developed for free my developers. Now, one would presume that the developers write the applications for their own needs. Next, let's consider the average programmer. The average programmer probably wants applications that enable him/her to code quickly, and hack around the system to easily look at and change various settings. The average coder probably doesn't care too much about whether he/she has to learn the command line in order to make use of the OS. In summary, the average coder wants radically different things from a desktop user; the coder wants an infinitely customizable system, at the expense of complication, while the user wants something that's easy to use with a nice GUI.


Next, let's take a look at how the capitalism market solves this problems. Let's take Microsoft for example. The people who work for Microsoft may be average programmers wanting a hackable system, but they are forced to code an easy to use system. Why? Because no one in the mass market would buy it if it meant that they would have to learn the command line to accomplish the most basic task on the system. The mass market forces companies like Microsoft to produce easy to use software for the mass market.

What incentive does a Linux coder have to make his/her app easier to use? Nothing. A Linux coder would likely reason, "Well, I could spend my time coding a feature I really want/need, so why should I bother with usability and a nice GUI?" Because Linux coders are working out of their own free will- and not for anything but themselves, there is no reason for high quality desktop software to work.

This difference between the Linux users and the desktop users fosters a sense of difference and elitism. I've cricitzed some of Linux's features in the past, and have primarily been met with comments such as "you are a dumbass", "get a life", and"ignorant rants," instead of comments that would likely come from a company like Microsoft or Apple like "thanks for your input," "we'll look into it," or "we'll definitely consider your comments." From the comments, I can deduce that the Linux developer considers windows users' needs to be below their own, and not worth developing for. In theory, the Linux programmers would be coding for the mass market, but in practice, they're coding for themselves with little regard for with the desktop(read: Windows/Mac) user wants or needs.

No comments: