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.