On Tue, 27 Feb 2007, Dan Armbrust wrote:

> On 2/27/07, Mike Miller <mbmiller at taxa.epi.umn.edu> wrote:
>
>> I don't think the problem is that the GPL is hard to understand, I 
>> think the problem is that many people haven't tried to understand it.
>
> The fact that we can't even agree whether or not the rest of the 
> software that runs a microwave needs to be released if they use any GPL 
> software in the microwave makes the hard-to-understand part clear to me.

The thing is, there was one guy who didn't know what he was talking about 
making unsupported claims, using no references, and he was completely 
wrong.  If that's how we determine what is hard to understand, almost 
everything is hard to undrstand, and that definitely includes the BSDL.


>> Clarification:  Did IBM say that they would not have been interested in 
>> your code if it had been released under the GPL?  IBM has been very 
>> supportive of Linux (GPL), so I don't think that would kill their 
>> interest.
>
> It all depends on which market you are in - Obviously, if they are 
> looking to build on something, and sell it as a product, they can't use 
> GPL.  This is why the eclipse foundation does not use GPL - IBM builds 
> tons of expensive products on top of it - and they are bound very 
> tightly into the Eclipse base code.

So you are using the Eclipse Public License which at a mere 1700 words of 
legalese is the very model of clarity and breeze-easy readability:

http://www.eclipse.org/org/documents/epl-v10.php

It seems to be a pretty good license though and it might turn out to be 
GPLv3 compatible.  Still, I think problems with ease of understanding are 
there with any license.  At least with the GPL we have many years of 
debate and test cases already behind us.  There are many web pages and 
even books written about it.


>> Do you have a reference on that?  I can't find anything about a license 
>> for ODF.  Are you sure you aren't thinking of a specific program that 
>> implements ODF?
>
> Well, I just jumped out to the OpenOffice website, and noted that they 
> use the LGPL.  I assumed, perhaps wrongly, that that also covers their 
> specification.  Perhaps it doesn't.  My poorly researched point was 
> supposed to be that if the standard was released under GPL, and that 
> required implementing software to also be GPL, then there could never be 
> commercial software which implements the standard.  In hindsight, I 
> don't know how GPL applies to standards, as opposed to source code.

Right.  I don't think it applies to standards in the same way but I am no 
expert.  I do think your idea about standards is solid though -- if you 
want to promote a standard, license software implementing that standard 
under BSDL instead of GPL.  You don't care about being involved in further 
development; you just want the standard to be used.  So I agree with that 
idea, at least if there may be strong interest from commercial developers 
(otherwise the GPL might still do better because of its "viral property").


>> > Apache and Eclipse are two very large and growing software 
>> > ecosystems. You know why?  No GPL!  Ton's of commercial companies use 
>> > their software!  And many of those commercial companies have people 
>> > that spend time fixing bugs in that same software.  Like me, for one.
>> 
>> That is another peculiar and unsupportable claim.  Why would you think 
>> that Apache is successful because it is not under the GPL?  I think it 
>> is because Apache is a nice program.  Many nice programs are 
>> distributed under the GPL and they are successful.
>
> I was thinking more of the Apache organization as a whole, not the httpd 
> server project.  The Apache project includes tons of software this is 
> used and well maintained by a lot of people working in companies that 
> release commercial software built on top of these tools.
>
> If I go looking for java utilities, there is hardly anything out there 
> under the GPL.  Almost all of the useful stuff is under Apache Jakarta, 
> or some other "more free" license which allows them to be used in 
> commercial software.

OK, that's cool, but your claim is that absence of GPL is the key to their 
success.  We don't know however what would have happened if the code had 
been released under the GPL.


>> > GPL is not about free.  Its about an impossible to achieve pipe 
>> > dream.
>> 
>> That's a peculiar statement.  Really, some of you guys say the craziest 
>> things.  GPL (as compared to BSDL) is about encouraging people to help 
>> a project to grow.  If I write some code, distribute it under the GPL, 
>> and someone sends me a patch or some additional code to be incorporated 
>> under the GPL, then it has succeeded and the GPL has made my dream come 
>> true. The GPL offers more encouragement for future development than 
>> does the BSDL.  You might call it a "viral quality" of the GPL that the 
>> BSDL lacks.
>
> You see the viral quality as giving you more patches from more users. I 
> see the viral quality as preventing day-to-day software developement 
> professionals that work for a company that sells software from ever 
> touching your code.  So you get less exposure, and less growth.

Maybe, but how can we decide?  GPL code seems to be thriving, as in Linux 
distros, etc.  So the GPL doesn't stop professionals from working with the 
code.  Over time, as the projects become more advanced, the viral aspect 
will become even more potent because there will be more GPL code 
available.


>> > There is, and always will be a place for commercial software.
>> 
>> Irrelevant.
>
> No, not really.  Once software developers graduate from college, 
> suddenly, someone needs to pay them, so they can make a living.  No one 
> is going to pay them if their competitors can use their work for free.

There is some truth in that, but we are not talking about the future of 
commercial software -- we agree that it has a future.  We're talking about 
BSDL v. GPL, thus the "irrelevant."  I should add that it is possible to 
make a living just working with GPL code.  Most of the money probably 
comes from support contracts, but money can be made.


>> What requires "massive amounts of money to develop?"  Can you give an 
>> example.  I can't envision a software project that is not doable under 
>> the GPL.
>
> Are you willing to shell out the money it would require to hire the 
> professionals that you would need to decipher the US tax code?  Do you 
> really think that people who make their living studying the US tax code 
> are willing to work for free?  The money has to come from somewhere.

I guess there are a few GPL tax programs.  Why should someone write GCC 
for free?  That must have been hard.  How about OpenOffice?  R?  Octave? 
All these projects were massive efforts but they happened.


>> It might take more time, of course.  Also, the fact that something is 
>> GPL doesn't mean it can't have massive amounts of money behind it. For 
>> example, governments can produce GPL software.  I can write a grant to 
>> NIH and get hundreds of thousands of dollars to support software 
>> development.
>
> You could, but why would the NIH want to prevent companies from being 
> able to build something even better on top of what they have paid for? 
> As a matter of fact, much of the work that I did at Mayo was funded by 
> NIH contracts, and the contract specifically required that the end 
> result be open source - and not GPL.

That is really bad news and I hadn't heard that before.  The reason it is 
bad news is that a fork from the original project can steal the code and 
basically leach off of the original developers.  As the original 
NIH-funded developers continue to produce new code, the leaches take that 
too.  They add a few bells and whistles and tell people "it's based on 
Project X code, but it has the better interface, yadda, yadda" and people 
might use the stupid thing.  I don't want that to happen to me, thus I 
want to develop under the GPL.  If NIH tells me they want BSDL, or 
whatever, instead of GPL, they will have a huge fight on their hands.  I 
have a lot done already, and it is GPL, so I can't see myself making the 
rest of it BSDL.

I know of other NIH-funded projects that are GPL or even more restrictive 
(e.g., binaries-only or modify-but-don't-distribute), so I don't think 
this is a general rule.  I would like to know more about your experience 
with NIH and what their rationale was (or even who that came from).

Most of my code runs within Octave or R (both GPL projects), so I have 
another reason to distribute it under the GPL, but I don't think it is 
required by the GPL.


>> It would be possible for federal and state governments to provide tax 
>> software under GPL or compatible license.  They might not do it because 
>> of the proprietary lobby, but it doesn't sound like a bad idea to me.
>
> Agreed - but if they did provide this software, why should people be 
> prevented from improving it even further, and charging for their work?

Under the GPL, they aren't prevented from doing that.  You really should 
read the GPL FAQ.  Seriously, I think if you read through it you might 
find that you have some misconceptions.


> In reference to your work - choosing GPL over other licenses basically 
> gives you a different set of potential contributers.  GPL gives you 
> folks that also believe that anything that touches your code (where 
> touches can't even be defined without lawyers and judges) should also be 
> free.

They don't have to believe any particular software philosophy to be able 
to contribute to my project.  They have to be willing to contribute 
something though.

I think the GPL FAQ explains the license well enough that I wouldn't need 
to consult an attorney.


> But, a more free license would also give you these same people.

I don't agree.  Why wouldn't those people just take my code, make their 
own program out of it, spruce it up a bit, sell it as a competing program 
and offer me nothing at all in return?  The BSDL would allow that, but the 
GPL would not.  This is the #1 reason why I would strongly prefer the GPL 
to the BSDL.


> GPL cuts you off from anyone working on a commercial product, and you 
> lose the potential of having all of those professional people sending 
> you bug fixes and improvements.

No.  Seriously -- the opposite is true.  With the GPL, a commercial 
developer is required to share improvements with me if he's going to sell 
software based on my code.  With the BSDL, he is not required to help me 
in any way whatsoever.  I see what you are thinking though.  Sometimes the 
BSDL will encourage commercial developers to get involved where they would 
not have done so with the GPL, but it can go either way.


> From my experience, you don't need to have the GPL forcing people to 
> give back changes - they are happy to do it anyway, because they want 
> those fixes in the next version that you release.

Unless they are a competitor.  Then they will do nothing for me.


> And what is gained by keeping your competitors from using your program? 
> You aren't suffering a financial loss, unless you are charging in a 
> different way - such as for support.  You aren't losing developers, 
> because the competitors developers aren't going to work on your program 
> for you just because it's GPL.

As mentioned above and below -- if competitors can use my program, they 
will have all of my work and all the features I developed over the course 
of many years of effort instantly added to their program for free.  They 
are my *competitor*, so that is a problem for me.  A competitor can't do 
that to me when my code is under the GPL.


> I just don't see any way that the GPL license itself is going to drive 
> more developers to your code.

The reason is that if they make a fork of my code, I can fork it right 
back to my code base, if I want to, so they might as well just give it to 
me and let me develop it with their assistance.  This is what is going on 
with R, Octave and other GPL projects I've been connected with over the 
years.  With the BSDL it is more of a crapshoot and anyone can run off 
with your code and use it against you.

I realize now that there are different software realities out there and 
for some people the BSDL is probably a better choice.  For someone like me 
working on scientific software, the GPL is clearly the better choice.

Thanks for coming back with some good answers.

Mike