Subject: RE: Patent-based dual-licensing open source business model
From: simo <s@ssimo.org>
Date: Sat, 23 Sep 2006 13:12:41 -0400

On Tue, 2006-09-19 at 15:54 -0700, Brian Behlendorf wrote:
> I'm not talking about "unrelated" works, I'm talking about scope within a 
> single codebase.  What defines the boundaries of a piece of software, when 
> it's not just one staticly linked executable running on bare metal?  There 
> is complexity here that "patent law" doesn't address.  Even my "clear 
> statement" didn't fix it.  "Smallest portion of code that embodies the 
> patent" might be one way of putting it.  I'd put forth that patent law is 
> even more subjectively enforced than copyright law, so punting to the 
> courts for interpretation is not useful as a potential consumer of the 
> patent.

Brian, I'm sorry to say that here you show you don;t know how patents
and patents claims work.

It doesn't matter at all where are the software boundaries. It all ends
up on whether or not your code implement the claim or not, the form this
code takes does not matter at all, you can rewrite it in 100 different
languages, and the claim may still be true and covering your code (it
really depends on how good is the lawyer+customer in writing the patent
claim, there is a push from the PTO at being as generic as possible so
that the claim can be as broad as possible).

In theory you can use the exact code base of IC, and just change the
code a bit to fall out of the patent claims, and the covenant will not
affect you anymore at all (copyright will of course).

> > Furthermore, we expressly promise in our Covenant not to sue developers 
> > or distributors of open source software for contributory or inducing 
> > infringement. Mozilla or Apache or anyone else can do what you suggested 
> > in open source software with complete confidence that we won't sue them. 
> > What other reassurance do you need about that?
> 
> Sure, you might not sue "the developers", but you might sue their 
> employers, or their end-users... which still affects the developer.  It 
> was specious of Microsoft to say the same thing - providing a non-assert 
> on the individual is only a part of the story.  Open Source licenses don't 
> make the distinction when it comes to the rights the guarantee and the 
> conditions they set.

This is exactly the point IC has made, they want to allow research and
distribution of said research, but no commercial exploitation without
their tax on it (this is an extreme simplification :-).

> If we're trying to evaluate this proposal as a generalized system for 
> rewarding innovation within a Free Software Business context, then we have 
> to consider its potential when used by actors of all stripes.  In 
> comparison, the guarantee of the right to fork in Open Source copyright 
> licenses means that we don't have to trust the actors to do the right 
> thing - we don't have to trust them to write good code, document it, 
> support it, etc.  If the software is important enough, we can always fork. 
> So my opinion of this "model" is all about how well it protects the 
> Open Source developer against bad patents that just happen to cover the 
> same territory they are working within, and bad actors with business 
> interests to protect.

The problem I see is that developers will generally not understand what
a patent is and will not be able to understand if they are infringing a
patent or not. It is not as simple as comparing the code to see if it
has been copied, because a patent claim cover what the code does AND how
it does it, not how it is written down in its ultimate form.

> The rest of your points can be summarized as "patents are a manageable 
> problem".

I'd like to say that this phrase should really be: "patents are a
manageable problem _for lawyers_". It is not for programmers
unfortunately.

> Maybe I am looking at this with a different goal than you.  My hope is 
> that we could provide patent holders with a non-evil business model that 
> didn't act as a throttle on what makes the Open Source community work.  It 
> needs to be a balance

To provide a non-evil business model that relies on _software_ patents,
you must first decide if _software_ patents are "good" or "bad".
And this is not a thing you can do easily, there are many shades of
gray, and some patents seem really acceptable and some others are
clearly an insult to intelligence.
Personally, after looong thinking (years), and considering that there is
no way to discriminate between possibly decent patents against all the
bad ones. That it is way to easy to abuse the patent system when
software patents are in the mix. That the balance of power that there is
in the copyright arena do not and cannot exist in the patent arena
because of the very nature of patents. That many reports show how
software patents do not provide any incentive for innovation in the long
term (and usually just shift funds from R&D to the patent offices inside
big companies).
I concluded that as a whole the patent system applied to software cause
more harm than good, and costs to much to the society than the benefit
it give. So even if some minor "good" cases can be made I regret I
rather prefer to loose them than loose all the rest.
Until shown further evidence I think in the end the patent system is
something you want to see to go away, and not embrace.

This doesn't mean that in the meantime some people can;t exploit it to
try and do something good, that's why I follow with interest the IC
idea.

> > [LR:] I didn't say "smallest possible portion." I said, if software X
> > infringes patent P, then publish X or get a license. You don't have any
> > requirement to publish anything that doesn't infringe P, including software
> > that surrounds X (links to X, exchanges data with X through an API, is a
> > separate part of a program that includes X, etc.), and you can remove X
> > (however small or large a piece it is) to avoid infringement.
> 
> Put that clearly in the license, then, is all I'm saying.

Except that it is not a license I think the covenant can be a bit more
clear for us poor laymen (or may be just add a non binding explanatory
session).

Simo.