Subject: Re: economic efficiency of free software
From: davidw@dedasys.com (David N. Welton)
Date: 09 Feb 2004 20:00:44 +0100

Tim O'Reilly <tim@oreilly.com> writes:

> This is a big part of my current stump speech, "The Open Source
> Paradigm Shift".  I've been saying for years that we need to get
> beyond the exclusive focus on licensing as the litmus test for open
> source, and look at all of the other aspects, in particular, the way
> that systems can be designed to create participation.

Another take on this theme comes from the first paper listed here:

http://opensource.mit.edu/online_papers.php

( http://opensource.mit.edu/papers/baldwinclark.pdf )

    We argue that the architecture of a codebase is a critical factor
    that lies at the heart of the open source development process. To
    support this argument, we define two observable properties of an
    architecture: (1) its modularity and (2) its option
    values. Developers can make informed judgments about modularity
    and option value from early code releases. Their judgments in turn
    will influence their decisions to work and to contribute their
    code back to the community. We go on to suggest that the core of
    the open source development process can be thought of as two
    linked games played within a codebase architecture. The first game
    involves the implicit exchange of effort directed at the modules
    and option values of a codebase; the second is a Prisoners'
    Dilemma game triggered by the irreducible costs of
    communicating. The implicit exchange of effort among developers is
    made possible by the the non-rivalrous nature of the codebase and
    by the modularity and option values of the codebase's
    architecture. This exchange creates value for all participants,
    both workers and free-riders. In contrast, the Prisoners' Dilemma
    is a problem that must be surmounted if the exchanges are to take
    place. It can be addressed through a combination of reducing the
    costs of communication, providing rewards, and encouraging
    repeated interactions. Finally, the initial design and "opening
    up" of a codebase can be seen as a rational move by an architect
    who is seeking to test the environment in hopes of initiating
    exchanges of effort with other developers.

I'm not sure that's how you are using 'system' above, but the
similarities struck me.  I'm also not really sure that they're saying
anything that 'deep', rather than just codifying something that seems
like common sense to a developer - a modular architecture is a good
idea and encourages participation, but it's interesting in any case.

Ciao,
-- 
David N. Welton
   Consulting: http://www.dedasys.com/
     Personal: http://www.dedasys.com/davidw/
Free Software: http://www.dedasys.com/freesoftware/
   Apache Tcl: http://tcl.apache.org/