Re: Again: list of advantages of the xGPL

"Deven T. Corzine" <[email protected]> Mon, 15 Jul 2002 11:24:49 -0400 (EDT)
Newsgroups gmane.comp.emulators.wine.license
Message-ID <[email protected]>
On Wed, 19 Jun 2002, Roland wrote:

> Exactly, and that's why it sometimes makes sense to have a license like the 
> GPL, although we could be much happier with a BSD style license. Yesterday 
> I read an interview from an IBM Linux hacker in Slashdot. He said that they 
> are improving Linux together with folks from other companies like SGI, 
> etc... I think in this scenario it is important to have the GPL to avoid 
> abuse...

Is it really necessary?  Apache doesn't have this protection, yet it hasn't 
really been abused, as far as I can tell.  Yes, there have been some closed 
versions of Apache -- notably, SSL-enabled implementations.  Despite those 
closed forks, Apache remains a vital, active project -- and Apache 2.0 now 
supports SSL out of the box.  Has Apache really suffered from abuse, then, 
for failing to use the GPL?

I think that a vital, active project can discourage abuse by simply being 
better than closed forks -- because the open fork soon outstrips the value 
of any closed fork that may be created.  Linux is a vital, active project, 
and could probably succeed just as well under the BSD license as the GPL, 
at this point.

Stagnant, inactive projects are different -- they don't have much inherent 
advantage for contributing back to the open project, if it's not really 
moving much at all.  Such projects may need the added protection of the GPL 
or another "copyleft" license to prevent abuse.

I think the appropriate license depends heavily on the nature and vitality 
of the project in question.  I think that the GPL is a reasonable choice 
for someone to make, but they should realize that they're participating in 
an exclusionary community.  Personally, I'd pick the MPL over the GPL, just 
because it would protect my code, without being as exclusionary...

> > > And please don't forget that one of the driving forces of switching 
> > > WINE to LGPL was a company!
> >
> > So?  Maybe it was a strategic business advantage to them.
> 
> Sure. The topic of my email was: list of advantages of the xGPL.

My point is that it's not necessarily inherently advantageous to use the 
GPL, but that it's context-dependent.  While the GPL may appear to be a 
strategic advantage to company A, it might be a disaster for company B.

At best, then, you could cite "possible" advantages in such a situation...

> > > I'm not saying the BSD has not its advantages, but in the case of WINE it
> > > seems that many where not happy with what was released by TG, at least
> > > there was a lot of debate generated around this.
> >
> > Would the Transgaming situation have played out much differently under 
> > the LGPL, though?  If they wanted to follow the "Street Performers 
> > Protocol" under the LGPL, they'd be unable to release ANY code until 
> > meeting their threshold.  How would this have really been an 
> > improvement?
> 
> If I understood correctly, under the LGPL they would HAVE TO release their 
> improvements.

Then you understand incorrectly.  Neither the LGPL nor the full GPL demands 
that you release your modifications.  It only requires that the source be 
available to those to whom you distribute a binary.  As I said above, this 
would mean that Transgaming would have been unable to release ANY code (in 
source OR binary form) until meeting their threshold.

They could still develop the code, and describe it, but they'd have to keep 
it completely under wraps until they're ready to have the source released 
under an open license.  That means that those who've been enjoying their 
closed binary release would currently still be chomping at the bit to even 
get to use the code, much less build upon it...

> > It's easy to see the advantage to the community, IF development happens
> > under the xGPL.  That's a big "if", though.  The question is what 
> > advantage it has for whoever is PAYING for that development, and that's 
> > less obvious.
> 
> One advantage I see is, that because ALL the code is released back to the 
> community the PAYING Customer will benefit from all improvements and 
> BUG-FIXES made to that code.

If, and only if, someone else does some extra work on the code.  What if 
the paying customer paid a lot of money to get ALL the features they wanted 
(so improvements might not matter) and received mostly bug-free code?  What 
if that code works so well that it doesn't really need much more investment 
in improvements or bugfixes?

What if that code provides a strategic business advantage over the paying 
customer's competitors?

What business justification would there be for using the GPL in this case?

> Another advantage is for other companies in the same business (potential 
> paying customers). They could use that solution without having to pay 
> anything. So I see a lot of companies profiting.

This is exactly what would be likely to bother the paying customer -- that 
his rivals can get the fruits of his fully-funded efforts, for free.  That 
can turn a strategic advantage (code whose benefit your competitors don't 
have) into a strategic disadvantage (equal benefits with one-sided costs).

Clearly the competitors can profit from this situation.  That wasn't in 
question -- my question was whether the PAYING customer should consent to 
the release of the code they've paid for.  In many cases, the appropriate 
business decision will be NO.

> > > If the company will avoid any xGPLed software the development cost 
> > > will be much higher since it cannot use the large amount of available 
> > > xGPLed software. This is also a reason why it is good to make the 
> > > amount of xGPLed software as big as possible. At least from this 
> > > viewpoint.
> >
> > Yes, it's an incentive for the GPL community to try to become dominant,
> > just like Microsoft's interests are served by trying to become (and 
> > remain) dominant.  If GPL code can achieve monopoly-style advantages, 
> > it will be more powerful, obviously.  It will also be more dangerous.
> 
> Dangerous for whom? It will help a lot of companies because they will have 
> access to a lot of software for free. There will be a lot of need for 
> programmers to customize/adapt free software for specific needs. So who is 
> in danger here?

Anyone unwilling or unable to abide by the GPL, who must compete against 
those who are willing and able.  Isn't that obvious?

It's why antitrust laws exist in the first place -- to keep monopolies from 
becoming the only game in town by driving all competitors out of business.  
What makes you think that GPL domination would be any healthier for the 
software industry than Microsoft domination?

I don't want the GPL to be the only game in town.  We should have choices.  
If the "amount of xGPLed software [is] as big as possible", then ultimately 
we won't have real choices anymore, because the non-GPL choices will be so 
pathetic by comparison that only a fool or a zealot would choose them...

THAT is the danger.

> > The question is, what are the incentives to fund new xGPL development?
> > (The incentives for exploiting previous xGPL development are obvious.)
> 
> Like any incentive to fund new software development. When there is a big 
> enough need for it.

A large enough specific need can drive development, but what about a large 
but diffuse need?  What if lots of individual users would like a feature 
but it is of no interest to a company?  No single individual is likely to 
fund development.  At best, you can cross your fingers and hope a single 
developer will just decide to implement the feature.

However, my question was about incentives to FUND new xGPL development.

> And honestly I don't believe that we will ever reach the point where there 
> is no need for further software development. I see it here at the company. 
> Mostly I develop software for trivial tasks like reading a text file and 
> sending the data to a database. There will always be need for specific 
> software that solves very specific problems.

This is true.  The problem is that hiring developers to do this work isn't 
cheap, because the necessary skills aren't so easily acquired.  That why we 
have far more users in the world than programmers.

Programmers can meet their own needs; they have the skills and motivation 
to do so.  Rich people and corporations can easily afford to pay someone to 
write the code they need.  What about the little guy?  End users and small 
companies probably can't afford to pay for the code they need, and they may 
not have the skills to write it themselves.  If the GPL dominates and there 
is no longer a profit incentive for selling end-user software, how will the 
needs of those end users be served?

> > > Yes, like TG releasing D3D code in five years or so...
> >
> > That's better than never getting it.  And you're free to write it first 
> > and not wait on them...
> 
> Yes, and I'm free also to put that code under the LGPL :)

Certainly.  Of course, don't be surprised when another company looks at 
what happened with Transgaming and decides that the "Street Performer 
Protocol" is unworkable -- and sticks with closed software instead...

> > > The difference is, that if an LGPL project forks, the license is usually
> > > maintained, so every fork can also benefit from the work in other forks.
> > > With BSDL this is not the case, since some forks can be proprietary.
> >
> > True, but the natural inefficiencies of maintained forked codebases 
> > tends to mitigate against this to a certain degree, while the increased 
> > profit incentive encourages adoption by proprietary interests, who 
> > might tend to release non-strategic code back to the public project.
> >
> > Back to the original question: which is better, 100% of a smaller pie 
> > or a fraction of a much larger pie?
> 
> You assume that the BSD pie will be larger. But in practice I see the 
> opposite happening in some cases. Take Linux for example. There is a list 
> of big companies supporting/developing Linux: IBM, SGI, Red Hat, SUN, etc...
> If the BSDL was really superior then all these companies would be 
> using/improving FreeBSD instead. I would bet now that the company funded 
> improvements on Linux are much bigger than the FreeBSD related ones. So we 
> are getting 100% of a BIG PIE with the GPL.

I don't assume that the BSD pie will be larger, but that it CAN be larger.
It all depends on the situation.  I think a vital, active project such as 
Linux could work well under the BSD license.  For smaller and less active 
projects, a more restrictive license (perhaps the GPL) might be preferable.

But don't make the mistake of assuming that Linux/GPL is somehow better 
than FreeBSD/BSD just because that's what everyone is working on.  That's 
like assuming Windows is better because most commercial software is aimed 
at Windows platforms.  It's all about network effects -- to a large degree, 
all those companies are working on Linux *because* the others are also.  It 
could have easily been FreeBSD instead; it just didn't work out that way.

As for the "BIG PIE" we're getting with the GPL under Linux, that would 
only apply to kernel changes.  While some vendors (particularly Red Hat) 
may be active in kernel development, most of the Linux-supporting vendors 
are actually doing non-kernel coding, which may or may not be released.  
You don't see Oracle releasing their database under the GPL, do you?

Yes, Sun released OpenOffice under the GPL (among other licenses), but that 
was mostly to quiet the GPL zealots who wouldn't accept anything less, even 
an open license like SISSL.  We all got a big windfall with OpenOffice, but 
Sun isn't seeing a direct return to match their investment.  Their intended 
return is a more open marketplace where Microsoft is weakened by the free 
code they've turned loose as a loss-leader.  (Let's hope it works!)

Apache is under a very fre BSD-like license, and they're getting a LOT of 
development -- would the GPL really help Apache?  I doubt it...

Deven