At the risk of stepping into waters that are way over my head, I would like to offer some comments on software patents, an area where many people with a lot more expertise than I have been weighing in.
The National Innovation Initiative (NII) in its December 2004 report declared that "intellectual property protection is a cornerstone of the innovation economy", and called for the creation of a 21st century IP regime that would "build quality into all phases of the patent process." Books like "Innovation and its Discontents” by Adam Jaffe and Josh Lerner have concluded that patents are being issued irresponsibly and at an unreasonable rate, and that the patent system, especially in the US, is now creating litigation and uncertainty that could have a terribly negative impact on innovation and economic productivity.
Patents are intended to encourage the disclosure of innovation to the public by granting the inventor exclusive rights to benefit from their invention for a limited period. Those rights allow the inventor to exclude others from taking advantage of the patented invention unless they get a license. If the quality of the innovation covered in patents is high, society benefits because then innovations make their way into the common good much faster than if the inventor had kept the innovation a trade secret. But, if the quality of the innovation covered in patents is low, that is to say neither significant nor new, then patents undermine the common good, allowing a few businesses and individuals to enrich themselves by invoking their low-quality patents to “extort” fees from others who are attempting to innovate and thwarting the efforts of those who refuse to pay.
Many blame this state of affairs on software patents, and strongly advocate that perhaps they should be eliminated altogether, an issue that is being debated worldwide. Just this past July, for example, the European Parliament rejected the Computer-Implemented Inventions (CII) Initiative, in which software patents were prominently featured.
There is no one definition of software. I think of software primarily as the instructions or programs that tell a computer what to do. As such, software is a language, one that is particularly useful for describing many ideas and innovations because it is both highly expressive and very precise. Natural languages like English, Spanish or Chinese have virtually no limitation on what can be expressed in them, but they are much too imprecise, that is, readers can give their own interpretations to what has been described.
Formal languages like mathematics or logic usually have the opposite characteristics. When something is written down in a formal language, it is very precise, not typically subject to reinterpretation. Thus, formal languages are ideal ways of describing ideas and innovations when you want everyone to know precisely what is being described.
Software then is simply a rich, expressive, and readable formal language, nothing more, nothing less. When thinking about software patents, the focus should be on the quality of the idea being patented, not on whether it is about software or is being expressed as a software computer program. A number of functions that in the past could only be done in hardware are now being carried out in software due to advances in technology and programming tools. If the function was innovative enough to legitimately qualify for a patent when expressed in hardware, it should still merit a patent if now carried in software. Admittedly, a lot of software patents have been nothing more than computer-automated versions of well known procedures and should never have been granted, but I feel that disallowing all software patents regardless of the merits of the innovation expressed in software makes no more sense than disallowing all patents in French or some other language. For a very good discussion on issues surrounding patent reform and software patents, let me refer you to a recent interview with Steve Mills who is the overall leader of IBM’s software business.
I wholeheartedly agree that the patent system needs to be reformed, but I don’t think that getting rid of software patents completely is the answer, a position that is not shared by many in the open source community with whom I usually see eye to eye. It is ironic that if software patents were disallowed altogether, it might cause legitimate software innovations to then be protected as trade secrets, and thus keep them away from open source projects. I think that all the energy and passion devoted to eliminating software patents would be better spent on the very tough task of implementing the patent reform recommendations in the NII report, the Jaffe and Lerner book and the many other similar proposals.
I am convinced that more and more innovation in IT will take place "up the stack", for example, in understanding how to make the world of business services and solutions much more disciplined and rigorous, and in coming up with truly innovative business processes (not to be confused with the rightfully controversial area of business method patents) in all kinds of industries. Most of these new innovations will be in the general category of software, and the only way to write them down in a clear, precise way will be to use the language of software.
Thus, I am concerned that if we eliminate software patents, an unintended consequence will be a slowing of innovation in services, business solutions, business processes, and similar new fields of endeavor, and will cause people applying for legitimate patents in these areas to attempt to express their ideas in some other less precise way just to avoid their being viewed as software innovations.
Patent regimes around the world, especially in the US, are in dire need of reform. We should focus all our energies on getting this done and not let the debates over software patents divert us from that very important task.