I've said it before and I'll say it again: Software patents are evil. They allow the work of innovators to be ambushed and raise the cost of technology innovation. But finding a viable solution to the software patent mess isn't easy.
As it happens, Wired is running a series of articles on this topic, including an essay by Richard Stallman, founder and president of the Free Software Foundation. Stallman proposes limiting the enforceability of patents against software, noting that the subjects of patents "can also be implemented in hardware ... and many of them have been. Each patent typically covers both hardware and software implementations of the idea."
[ Simon Phipps tells us how he really feels: Why software patents are evil. | Track the latest trends in open source with InfoWorld's Technology: Open Source newsletter. ]
The result, says Stallman, is severe difficulty in closely defining a "software patent" to accomplish what many of us would really like: ban software patents outright. Instead, Stallman says:
My suggestion is to change the effect of patents. We should legislate that developing, distributing, or running a program on generally used computing hardware does not constitute patent infringement.
Doing this would require legislation, and although his proposal sounds appealing, the devil is in the details.
Stallman's proposal is interesting, and it's similar to a solution I worked on while at Sun Microsystems. Like the proposal made by Mark Lemley, it has the advantage of limiting existing patents, rather than merely changing what is patentable going forward. While other changes are also probably needed -- adding cost to patent trolling to make it less economically viable, for example -- the approach of limiting the enforceability of patents against software seems to be the most fruitful field of investigation.
A lesson from Europe
The foundational problem in reforming patent law in this area is drafting exactly what does and does not constitute software, as I discovered in 2005 when I spoke out against a proposal in the European Parliament to legitimize software patents throughout Europe. The Software Patent Directive was extremely unpopular with individual software developers, and a coalition of voices across open source opposed it. This culminated in mass demonstrations in Brussels in front of the Parliament building -- rare enough, but unprecedented for a technology cause.
The opposition to software patents was effectively neutralized by business interests. As I explained in the context of the U.K. government's standards consultation in May, in some industries, it's considered normal for standards to include embedded patents; thus, software that implements them may be subject to royalties "on FRAND terms" -- that is, with a promise of equal treatment. This practice is at the heart of the recent lawsuit between Apple and Motorola over standards-essential patents, for example. Both the telecom sector and the consumer electronics sector lobbied very hard to maintain the financial flow facilitated by software patents.
All the same, the Software Patent Directive was defeated, not due to the vocal opposition of Europe's software developers, but because the proponents of the legislation could not prevent the single surviving amendment to the legislation -- carefully framed and promoted by a small team of activists -- from being accepted by the majority of legislators. Based on a similar, successful amendment to the earlier Copyright Directive, that amendment limited application of software patents to interfaces used for interoperability -- in other words, to standards.