Who contributes to open source software? And why do they give it away?

by Stuart Yeates on 1 May 2004 , last updated

Archived This page has been archived. Its content will not be updated. Further details of our archive policy.

Introduction

A central tenet of the free and open source movement is that software should be available to all. But who would contribute to software development and then give it away? Software can sell for hundreds or thousands of pounds. Who are these strange people?

Here are six groups of people who contribute to open source software development. We consider why they might give their work away for free.

Professionals working for computer companies
Many computer companies have open source as part of their business model. Consulting companies such as IBM and Novell contribute to open source software in order to grow their consulting businesses. Hardware companies such as Intel and AMD contribute in order to boost their hardware sales. Staff from these companies contribute to open source to meet specific business goals. The individual company’s commitment is very narrowly focused on those goals. The software is given away to support, promote, or grow the market for, the main business. Such projects are often very polished but tend to embed a company’s working assumptions and marketing goals.
Professionals working for regular companies
Many companies employ computer professionals to run key business functions. As part of their jobs these professionals write scripts and small programs to perform incidental tasks that arise. Once written, these tend to be shared between colleagues and acquaintances, often with the original author getting bug-fixes in return. Some of these eventually grow into fully-fledged open source projects. Software developed in this way tends to be focused on performing a particular task reliably, but often has only basic supporting documentation. The software is given away because the cost of commercialising the software is higher than its value.
Researchers and research students
Researchers and research students are interested in ideas, and there are some ideas which naturally lend themselves to demonstration through a computer program. The program and source code is given away to convince others of the value of the ideas contained within them. Software written by academics tends to focus on a single feature at the expense of robustness and usability, but is the definitive bleeding edge of software. The software can be a stand-alone project or a module of a larger system, but often gets abandoned when the research funding terminates.
Contributors working for their own professional development
Many programmers contribute to programs as part of learning to program, learning a new programming language, or learning a new framework or toolkit. These are of little or no commercial use in themselves, but because they often employ the latest and greatest techniques and tools they are potentially useful to others. Many of these circulate as demos for other programmers to examine, learn from and build on. They rarely reach the stage of mass market projects suitable for use by non-programmers and are frequently abandoned in an unusable state having served their purpose.
Hobbyists
Hobbyists contribute to open source software because writing software can be fun and sharing it creates a sense of community. Hobbyists have perhaps the widest range of skills, abilities and motivations of all the groups discussed here.
Contributors working for charitable purposes
Software produced for charitable purposes tends to be narrowly focused on a single user group or user need. Projects directed solely at charitable purposes include Alphalogic who build software for disabled persons aiming to enable sensorimotor awakening, and communication. Another example is the Lynx web browser tailored for blind users. Other contributors working for charitable purposes work within existing projects, translating the interfaces into minority languages, ensuring that blind and mobility-limited users can use the software and ensuring that it successfully crosses the digital divide. The software is given away because both it and its developers have charitable aims. Money is not the object.

With all these diverse groups writing open source software, it is tempting to ask which provide the best open source software. There is no simple answer to that question. The different groups work with different skills and motivations towards different ends, producing different kinds of software. One thing that is clear, however, is that a healthy diversity of contributors is good. No matter how polished the professionals working for computer companies make the project, it is likely to benefit from charitable contributions translating it into minority languages and improved algorithms from the academic researchers.

The motivation behind contributing to free and open source software projects is the subject of much serious academic research. Economists, sociologists, political scientists and more are fascinated by the open source development methodology and the ethos surrounding it. The following resources will be useful in exploring this issue further: