You are here

Ideas for patent reform

Usually, I use this spot to rant about something, or someone that's riled me up in some way. My lack of discussion on software patents doesn't mean I agree with them, it's just that everyone else has been doing it. I couldn't see why I should do so and be seen as just another blogger with nothing better to do with my time.

Someone that has plenty of things to do with their time is Simon Phipps. He was brought into Sun to work up their Open Source strategy, and was instrumental in getting Java released under the GPL. And he still has enough energy left to be a great speaker. I had the pleasure of meeting and hearing him talk last night, where he introduced his ideas for software patent form. Let's face it - software patents are going to happen, so we might as well be constructive about it and guide it in the right direction, so it can be implemented in a manner with which we are agreeable.

Now, I agree with the stance and the ideas he presents, but still have some niggling doubts. Firstly, the method to minmize and/or eliminate patent trolls is wonderful. If they had to pay back the licensing costs, they'd be less quick to slap injunctions on products using "their" technology. However, if the company has a lifespan similar to those in the dotcom boom, they'd be bankrupt before you got your money back. Ugh! This problem exists because a company is not run by the company; it's run by people. And if the people running the company can use that money to finance their (private) house, car, and lifestyle, then they will. Most people would sell out their companies and careers for a few million in the bank.

A company is not run by the company; it's run by people

Making patents invalid once they're part of an ISO standard is also a good idea. Nuff said.

Simon also suggests making software patents last for a maximum of 5 years, due to the pace of technology. I think he's wrong, and it should be limited to 3. Alas, both are arbitrary numbers, and I've seen software patentable ideas get superceded and become irrelvant in less time (e.g. computer graphics) and some which I expect would never die, given the option.

Requiring source code to be filed with the patent is also a good idea as it stops the wooliness and arbitrary language usually used in patents. Anyone that's filed a patent will usually tell you they don't understand the wording of their own patent, or to what specifically it refers.

Finally, Simon suggests perjury for patents filers that don't discover prior art. This is a little harsh in my opinion, especially for the small developer as they will need to start filing patents for the sole purpose of having a portfolio that they can use to defend themselves against the big boys. Or perhaps the idea is to highlight the fact that the entire Microsoft Windows development team are guilty in their failure to check prior art, and should be locked up.

"Let's face it - software patents are going to happen, so we might as well be constructive about it and guide it in the right direction, so it can be implemented in a manner with which we are agreeable."

The 'right direction' is the other fricking way mate - toward their abolition, not their amelioration.

This is the sort of strategy I'd propose...

For any given software patent:
1) Modularise an exemplar of the algorithm.
2) Provide a non-infringing alternative with the same API.
3) Make the patent infringing version hot-swappable with the non-infringing version at compile/install time as appropriate.
4) Let the end user specify whether they wish to violate the abomination of software patents, or whether they're a subjugated corporate happy to accept inferior performance if it'll placate the legal department.
5) Oh, and if you want to make it squeaky clean, create a mechanism that enables the user to print off all the proforma licensing requests to enable them to approach each patent holder for the use of the respective patent - so they can use the patented software without violating any patents. If they really, really want to. ;-)

Remember, patents are supposedly for the benefit of the public, so you might as well let the public decide whether they support the sacrifice of their liberty in this way.

I really cannot foresee a future in which free software developers could give a fig if their code infringes any software patents. However, if someone like MS comes along and says, "Ah. Quicksort. That's ours. $1 per cpu thanks!", well, hot swap it with Bubblesort, and suggest MS chases each user who pretends they have a license to quicksort.

It's all virtual guys. There aren't really cast iron chassis, cogs, gears and incredibly high setup costs involved. If software can be patented, then infringement can be automated.

Thanks for the reflections, Steven. I actually don't think software patents are inevitable; we successfully prevented them being introduced in Europe a while back and we need to remain vigilant to prevent their introduction by stealth. The pro-patent lobby is still hard at work, trying to create instances across europe that need "harmonisation", and the IPRED recently raised the stakes considerably if that happens.

But I don't agree with the AC above. Software patents do exist in the US and elsewhere, and an anarchist view is unrealistic. What's needed there are realistic proposals for reform that we can lobby into existence using the resources those of us opposing software patents and patent trolls can marshal. That's what my blog posting is about. If we take the view in the US, Australia and other sw-patent-blighted places that the only reform we'll tolerate is abolition we can expect to be ignored.

Crosbie: Your proposal seems a reasonable enough approach but doesn't really help that much. Proposals that evade patents, or that improve patent quality (the usual remedy from large portfolio holders) don't help most of us much since none of us can foresee which aspects of our work will be covered by a patent that sneaks up on us from afar. All my proposals de-fang the patent system so that we're not affected so much when that happens. Take a look at my blog[1] and see what you think, you may find we actually agree.

Webmink, I sympathise with all your proposals toward reform, but I do not feel they represent a pragmatic approach for software developers.

Until there's any change in patent law (and really, only when software is no longer patentable), developers still HAVE to code without consideration for patent infringement. It is unfortunate that free software coders have to pay far more attention to this than closed source developers, i.e. they're sitting ducks in a barrel and the only reason they haven't all been wiped out yet is that patent lawers are still working on their "Duck a l'Orange" recipe.

So, today we have to write first, and then let a million eyeballs find the bugs (including patent infringements).

Patent infringements are only bugs in the sense that they are code in need of 'dualisation' - the provision of a compile/install/run time user-selectable alternative. Each user builds up a machine readable portfolio of patent licenses that they have (with expiry/renewal options), this is then read by each free software application in order to hot swap each algorithm/format as necessary.

Naturally it is made extremely easy for the user to indicate that they possess all necessary licenses (or are the patent holder), e.g. "Select All, Mark As, 'Patent Held', Yes."

This defers the patent infringement to the user (that nasty, despicable creature also known as an 'upstanding and honourable member of the public enjoying their human right to liberty').

It is possible that coders can still be prosecuted simply for unwittingly writing a line of code that infringes a patent, i.e. there's no penalty-free "Take-down until patent is no longer infringed" notice. That would require all free software authors to remain anonymous, since even if they duly diligently research potential infringement, there's always the risk they may miss one, and remain at the mercy of patent trolls (on barreled duck hunts) who'd probably be even more enthusiastic than the likes of RIAA.

To those that exclaim "But, it's illegal to even distribute patent infringing code, irrespective of whether the end user may possess a license to use it", I suggest that there are millions of users who'd happily take on the responsibility of performing this illegal distribution.

All the software developers need to do is to facilitate the computerised auditing of software configurations to give each user the confidence that all the patent infringing modules they've nefariously obtained are bonafide/certified. To some extent you could simply distribute MD5s of software configured with 'all infringements enabled' - I mean 'all patents licensed'.

Crosbie: I agree with you that that's a prgamatic way to behave in the interim until we are able to provoke change to the patent systems of countries that have foolishly permitted software patents. I also believe we need to work out how we'd like the system changed in those countries, and to be pragmatic about it (they are most unlikely to just be eliminated). So there's two kinds of pragmatism we need here.

By the way, I don't think Free software developers have to be any more careful here than others. No developer should go looking for patents (finding them exposes you to greater risk; this is a basic reason why the social contract behind patents is being violated, in my view). No legal issue is involved until a patent holder places a given software user "on notice". I think we've all fallen for the fear that those most threatened by Free software wanted us to, become uncertain and started to doubt the effectiveness of the philosophy that unites us. And the best treatment for FUD is to continue energetically in spite of it.

There are three ways of rectifying the software patent problem:
1) Lobbying - demonstrating the law is unethical, if not invidious and impractical.
2) Rendering and demonstrating s/w patents as completely ineffectual and/or redundant.
3) Demonstrating patent restricted s/w has a lower economic return than unrestricted s/w.

1:- Good luck with the lobbying. ;-)

2:- Create a standard s/w configuration infrastructure to rapidly adapt the moment s/w is put on notice for infringement. Demonstrate that patents simply create unnecessary work for the free s/w community to treat as damage to be routed around - inevitably avoiding patent licence revenue by providing both a rapidly deployable non-infringing alternative, and a deferment of licensing fees to the end user (should they insist on use of patented code).

3:- Create a collective funding mechanism to facilitate the commission of free software.

Because law in the field of IP is primarily the abominable spawn of commerce (protection of monopoly), it is only a commercially superior force that will have any hope of rectifying it. Simple argument from an ethical standpoint butters no parsnips.

Copyright was unethical when it was created, but it is only now that it is demonstrably ineffective (and iniquitously policed) that suggestions of its demise (if not complete reform) are being entertained.

The same goes for software patents (and patents per se). They may be a double-edged sword for Microsoft, but they're at least tolerable. Either patents hamstring free software, or the ability of free software to ignore patents gives it an advantage. Until that aspect is clear, the commercial powers within the software industry will keep patents on the statute books.

Therefore, as long as the incumbents find the status quo tolerable, until you demonstrate s/w patents are commercially disadvantageous, s/w patents will remain.

Thanks for the clarification - appreciated. As you say, I still believe we can prevent software patents taking hold in Europe. Politicians are now aware how controversial the issue is (and wary of the lobbyists who told them it wasn't!), the fact that interoperability is key to open markets is understood and the need for any patent system to permit that has become clear, and the unholy alliance of proprietary interests that comprises the pro- lobby has realised this is not a push-over like they thought.

We have to stay alert though. IPRED2[1] is part of a mosaic that activists for the pharma-media-software axis support, and their activities seem to have moved focus away from Brussels to the individual EU states where they are using their superior financial resources to fund lobbying for "modernised" IP laws in various countries. I'm convinced this is part of a strategy to come back to the EU in a few years and ask for "harmonisation" of the laws across the continent, with the effect of making software patents (as well as a basket of other participation-age-hostile measures) an obvious necessity to the new generation of legislators who will be in place by then.

So, in my blacker moments I can be as pessimistic as you, but I believe with vigilance and unity we can create a Europe where Free software makers have more liberty than the US.

Software is the only field of human endeavour that gets to be protected by both copyrights and patents--nothing else gets to "double-dip" the legal system in this way. What's so special about software, that it should receive such special treatment?

Author information

Biography

When builders go down to the pub they talk about football. Presumably therefore, when footballers go down to the pub they talk about builders! When Steven Goodwin goes down the pub he doesn’t talk about football. Or builders. He talks about computers. Constantly...

He is also known as the angry man of open source.

Steven Goodwin a blog that no one reads that, and a beer podcast that no one listens to :)