Open source gives you choices. Not happy with commercial software? Try the open source alternative, and work to add the features you need. If no open source project already exists, start your own. Chances are, other folks have the same itch and would be willing to help you scratch it.
Except it doesn't always work that way. Open source licenses work with copyright law to ensure that code always stays freely accessible, but copyrights aren't the only kind of intellectual property in the software world. Patents can be equally troublesome; in fact, they can often be showstoppers for open source.
One obvious example is the patent minefield surrounding multimedia. There are so many patents covering every aspect of digital audio and video that without an industry consortium like MPEG it would be virtually impossible to write any kind of multimedia software. MPEG mandates that its members agree on RAND (reasonable and non-discriminatory) licensing terms for relevant patents: Anyone can use the technology so long as they pay the same fee everybody else pays.
But while that's a reasonable compromise for software companies, it's little use to open source projects. What good is it to release source code under a free software license if anyone who compiles it will have to pay patent license fees? In fact, many open source multimedia projects are on tenuous legal ground.
Similarly, this was the problem Sun Microsystems faced when it launched the Open Media Commons, an effort to build an open source DRM platform. I've been advocating such a project for a while now, and Sun and I are in almost total agreement on goals and methods. Only it turns out it's not that easy. Other than multimedia, few areas of software are as heavily patent-encumbered as DRM.
Fortunately, Sun wasn't alone in confronting this issue. Few other companies are as keenly aware of the software patent problem as IBM. IBM developers have contributed heavily to open source projects over the years, but IBM is also consistently the leading recipient of patents in the United States, with annual patent grants numbering in the thousands.
IBM's solution was to put its money where its mouth is and do MPEG one better. First, it donated 500 of its own patents for use in open source projects, not merely under a RAND fee structure, but completely royalty-free. Next, working alongside companies such as Computer Associates, Novell, Red Hat, and Sun, IBM formed an organization called the Patent Commons, in which every participant would do the same.
Sun chose to mimic the Patent Commons model for its open source DRM efforts, but even that was only half the answer. After all, Sun could only donate the patents that it or its partners owned. DRM technology is protected by countless other patents outside of Sun's sphere of influence, and to keep from infringing on them, the first step was to try to count them all.
Sun's lawyers embarked on an extensive research project to identify all the relevant patents, allowing Sun to engage in a precarious dance across the patent minefield as it developed its reference DRM code, avoiding red-flag patents and homing in on expired ones. In addition, as a preemptory measure against patent claims, Sun drafted a document carefully outlining its assertion that the technologies in use in its software were unencumbered.
The process wasn't easy and it wasn't cheap. "We've made a substantial investment over an extended period of time," says Sun Labs' Tom Jacobs, whose title -- perhaps tellingly -- is "director of voodoo sciences."
And so, while Sun's efforts are certainly laudable, they also point out a distressing problem. Given the hoops the company had to jump through to make this happen, there is no way that 10 college students -- or even 10 smaller companies -- could have brought an open source DRM project this far. Paradoxically, the only way for a free project of this nature to exist was for it to be created under the auspices of a large commercial software vendor.
They say open source doesn't innovate, but now you know part of the reason why. Patent reform for the software industry is long overdue.