Enough software patent madness!

Say patent, and one might get a nostalgic tear in their eye as they envision a brave garage inventor, who, protected by his patent, earns what's due him thanks to legal protection against large greedy corporations. Enter reality. Now picture large corporations able to easily crush or control small businesses. Picture large companies being relentlessly attacked for money even though such companies have made every effort to respect other's claims. Picture an environment where anyone wishing to innovate is all but unable to do so because such effort will invariably step on an almost infinite and unknown set of patent "toes".

To make things worse, there are those that are pushing for even more liberal patent laws, such as first-to-file, rather than first-to-invent. Something must be done to stop this! Patents are ruining the software industry and causing tremendous indirect damage to our country!

Software shouldn't even be patentable. Patent law prohibits the patenting of algorithms or abstract ideas. Anyone who works with software knows that software is precisely the materialization of the same. The only reason software patents began to be allowed is due to the ignorance of those in the legal, legislative, and especially judicial fields.

Software patenting should not be allowed if for no other reason than the impossibility of doing so accurately and fairly. Software is qualitatively identical to mathematical systems. In some ways, even mathematics would be a more feasible target for patenting due to the more rigorous and disciplined state of the field. Due to the abstract nature of software, the irrelevance of the related field of science, and the hardly existing engineering practices that surround the field of software, just the practice of attempting to precisely define terms is an entirely fruitless effort. I challenge anybody to raise a single software term that isn't open to ample and gratuitous interpretation and redefinition.

Showing prior art is a requirement of patenting, and this is impossible due to the abstract nature of software. Unlike a physical device where someone such as a judge can easily observe its characteristics, software, in its typical form ends up as a highly obfuscated, tremendously large set of machine codes. Even for more tangible software aspects, such as user interfaces, it is truly ridiculous to pretend that we can assess what is prior art, due to the volume of produced software and the lack of access to it. In my experience, software reinvention is far more common than invention; and I imagine that most of what I consider invention is due to my ignorance.

For something like a manufacturing process, the 20 years of exclusivity a patent affords may be a reasonable time for the benefactor to reap the rewards of innovation. The lifecycle of a typical product or good is measured in decades due to the processes and resource constraints involved. On the other hand, a typical software lifecycle is a matter of a few short years. 20 years represents an eternity in the software industry. In 20 years, the software industry will hardly be recognizable. Such an period for software is utterly ridiculous, doing nothing but stifling innovation.

Another major problem for software patents is that they are intrinsically "obvious" (another exclusion made by patent law). This goes back to the abstract nature again. Like math, there are certain, obvious ways to accomplish certain goals within a logic system. Again, software is qualitatively identical to math; only with software there are many more names for common concepts and there are an almost infinite set of constructions, nearly all of which would be considered "trivial" by mathematics. There are just a few fundamental things in the software industry that are novel, and if any of them had actually been patented it would have spelled disaster for the industry. The increasingly litigious industry now benefits from these fundamental concepts, adding very little but engineering effort to them, yet wants to horde every idea that appears.

When it comes to protection, software is more like music than it is like a manufacturing process. Imagine if it were possible for a big company to step in and patent middle C. Another small musician releases a new single, which looks like it will take off, only to be squelched by a big recording label who holds the patent for the "boom bip" beat pattern. Again due to the abstractness of software, developers, like artists, must have certain bounds to safely work within.

I have much more to say on the subject, but I must get back to real work. Speaking of my work though, let me mention that as a member of a small business attempting to build innovative software, I am certain that I am unknowingly stepping on turf improperly staked out by patents. With the ever increasing number of software patents, most of which are outright ridiculous, one simply cannot avoid it. If someone ever did decide to try to enforce one of these absurd patents against us, the process of invalidating the patent or showing its inapplicability would be extremely draining or worse. This prospect is no doubt depressing, and it absolutely stifles motivation to innovate. The unfortunate price for success is to be a big fat target to greedy, litigious, hoarders who would rather spend their time pulling from others than contributing their own. Read the news if you would like some examples.

I don't want to leave on a depressing note. I do not think the situation is hopeless, but we need to change some laws to get there. For that to happen, we need to help most people understand and agree that software patents are a patently bad idea (sorry).

There are ample arguments and resources against software patents on the web. Here is one of my favorites. Please share your favorite. Also, please sign this petition if you agree.

Comments

Popular posts from this blog

Don't Repeat Yourself... Really!

Issues raised by polymorphism in relation land

Camtasia Studio Tips