My brief and torrid affair with Ruby

We’re rather arguing semantics here.

Obviously no library can force its use on a developer.
Hmm, if it could, that might be profitable. :slight_smile: Don’t
give this idea to certain people.

The point is that IF YOU DO USE A GPL’d LIBRARY them the
GPL does force you to change the license (unless you
want to remain in non-compliance of the GPL).

The alternatives to the GPL’d library may be buggy or
inferior or even nonexistent. So your options become:

  1. Throw away your project
  2. Implement a new library yourself
  3. Change license to the GPL

Is it any wonder that most people would choose (3)? And in
many cases this might be equivalent to (1)…

The whole discussion of choices reminds me of two things.
Henry Ford commenting on the Model T – “They can have
any color they want, as long as it’s black.” And my mother
at the dinner table when I was a child: “You have two choices.
Take it or leave it.” :slight_smile:

Hal

···

----- Original Message -----
From: “Daniel Carrera” dcarrera@math.umd.edu
To: “ruby-talk ML” ruby-talk@ruby-lang.org
Sent: Wednesday, July 09, 2003 1:49 PM
Subject: Re: My brief and torrid affair with Ruby.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Thu, Jul 10, 2003 at 01:29:05AM +0900, Rasputin wrote:

If I spend the effort to write code, I think I should be allowed to
choose what to do with it, rather than leave that choice to the author
of a library I used. That’s not free in my book.

This is exactly what people get wrong about the GPL!!!
The GPL does NOT inhibit your ability to choose what to do with your
work!!

The GPL does NOT change the license of your work. It is simply not
possible for copyright law to do that, and the GPL doesn’t try to. The
GPL will NOT alter the license of your work.

–
Hal Fulton
hal9000@hypermetrics.com

If I spend the effort to write code, I think I should be
allowed to choose what to do with it, rather than leave that
choice to the author of a library I used. That’s not free in my
book.
This is exactly what people get wrong about the GPL!!! The GPL
does NOT inhibit your ability to choose what to do with your
work!!

Actually, it does. See my other message on this matter.

The GPL does NOT change the license of your work. It is simply not
possible for copyright law to do that, and the GPL doesn’t try to.
The GPL will NOT alter the license of your work.

Your work, no. Your distributed program, yes.

You are given a library and you are allowed to use it under
certain conditions. You have a choice. Either comply, or don’t use
it. If you “mistakely” break the license (e.g. by including some
of it’s code into your programs) your work does not suddenly
change license. It’s still yours and you choose what to do with
it. Rather, you are in violation of the GPL license, and if you
don’t like the GPL terms you should remove the relevant code.

The problem here isn’t “including the code” – that would violate
the LGPL, too – it’s using the services of a library. Arguably
not including the code.

  • -austin

austin ziegler * austin@halostatue.ca * Toronto, ON, Canada
software designer * pragmatic programmer * 2003.07.09
* 16:34:59

···

On Thu, 10 Jul 2003 03:49:02 +0900, Daniel Carrera wrote:

On Thu, Jul 10, 2003 at 01:29:05AM +0900, Rasputin wrote:

I’m not the questioner, but I don’t see anything malevolent in
calling the GPL viral. It can be a feature, but it is something
that should be aware of. Frankly, despite RMS’s protestations, the
GPL should not be used for any library, only applications.
Precisely because of the viral nature of the GPL. (Of course, I’m
also of the opinion that the “or later version” is a bad thing,
because of stuff I’ve heard about what might happen in GPL3.)

With respect to software, the use of a GPLed program may force you
to choose a licence that you don’t like for your own programs. If I
create a program that I wish to licence as BSD, but use a GPLed
library (no matter how insignificant), the whole work must be made
available under the GPL – not BSD. Thus, I’ve got a situation where
my new original work (without the GPLed library) is BSD, the library
is GPL, but the whole work is GPL. This is viral – or perhaps
parasitic (and I do consider that to be negative).

Frankly, what I don’t like about the GPL even for programs is that
I have to ship a licence that contains a lot of philosophical
twaddle. If I choose a GPL-clone that doesn’t have the philosophical
twaddle, then by definition my software is incompatible with the
GPL and the code “should not be combined.”

The GPL’s viral nature (the “copyleftness”) is a feature, not a bug,
but it’s not appropriate for large classes of software.

Regarding whether GPLed libraries “taints” Ruby:

The FSF presumes that any inclusion of one file by another is the
creation of a derivative work of the two files. When talking about
physical inclusion, this is absolutely the case. When talking about
linking – static or dynamic – the situation is far less clear.
(The SCO case appears to centre around some of this.) If I link to
the standard C library, is my program a derivative work of that
library? What if I do so as a dynamic link?

Static linking has a much better case for the idea that there’s
cross-contamination and physical inclusion and a derivative work is
created. Dynamic linking, however, is much less likely to be the
case, because most copyright laws have exemptions for memory caches
and active memory (apparently, in the 80s, some folks tried to
charge for two licences for every running copy of a program – one
for the copy on disk, one for the copy in memory).

This point, despite the FSF’s claims, has not been decided one way
or another, either by law or caselaw.

I personally recommend that the LGPL, MIT, or modified BSD licence
be used for software that is intended for use by other software.

  • -austin

austin ziegler * austin@halostatue.ca * Toronto, ON, Canada
software designer * pragmatic programmer * 2003.07.09
* 16:13:33

···

On Thu, 10 Jul 2003 03:50:54 +0900, Daniel Carrera wrote:

On Thu, Jul 10, 2003 at 12:02:01AM +0900, Michael Campbell wrote:

Pithy sayings don’t prove much and are hardly universal. I
understood the OPs meaning when he said the GPL was viral in
nature. Did some HONESTLY not, or are they picking semantic nits?
I’m not sure what you mean by your question. I honestly interpret
malevolence in the term “viral”. And I honestly think that the
term viral is very incorrect (even if you remove the malevolence
bit). I honestly believe that the GPL does not share any
resemblance to a virus.

I don’t think that we are arguing semantics. There is a big difference
between the GPL and a viral license.

A virus forces its own spread. The GPL does not. Okay, what if the
alternative libraries aren’t as good? Whether you like the alternatives
or not does not make the GPL viral.

By the same token I could argue that all commercial licenses are viral.
The charge me money, which then requires me to charge money for my
product, hence making my work commercial.

You made an analogy with your mom saying “You have two choices. Take it
or leave it.”

Alright, I accept the analogy. Yes, your choices with are GPL program are
“take it or leave it”. Those are the same choices as with any other
license. So what’s the problem? If you don’t like it, don’t take it.
But the GPL doesn’t force itself on you. If you don’t like the competting
products that’s not the GPL being viral.

···

On Thu, Jul 10, 2003 at 04:05:00AM +0900, Hal E. Fulton wrote:

We’re rather arguing semantics here.

Obviously no library can force its use on a developer.
Hmm, if it could, that might be profitable. :slight_smile: Don’t
give this idea to certain people.

The point is that IF YOU DO USE A GPL’d LIBRARY them the
GPL does force you to change the license (unless you
want to remain in non-compliance of the GPL).

The alternatives to the GPL’d library may be buggy or
inferior or even nonexistent. So your options become:

  1. Throw away your project
  2. Implement a new library yourself
  3. Change license to the GPL

Is it any wonder that most people would choose (3)? And in
many cases this might be equivalent to (1)…

The whole discussion of choices reminds me of two things.
Henry Ford commenting on the Model T – “They can have
any color they want, as long as it’s black.” And my mother
at the dinner table when I was a child: “You have two choices.
Take it or leave it.” :slight_smile:

Hal

–
Hal Fulton
hal9000@hypermetrics.com


Daniel Carrera | OpenPGP fingerprint:
Graduate TA, Math Dept | 6643 8C8B 3522 66CB D16C D779 2FDD 7DAC 9AF7 7A88
UMD (301) 405-5137 | http://www.math.umd.edu/~dcarrera/pgp.html

Alright, I accept the analogy. Yes, your choices with are GPL
program are
“take it or leave it”. Those are the same choices as with any other
license. So what’s the problem? If you don’t like it, don’t take it.
But the GPL doesn’t force itself on you. If you don’t like the
competting
products that’s not the GPL being viral.

IS the GPL “take it or leave it”? Can you “take it” and keep your own
work non-GPL’d (and not be in violation of the GPL?)

Yes, the GPL is “take it or leave it”. Your options are:

“take it” - include GPL code in your work and comply with the GPL.
“leave it” - don’t do the above.

Some people think that the GPL forces the “take it” option on people. It
doesn’t.

Does that answer your question? Or did I misinterpret it?


Daniel Carrera | OpenPGP fingerprint:
Graduate TA, Math Dept | 6643 8C8B 3522 66CB D16C D779 2FDD 7DAC 9AF7 7A88
UMD (301) 405-5137 | http://www.math.umd.edu/~dcarrera/pgp.html

···

On Thu, Jul 10, 2003 at 04:26:47AM +0900, Michael Campbell wrote:

IS the GPL “take it or leave it”? Can you “take it” and keep your own
work non-GPL’d (and not be in violation of the GPL?)

Sure, but this implies that you keep the work for yourself (or your
organization) and don’t distribute it.

···

On Thu, Jul 10, 2003 at 04:26:47AM +0900, Michael Campbell wrote:

Alright, I accept the analogy. Yes, your choices with are GPL
program are
“take it or leave it”. Those are the same choices as with any other
license. So what’s the problem? If you don’t like it, don’t take it.
But the GPL doesn’t force itself on you. If you don’t like the
competting
products that’s not the GPL being viral.

IS the GPL “take it or leave it”? Can you “take it” and keep your own
work non-GPL’d (and not be in violation of the GPL?)

–
_ _

__ __ | | ___ _ __ ___ __ _ _ __
'_ \ / | __/ __| '_ _ \ / ` | ’ \
) | (| | |
__ \ | | | | | (| | | | |
.__/ _,
|_|/| || ||_,|| |_|
Running Debian GNU/Linux Sid (unstable)
batsman dot geo at yahoo dot com

Absolutely nothing should be concluded from these figures except that
no conclusion can be drawn from them.
– Joseph L. Brothers, Linux/PowerPC Project)

OK, let me back up a little.

Are you honestly saying that you don’t understand
why people don’t like the GPL?

Hal

···

----- Original Message -----
From: “Daniel Carrera” dcarrera@math.umd.edu
To: “ruby-talk ML” ruby-talk@ruby-lang.org
Sent: Wednesday, July 09, 2003 2:31 PM
Subject: Re: My brief and torrid affair with Ruby.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Thu, Jul 10, 2003 at 04:26:47AM +0900, Michael Campbell wrote:

IS the GPL “take it or leave it”? Can you “take it” and keep your own
work non-GPL’d (and not be in violation of the GPL?)

Yes, the GPL is “take it or leave it”. Your options are:

“take it” - include GPL code in your work and comply with the GPL.
“leave it” - don’t do the above.

Some people think that the GPL forces the “take it” option on people. It
doesn’t.

Does that answer your question? Or did I misinterpret it?

–
Hal Fulton
hal9000@hypermetrics.com

IS the GPL “take it or leave it”? Can you “take it” and keep your own
work non-GPL’d (and not be in violation of the GPL?)

Yes, the GPL is “take it or leave it”. Your options are:

“take it” - include GPL code in your work and comply with the GPL.
“leave it” - don’t do the above.

Some people think that the GPL forces the “take it” option on people. It
doesn’t.

Does that answer your question? Or did I misinterpret it?

Not really, no. My question was, given the following two invariants:

i) non-GPL-violation
ii) intent to distribute

can you use GPLd code and NOT GPL /your/ code?

I honestly don’t know, but I’m guessing not.

I’m somewhat playing devil’s advocate here, and believe me that I do
understand your point. Too, I’m not sure if this is a “spirit of the law
vs. the letter of the law” type argument or not, but…

I /think/ what some people are associating with the viral-like-nature of the
license is the fact that “taking it” (assuming the 2 invariants) implies
that your own work gets [infected with] GPL’d in so doing. (If, in fact it
does, which as I say I don’t know, but think that’s the case.)

The fact you can choose to use the GPL or not doesn’t make the license
itself
any less “prone” (?) to “infect” your code if you DO use it. In
other words, if you use it, your code gets tainted with the same license,
no?

I can’t imagine how I gave you that impression.

I am saying that many of those people have a deep misunderstanding of the
GPL.

I know that there are many people who do understand the GPL and have good
reasons not to like it. I understand these reasons and this is not what I
have been talking about. The fact that certain people might have reasons
not to like the GPL does not make the GPL viral. It simply makes it a
license that some people don’t like.

What I have been arguing is that the GPL is not viral.
You might not like it, but it’s still not viral.


Daniel Carrera | OpenPGP fingerprint:
Graduate TA, Math Dept | 6643 8C8B 3522 66CB D16C D779 2FDD 7DAC 9AF7 7A88
UMD (301) 405-5137 | http://www.math.umd.edu/~dcarrera/pgp.html

···

On Thu, Jul 10, 2003 at 04:52:52AM +0900, Hal E. Fulton wrote:

OK, let me back up a little.

Are you honestly saying that you don’t understand
why people don’t like the GPL?

The fact you can choose to use the GPL or not doesn’t make the license
itself
any less “prone” (?) to “infect” your code if you DO use it. In
other words, if you use it, your code gets tainted with the same license,
no?

Not “gets tainted”. You’ll just have to choose to taint it or replace
the library if you’re going to distribute it.

Now, look at it from the developer of a library’s point of view:

Seems fair to me: If I put a lot of work into a project for
“humankind’s greater good”, I don’t want people snapping it up and tying
it into some ad-supported piece of “free”-ware, and I don’t really want
it tied into some piece of commercial software I can’t see. Part of the
fun of coding for users of open source is getting to see what’s done
with it.

That said, I’d probably BSD-license or LGPL (more likely for me) code
that I thought was “useful”, but code I thought of as “innovative”, I’d
probably GPL.

Ari

OK, Daniel, let’s put it this way: if you do not use something there’s
nothing to like or dislike. Only usage makes it likable or dislikable. So
those who use (or consider to use) GPLed libraries do not like GPL because
it forces them to forfeit their own code.

Gennady.

···

----- Original Message -----
From: “Daniel Carrera” dcarrera@math.umd.edu
To: “ruby-talk ML” ruby-talk@ruby-lang.org
Sent: Wednesday, July 09, 2003 1:05 PM
Subject: Re: My brief and torrid affair with Ruby.

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

On Thu, Jul 10, 2003 at 04:52:52AM +0900, Hal E. Fulton wrote:

OK, let me back up a little.

Are you honestly saying that you don’t understand
why people don’t like the GPL?

I can’t imagine how I gave you that impression.

I am saying that many of those people have a deep misunderstanding of the
GPL.

I know that there are many people who do understand the GPL and have good
reasons not to like it. I understand these reasons and this is not what I
have been talking about. The fact that certain people might have reasons
not to like the GPL does not make the GPL viral. It simply makes it a
license that some people don’t like.

What I have been arguing is that the GPL is not viral.
You might not like it, but it’s still not viral.


Daniel Carrera | OpenPGP fingerprint:
Graduate TA, Math Dept | 6643 8C8B 3522 66CB D16C D779 2FDD 7DAC 9AF7 7A88
UMD (301) 405-5137 | http://www.math.umd.edu/~dcarrera/pgp.html
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (SunOS)

iD8DBQE/DHVrnxE8DWHf+OcRAtT+AKC9cUNMiBD5lMrgo6zlNILALO2UUQCg7/Y0
7r786xertMx/vjqV0xCZFbY=
=tEy+
-----END PGP SIGNATURE-----

Are you honestly saying that you don’t understand
why people don’t like the GPL?

I can’t imagine how I gave you that impression.

I am saying that many of those people have a deep misunderstanding of the
GPL.

I know that there are many people who do understand the GPL and have good
reasons not to like it. I understand these reasons and this is not what I
have been talking about. The fact that certain people might have reasons
not to like the GPL does not make the GPL viral. It simply makes it a
license that some people don’t like.

What I have been arguing is that the GPL is not viral.
You might not like it, but it’s still not viral.

Well, I personally never said it was viral. In any case,
that is a figure of speech. No one actually believes
that a license reproduces itself magically or even
programmatically.

I know you disagree, but I think this discussion is
largely semantic in nature.

I’ll summarize my own point of view, then I’ll refrain
from adding to this off-topic thread. FWIW, I don’t
think we “really” disagree here.

Many times when we say we are “forced” to do something,
we mean that we have chosen an unpleasant option that
was the least unpleasant of all our options. Often the
alternatives are so outrageous as to be eliminated
subconsicously.

“I had to eat broccoli.” No, you didn’t. You could have
gone hungry.
“I had to buy a black car.” No, you didn’t. You could
have ridden a horse.
“I had to appear in court.” No, you didn’t. You could
have become a fugitive.
“I had to hit my brakes.” No, you didn’t. You could have
simply hit the other car.

Suppose I want to write killer app X, and there is a library
Y (one and only one) that suits my purposes well. The others
are incomplete, buggy, inferior, written in COBOL, whatever.

What I want to do is use library Y and put my own app X
under my own FooBar license. Oops! Library Y is GPL.

My choices become:

  1. Don’t write app X
  2. Spend hundreds of man-hours rewriting library Y
  3. GPL my app

No, no one is “forced” to pick (3). But often the perception
is that (1) and (2) are even more unthinkable. That is why
people say that they are “forced” to GPL their code.

Of course it’s a figure of speech. I have the alternative of
not writing the code, just as I have the alternative of
being a truck driver instead of a programmer, or I have the
alternative of suicide instead of living.

First of all, let’s accept the constraints that “I remain a
programmer” and “I don’t kill myself” (and an infinite number
of other similar constraints, such as “the Earth is not
destroyed by an asteroid tonight”).

Then let’s add the constraints that: 1. I write the code;
2. I use the library; 3. I obey the license; then I AM FORCED
to GPL my code. Unless I am in in some bizarre parallel universe
where “A is not A” and there are more than five Platonic solids.

Cheers,
Hal

“Diagonally parked in a parallel universe…”

···

–
Hal Fulton
hal9000@hypermetrics.com

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

OK, let me back up a little.

Are you honestly saying that you don’t understand
why people don’t like the GPL?

I can’t imagine how I gave you that impression.

I am saying that many of those people have a deep misunderstanding of the
GPL.

I know that there are many people who do understand the GPL and have good
reasons not to like it. I understand these reasons and this is not what I
have been talking about. The fact that certain people might have reasons
not to like the GPL does not make the GPL viral. It simply makes it a
license that some people don’t like.

What I have been arguing is that the GPL is not viral.
You might not like it, but it’s still not viral.

Right, so you’re saying because it doesn’t hold a gun to my head to
make me use the library, it’s not viral?

That’s like saying because I didn’t force you to sleep with a
prostitute, what you have can’t be herpes.

Sorry, but I quite like that analogy. I’ll stop if you will :slight_smile:

···

On Thu, Jul 10, 2003 at 04:52:52AM +0900, Hal E. Fulton wrote:

–
Computer Science is merely the post-Turing decline in formal systems
theory.
Rasputin :: Jack of All Trades - Master of Nuns

Did you even bother to read my post?
I said that I understand how people might not like the GPL, and that
whether the like it is not the issue I am discussing.

GPL code imposes a condition upon its use that some people don’t like.
Fine. But you are not forced to use the GPL code, hence it is not viral.


Daniel Carrera | OpenPGP fingerprint:
Graduate TA, Math Dept | 6643 8C8B 3522 66CB D16C D779 2FDD 7DAC 9AF7 7A88
UMD (301) 405-5137 | http://www.math.umd.edu/~dcarrera/pgp.html

···

On Thu, Jul 10, 2003 at 05:13:48AM +0900, Gennady wrote:

OK, Daniel, let’s put it this way: if you do not use something there’s
nothing to like or dislike. Only usage makes it likable or dislikable. So
those who use (or consider to use) GPLed libraries do not like GPL because
it forces them to forfeit their own code.

Gennady.

Well, then we agree.

The problem is that some people do believe that the license reproduces
itself and can inadvertedly jump into your program if you are not
careful. Certain people at Microsfot have said exactly that, and some
people believe it.

Yes, I agree with everything you said in your last post.

Cheers,


Daniel Carrera | OpenPGP fingerprint:
Graduate TA, Math Dept | 6643 8C8B 3522 66CB D16C D779 2FDD 7DAC 9AF7 7A88
UMD (301) 405-5137 | http://www.math.umd.edu/~dcarrera/pgp.html

···

On Thu, Jul 10, 2003 at 05:28:56AM +0900, Hal E. Fulton wrote:

Well, I personally never said it was viral. In any case,
that is a figure of speech. No one actually believes
that a license reproduces itself magically or even
programmatically.

austin ziegler * austin@halostatue.ca * Toronto, ON, Canada
software designer * pragmatic programmer * 2003.07.09
* 16:51:07

···

On Thu, 10 Jul 2003 05:28:56 +0900, Hal E. Fulton wrote:

Are you honestly saying that you don’t understand why people
don’t like the GPL?

I can’t imagine how I gave you that impression. I am saying that
many of those people have a deep misunderstanding of the GPL. I
know that there are many people who do understand the GPL and have
good reasons not to like it. I understand these reasons and this
is not what I have been talking about. The fact that certain
people might have reasons not to like the GPL does not make the GPL
viral. It simply makes it a license that some people don’t
like. What I have been arguing is that the GPL is not viral. You
might not like it, but it’s still not viral.
Well, I personally never said it was viral. In any case, that is a
figure of speech. No one actually believes that a license reproduces
itself magically or even programmatically. I know you disagree, but
I think this discussion is largely semantic in nature. I’ll
summarize my own point of view, then I’ll refrain from adding to
this off-topic thread. FWIW, I don’t think we “really” disagree
here. Many times when we say we are “forced” to do something, we
mean that we have chosen an unpleasant option that was the least
unpleasant of all our options. Often the alternatives are so
outrageous as to be eliminated subconsicously. “I had to eat
broccoli.” No, you didn’t. You could have gone hungry. “I had to buy
a black car.” No, you didn’t. You could have ridden a horse. “I had
to appear in court.” No, you didn’t. You could have become a
fugitive. “I had to hit my brakes.” No, you didn’t. You could
have simply hit the other car. Suppose I want to write killer app
X, and there is a library Y (one and only one) that suits my
purposes well. The others are incomplete, buggy, inferior, written
in COBOL, whatever. What I want to do is use library Y and put my
own app X under my own FooBar license. Oops! Library Y is GPL. My
choices become: 1. Don’t write app X 2. Spend hundreds of man-hours
rewriting library Y 3. GPL my app No, no one is “forced” to pick
(3). But often the perception is that (1) and (2) are even more
unthinkable. That is why people say that they are “forced” to GPL
their code. Of course it’s a figure of speech. I have the
alternative of not writing the code, just as I have the alternative
of being a truck driver instead of a programmer, or I have
the alternative of suicide instead of living. First of all, let’s
accept the constraints that “I remain a programmer” and “I don’t
kill myself” (and an infinite number of other similar constraints,
such as “the Earth is not destroyed by an asteroid tonight”). Then
let’s add the constraints that: 1. I write the code; 2. I use the
library; 3. I obey the license; then I AM FORCED to GPL my code.
Unless I am in in some bizarre parallel universe where “A is not A”
and there are more than five Platonic
solids. Cheers, Hal “Diagonally parked in a parallel
universe…” – Hal Fulton hal9000@hypermetrics.com–

To try to inject a little reason here:

I think the main point of contention in this debate is the word "viral".

I believe that Daniel is interpreting “viral” strictly according to the
dictionary definition: “of, relating to, or caused by a virus”; and "virus"
as: “the causative agent of an infectious disease”.

I think that others are perhaps using a more generic definition of

“viral” more akin to “something that spreads through self-replication”. An
example of this usage is found in “viral email campaigns” where an email
encourages recipients to forward the email to other recipients, thereby
spreading through a sort of “self-replication”. I realize that I am
stretching the definition of “self-replication” in that I am including
"human-assisted self-replication", but I think in this case the term still
fits.

By this broader definition of "viral", it seems to me that the GPL *can*

be considered viral. In a way, it spreads itself through "self-replication"
since it requires people who use GPL works in their projects to also
designate their own projects as GPL.

Obviously, if someone does not use GPL works, the license can not

somehow “infect” their code. But we aren’t talking about them, we’re
talking about people who want to use GPL works.

Does this resolve any misunderstandings?

- Warren Brown

Sorry for this long post and rambling. Just skip if you’re not in
the mode. License discussions intrigues me but I never think I’ve
really understood why people are so bothered with the GPL…

Hal E. Fulton hal9000@hypermetrics.com skrev den Thu, 10 Jul 2003
05:28:56 +0900:

Suppose I want to write killer app X, and there is a library
Y (one and only one) that suits my purposes well. The others
are incomplete, buggy, inferior, written in COBOL, whatever.

What I want to do is use library Y and put my own app X
under my own FooBar license. Oops! Library Y is GPL.

My choices become:

  1. Don’t write app X
  2. Spend hundreds of man-hours rewriting library Y
  3. GPL my app

No, no one is “forced” to pick (3). But often the perception
is that (1) and (2) are even more unthinkable. That is why
people say that they are “forced” to GPL their code.

I probably shouldn’t be getting into this but I have a problem
to understand why people do not like GPL. Maybe if we can clarify
the different persons that are in the process of developing
app X and their motives I can understand.

I hope we can agree that the GPL’ed lib Y hinders app-X-developers
that want to sell X without releasing the source code (lets call it the
“cathedral-X” strategy). From my understanding this is the essence of the
GPL: preventing cathedral-X.

However, people that want to do cathedral-X might still be able to
go ahead. The GPL only forces them to contact the author of Y and ask
for permisson to do cathedral-X. So Y-author still has the power to
decide what to allow. How can this be a bad thing? If nothing else
it enables Y to make a list of the different (commercial) apps in which
Y is used. So a fourth possible action on Hal’s list would be:

  1. Talk to author of Y and ask permission to use lib Y in app X even if
    X is not open-sourced.

If Y is not willing to allow this then so be it; its his decision since he
wrote Y.

Now, if you’re not going for cathedral-X your goal is to release X as
open-source. Then the only way I see GPL’ing can irritate you is
if you want to allow users of app-X to take it and apply it in a cathedral-
X++ app. You don’t want to force anyone using your code into
doing anything. “Who is this RMS/FSF telling me what to do to my code?”,
you cry to the SE gods. You’re going for the almost-any-use-of-X strategy
(almost is for some common sense things like don’t use the same name and
at least acknowledge who you got it from).

I think I can understand the almost-any-use-of-X types and why they don’t
want to GPL their code. Would they be ok if Y is still under GPL but they
were
allowed to have (app-X - Y) under some other license?
Maybe their needs could be addressed with a GPL-variant that do not push
GPL on X but still does not allow cathedral-X++ since the author of Y
should have a say in that. Is LGPL the solution for this?

If you go for the bazaar-X strategy and still want any derivative of X to
be open then why do you have a problem with GPL’ing?

Please nelighten me on this; I’m sure my thinking is much to simple. In my
view GPL is a nice way to take part in and allowing a large software
ecosystem that promotes learning and building on others. You can add
your own little value while preventing commercial entities to “steal”
your work and make it part of something outside of the ecosystem. Or you
can
allow the latter as long as they give a little something back to you. Is
that
really un-reasonable?

The idea of using BSD-style license for most of the stuff and GPL for your
innovative was a good one; I’ll try to adopt that.

Regards,

Robert Feldt

Right, so you’re saying because it doesn’t hold a gun to my head to
make me use the library, it’s not viral?

I didn’t say that.

That’s like saying because I didn’t force you to sleep with a
prostitute, what you have can’t be herpes.

Sorry, but I quite like that analogy. I’ll stop if you will :slight_smile:

It’s a poor analogy, the GPL doesn’t work like that. This is exactly what
I’ve been arguing against all along. I liked my flu analogy better.


Daniel Carrera | OpenPGP fingerprint:
Graduate TA, Math Dept | 6643 8C8B 3522 66CB D16C D779 2FDD 7DAC 9AF7 7A88
UMD (301) 405-5137 | http://www.math.umd.edu/~dcarrera/pgp.html

···

On Thu, Jul 10, 2003 at 06:19:11AM +0900, Rasputin wrote: