Communications of the ACM, December 2021, Vol. 64 No. 12, Page 39
By George V. Neville-Neil
“If there is one legal issue that ought to be taught to all software engineers, it is, “Don’t read patents!” ”
I had been reading through a bunch of patents related to some code I am writing so I could avoid coding up something that was known to be patented. This seemed to be a good idea, but when I told my boss about it, we had to have a meeting with one of the company lawyers where I got to explain which patents I had read. I was then taken off the project and assigned some other work. I think that this was a stupid thing for my manager to do because now the person working on this feature has no clue if the patent is being violated or not. Was I wrong to try to do the requisite research before I started coding up this function?
Made Ignorant of the Law
If there is one legal issue that ought to be taught to all software engineers, it is, “Don’t read patents!” I am sure the company lawyer pointed out that had you not read the patent and violated it, the penalty would be much lower than if you had read the patent, and accidentally violated it. It is trivially easy to accidentally violate a software patent because, of course, lawyers write such patents to be overly broad, and thereby set traps for the unwary coder.
It is, alas, long past the moment when we could have avoided these problems by not allowing software patents at all, for, just like inviting a vampire into your home, once you invite in the lawyers, they will suck you dry. As we have seen over the past 30 years, the only people who profit from software patents are those who weaponize them for profit, and those who abet them (that is, lawyers). The real value of software patents comes not from protecting the intellectual property of “the little guy”—a fictitious character devised by patent lawyers to justify their bill-able hours—but from being weaponized into portfolios that various large companies can use to manipulate both the market and their competitors.
About the Author:
George V. Neville-Neil is the proprietor of Neville-Neil Consulting and co-chair of the ACM Queue editorial board. He works on networking and operating systems code for fun and profit, teaches courses on various programming-related subjects, and encourages your comments, quips, and code snips pertaining to his Communications column.