The Architecture of Cooperation: How Code Architecture Mitigates Free Riding in the Open Source Development Model

TitleThe Architecture of Cooperation: How Code Architecture Mitigates Free Riding in the Open Source Development Model
Publication TypeJournal Article
Year of Publication2004
AuthorsBaldwin, C
Date PublishedJanuary
Abstract

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.

Full Text
AttachmentSize
PDF icon baldwinclark.pdf413.29 KB