Every week, I look at a software patent that’s been in the news. You can see previous installments in the series here. Open source advocate Bruce Parens makes my job easy this week by explaining what’s so troubling about last week’s patent infringement lawsuit against Red Hat:
The suit against Red Hat’s concerns the use of software “objects” to encapsulate a database record and make it easier to access, a technology called Object Relational Mapping or The ActiveRecord Pattern. That technology is used in the Hibernate software developed by jBoss, which Red Hat recently purchased. FireStar Software claims that it invented the technology, and that it is covered by its U.S. patent number 6,101,502. However, over the past two decades there has been much prior art for object-oriented databases, including TopLink, an object relational system developed in the early 90′s and now owned by Oracle, so it may be that the filers of FireStar’s patent made no invention.
There’s also the question of obviousness, whether the principles claimed in the patent would be obvious to a normally-skilled practitioner of the software art and thus not be an invention at all. The function of an object is to encapsulate data, and object-oriented programming has been known since the Simula language introduced it in 1967. The U.S. Supreme Court is currently reviewing another patent lawsuit in which the defense claims that there should be a much higher standard below which purported inventions would be considered obvious and thus not patentable. A higher standard of obviousness could help, but the real solution is to go back to the original intent of the Patent Office and stop granting patents on software.
Should FireStar prevail, or should Red Hat be forced to settle, Open Source use of the object-relational paradigm, including that in Hibernate, PHP, and Ruby on Rails, might become impossible. Recently RIM Systems, maker of the ubiquitous Blackberry, settled their patent case with NTP for half a billion dollars, after most of NTP’s patent claims had been overturned by the patent office! In that case, the patent office ruled the patents invalid after the judge rendered his verdict in the lawsuit, and the judge refused to reconsider. Justice seems to be hard to find where software patents are concerned.
Red Hat will probably stick with the FireStar case rather than settle, but how many of them can it sustain? It’s not possible to write a significant program today without using a principle covered by a current U.S. software patent. A study of patents possibly infringed within the Linux kernel found 283 of them in 2004. And that’s just one program out of the thousands that make up a Linux distribution.
I agree with his assessment of the patent in question. Relational databases and object-oriented technology are both more than 30 years old, and FireStar’s “invention” is just an obvious combination of the two. It should have been rejected on the grounds of both obviousness and prior art.
A lot of non-programmers seem puzzled by the fervor with which geeks hate software patents. I think this is a big part of the reason. The open source development model isn’t really capable of collecting patent royalties. Software patents threaten to embroil open source software developers in pointless litigation, and could ultimately make it impossible to develop certain categories of software using an open source model. That has arguably already happened with video playback software. We’d like to change the law before, say, the owner of one of the 283 software patents infringed by the Linux kernel tries to collect royalties from everyone in the world who uses a Linux computer.