Motives For Writing Free Software
Don't make the mistake of supposing that all software development has one simple motive. Here are some of the motives we know influence many people to write free software.
- Fun
- For some people, often the best programmers,
writing software is the greatest fun, especially when there is no boss
to tell you what to do.
Nearly all free software developers share this motive. - Political idealism
- The desire to build a world of freedom, and help computer users escape from the power of software developers.
- To be admired
- If you write a successful, useful free program, the users will admire you. That feels very good.
- Professional reputation
- If you write a successful, useful free program, that will suffice to show you are a good programmer.
- Community
- Being part of a community by collaborating with other people in public free software projects is a motive for many programmers.
- Education
- If you write free software, it is often an opportunity to dramatically improve both your technical and social skills; if you are a teacher, encouraging your students to take part in an existing free software project or organizing them into a free software project may provide an excellent opportunity for them.
- Gratitude
- If you have used the community's free programs for years, and it has been important to your work, you feel grateful and indebted to their developers. When you write a program that could be useful to many people, that is your chance to pay it forward.
- Hatred for Microsoft
-
It is a mistake to focus our
criticism narrowly on Microsoft. Indeed, Microsoft is evil, since
it makes nonfree software. Even worse, it is
often
malware in various ways including
DRM. However, many other
companies do these things, and the nastiest enemy of our freedom
nowadays is
Apple.
Nonetheless, it is a fact that many people utterly despise Microsoft, and some contribute to free software based on that feeling. - Money
- A considerable number of people are paid to develop free software or have built businesses around it.
- Wanting a better program to use
- People often work on improvements in programs they use, in order to make them more convenient. (Some commentators recognize no motive other than this, but their picture of human nature is too narrow.)
Human nature is complex, and it is quite common for a person to have multiple simultaneous motives for a single action.
Each person is different, and there could be other motives that are missing from this list. If you know of other motives not listed here, please send email to <[email protected]>. If we think the other motives are likely to influence many developers, we will add them to the list.