Of all the myths that have grown up around open source software, perhaps the most pervasive is Eric Raymond's aphorism that "Many eyes make bugs shallow", suggesting that if lots of people can view a program's source code, they will find and fix its errors more quickly than commercial products whose code is jealously guarded. The only problem with this is that it's not true - certainly not in one of the flagship projects of open source, OpenOffice.

This project is most often quoted as the threat to Microsoft's cash-generating Office suite. The free suite comprises a word processor, spreadsheet and presentation program; and graphics, equation editor and database programs if you want.

OpenOffice is the only free and open source product competitive with Office, able to read and write Microsoft format documents almost flawlessly. For GNU/Linux desktop users, it is the only way to communicate in the universe of business. But it also vividly demonstrates the limitations of open source as a way of producing software, and its futility as an ideology.

I like OpenOffice. I used it long before it was usable, out of a mixture of perversity, stinginess, and vague anti-Microsoft sentiment. When I started writing books, I had Microsoft Word 97, which could not print a 60,000-word manuscript without crashing. I have written numerous macros (which automate less obvious, or screamingly obvious, tasks), including the word count for version 1. I have done quality assurance work, submitting reports on bugs and testing those reported by others. So I know something about the open source "community" and the enormous gap between myth and reality.

Improbable assumptions

The reality is that any computer user probably depends on open source programs every time they look up anything on the net. But they don't know that, and they don't have to.

The myth of open source rests on two improbable assumptions. The first is that a significant proportion of users can fix bugs. That is true at the Massachusetts Institute of Technology, where the concept of free software was first formalised in the 1980s by Richard Stallman and others, and it is true in some of the geekier corners of the internet. But on programs intended for use by the non-programming public, it's a very different story.

This is important because of the second crucial false assumption: that even if not all users can fix a bug, they can help find them. They can't. Most users just think: "The computer isn't doing what I want."

Big commercial software companies know this well. When developing products for the public, they spend a lot of money on usability testing to find out what users expect from software, and how to meet those expectations. Companies lose from user dissatisfaction in a way open source software doesn't, and so have an incentive to avoid errors in the first place: the number of calls to a support desk grows exponentially with the number of bugs and users. Where's the support desk for OpenOffice?

Despite the open source rhetoric, OpenOffice actually started as a commercial product - StarOffice, from Germany's StarDivision - before being bought in October 1999 by Sun Microsystems. Almost all the work on it is now done by about 100 full-time Sun programmers. That is a tiny fraction of the armies Microsoft or Google can deploy to solve a problem.

But what about the innumerable volunteers who can download the code and fix what they like? They take one look at the effort involved and run. OpenOffice is an extremely complex mountain of source code. As far as I know, in the five years it has been available as open source, not one contribution to the program has come from amateurs. The outsiders who have provided input have been full-time professionals employed by Linux companies to help make the software credible.

There has been a lot of volunteer effort, but it has gone into support. Without the efforts of French and Italian volunteers, it would be more or less impossible for anyone to write macros. Some volunteer energy goes into localisation efforts: the suite is available in practically every language, and four or five people put in a real effort to help puzzled users on the internet, but the overwhelming energy seems to go into filling the blogosphere with remarks about the merits of open source software and getting outraged about inconvenient facts.

Kindergarten noise

For example, just before version 2 was released, a Ziff-Davis blog (blogs.zdnet.com/Ou/?p=120) pointed out that OpenOffice is bigger, less efficient, and much slower than MS Office (tinyurl.com/4evmt). Large spreadsheets take more than 100 times as long to load. Some of this is a result of inefficient code, and some the result of an inefficient storage system; the figures are undeniable and not disputed by Sun developers, but the shrieks of outrage in the comments would be alarming even in a kindergarten.

So why is OpenOffice so dire? The project claims more than 50m downloads of the software, so let's assume that 50m people have tried it at least once.

More than 50,000 bugs have been reported. And how many have been fixed by open source's uniquely efficient processes? According to the (public) bugs database, at last count, there were more than 6,000 unfixed bugs, and more than 5,000 feature requests. While the number of bugs discovered seems to rise with the number of users, the number of fixes doesn't, and the number of fixers certainly doesn't. Only about 500 people have signed the legalese that would enable them to submit code to the project; since you need to do this even to make changes to the website, that will translate to far fewer than 500 volunteers submitting real code. A reasonable guess would be 50, or even five.

Meanwhile, there are some simple, hugely irritating bugs that are four years old. Two obvious ones: notes (or comments, as Word users call them) don't have word wrap; and spaces typed at the end of a line won't show. It's not many eyes making bugs shallow; more like many eyes making bugs invisible.

Most software has similar irritations. But complex open source projects seem uniquely badly placed to fix them. They rely on a very small group of programmers relative to the user base, and who have no direct incentive to work on the bugs that are important to users.

Perhaps like Microsoft Windows, which took many goes to hit its stride, OpenOffice 3.1 will be a world beater. But if it is, it will have nothing to do with the fact that any user can, in theory, fix things they don't like. It will be because large companies such as Sun, Google, and IBM have decided that open source is the cheapest way to gang up on Microsoft, because it means they need spend nothing on support.

But, for what it's worth, I still think OpenOffice may be better for books than Microsoft Word.