Open source software (OSS) is a pillar in the programming community, with hundreds of thousands of projects being actively worked on by programmers of all specialties and skill levels. The practice of developing OSS challenges traditional assumptions about how markets work. Instead of being driven by profit, OSS programmers offer their time and talent to projects without expectations of a big payoff. Straightforward explanations for the open source movement have been hard to come by, but groups of experts have investigated the motivations of open source programmers and why they choose to work for free. Based on their research, it seems that there are a variety of internal factors driving the popularity of OSS.
For software to be considered open source, its source code must be available to everyone, with any modifications users make to it turned back to the community. Though details vary by license adopted, some of the key criteria included in The Open Source Definition are:
- Royalty-free redistribution of the program
- Release of the source code
- Requirement that all modifications be distributed under the same terms as the original software license
What makes open source software unique is that users see the code itself and can fix it or identify areas for improvement. And the programming community at large sees the value in open source programmers and their contribution. For example, according to Josh Lerner and Jean Tirole, in The Open Source Movement: Key Research Questions, project coordinators often list frequent contributors on project servers and contributors have easy access to venture capital (after all, former open source programmers started Sun and Netscape). These are some of the reasons why Lerner and Tirole suggest that these programmers are motivated by the peer recognition they receive; these individuals are highly valued within their professional landscape.
The open source development model is meaningful to experts that study it for one simple reason: It fundamentally changes the approaches and economics of traditional software development, according to Alexander Hars and Shaosong Ou in Working for Free? – Motivations of Participating in Open Source Projects. In most cases, interest-based communities of programmers are the developing minds behind OSS. Participation is voluntary and programmers are not paid for their work. Developers “also devolve most property rights to the public, including the right to use, to redistribute and to modify the software free of charge.” Of course, as Hars and Ou point out, this is a direct challenge to the established assumptions about software markets. In fact, this movement “threatens the position of commercial software vendors.”
It is important to note that OSS is not a new concept. The 1950s and ’60s saw the beginnings of OSS. Then, software was sold with hardware, and both macros and utilities were freely exchanged in certain user forums. Richard Stallmann, a researcher at MIT, founded the Free Software Foundation in the ’80s. This provided a “conceptual foundation for open source software” and was the basis for the OSS movement of today, Hars and Ou say.
The Programmers Behind OSS
There is a lot of good coming from open source software. Because it is developed for free by highly motivated individuals, it evolves rapidly. Innovation is the order of the day. The grassroots nature of OSS means that the vast majority of projects have quite humble beginnings (and small chances of success, according to The Economics of Intrinsic Motivation in Open Source Software Development). In fact, this report states that there are tens of thousands of virtually unknown OSS projects that are developed and maintained “with the same intensity as their famous counterparts.”
So exactly who are the programmers behind OSS? Almost half of them are professional programmers who earn their living that way, either by salary or contract. Hars and Ou report that 51 out of 79 respondents chose “improving my programming skills” when asked why they participate in open source projects. Many are student and hobby programmers as well. In general, OSS programmers have more to gain from using an open source solution themselves, as well as being younger. The average OSS contributor is about 30 years old and well-educated, with high levels of patience and efficiency. They are interested in mastering new challenges — OSS provides a platform.
Experts Jurgen Bitzer, Wolfram Schrettl and Philipp Schröder identified three major reasons why programmers work in OSS: a need for a particular software solution, for fun or as part of gift culture, or for social standing. Founders start OSS projects because they are dissatisfied with existing software solutions or the software they require does not exist yet. In these cases, the programmer directly benefits from development. Rather than choosing a partial solution to a software problem or paying someone else to develop one, founders start an OSS project on their own. For some open source developers, the process is viewed as a hobby of sorts.
Hars and Ou separate these motivating factors into “intrinsic motivation,” “altruism” and “external rewards.” Intrinsic motivators are facilitated by the “selfless and motivated nature of open source participants.” Rather than being motivated by money, programmers are driven by their own preferences or interests. In addition, they may gain personal value from increasing the welfare of others in the community. This category includes programmers who are “motivated by the feeling of competence, satisfaction and fulfillment that arises from writing programs.” Altruism is closely linked to this intrinsic motivation because, when driven by it, programmers feel they are providing something for others at their own cost. They then feel part of the open source community, drawing kinship-style ties with other developers.
While it is true that the vast majority of OSS programmers receive no compensation for their work, they may gain indirect rewards, Hars and Ou state. Incentives could come in the form of increased recognition and marketability or improving their skill base and selling related products or services in the marketplace. Open source programmers may view participation as an investment toward a future reward as well. There are four different categories for this type of incentive:
- Revenues from related products and services: Open source software gives programmers the opportunity to sell related products and services (case in point: Canonical Ltd).
- Human capital: OSS programmers may participate in projects to expand their own skill base. Working on open source projects can lead to better job opportunities, higher salaries and more fulfilling jobs. Programmers can also choose learning experiences that fit their interests.
- Self-marketing: Programmers may view working on open source projects as a way to demonstrate skill sets to future employers and influential members of the community.
- Peer recognition: OSS programmers receive early, fast and frequent feedback on the work they do. This feedback has a positive effect on OSS programmers, working to reinforce the time spent perfecting code on open source projects.
In general, those working on OSS projects as students or as a hobby are the most internally motivated, Hars and Ou report. Programmers who are salaried or contracted, on the other hand, want to sell related products and services, market themselves or fulfill their own software needs. This combination of internal and external motivating factors makes the open source movement dynamic and increasingly versatile in terms of project type and programming style.
Conclusions: The New School of Programming
Research suggests that “one of the most important effects of open source’s success will be to teach us that play is the most economically efficient mode of creative work.” Even though OSS is a privately provided public good and should “suffer from under-provision or low quality,” it seems quite the opposite is the case. Bitzer, Schrettl and Schröder conclude that the open source movement is evolving at a rapid pace, is developed for free and “poses a viable alternative to commercial software products.”
Open source programmers are a different breed, departing from traditional economic motivations and devoting time and effort out of sheer interest and desire to innovate. In some ways, this is emblematic of the programming movement as a whole, made up of renegades and veterans working together in the endless pursuit of the elusive better.