Quiet Mumblings

Saturday, August 05, 2006

Open Source vs Microsoft

Open source has to be one of the finest revolutions of the digital age - a group of skilled people working together, without pay, without ownership and without an agenda to produce freely usable tools for the rest of us. It has produced some of the most remarkably powerful products (Apache, Firefox, OpenOffice, Linux, The GIMP, etc) and gained both a huge userbase and developerbase around the world.

The applications built by open source have sometimes been so perfect for their purpose that they have completely surpassed commercial competitors in their field. The two most perfect examples of this success have to be:

  • Apache HTTPD - this superbly reliable, flexible and powerful web server now enjoys a market share of over 60%, only suffering a slight drop after Microsoft's well-hyped ASP.NET language came out on their IIS server platform. To be fair on Microsoft, Apache had a head start, but considering the massive amounts of marketing MS have thrown into IIS, Apache's success can only be based on its outstanding quality.
  • Mozilla Firefox - admittedly Firefox has not surpassed its competitors, but to come to market after the Netscape v IE wars and still manage to gain a market share of 25% is a huge achievement. IE is installed on users PCs by default and had become the defacto browser on the web, but Microsoft had become lazy and had rested on their laurels too long. When Firefox came along with functionality that IE users hadn't even dreamed of, people who had never even heard of open source moved over immediately.

These two shining examples of open source success indicate what the movement really can achieve, but there is a proportion of the open source community that seems to be sabotaging its own future.

Having embraced the open source movement for two years and enjoying the benefits of Debian Linux on my laptop, Firefox as my browser of choice and OpenOffice as my productivity sweet, I have finally moved back to a Windows and Microsoft Office based environment. Why? A mixture of laziness and frustration at the arrogance of some members of the Open Source community.

Laziness is the easiest to explain - Linux is more effort that Windows. There are a lot of good reasons for this - especially lack of manufacturer support - and also plenty of bad excuses. There is a large amount of the Linux user interface that is still underdeveloped - even on the "friendly" Linux flavours such as Mandriva and SUSE. This is especially true of control panel style maintenance interfaces, which often don't do everything that you could want them to do or break down when you use them. Linux experts would argue that we should do this through the command line - and on our work servers I'm more than willing to do this - but on my home PC I don't want to spend longer than necessary working on tasks such as system maintenance. I also don't see my wife doing this when she wants to install a new game.

So far none of this is a complaint - I can accept with gratefulness and admiration that Linux is a system under development and that people are working hard on improving it. The frustration comes at the contradictions that the Linux community throw around - a mixture of self-obsessed arrogance ("Linux is ready for the desktop", "Linux is better than Windows") and user bashing ("How can you complain about missing features like that when you don't contribute code?", "You can't complain you can't use your webcam on Linux - its the manufacturer's fault", "You can't expect OpenOffice to have a smooth interface like Microsoft - OpenOffice is free!").

As a professional software developer I can safely say that the best people at finding bugs in your software and working out where your code is inadequate is the ignorant user, who can discover ways to make your apps crash in ways you never thought possible. Development is a constant discussion between developer and user. Some of the Linux community, in its comfortable insulation, doesn't seem to realise this. Features that they consider unimportant to them end up undeveloped, features (such as a web server or browser) that they use daily are brilliant. They are reluctant to take criticism from those who know less than them.

On top of this, another minority (of possibly the same users) surround Linux projects with childish flamewars and waste valuable time and user confidence on insulting other development efforts. The classic example is KDE vs Gnome. Gnome is an attempt to make a user interface as simple as possible, sacrificing unnecessary flexibility for a lack of complexity. KDE is an attempt to make a user interface as fully featured and flexible as possible, sometimes providing basic users with a bamboozling range of options. KDE is also based on a proprietary system that for some users is not strictly in line with the spirit of open source. Unfortunately among some Linux users, being a Gnome user or a KDE user has become a matter of religion, and flame wars break out frequently with one camp insulting the other.

Flamewars are not just limited to user interfaces - they occur at all levels of Linux, and all throughout the history of Unix-based systems - including browsers (Konqueror/Firefox), editors (vi/emacs), distros (too many), and many more.

It is this geeky obsessiveness with all things Linux that has both powered but is now hindering open source. If I can't say that OpenOffice's interface is more clunky than Office's, or say that the Linux GUI is less stable than XP, without a barrage of comments or insults about my own ability and knowledge, then I am unlikely to have confidence that the software will develop the way that I need it to. I personally don't want to know how Linux operates behind the scenes to be able to type a text document, and I can guarantee that my mother would give up at the first hurdle.

If Linux and other open source projects are going to flourish in the world of the average user then a good proportion of the contributors are going to have to get over their self-pity at being at the disadvantage of corporations like Microsoft, and just keep on with doing their best and listening to their user base. The more users that try it now and are put off by its failings and a few unhelpful individuals, the less chance that they will try it again later on so easily.


Post a Comment

<< Home