Community, joining, and specialization in open source software innovation: a case study
Introduction
The production of open source software1 (OSS) results in the creation of a public good that is non-rival, i.e. users’ utility from the software are independent, and non-exclusive, i.e. no individual or institution can be feasibly withheld from its usage (Lerner and Tirole, 2002). OSS development represents a “private-collective” model of innovation where developers obtain private rewards from writing code for their own use, sharing their code, and collectively contributing to the development and improvement of software (von Hippel and von Krogh, 2003). This model explains the existence of the open source phenomenon, but leaves open a number of questions about the innovation process that requires in-depth empirical research. An assertion in the private-collective model, and much of the writing on OSS is that the success of a project in terms of producing the software relates to the growth in the size of the developer community; people who contribute to the public good of open source software by writing software code for the project (Moody, 2001, Raymond, 1999, Sawhney and Prandelli, 2000, Wayner, 2000). However, joining a developer community may not be costless. Software development is a knowledge-intensive activity that often requires very high levels of domain knowledge, experience, and intensive learning by those contributing to it (Pliskin et al., 1991, Waterson et al., 1997). Fichman and Kemerer (1997) found that in commercial software development, complex technologies can erect significant barriers of understanding and contribution, to both users and developers of the software, and the integration of newcomers can be arduous. As the technology grows more complex, only a few people who have been actively involved in its development over a certain period of time might fully understand the software architecture and effectively contribute code to its development, and new contributors might find it too costly to join the project (Kohanski, 1998). Therefore, a theory of the open source software innovation process needs to explain how people sign up for the production of the public software good, under conditions where the cost of contributing vary. This paper intends to contribute to a theory of the open source software innovation process by examining joining behavior in a developer community.
Since the immanent puzzle of open source software innovation is the creation of the public good (Lerner and Tirole, 2002), research also has to uncover how joiners become newcomers, that is, how they make their initial contribution to software. In particular, it is important to understand what benefits newcomers derive from belonging to an existing developer community (e.g. Olson, 1965). According to the private-collective model (von Hippel and von Krogh, 2003), newcomers share with existing developers, greater benefits of revealing their innovations, than those outside the community (see also Callhoun, 1986, Taylor and Singleton, 1993). This is so because their ideas, bug reports, viewpoints, or code can be reviewed and commented upon by other developers and users, and in terms of learning benefits, the group’s feedback can be direct and specific to the newcomer. Additionally, the formal acceptance of new code, the fixing of bugs or incorporation of feature requests results in direct benefits to the newcomer as their concerns regarding the software program now become the responsibility of the entire developer community.
The literature on commercial software development suggests that “modularization” (Baldwin and Clark, 2000) of the software code may increase a project’s transparency, lower barriers to contribute, and allow for specialization by enabling efficient use of knowledge (Khoshgoftaar et al., 2001, Meyer and Seliger, 1998). Furthermore, efficiency in the innovation process requires that individuals specialize in certain areas of knowledge (Grant, 1996, Simon, 1991). Therefore, specialization in the developer community, by distinct software modules, could benefit the development process, and due to the barriers of understanding and contribution, this could be especially true for newcomers. Research is still lacking on the benefits of specialization in open source software innovation, and this paper attempts to contribute to a theory of the open source software innovation process, by uncovering if newcomers specialize and what may cause this specialization.
The lack of research on joining, contributing and specialization by newcomers, and the overall lack of a theory of the open source software innovation process, suggest a qualitative grounded approach to develop analytical categories and propositions (Glaser and Strauss, 1967, Meyers, 1997, Strauss and Corbin, 1990). We base our theory development on Freenet, an open source software project for decentralized and anonymous peer-to-peer electronic file publishing and retrieval over the Internet.
The paper is organized as follows; we first review the research method employed in our study (Section 2). Next we provide a history of Freenet and related development data (Section 3). We then proceed to theory induction (Section 4) by our analysis of joining and contributing behavior exhibited by those who became developers in Freenet. We conclude the paper by discussing implications of our study for theory and research (Section 5).
Section snippets
Research method
In this section we describe the research method employed in our study. Our research proceeded in three phases: sampling of case, data gathering, and data analysis. We selected one case in order to increase the depth of the analysis, acquire and report experience with the gathering of new and unfamiliar data (see Numagami, 1998).
Freenet history and development characteristics
In this section we provide a brief history of the Freenet project, its objectives and an overall characterization of the development process. The Freenet software enables a peer-to-peer network designed to allow for the distribution of information over the Internet in an efficient and anonymous manner. Ian Clarke started the Freenet project when he was a fourth year student at the University of Edinburgh, and completed the basic design in 1999. The overall design goals as stated on their
Theory induction
In this section we develop propositions towards a theory of open source software innovation process. The propositions are grounded in observed behavioral strategies of newcomers attempting to join the developer group and their choices of the technical areas within the existing software code where they contribute.
Conclusion and implications
We studied joining and early contribution to the collective action of open source software innovation. Using data from Freenet, we inductively generated theory on the phases of joining a developer community and making the initial contributions to the software. In the first phase, we developed the construct of “joining script”, and proposed that contributors who follow joining scripts in terms of level and type of activity are more likely to obtain access to the developer community. The
Acknowledgements
We are grateful to helpful comments from two anonymous reviewers. We also thank Chris Argyris, John Seely Brown, Eric von Hippel, Audris Mockus, Patrick McCormick, Luis Villa, Stefan Haefliger, Petra Kugler, Heike Bruch, Simon Gächter, Simon Peck, and Hari Tsoukas for helpful comments and suggestions. Ben Ho and Craig Lebowitz provided technical assistance with data importation and parsing. We would like to thank Ian Clarke and the Freenet developers for their willingness to participate in our
References (63)
- et al.
Evidence of economies of scale in software development
Information and Software Technology
(1994) - et al.
Learning Java—a programmed instruction approach using applets
Computers in Human Behavior
(2000) - et al.
Time-driven development of software in manufactured goods
Journal of Product Innovation Management
(1995) The communal resource and information systems
Journal of Strategic Information Systems
(2002)- Baldwin, C.Y., Clark, K.B., 2000. Design Rules, vol. 1. The Power of Modularity. MIT Press, Cambridge,...
- Bergquist, M., Ljungberg, J., 2001. The power of gifts: organizing social relationships in open source communities....
- et al.
Technology transactions—networks over markets
R&D Management
(2001) - et al.
Estimating software development costs for a patient multimedia education project
Journal of the American Medical Informatics Association
(2001) The radicalism of tradition: community strength or venerable disguise and borrowed language?
American Journal of Sociology
(1986)- Clarke, I., 1999. A distributed decentralised information storage and retrieval system, Unpublished Masters Thesis....