Patents are a Sword of Damocles hanging over every software company. They never know when someone will claim their product infringes on a patent, forcing them to choose between fighting an expensive legal contest and capitulating. No amount of research can make them safe.

Software development is a constant process of invention. Writing computer code is all about figuring out ways to do things, then writing the instructions to do them. Analyzing file contents, correlating information, storing data efficiently, enabling business transactions, guaranteeing security — a computer can perform all these processes, but someone has to figure out how, and someone else might have a patent on it. About 40,000 software patents are issued per year, and they’re written so that lawyers, not programmers, can understand them.

Large companies typically own thousands of patents. Some hold them just for defensive purposes, like Cold War nuclear weapons. They say, in effect, “If you don’t come after me over your stack of patents, I won’t come after you over mine.”

Some use them aggressively. Worst are the “patent trolls” who don’t produce anything, but just buy up vague, dubious patents and extort licensing fees under the threat of drawn-out legal action.

Trolls love patents that are very broad, letting them claim the right to shut down whole industries if they don’t pay up. The Electronic Frontier Foundation explains:

The Patent Office does not do a good job reviewing software patent applications to see if they are claiming something new. And these patents often describe the purported invention with highly vague and ambiguous language. Software patents also tend to claim every way to solve a problem, rather than the particular solution developed by the applicant.

A company called Lodsys claimed in 2011 to hold a patent on in-application purchases, the practice of buying add-ons within applications, such as games, while running them. It’s gone after many companies, generally backing down where it meets serious resistance, but posing an ongoing threat to anyone it might target.

Before the 1980s, software patents were rare. In 1968, the Patent and Trademark Office issued guidelines declaring computer programs unpatentable. In 1972 the Supreme Court ruled that algorithms — abstract descriptions of a computational process — are unpatentable since they’re essentially just mathematics. US patent law has always held that laws of nature, natural phenomena, and abstract ideas aren’t patentable.

The Supreme Court shifted in Diamond v. DIehr (1981), ruling that a process for curing rubber was patentable, even though its only new feature was a computer-controlled timing process. Software-centered patents began growing in number in the 1980s, but didn’t really take off till the nineties. Subsequent rulings have imposed some limits, yet the number of patents issued continues to grow each year.

Patents impede free software as well as commercial products. There are no free implementations of MP3 because Fraunhofer holds patents in the format and won’t allow implementation without a license fee.

Microsoft claims the Linux operating system infringes on its patents, and, in some cases, it has collected licensing fees from data centers that run it. Microsoft has nothing to do with the creation of Linux, which is open-source and freely distributed, but still gets to collect money for using it, calling the arrangement “another example of the important role IP plays in ensuring a healthy and vibrant IT ecosystem.”

A 2015 report by EFF concludes:

By reducing competition (again, even from those who don’t copy), software patents favor the big over the small. Indeed, a handful of large companies file literally thousands of software patent applications every year.

Given all the problems with software patents (such as vague claims, etc.), and the fact that software is already often protected by copyright, it seems excessive to grant the additional protection of patents.

Ultimately, software patents interfere with the freedom to code. For many developers, this interference with their creativity is like being told they need permission before painting or writing a book, despite the idea for the painting or the book being wholly their own.

Software patents aren’t a necessity. Without patents, code can still be under copyright, protecting its authors from copying without compensation. In 2013, New Zealand passed a law declaring that software isn’t an “invention,” and therefore isn’t patentable, unless it’s associated with a dedicated machine. Recent US legal decisions have put some limits on what can be patented.

The entrenched interests make it very difficult to get rid of them, but software creators would be much better off without them.