Wednesday, January 28, 2009

You Get What You Pay For

The following paragraphs are from a rant an anonymous contributor sent to me. To comply with his request, I have edited it where I deemed appropriate.

There are two major problems that Linux faces concerning its spread on the desktop:

1.) Applications

2.) Drivers

Both problems will not change in the near future, so 2009 will not be the year of Linux on the desktop. Neither will 2010. But what is the real problem? The real problem is ignored by those who are "in charge". What do I mean with that?

1.) Applications

Desktop-Users need commercial applications. That's just the way it is. The extra ten percent of features that makes an app usable for your average Desktop-User are the 10% that every developer hates; those features are hard and boring to develop, and implementing them is just no fun. You need to pay developers to implement them.

Do you really think that something like Photoshop Elements is going to be created by the community? My father, whose hobby is photography, shelled out 70€ for PE. He does not regret it, even though the activation is a PITA. Why? It just works: it works with his camera; he gets results fast; there are a bunch of tutorials and books available, etc.

In Linux we are stuck with Gimp. Sorry, but no cigar! PE calibre software will NOT be created by the community. It just takes TOO much manpower, TOO much work. No one is coding that in his spare-time.

This kind of software will also not be created by an open-source company. There is no business-model that would supports the effort. Just imagine if Adobe released PE as open-source - you think that people would still shell out 70€ for a boxed-version? Nope, people would just copy it. There are some exceptions. For example, Mozilla receives their money from Google not from their users. 

Sun supports OpenOffice, but it still has issues. The spell-checker sucks even in the 3.0 version (at least for German). BTW, you can buy an add-on for OpenOffice: the Duden-Spellchecker. It is closed source and costs approximately 25€. Apparently, Sun bundles it with StarOffice, so if you buy a boxed version of StarOffice, you will have a proper spell-checker.

See? That is another typical example of the difference between open and closed source software. Will a great spell-checker be created by hobbyists in their spare time? No! It is a repetitive, boring task, and coding skill alone does not suffice. You also need language experts. Will they work for free? No! Then who will pay them?

Other examples are nice fonts, Video-Editing Software, Audio-Production Software (Cubase or Logic created as open-source from the community? Come on!), Handwriting Recognition, OCR, Home-banking Software and so on. For each of the software programs mentioned, there is a half-assed open source clone. All of them each are not taken seriously by those who really work in the respective field. Can Gimp replace Photshope/PE? What about Ardour for Logic/Cubase replacement? Is there an alternative for Adobe Acrobat? I don't think so. 

Anyway there are two conclusions you can draw:

1.) It is simply not true. Gimp rocks, and I have to relearn everything I know, and I am not willing to change, and it is all my fault that I have problems, and FLOSS basically rocks. Anyway, the makers of the Distribution have provided, from their repositories, me with every software program I will ever need. 

2.) You should try to make it _easy_ for ISV's to target Linux as a platform.

Apparently lots of Linux users choose #1 and write long, screeching blog posts about the benefits of apt-get. Unfortunately, the major players are not listening. If you are an ISV, shipping software for Linux is not worth your time and resources. Either you should, like Opera, test your binary against zillions of distributions, or you should not ship a Linux-version at all.

Even for open-source developers, this state of affairs sucks. Take for example Anki, which is one of my favorite tools for learning a foreign language (I never said that open-source apps will never work). Anki is basically the effort of one developer. It is a nice application, but it is also not as "big" as a full-blown commercial application (i.e. those that you must shell out 70€ for). Basically, Anki is donationware. Apps like Anki, which were shareware ten years ago, are now usually developed as open-source+donations, and it halfway works. However, these applications are usually neat yet small tools: 7zip, Anki, Miranda, etc.

The developer of Anki does not have the time to test his cross-platform application against zillions of distributions. For Linux, there is only an Ubuntu package. However, this guy develops fast, and there is usually a new version every month (or sometimes every couple of weeks). The _one_ Windows binary works on all versions of Windows. The _one_ MacOS binary mostly works on all major versions of MacOS.

There is no package for the distribution I am currently running, OpenSuse. It is not in the repository, and if a software package is not in the repository, the user is _lost_. What are his options? Should he recompile every time a new version is released (sometimes every two weeks), because make uninstall is known to just work? I tried to alien the ubuntu package, but it does not work. I also tried to manually compile the program, but the compilation failed because of some weird dependency problems with QT which I could not understand. In fact, it is easier to ship a piece of software for a Hackintosh than it is to ship it for Linux. Think about that.

This problem will not change. Lusers do not like to shell out money for applications, and they do not like commercial applications in general. Software makers do not ship anything for Linux because they have no clue what they need to ship. Common users do not use Linux because the commercial applications are not present. Therefore, the situation will not change. Regarding LSB, I think we have covered that already.

2.) Drivers

If you are some independent maker of hardware and want your device to run under Linux, you are basically required to open source your drivers. Any other option will not work for your users. There is no way you could do something (yeah, I know it sounds like a completely weird idea) like shipping a driver-cd with your product. You could also go the NVidia route. That might work if someone really wants your hardware to work under Linux, and you are well compensated for your efforts. NVidia is an exception.

Pushing people in this manner to open-source their drivers actually works in the server world. If some Fortune 500 is using Linux on their servers, and they buy 1000 servers with Intel mobos, those boards are required to work. The company shells out a lot of money, so there is a real financial incentive for Intel to open-source their drivers if they want to sell their hardware. This works because Linux has a significant market-share in the server-world.

On the desktop, Linux is not even remotely in the position to make these demands. All the freetards, however, act like the unknown maker of your webcam absolutely _needs_ Linux-compatibility for their device to be sold. Do you really think they will open-source their drivers _ever_? The freetards are saying, "I am insignificant, yet the world should adapt to me. I will never adapt to the realities of the world!" That attitude just does not work.

There is still no stable driver-ABI, so the driver situation on the desktop won't change. Linux on the desktop? A joke.

Unfortunately, both of these problems are not technical issues. They are instead dogmatic issues. This is why Linux will not take off on the desktop. These two problem have existed for 15 years, and if you install Linux on your desktop today, you still face the same problems.

Fifteen years ago winmodems were the problem. Today it is wireless lans. Fifteen years ago your GDI-printer did not work. Today your printer/fax-combo does not work. Fifteen years ago you wanted to install the new Netscape 4.x. Nowadays you want to install Firefox 3, but your distro is not shipping new packages for the next six months.

Linux on the desktop is a joke. Nothing more.

No comments:

Post a Comment