[F/OSS-Discuss] Nature: Free Software Develops More Effectively

Seth Johnson discuss@opensource.mit.edu
Thu, 17 Jul 2003 02:18:59 -0400


(An entirely technical report on a study of software improvement using free
software.  -- Seth)


> http://www.nature.com/nsu/030623/030623-6.html


Openness Makes Software Better Sooner

Sharing code for computer software is best way to rid it of bugs. 


PHILIP BALL 
25 June 2003 


Computer software develops more effectively when its code is freely
accessible to all, UK researchers have calculated.

This will come as no surprise to the legions of supporters of open-access
software, such as the operating systems and tools the Linux and Apache
projects distribute. To them, the superiority of freely available code is an
article of faith - as much an ideological position as a technological
decision.

The theoretical model of software debugging devised by Damien Challet and
Yann Le Du of the University of Oxford has some sobering messages for
companies who prefer to keep their software proprietary1. 'Closed-source'
software, finessed by staff hired to work on information that users send in,
requires higher-quality programmers and more users to attain the same level
of perfection as open-source software in a comparable time.

In other words, for a given set of users finding and reporting bugs, and
programmers correcting them, open-source software will always be debugged
faster than closed-source software, the researchers reckon.

This isn't obvious. If you have the same number and quality of programmers
you might expect the time it takes to fix faults to be the same regardless
of whether source code is open or closed. But for free-access data, the flow
of information between programmers and users is better.

Moreover, Challet and Le Du point out that an open-source approach allows
software to be made bug-free even when there is always a chance that any one
programmer will fail to resolve a bug that he or she is presented with.

Open and shut case

Open-access software arose in the early 1990s, during the infancy of the
Internet and the World-Wide Web. It challenged the design philosophy behind
almost all complex engineering systems. Previously, explains programmer Eric
Raymond, "I believed that the most important software needed to be built
like cathedrals, carefully crafted by individual wizards or small bands of
mages working in splendid isolation."

Many software companies - most famously Microsoft - employ a group of expert
programmers to devise their products, which they revise and improve
periodically in response to feedback and complaints. Each update is
presented to users as a black box.

But the most popular operating system for early personal computers, called
Unix and developed at AT&T Bell Laboratories, was not like this. It was
distributed for a nominal fee to users, who were free to modify and rewrite
the code.

In 1991, Linus Torvalds, then a student at the University of Helsinki in
Finland, began to develop an operating system called Linux - now used by an
estimated 18 million people worldwide. Anyone can tinker with Linux code.
The Apache Software Foundation supports other open-access software projects.

The idea is that with so many people spotting and eliminating glitches, they
get sorted out much more quickly. Raymond likens this philosophy to a
bazaar, rather than a cathedral2.


In Challet and Du's model, users update their software once programmers have
fixed the bugs they reported. For open-source software, this feedback and
updating happens continuously. For closed sources, a new version is
available only after discrete periods of time, during which private
programmers work to fix the last batch of faults.

The researchers calculate that closed-source debugging is relatively slow
because the rate of reporting falls quickly after the release of each
updated version, leaving the programmers to find remaining problems with
little input. The longer the gap between updates, the more slowly bugs get
fixed.
 
 
References
Challet, D. & Du, Y. L. Closed source versus open source in a model of
software bug dynamics. Preprint , (2003).|Article| 
Raymond, E. S.The Cathedral and the Bazaar published online, url:
www.catb.org/~esr/writings/cathedral-bazaar/ |Article| 

-- 

DRM is Theft!  We are the Stakeholders!

New Yorkers for Fair Use
http://www.nyfairuse.org

[CC] Counter-copyright: http://cyber.law.harvard.edu/cc/cc.html

I reserve no rights restricting copying, modification or distribution of
this incidentally recorded communication.  Original authorship should be
attributed reasonably, but only so far as such an expectation might hold for
usual practice in ordinary social discourse to which one holds no claim of
exclusive rights.