specificity of claims (was: SEPostgres - on track for 8.4?) - Mailing list pgsql-advocacy

From Andrew Sullivan
Subject specificity of claims (was: SEPostgres - on track for 8.4?)
Date
Msg-id 20081024132827.GA5539@commandprompt.com
Whole thread Raw
In response to Re: SEPostgres - on track for 8.4?  (Joshua Drake <jd@commandprompt.com>)
Responses How to handle C&D's?  (Joshua Kramer <josh@globalherald.net>)
Re: specificity of claims (was: SEPostgres - ontrack for 8.4?)  (Robert Treat <xzilla@users.sourceforge.net>)
List pgsql-advocacy
On Thu, Oct 23, 2008 at 09:14:55PM -0700, Joshua Drake wrote:

> Regardless, my only point was Robert wasn't trolling. If there is a
> serious concern we can certainly pass it to legal, it isn't like we
> don't have the resources to do so.

It certainly is like we don't have the resources to go through the
PostgreSQL code, and all patches that are submitted for major
features, and check them against all the patent databases.  You are
talking about a legal bill that could easily get into the hundreds of
thousands, if not millions, of dollars.  This entire discussion is
mad, because it's based on an idle remark someone made about "several
patents" in "this area".

The way to deal with patent problems, for free software projects, is
to ignore the issue unless you have specific knowledge of a specific
infringement.  Simply not knowing is a defence: all the patent holder
is entitled to when it first contacts you is the removal of the
infringement (in other words, the code would have to be removed).
Infringement is a matter of law, so if one has specific knowledge of
implemented functionality that one suspects _might_ infringe, at that
point it would probably be prudent to ask for a legal opinion.  If you
happen to be committing, writing, or commenting on code that you know
has a patent on it (e.g. if you are employed by a company that holds
the patent, or have been party to previous dealings with substantially
similar functionality that was subject to a patent, or such like),
_then_ you should say, "I believe this code infringes patent N, and we
shouldn't commit it."

But so far, nobody has said one word about any specific feature or any
specific patent.  What Robert was asking was whether anyone is
investigating the vague suggestions futher.  The answer is, I hope,
"Absolutely not."  Looking through the Postgres code for things that
might infringe any of the millions of patents that have been granted
in all of the jurisdictions of the world is a good way to fund the
careers of patent firms, but it's not a good way to help the
development of PostgreSQL.  Suggesting that people should start
looking for such problems was in fact what Robert was saying, and I
agree with Josh Berkus that it's a very bad idea to do so.

Note that the case of patents is quite different from copyright or
trademark violation.  (That's not what we're talking about here, but I
want to fend off any wandering into the weeds of general discussion
about "intellectual property".)  The specific case of patents leaves
projects made up of ill-funded volunteers such as this one no choice
but to remain as ignorant as possible of the state of the patents
pending and granted in the project's areas of development.  By doing
this, in the worst case you remain ignorant, and later get a cease and
desist letter.  If you start looking for things, you implicitly
endorse the view that you have a responsibility to look for
infringements in your code.  At that point, any bozo can come along
and claim you are infringing by virtue of some feature that's been
there for years, and that you were negligent in not looking for the
infringement in the way that you looked in this other case, where you
trolled through the patent databases on the basis of some vague
assertion.  (Note that we've already seen previous vague assertions
about how there could be all manner of possible infringements in the
existing code, but nobody's ever checked.)  At this point, the bozo
will seek damages, and will have an argument -- a weak one, but one
that he can probably afford to litigate better than we can.  This is
an excellent opportunity for someone to end the project through a
legal DoS.

And don't forget that once one starts finding things, they might turn
out to be things that we think are important enough that we need to
fight the patent claim.  This means lots of work trying to invalidate
a patent.  Many of these patents are trivial to prove to be
derivative, obvious, or not real inventions (because there is ample
prior art in the literature).  That's not the problem.  The problem is
that litigating patents is _expensive_ -- it costs much more for a
single case than is in the fund at SPI today.  So unless we were to
find a significant new source of funds or get the services of a good
patent firm _pro bono_, I think we'd lose.  Even if we do get those
funds or patent firms, we could lose: think of the companies that have
fallen apart because of the costs of the patent system.  And all that
time we spend on this distracting fight (that we caused ourselves by
looking for things we didn't need to know about) will be distracting
us from focussing on the main goal, which is improving PostgreSQL.

In conclusion, then, I believe very strongly that participants in this
project should avoid borrowing trouble by grovelling through patent
databases "to see if anything is relevant".  I think that participants
in this project should not make vague claims about possible patents
that might be relevant.  If, on the other hand, they have knowledge of
specific patents that might be relevant to specific features, then
depending on their familiarity with the patent, they should either ask
the funds group to obtain a legal opinion; obtain an opinion themselves,
either from their company counsel or at their own expense; or they
should state their own familiarity with the patent in question, and
state why they believe the offending code infringes.

If anyone has such specific issues at present, they haven't said
anything as far as I know.  Therefore, we should not discuss the
matter further.

Best regards,

A

--
Andrew Sullivan
ajs@commandprompt.com
+1 503 667 4564 x104
http://www.commandprompt.com/

pgsql-advocacy by date:

Previous
From: Joshua Drake
Date:
Subject: Re: SEPostgres - on track for 8.4?
Next
From: Joshua Kramer
Date:
Subject: How to handle C&D's?