Each design decision carries a risk of stepping on a patent, which can
destroy your project.
Developing a large and complex program means combining many ideas,
often hundreds or thousands of them. In a country that allows
software patents, chances are that some substantial fraction of the
ideas in your program will be patented already by various companies.
Perhaps hundreds of patents will cover parts of your program. A study
in 2004 found almost 300 U.S. patents that covered various parts of a
single important program. It is so much work to do such a study that
only one has been done.
Practically speaking, if you are a software developer, you will
usually be threatened by one patent at a time. When this happens, you
may be able to escape unscathed if you find legal grounds to overturn
the patent. You may as well try it; if you succeed, that will mean
one less mine in the field. If this patent is particularly
threatening to the public, the Public Patent Foundation
may take up the case; that is its specialty. If you ask for the
computer-using community's help in searching for prior publication of
the same idea, to use as evidence to overturn a patent, we should all
respond with whatever useful information we might have.
However, fighting patents one by one will never eliminate the danger
of software patents, any more than swatting mosquitoes will eliminate
malaria. You cannot expect to defeat every patent that comes at you,
any more than you can expect to kill every monster in a video game:
sooner or later, one is going to defeat you and damage your program.
The U.S. patent office issues around 100,000 software patents
each year; our best efforts could never clear these mines as fast as
they plant more.
Some of these mines are impossible to clear. Every software patent is
harmful, and every software patent unjustly restricts how you use your
computer, but not every software patent is legally invalid according
to the patent system's criteria. The software patents we can overturn
are those that result from "mistakes," where the patent system's rules
were not properly carried out. There is nothing we can do when the
only relevant mistake was the policy of allowing software patents.
To make a part of the castle safe, you've got to do more than kill the
monsters as they appear -- you have to wipe out the generator that
produces them. Overturning existing patents one by one will not make
programming safe. To do that, we have to change the patent system so
that patents can no longer threaten software developers and users.
There is no conflict between these two campaigns; we can work on the
short-term escape and the long-term fix at once. If we take care, we
can make our efforts to overturn individual software patents do double
duty, building support for efforts to correct the whole problem. The
crucial point is not to equate "bad" software patents with mistaken or
invalid software patents. Each time we invalidate one software
patent, each time we talk about our plans to try, we should say in no
uncertain terms, "One less software patent, one less menace to
programmers: the target is zero."
The battle over software patents in the European Union is reaching a
crucial stage. The European Parliament voted a year ago to reject
software patents conclusively. In May, the Council of Ministers voted
to undo the Parliament's amendments and make the directive even worse
than when it started. However, at least one country that supported
this has already reversed its vote. We must all do our utmost right
now to convince an additional European country to change its vote, and
to convince the newly elected members of the European Parliament to
stand behind the previous vote. Please refer to www.ffii.org for more
information on how to help and to get in touch with other activists.
Copyright 2004 Richard Stallman.
Verbatim copying and distribution of this entire article are permitted
worldwide without royalty in any medium provided this notice is preserved.