Notes for Perspectives on Free and Open Source Software


First collection of scholarship targeting free and open source software contributes to dispelling myths; compare to volume on teaching and learning programming from the 1980s.

Foreword
Michael Cusumano


Acknowledgments


Introduction
Joseph Feller, Brian Fitzgerald, Scott Hissam, and Karim R. Lakhani
What This Book Is About

Perspectives on Free and Open Source Software

Rigor and Relevance

F/OSS Project Leaders and Developers

Managers and Business Professionals

Researchers and Analysts


Part I: Motivation in Free/Open Source Software Development

1 Why Hackers Do What They Do: Understanding Motivation and Effort in Free/Open Source Software Projects
Karim R. Lakhani and Robert G. Wolf

Lakhani and Wolf: motivational study found intrinsic motivators: enjoyment, seeking flow states, and community obligations, with sense of creativity affecting hours contributed.

(3) Many are puzzled by what appears to be irrational and altruistic behavior by movement participants: giving code away, revealing proprietary information, and helping strangers solve their technical problems.
(3) enjoyment-based intrinsic motivation . . . is the strongest and most pervasive driver.

Understanding Motivations of F/OSS Developers

Intrinsic Motivation

Enjoyment-based Intrinsic Motivation
(5) F/OSS participants may be seeking flow states by selecting projects that match their skill levels with task difficulty, a choice that might not be available in their regular jobs.

Obligation/Community-based Intrinsic Motivations

Lakhani and Wolf: demonstrate social construction of hacker identity from canonical texts and technical codes.

(6) Canonical texts like The New Hacker's Dictionary (Raymond 1996), The Cathedral and the Bazarr (Raymond 2001), and the GNU General Public License (GPL) (Stallman 1999a) have created shared meaning about the individual and collective identities of the hacker culture and the responsibilities of membership within it. . . . The hacker identity includes solving programming problems, having fun, and sharing code at the same time.

Extrinsic Motivation

Lakhani and Wolf: motivational study found extrinsic motivation includes direct use of software product, career advancement, and improving skills through active peer review.

(7) Participants also improve their programming skills through the active peer review that is prevalent in F/OSS projects (Moody 2001; Raymond 2001; Wayner 2000).

Study Design and Sample Characteristics
Study Design

Lakhani and Wolf: study sample 684 respondents from 287 distinct projects from official developers listed on Sourceforge projects; valuable, easily queried data sources for researching software in contrast to difficulties noted by historians of commercial and government software.

(7) The sample for our survey was selected from among individuals listed as official developers on F/OSS projects hosted on the SourceForge.net F/OSS community Web site.

Who Are the Developers?

Payment Status and Effort in Projects

Paid Participants

Effort in Projects

Lakhani and Wolf: implied financial subsidy for open source projects from time spent by paid contributors.

(10) Overall, paid contributors are spending more than two working days a week and volunteer contributors are spending more than a day a week on F/OSS projects. The implied financial subsidy to projects is substantial.

Creativity and Motivation in Projects

Creativity and Flow

Lakhani and Wolf: study respondents noted high sense of personal creativity taking them into psychological state of flow.

(11) More than 61 percent of our survey respondents said that their participation in the focal F/OSS project was their most creative experience or was equally as creative as their most creative experience.
(11) It may seem puzzling to nonprogrammers that software engineers feel creative as they are engaged in writing programming code. As Csikszentmihalyi (1975; 1990; 1996) has shown, however, creative tasks often cause participants to lose track of time and make them willing to devote additional hours to the task, a psychological state he calls “flow.”

Motivations to Contribute

Determinants of Effort

Discussion

Lakhani and Wolf: conclude activity in open source projects a joint form of creative production-consumption for public good.

(18) At least as applied to hackers on F/OSS projects, activity should be regarded as a form of joint production-consumption that provides a positive psychological outlet for the participants as well as useful output.
(18) Another central issue in F/OSS research has been the motivations of developers to participate and contribute to the creation of a public good.


2 Understanding Free Software Developers: Findings from the FLOSS Study
Rishab Aiyer Ghosh

Ghosh: study presents balanced value flow model where rational self interest includes non-monetary rewards and valuable voluntary training environment.

(33) In the absence of clear monetary transactions, the interplay of contribution and return can be described in the form of “balanced value flow” where one assumes rational self-interest but allows that self-interest can include a range of different types of reward, not just monetary compensation.

Ghosh: study found selfish over altruistic motives.

(33) What we see is that more respondents are selfish than altruistic from all motive classes.


3 Economic Perspectives on Open Source
Josh Lerner and Jean Tirole
Introduction

Lerner and Tirole: interest due to rapid diffusion, significant capital investments, new collaborative organization structure, but point out surprise of economists.

(48) We highlight the extent to which labor economics—in particular, the literature on “career concerns”--and industrial organization theory can explain many of the features of open source projects.

The Nature of Open Source Software

The First Era: The Early 1960s to the Early 1980s
(51) The process of sharing code was greatly accelerated with the diffusion of Usenet, a computer network begun in 1979 to link together the Unix programming community.

The Second Era: The Early 1980s to the Early 1990s

Lerner and Tirole: crucial technical code change of second era by Free Software Foundation developed of GPL.

(51-52) One important innovation introduced by the Free Software Foundation was a formal licensing procedure that aimed to preclude the assertion of patent rights concerning cooperatively developed software. . . . It is these contractual terms that distinguish open source software from shareware (where the binary files but not the underlying source code are made freely available, possibly for a trial period only) and public-domain software (where no restrictions are placed on subsequent users of the source code).

The Third Era: The Early 1990s to Today

License Must Not Contaminate Other Software

Who Contributes?

Lerner and Tirole: open source process elitist based on interviews and survey responses as well as analysis of archive of Linux postings at UNC.

(55) The overall picture that we drew from our interviews and from the responses we received in reaction to the first draft of the paper is that the open source process is quite elitist.

What Does Economic Theory Tell Us about Open Source?

What Motivates Programmers?

Lerner and Tirole: opportunity cost of time, not focusing on primary mission that must balance delayed payoffs of career and ego gratification as signaling incentives.

(57) The net benefit is equal to the immediate payoff (current benefit minus current cost) plus the delayed payoff (delayed benefit minus delayed cost).
(57) The programmer incurs an opportunity cost of time. . . . for a programmer with an affiliation with a commercial company, a university or research lab, the opportunity cost is the cost of not focusing on the primary mission.

Comparison between Open Source and Closed Source Programming Incentives

Lerner and Tirole: alumni effect and benefits of customization and bug fixing of open source projects lower costs for programmers, and signaling incentives higher.

(60) Signaling incentives therefore may be stronger in the open source mode for three reasons: 1. Better performance measurement. . . . 2. Full initiative. . . . 3. Greater fluidity.

Evidence on Individual Incentives

Organization and Governance

Lerner and Tirole: modularity (exemplified by Unix architecture), having fun challenges, having a credible leader are favorable characteristics; compare to Rosenberg research.

(62-63) Favorable characteristics for open source production are (a) its modularity and (b) the existence of fun challenges to pursue. A successful open source project also requires a credible leader or leadership, and an organization consistent with the nature of the process.

Initial Characteristics

Leadership

Commercial Software Companies' Reactions to the Open Source Movement

Why Don't Corporations Duplicate the Open Source Incentives?

Lerner and Tirole: difficulty of attributing credit beyond leaders in closed source environments, which could be argued further for contributions of system testers and other members of development teams; affects democratization at boundaries between producers and users.

(66) To be certain, team leaders in commercial software build reputations and get identified with proprietary software just as they can on open source projects; but the ability of reputations to spread beyond the leaders is more limited, due to the nonverifiability of claims about who did what.

The Commercial Software Companies' Open Source Strategies
(67) In a nutshell, they expect to benefit from their expertise in some segment whose demand is boosted by the success of a complementary open source program.

Living Symbiotically Off an Open Source Project

Code Release

Intermediaries

Four Open Economic Questions about Open Source

Which Technological Characteristics Are Conducive to a Smooth Open Source Development?

Optimal Licensing

Coexistence of Commercial and Open Source Software

Can the Open Source Process Be Transposed to Other Industries?

Lerner and Tirole: leave open four economic questions: what are conducive characteristics, optimal licensing, coexistence with commercial software, transposable to other industries; the fourth question as since been answered by many industries like 3D parts fabrication.

(72) Thus a number of ingredients of open source software are not specific to the software industry. Yet no other industry has yet produced anything quite like open source development.


Part II: The Evaluation of Free/Open Source Software Development

4 Standing in Front of the Open Source Steamroller
Robert L. Glass


5 Has Open Source Software a Future?
Brian Fitzgerald

Fitzgerald: paradoxes of the OSS concept make it an interesting topic for intellectual study.

(93)

Fitzgerald: useful table of problematic issues for OSS from software engineering, business, and sociocultural perspectives for a Mitcham engineering philosophy of technology approach.

(94)


Open Source Software Development: Future or Fad?
Srdjan Rusovan, Mark Lawford and David Lorge Parnas

Rusovan, Lawford, Parnas: modular code with stable, well-documented interfaces helps programmers work independently.

(110)

Rusovan, Lawford, Parnas: Poorly documented code inhibited analysis of Linux kernel arp module contradicts myth that FOS code is well written and well documented.

(120) felt like walking through a dark forest without a map.


Attaining Robust Open Source Software
Peter G. Neumann

Neumann: OS paradigm has potential to better proprietary models that rush to market.

(124)


Open and Closed Systems are Equivalent (That Is, in an Ideal World)
Ross Anderson

Anderson: is openness better for the attacker or the defender?

(128)


Making Lightning Strike Twice”
Charles B. Weinstock and Scott A. Hissam

Weinstock and Hissam: OSS projects need critical mass to stay alive (or serious sponsor).

(145)

Weinstock and Hissam: need for large or dedicated developer community.

(147)

Weinstock and Hissam: adoption of reasonable tool base including revision control and bug reporting.

(148)

Weinstock and Hissam: time; advantage over corporate projects that are simply canceled.

(148)

Weinstock and Hissam: build from the ground up, from other projects, or buy model before OSS.

(150)

Weinstock and Hissam: OSS offers black box (accept or pay for changes) or white box (customize in house) approaches.

(151)

Weinstock and Hissam: ambiguity in Presidents Information Technology Advisory Committee (PITAC) recommendations.

(153)

Weinstock and Hissam: no clear advantage if organization does not have qualified personnel.

(154)

Weinstock and Hissam: difficulty ascertaining stability of projects compared to viability of commercial vendors.

(154)

Weinstock and Hissam: skeptical of many eyes theory but same problem with closed source.

(156) the extent many eyes are really critiquing the holistic view of the system's architecture and design.

Weinstock and Hissam: success factors include working product, committed leaders, provides general community service, technically cool, developers are users.

(156-158)

Weinstock and Hissam: SEI support for PITAC subpanel on OSS: consider Feenberg moves toward deep democratization and other changes to capitalist management hegemony.

(158) the SEI [Software Engineering Institute] supports the recommendations of the PITAC subpanel on OSS to remove barriers and educate program managers and acquisition executives and allow OSS to compete on a level playing field with proprietary solutions (such as COTS or CSS) in government systems.


Two Case Studies of Open Source Software Development: Apache and Mozilla
Audris Mockus, Roy T. Fielding and James D. Herbsleb

Mockus and Herbsleb: archives of project work because of distributed development teams who rarely meet face to face.

(167)

Mockus and Herbsleb: in Apache development community top 15 developers contributed over 83 percent of code changes.

(177)

Mockus and Herbsleb: contribution of wider community more defect repair and system testing than new functionality.

(179)

Mockus and Herbsleb: maximum project size of 10-15 people before coordination problems affect quality of work.

(201)


Software Engineering Practices in the GNOME Project
Daniel M. German

German: notes researching source code and development practices usually under non-disclosure agreement, constraining how can other researchers can verify the validity of the studies.

(211)

German: analyzed historical data from CVS repository with softChange software.

(214)


Incremental and Decentralized Integration in FreeBSD
Niels Jorgensen


Adopting Open Source Software Engineering (OSSE) Practices by Adopting OSSE Tools
Jason Robbins


Open Source Software Projects as "User Innovation Networks"
Eric von Hippel


An Analysis of Open Source Business Models
Sandeep Krishnamurthy


The Allocation of Software Development Resources in Open Source Production Mode
Jean-Michel Dalle and Paul A. David


Shared Source: The Microsoft Perspective
Jason Matusow


Open Code and Open Societies
Lawrence Lessig


Legal Aspects of Free and Open Source Software
David McGowan


Nonprofit Foundations and Their Role in Community-Firm Software Collaboration
Siobhan O'Mahony


Free Science
Christopher Kelty


High Noon at OS Corral: Duels and Shoot-Outs in Open Source
Anna Maria Szczepanska, Magnus Bergquist and Jan Ljungberg


Libre Software Policies at the European Level
Phillipe Aigrain


The Open Source Paradigm Shift
Tim O'Reilly


Open Source outside the Domain of Software
Clay Shirky



Feller, Joseph, et al. Perspectives on Free and Open Source Software. Cambridge, MA: The MIT Press, 2005. Print.