Understanding (and Avoiding) Software Patents?
An anonymous reader asks: "I'd like to write some Free backup software, but this area is mined with patents. I downloaded one and tried to understand it, but the 'claims' section (arguably the most important part) is made up of utterly incomprehensible patentese, and I can't afford to hire a patent attorney to help me understand it. Are there any free or cheap ways to learn enough about patents to understand them, so I can figure out exactly what is patented and therefore avoid it?"
"How different does my software have to be in order to be non-infringing? The patent I tried to understand is Dantz's 5,150,473. Many, including Slashdot readers, have said what this patent covers, but from reading the patent itself, I would never have guessed. Also, there are lots of other patents to understand and avoid, so I'm looking for general information on how I can unravel it all into language I can understand."
you can't know if there has been some patents applied that haven't been published yet.
it's impossible for you to learn of all the patents that you might have to deal with.
the solution? just write the fsckin software, if someone complains then take it out.
world was created 5 seconds before this post as it is.
If you aren't making money.
Perversely, it's not a very good idea to actually do a patent search before lunging into your neat new idea. Should you actually find evidence that your invention was close to patented technology and that fact comes out in court, you will be accused of violating the patent deliberately.
If you never looked, on the other hand, you just didn't know about it and may have violated someone's patent as a result.
Further, you'll only be subject to serious trouble on the patent front if you're wildly successful (i.e. harming the patent holder's market share). In that case, there ought to be enough interested parties with money to actually handle the challenge.
I am not a lawyer, but I've talked to a few on this exact subject with the exact same question.
Regards,
Ross
In addition to there simply being too much to read, in the US, if it can be shown that you knowingly infringed a patent, the amount of damages you can be liable for is trebled (x3).
You're much safer in your ignorance.
Do what Linus does: don't read patents.
"Technical people are better off not looking at patents. If you don't know what they cover and where they are, you won't be knowingly infringing on them. If somebody sues you, you change the algorithm or you just hire a hit-man to whack the stupid git."
J'aime mieux les méchants que les imbéciles, parce qu'ils se reposent. -- Alexandre Dumas
The way I have attacked this in the past is to go through it sentence by sentence and translate it back into English, keeping a glossary of things which seem to make sense in context.
From your example: "The archive format includes the transfer of data to an archive media member, which archive media member can alternatively be addressable or sequential memory and can be recordable in either a rewriteable or right [sic] once manner."
Glossary: Archive media member - a tape or disk. (This is backed up by the fact that these may be sequential or "addressable" (i.e. random access)).
So, in other words, "The archives are stored on tapes or disks, which may be rewritable or write-once."
This is, of course, a tedious and laborious process. (Just imagine, however, being a patent lawyer and having to actually write this stuff for a living.)
Note well that, if the CIID passes, us software developers in Europe are going to have to learn to do this much more often. Here's an obligatory link to the FFII for the benefit of anyone who's been on Mars for the last 6 months.
OK, here's an idea. How about an open directory of patent translations?
Once you've translated a patent into English, you would upload it to the directory for others to use. They would be available under something like a creative commons license, with a feedback/rating system, standard disclaimers that original legalese has priority over the translation (of course), and that translations are supplied for convenience only.
The web interface could optionally display the original and the translation side-by-side, aligned by paragraphs, so you can easily cross-check. There should be a simple way to post/suggest corrections.
NOTE: This posting consitutes prior art on this concept. You may not patent it!
ASIDE: The method described for translation is basically the same as that described by Richard Feynman for dealing with obtuse english. Here's a quote:
"There was a sociologist who had written a paper for us all to read - something he had written ahead of time. I started to read the damn thing, and my eyes were coming out: I couldn't make head nor tail or it! I figured it was because I hadn't read any of the books on that list. I had this uneasy feeling of "I'm not adequate," until I finally said to myself, "I'm gonna stop, and read one sentence slowly, so I can figure out what the hell it means.
So I stopped - at random - and read the next sentence very carefully. I can't remember it precisely, but it was very close to this: "The invidivual member of the social community often received his information via visual, symbolic channels." I went back and forth over it, and translated. You know what it means? "People Read."
(From "Is Electricity Fire?" in "Surely You're Joking, Mr. Feynman".)
Sean Ellis
Follow OfQuack's antics on Twitter.
...work to get rid of them. Seriously. There is absolutely nothing you can do to protect yourself from software patents, other than this.
Dude, that's like, totally bogus! Try using the Fish on it... Maybe its in like, Polish or something...
Seriously, it would be interesting to see the technology behind Google Translate or AltaVista Babelfish applied not only to proper languages but also to specialized jargon and dialects: Legalase, Technobabble, maybe even Diner.
Hmmm, imagine using the fish to translate "From Legalese to Engrish" *cringes*
There have been a few cases that source code is speach, i.e., in relation to publishing encryption code. If any of those cases held up, then it may also apply to patented algorithms. Therefore if you only publish source code then it would be up to the person compiling/running the code to check for patent infringements. Of course it would be nice if the system actually worked like this...
Besides, if you spend all your time looking for a patent you mighg be violating, you'll not get any coding done.
A firewall can not protect you from yourself. Turn off what you do not need. Do not use the firewall to do your work.
Just clone something at least 20 years old. Bring it up to modern standards by adding translucent drop shadows and a few gratuitous memory leaks. This is the method used by all major software publishers and it works without fail.
There is an article about "The Anatomy of a Trivial Patent" written by RMS. It may be a nice introduction to the topic if you want to read more complex patent texts.
Or for a more temporary solution.... move to Europe
Kingdom of Loathing (www.kingdomofloathing.com) Addicted is me
It isnt ignorance of the law, it's ignorance of the patent. And it isnt a defense, it's avoiding possible willful infringement damages.
> IAAL
Yeah, well, when even lawyers have trouble understanding the ins and outs of patent law, maybe it's time to do something serious about it, eh?