Re: Economics and the GPL

Francois Gouget <[email protected]> Sat, 15 Jun 2002 02:30:18 -0700 (PDT)
Newsgroups gmane.comp.emulators.wine.license
Message-ID <[email protected]>
On Mon, 10 Jun 2002, Deven T. Corzine wrote:

> On Sat, 8 Jun 2002, Francois Gouget wrote:
[...]
> > I really resent this abuse of 'coerce' by *GPL opponents. It's akin to
> > libel. I apologize to Deven because the following email is not
> > specifically about things he said (hence the reply to just the list).
> > It's just that this 'coerce' is sort of the last straw that broke the
> > camel's back.
>
> Don't label me as a *GPL opponent.  I was a *GPL proponent for many years
> and only recently have I started to question it.

Frankly, you are obviously having more than just doubts. And despite
whatever you may say, I really don't see anything in your discourse that
distinguishes you from anti-GPL zealots.


> There's nothing libelous about this usage of "coerce".

Reading some other emails you wrote about third-world countries, I can
see how you would be completely oblivious to the offensive nature of
what you wrote here.


> It's description of fact, nothing more.

It is not a fact.

   coerce tr.v.
       1.To force to act or think in a certain way by use of pressure,
         threats, or intimidation; compel.
       2.To dominate, restrain, or control forcibly: coerced the
         strikers into compliance. See Synonyms at force.
       3.To bring about by force or threat: efforts to coerce agreement.

Certainly you cannot disagree that coerce is a word with very strong
meaning. Now, developpers working on GPL code have agreed to the terms
of the GPL when they started using it, otherwise they would not be using
it. So how can they be forced to follow these terms when they already
have agreed to them. You cannot be forced to do that which you have
already decided to do.

So your use of 'coerce' is a mischaracterisation of the GPL license. And
that's your bias showing.


[...]
> > Nobody coerces you to apply the *GPL to your code. If you made the
> > *choice* to use some piece of software that is under the *GPL then it
> > was with the understanding and agreement to the consequences. It means
> > you considered the temrs fair or at least still to your benefit.
>
> I never said anyone coerces you into using *GPL code.  I said that the GPL
> "coerces the programmer into applying the GPL to other code that might not
> have been licensed that way given a choice."
[...]
> That's coercion, plain and simple -- after the choice was made to use GPL
> code, the programmer never again gets a choice with the derived code, even
> if the ultimate result is that the program gets to a point where the new
> code dwarfs the original GPL code, ALL of the derived code is forced to be
> licensed under the GPL.  How is this not coercion?

It's not coercion because it is something he agreed to from the
beginning. Again, your choice of words is either very poor or
intentional. I'm not sure which is worse.

Furthermore, if you are the _sole_ copyright holder for a piece of code,
then you can change its license whenever you want. If you have really
modified or added to the code so much that the code on which you don't
hold the copyright has been isolated to a specific area of the project,
then you can remove that code altogether and reimplement it. Then you
are the sole copyright holder of all the code and you can license it
however you please. And if, like in your scenario above, your code
already dwarfs the original GPL code, then taking it out and
reimplementing it should be an easy matter.

Of course this assumes that there is a single copyright holder, for
instance a company. If that's not the case, then changing the license
requires the agreement of all copyright holders.


> It's voluntary for now.  But once you choose to use the GPL, you can't go
> back and change your mind later without starting over from scratch and even
> competing against your OWN code!

If it's your own code then you can change the license anytime you want.
If it's not just your own code, then you must have the agreement of the
other copyright holders. It's only fair since you are effectively trying
to change the license of *their* code. And if they don't agree, then you
can still change the license to the pieces for which you are the sole
copyright holder, i.e. your own code, so you don't have to start from
scratch.

<aside for would-be project leaders>

Copyright assignment btw is an important point to consider when starting
a project. If you require copyright to be assigned to you, then it gives
you the power to change the license whenever you want (1. assuming the
license would not allow it otherwise; 2. of course this is never
retroactive). But it may also turn off potential contributors. I'm
pretty turned off by projects that require copyright assignments because
they give themselves rights that they deny me. This is one (small)
reason why I will probably never make significant contributions to any
of the FSF projects (the bigger reason being that I am unlikely to ever
have the time anyway so the point is moot).

An alternative is to use the X11 or BSD licenses which let you change
the license of the project without requiring copyright assignment. But
then, so can others. So you may end up facing competition from companies
or forks based on incompatible licenses, both of which have the
potential of taking users and developpers away from your project.

Which is the right choice? There is no definitive answer. There are a
lot of other aspects of the license to take into considaration in
relation with your project. So this decision must be made on a case by
case basis, and even so, the choice may not be clear-cut.

</aside>


> > First, your code is still available under the X11 license, just get the
> > CVS of the 2002/02/28.
>
> I'm not one of the people making this claim.  (For that matter, none of my
> code is in that CVS server!)

I know you are not claiming. This is why I clearly stated right from the
start that most of my email was not in response to your email
specifically.


> > Second, before contributing to an X11 Wine you should have read the
> > license! By contributing to the X11 Wine you gave your permission for
> > your code to be used in any LGPL project. Guess what! That's by design.
> > Anyone could have forked Wine and started an LGPL branch at any time. So
> > if you contributed with the expectation that the license of the 'main'
> > branch would never/could not be changed you were wrong. Neither the X11
> > or the 2-clause BSD license offers any such garantee.
>
> I'm surprised such a fork wasn't created earlier, actually -- even if not
> by the participants in the original project.

So would you be surprised to learn that Wine was originally under the
GPL license and that the switch to the LGPL was actually the third
license change?


> In my message you replied to, I wasn't even talking about Wine anymore, but
> the nature of the GPL, and the possible dangers of a GPL monopoly.

Yes I know you were quite off-topic <g>. And I should probably not have
answered because of that. But anyway, as I said already, this was not
specifically in response to your message.

Actually, I believe only the 'coerce' part was in response to your
message.


> To be exacting about this, the GPL is just as "proprietary" as Microsoft's
> EULA is.  The proprietor (such as it were) of GPL code is the community of
> developers willing to operate under the restrictions of the GPL, rather
> than a single legal entity.  In fact, it is the coercion within the GPL
> which makes it proprietary -- the BSD and X11 licenses are not proprietary.

There you go again completely distorting the meaning of words just to
fit your claims.


> > Following the usual 'economic' reasoning, if proprietary versions of an
> > X11 and *BSD project thrive, it's because they offer many compelling
> > proprietary features that are missing in the open-source project.
> > Another way to say this is that the open-source version is so behind the
> > times that nobody wants to use it. Is that a win for the X11 and *BSD
> > licenses? I would rather call it a farce.
>
> The code still benefits more people if more people are using it, even if
> some of those users are paying for proprietary versions of the code.  And a
> proprietary version doesn't need to offer "many" compelling features, only
> a single one.  And that feature might well be support or documentation, not
> necessarily code.  Anything the user is willing to pay for.

Wonderful! You have just rediscovered the 'support' and 'widget
frosting' open-source business models. Anyone can offer support and make
documentation of *GPL software. So this is by no means a distinguishing
feature of *BSD licenses. And I don't see why they would would not be
successful with *GPL software if they can be successful with *BSD
software.


> Many have tried to make all sorts of business models with with the GPL, yet
> none have been fantastically successful.  Make all the arguments you want,
> but history isn't being terribly supportive of the business case for using
> the GPL.  I'm not saying it's impossible to make a profit this way, but it
> has tended to be relatively disappointing, and we have to ask why.

These are the same business model which you were using above to prove
that a proprietary software can coexist with its *BSD cousin. Now you
say that these models cannot work, so obviously such cohabitation should
be impossible, no?

Anyway, if the *GPL licenses really make businesses fail, then that's
the answer to your fears about the *GPL destroying the software
industry.

Currently we are in a situation where proprietary software utterly
dominates the software landscape, and where companies owning this
software are asking more and more of their users. The result is an
upswell in open-source software, under many licenses among which GPL,
BSD and X11. So the rise in popularity of these licenses is a reaction
to the excesses of the proprietary software vendors (rise facilitated
by the Internet, no doubt).

Now, if the GPL starts to dominate the market, and if as you claim it
makes it impossible (or very difficult) for businesses to make a living,
then businesses based around the *GPL will obviously disappear at the
first economic downturn or be outdone by their BSD/X11 or proprietary
cousins. Then, only individual part-time volunteers will be left to
contribute to *GPL software, which you seem to believe will not be able
or willing to meet customers demand. Thus, the market will be open for
proprietary software starting either from scratch or from BSD/X11
projects and we will see a swing back towards proprietary software.

And if the GPL fails to dominate the market, or does not make it so hard
after all for companies to make a living, then there is no reason to
fear that it will destroy the software market.


> > If your competitor can take advantage of that GPL code then why can't
> > you?
>
> Because (for whatever reason) you're not willing to abide by its demands.

Then you have only yourself to blame. If you are running a car wash and
for moral reasons refuse to pay your employees less than $100.000 a year
(note for people not in the US, that's way more than the average salary
here), then you are putting yourself at a disadvantage. Furthermore,
your stock-holders (assuming there are any) could convincingly argue
that you were not acting in their best interests and sue you.

Similarly, if your _sole_ reason for not using *GPL is that "you're not
willing to abide by its demands", then you are not acting in the best
interest of your business and have only yourself to blame.


> >  * because of the way your software is architectured? Would you complain
> > that your competitor's architecture makes it easy for them to handle
> > double-byte characters but yours does not? Of course not. Then you have
> > only yourself to blame if you cannot use the GPL code.
>
> This isn't about the technical quality of the code, only the license.

Hey, I'm just trying to be exhaustive and cover all the possibilities.
Otherwise the argument would be full of holes.


> Maybe one platform is proprietary and the other isn't, but each serves the
> same purpose ultimately, and for the purposes of the product in question,
> the user might not care about the platform.  Consider a device like the
> TiVo -- it's a standalone box which serves certain functions; it matters
> little to the user what the underlying platform is.  It's a black box.

Then why don't you use the platform which is not proprietary? If your
competitor can, then again, why can't you? In your scenario the platform
does not matter, one will let you take advantage of a wealth of GPL
software and the other not, so if you choose the proprietary platform it
better have a pretty damn good advantage of its own. If you choose the
proprietary platform it is because in your opinion its advantages
(technical, price, availability, etc.) outweight the disadvantages of
not being able to use GPL code. Yes you have to make choices but that's
life.

And, btw, in the case of the TiVo, it is based on GPL software,
specifically because it's a black box and it does not matter to the user
what they are using.


> >  * because of philosophical reasons? Well, you are not going to complain
> > about that, are you?
>
> The most obvious reason is that it's incompatible with the company's chosen
> business model.

As you said, the company has *chosen* this business model. So why are
they complaining? There are tons of things that the choice of a business
model makes possible or impossible. Using GPL code is just one of them.


> > So if you *cannot* use GPL code while your competitors can it's only
> > because of self imposed restrictions not by the GPL's fault.
>
> It's possible that the competitor will choose to use the GPL and ultimately
> go out of business as a result of that choice.  If it turns out that using
> the GPL can't sustain a viable business model, should each competitor in
> that market go out of business as well, just to be able to use the GPL code
> and keep up with the competition until they fail?

Definitely not. Individuals and companies should they choose to use the
GPL if it is the wrong license for their market? Use the right license
for the situation!

I am not claiming that the GPL is the right license for every case. But
unlike you I am not claiming either that the GPL will coerce developpers
into doing things they did not want to do, kill all businesses that use
it, be the next monopoly, destroy the software industry... or in short
be evil or part of an evil plot by Stallman and the FSF.


--
Francois Gouget         [email protected]        http://fgouget.free.fr/
      Broadcast message : fin du monde dans cinq minutes, repentez vous !