Software patents have been criticized frequently in recent years for a multitude of reasons. Computer programmers argue that they can make programming impossible for both commercial and for non-profit projects. Some analysts have noted that they do not promote innovation like patents in other industries do, and may in fact be hurting research and development in tech companies.1 In a recent article posted on the Cato Institute website computer scientist Timothy B. Lee has leveled yet another charge against software patents: Allowing software to be patented is analogous to allowing patents on literature.
Lee's argument is that programming is a creative pursuit much like writing. In the same way as a writer might use a particular plot twist in a novel or an interview method in a newspaper article, programmers draw on an array of algorithms to complete their programs. These algorithms are really abstract mathematical ideas and they form the basis of all software. Allowing patents on software, he argues, undercuts innovation in the software industry by forcing programmers and companies to constantly navigate around a minefield of potential patent infringement.
The analogy is an interesting one. Most people are quick to dismiss the notion of literary patents, yet software patents somehow seem more palatable. Note that I said "most"; At least one person has seriously argued for patents on book plots, as covered in an IPilogue post from last year (make sure to read the comments below the post for an interesting discussion of some of the issues involved). The similarities between programming and writing are plentiful: Both the written word and raw computer code are copyrightable. Both can be used for creative and commercial uses. Perhaps most importantly, both computer code and the written word are expressions of abstract ideas.
Ideas and mathematical formulas are not by themselves patentable which in theory would rule out software and business methods along with novel plots and literary devices. However, a relaxation of patentability rules in the courts over the years has allowed for many types of software with specific practical applications to be patented. The recent United States Court of Appeals for the Federal Circuit case In re Bilski2 seems to indicate a reining in on business method and software patents, but it is a precarious step. Why make this distinction of allowing patents for software and business methods and not for ingenious literary devices?
One difference between writing and programming which Lee underplays is the inventive quality of software. With software the actual expression of an idea can be almost trivial; it's the idea and the creativity on the part of the maker that's valuable. Suppose I were to create a brilliant compression algorithm that could be used to cram 10 times as many music files onto an iPod. Once that algorithm is out in the world anyone can build a program to implement it, and it really doesn't matter what language they write it in or how ugly their code is so long as at the end of the day it compresses music files. With the written word, expression matters. People don't just value plot or ideas in a piece of writing; they're interested in how those ideas are conveyed. This, I think, is the principle difference between programming and writing and the reason software can be protected by patents in some cases: There is a much higher value for a novel idea with software and the actual expression is much less important.
1 J.E. Bessen and R.M. Hunt, "An Empirical Look at Software Patents" (March 2004). FRB of Philadelphia Working Paper No. 03-17, online: http://ssrn.com/abstract=461701
2 545 F.3d 943, 88 U.S.P.Q.2d 1385 (Fed. Cir. 2008)