Posted by
CmdrTaco
on from the stuff-to-think-about dept.
Ken Litko wrote
in to send us an article that appears over at
Daemon News that compares the GPL[?] with the BSD[?] license.
It tries to cover some of the differences and shed light
on the different intents of the two. Some criticism of
the GPL, and a good article.
Re:Very biased, IMHO
by
Anonymous Coward
·
· Score: 3
I agree entirely. The article expects us to accept the view that "Communism is wrong" as a universal truth without any debate.
It also contains a lot of text that on the surface looks like neutral commentary but actually carries a critical undertone:
Here, we see that the GPL places restrictions on any derivative work, whether in whole or in part, verbatim or with modification. This essentially means that the GPL infects, like a hereditary condition, derivative works permanently.
True, but why is this bad (words like infect and condition make it sound negative)? IMO this is good.
... the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program)
I believe the intention of this clause is not to place the output of compilers, parser generators etc under the GPL. But, to use a noddy example, if I write a program that lists itself, the fact that it is the output of a program does not mean that it's suddenly not under the GPL any more.
If the GPL and non-GPL code are distributed together (as is most often logically the case), then the non-GPL code's license, if any, is automatically null and void (may in some cases be illegal) and the entire work is now GPL-infected
It's exactly this clause that stops Microsoft wrapping up a GPL'd program inside a proprietary one and not allowing end users to get at the GPL'd program or its source.
When a program or work is released under a license, this means that you are in effect licensed to use the program. If this is the case, then you are not the real owner of your code, the Free Software Foundation is!
Hmm. Not sure about this. I think if you're the copyright holder, you may re-release it later under a different licence if you want.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. [ This just states that the FSF couldn't find a way to take control of programs that just happen to be stored on the same media as a GPL'ed program! ]
Now this I object to - most unfair. The intention is to clarify: you can distribute GPL and proprietary s/w on the same medium, but proprietary code can't call GPL code.
More political extremism: if you cannot distribute the program in FULL compliance with the GPL, then you cannot distribute it at all. This is nothing more than anti-competitive, anti-capitalism restrictions.
Political extremism my foot - what it says if you can't get away with saying "it wasn't possible for me to respect the licence, so I just ignored it". The author seems to be suggesting that it would be desirable for people to be able to ignore sections of the licence that they didn't feel like respecting. Anti-competitive, anti-capitalist is what Microsoft is. And I wouldn't call taking a free program, adding a feature and then making it proprietary particularly "competitive".
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. [ A rather interesting twist: if part of the license doesn't hold up in the law, the rest of the license still applies. Not sure of the legality of this, and could be up for debate... ]
This is a standard get-out clause in any contract and is necessary. If one part of the GPL was found to be unenforceable in one particlar jurisdiction, you don't want people to be able to ignore the rest of it.
The article is interesting and certainly provokes a reaction, but the author needs to clarify exactly why he objects to the things he does.
Chris
Re:Best of both worlds?
by
Aaron+M.+Renn
·
· Score: 3
Gordon Matzigkeit is working on something he calls the FIG license which is an attempt to strike a different balance between the author and the user than the GPL while still maintaining freedom. You might want to check it out.
Some people in the BSD camp must have a serious chip on their shoulder. There was a great deconstruction of this article by someone on gnu.misc.discuss a few days ago, but unfortunately I cannot locate it on the new and "improved" DejaNews. Some of what I am going to say is taken from that.
First, the article is wrong in some basic facts. Flex is not under the GPL, so it's output is not GPL. The output of Bison was only covered by the GPL because the "output" of bison included a very large chunk of Bison parser code written by Stallman into the output, not just because the the Bison parser spits out code. Additionally, it has been quite some time since this code was GPL'd. It is now under a license that allows proprietary use. These are just a couple of examples.
Second, his explanation of the "meat" of the BSD license leaves out the advertising clause. Whoops. I wonder how he could have overlooked such a wonderful feature.....
Third, this guy's legal analysis of the GPL is pretty flawed. If you have concerns about the license, I suggest hiring a real lawyer to look it over.
But most importantly, this article is simply an anti-GPL screed full of abuse for the GPL, the FSF, etc. I wonder if Michael Maxwell is a pseudonym for John Dyson? Listen to a few of these things:
-- "the GPL is more concerned with political extremism rather promoting free software"
-- "This clause reeks of political extremism"
-- "If this is the case, then you are not the real owner of your code, the Free Software Foundation is!"
-- "This just states that the FSF couldn't find a way to take control of programs that just happen to be stored on the same media as a GPL'ed program!"
-- "This sounds much like a Microsoft-style license"
-- "Not sure of the legality of this, and could be up for debate"
-- "the General Public License is not so much about ``keeping free software free'' as it is about forcing us to accept the extreme Communistic political philosophy of Richard Stallman"
-- "The GPL is not about freedom."
As you can see, lots of FUD and anger. And aside from its obvious biases, it is full of so many inaccuracies that I urge everyone to completely discount anything it says. I suggest contacting Jordan Hubbard of the FreeBSD project for more clear, accurate, and reasoned information on the BSD community's thoughts on this issue if this article caused you any major concerns.
Re: Restrictively Unrestrictive
by
Kragen+Sitaker
·
· Score: 5
Here's the email I wrote a week ago when I first read this article. It says mostly things other people have said in these comments, but not entirely.
RMS responded to the email and said, "It is clear that the article you're commenting on was completely confused."
It is my opinion that this article is not, in any sense, a good article. It consists almost entirely of acrimonious accusations and misstatements of fact that can generously be described as gross misunderstandings.
I am willing to have this comment posted as a Slashdot article if the Slashdot gods see fit to do so.
It appears that much of your article was based on misunderstandings of the GPL. I hope you are willing to post a retraction of those parts of your article.
[ Rob: You are welcome to post this on Slashdot if you like. ]
You write:
The clause about "output from the Program" is confusing and rather open-ended. It says that if a GPL'ed program generates output that may be used as a program, then the output is also GPL'ed. This would apply, for example, if using a parser generator such as ``flex'' or ``bison'' (the GNU equivalents of ``lex'' and ``yacc''). However, this curiously does not seem to apply to binary or object code generated by the GNU compilers, such as ``gcc''. Overall, I'm not sure about this clause of the license, and if I'm missing something here, please enlighten me. At any rate, the last sentence causes the most confusion, as it is completely non-specific.
This clause confused me for a while, too. What it says is the opposite of what you think it says: it says that the output is not GPLed simply because it came out of a GPLed program.
So flex and bison output, along with gcc output, is not necessarily GPLed. However, sometimes it is, specifically when the output is part of the program itself. For example, bison output with the default bison parser skeleton is a work based on the bison parser skeleton, which is part of bison. (Recently an exception was made so that bison output with the default parser skeleton was not GPLed, but this was the case for a long time.)
So you see -- it depends on what the program does.;)
You could have written to the FSF for clarification before writing the article.
This says that if you include non-GPL code in your program, you do not have to release that part of the code as GPL, provided that you distribute that part of code separate from the rest of the program! If the GPL and non-GPL code are distributed together (as is most often logically the case), then the non-GPL code's license, if any, is automatically null and void (may in some cases be illegal) and the entire work is now GPL-infected.
No, the GPL cannot magically null some other software license. What it can do is permit you to distribute code licensed under the GPL. What this clause says is that you cannot distribute code licensed under the GPL as part of another program unless the whole program is distributed under the GPL.
So if I link Emacs's buffer-handling functions into a proprietary text editor, I am not permitted to distribute that text editor unless I license that text editor under the GPL. This seems like a reasonable restriction to me; RMS wrote those buffer-handling functions so people could use free software, not so proprietary-software makers could make money off of him.
What the "distribute them as separate works" thing means is this.
The XML parser Expat is licensed under the GNU GPL so that it can be linked into GPLed programs. However, if James Clark (Expat's author) wanted to incorporate Expat into Mozilla, he can license Expat under the GPL-conflicting Mozilla Public License as well. Indeed, if he wants to link Expat into some proprietary XML editor, he doesn't have to GPL that XML editor, either. That's because Mozilla and the hypothetical proprietary XML editor would not be "part of a whole which is a work based on the program" -- where the program in question is not Expat, but some other GPLed program that uses Expat.
Make sense?
This clause reeks of political extremism, and is not entirely true. When a program or work is released under a license, this means that you are in effect licensed to use the program. If this is the case, then you are not the real owner of your code, the Free Software Foundation is! Particularly when it comes to controlling the ``distribution of derivative or collective works based on the Program''. After all is said and done, the only part of this work that you actually own is the Copyright itself. And that copyright is subject to the terms of this license. Essentially this is the rudimentary philosophy of Communism, in which you can create something, but you only own it as much as everyone else owns it.
As explained above, this is not correct. You are always free to license your code however you see fit, but if you want to link your code with GPLed code, you need to license your code under the GPL. That doesn't keep you from also, say, licensing your code under the BSD license, or the MPL.
Also, I think you are mistaken about communism; copyright law is not a child of capitalism, but of feudalism.
And yet again, stating that you cannot change the license of a GPL'ed program once it has been released under GPL.
You'd be amazed how often people have tried to do this (with software they didn't write!)
Remember, though, the GPL provides rights only to users of the software; the author can do whatever they want with it, as explained in section 2.
It also states that you cannot further license the program or modify the GPL in any way.
Right. That is, if I have a big juicy piece of code released under the GPL (say, GNU Emacs) and I want to make a KDE version, I can't add a clause to the beginning of the GPL that says, "As a special exception, this code may be freely linked with the Qt library."
Of course, if I wrote the code, I can license it however I want.
This sounds much like a Microsoft-style license, in which your actions determine your acceptance of the license. In other words, you don't need to sign anything to be under the control of this license, all you need to do is modify or distribute the program (in the case of Microsoft, merely use the program).
Actually, you don't even need to modify or distribute the program to be under the control of the GPL. You just need to exist.
In copyright law, certain rights are reserved for the author of a work, including the rights of first sale and copying. The author is allowed to license other people to do these things in restricted ways or in unrestricted ways.
When an author decides to use the GPL, that means they are granting everyone in the world a license to use their software under certain conditions -- whether everyone wants to use it or not.
Microsoft's shrink-wrap licenses are probably not valid because you already bought the software from Microsoft or a Microsoft retailer, which implicitly grants you some rights, before agreeing to the license.
More political extremism: if you cannot distribute the program in FULL compliance with the GPL, then you cannot distribute it at all. This is nothing more than anti-competitive, anti-capitalism restrictions.
Anti-competitive? Anti-capitalist? How?
If I license you the right to print my poem, but only in a magazine, not in a book, then you are not allowed to print it in a book. I don't think that's "anti-competitive" or "anti-capitalist" at all. It's just copyright law. If I license the general public the right to reproduce my software documentation in electronic form, but not in paper form, then you are not allowed to distribute it in paper form -- even if it's about cryptography and the courts say you can only distribute it in paper form, not in electronic form. This provision of the GPL is no different from these examples; indeed (as it says at the top of section 7) it is redundant.
A rather interesting twist: if part of the license doesn't hold up in the law, the rest of the license still applies. Not sure of the legality of this, and could be up for debate...
This "severability" term is standard in agreements written by one party. Your credit-card agreement, the airlines' terms of passage, and your bank agreements all contain essentially identical terms.
Also note that there is a separate, but similar license known as the LGPL or ``Library General Public License'' which covers software libraries. It places the same general terms and conditions on library code as the GPL places on program code. It seems the LGPL was intended to clear confusion in whether a program must be GPL'ed if linked with GPL'ed libraries. Surprisingly, this does not appear to be the case.
The LGPL was intended to provide more liberal licensing terms than the GPL for certain libraries, so that proprietary programs could be linked against free libraries rather than proprietary libraries.
There are also libraries released under the GPL; for example, readline. You are not allowed to distribute code linked against these libraries unless that code is also licensed under the GPL.
The LGPL is not a clarification of the GPL for libraries; it is a separate license. You're not the only person to make this mistake; to clear it up, the FSF recently renamed it the "Lesser General Public License".
It also places the same restriction on any software that is derived in any way from a GPL'ed program, thereby infecting the derived work with the GPL.
No. In particular, it doesn't restrict software that is output from a GPLed program (unless that software is itself a GPLed program for other reasons; for example, GNU cc includes some GPLed.y files that can be given as input to bison, producing some software as output. The output software is GPLed in this case.) or software that doesn't contain parts of a GPLed program.
Once GPL'ed, the code, or any derived work, can never be released under any other license from that point on, no matter how many cycles of modification it has undergone.
The author can release it under as many other licenses as their little heart desires. You just can't release copies of someone else's code -- or a program incorporating someone else's code -- under a non-GPL license.
It is my opinion that the General Public License is not so much about ``keeping free software free'' as it is about forcing us to accept the extreme Communistic political philosophy of Richard Stallman and others at the Free Software Foundation.
This is grossly inaccurate; RMS is not a communist. As far as I know, the other folks who work for the FSF aren't, either.
But how does the GPL force you to accept anything? It doesn't even force you to accept the GPL. You are welcome to freely choose to violate the GPL and get sued, or follow the GPL and receive its benefits.
The very spirit of the GPL is to attack the very concept of Capitalism and individualism. There is no concept of intellectual property under the terms of the GPL.
Intellectual property is contrary to the spirit of capitalism and individualism. (Unless you're a socialist who thinks the spirit of capitalism consists in the exploitation of the weak by the strong; intellectual-property law does that quite well!) Thomas Jefferson was opposed to intellectual property. You can't get much more individualist than that.;)
[under the GPL] Your hard work is no more your property than everyone else's.
This appears to stem from a misconception that the GPL restricts the rights of software authors. I mean, in a sense, it does; to use the GPL is to grant to everyone in the world the right to use your code under certain terms. You no longer have the freedom to prohibit people from using your code unless they pay you a license fee. But you still own the copyright, and you can license the code to people under more liberal licenses if you want. (You can even license it under more restrictive licenses, but people might just go download the GPLed version instead.)
Indeed, Richard Stallman himself would prefer that we recognize the Linux operating system as ``GNU/Linux'' instead, because of the fact that almost all of the code is GPL'ed.
This is a misconception. RMS wants people to call it GNU Slash Linux because the OS consists largely of code written by the GNU project. IMHO, he is mistaken; I don't think Linux should be called that, because it consists mostly of code written not by the GNU project, or for Linux either, for that matter.
[RMS wrote to correct me about this: "Actually, neither of those is the reason. The reason is that the system in question is largely the GNU system."]
In fact, it should be contested over its shaky sense of legality in these matters. I'm not aware of any court cases involving the GPL so far, so we have yet to see what will happen when such an issue arises.
The lawyers who have read the GPL seem to think it will hold up. We'll have to see it tested in court; I suspect that will happen this year or next year.
In summary, despite the disadvantages in certain instances, most open source software licenses contribute to the growth and technological and artistic development of software and computer science in general. Both licenses that have been considered here fall under this category, and as such should be considered a valuable resource and a great achievement for the intellectual development of the scientific and technological communities as a whole. Open source software is all about the sharing of ideas and concepts.
Hmm, I mostly agree. But I thought open source software was about reducing the cost of software development by having your customers fix all the bugs for you;)
The only reason you could find one or the other "markedly inferior" is to judge them according to some set of needs and desires.
What is needed is a discussion of the two licenses that does not assume some set of needs and desires, and discusses how the licenses serve two different ends, discusses those ends, and discusses how it could affect use of your code. In other words, we need something to give "objective" information about the two licenses so that the _reader and developer_ can make an informed decision.
An example would be the cat program. After compiling it, depending on how we run it, the output may be considered a derived work.
Running it as "cat --help" would probably count as a work derived from the program. The output of "cat ~/my-text-file" would not. The reason for the wording is to stop people claiming the output of "cat cat.c" (printing out the program's own source code) is not covered by any licence.
In cases like gcc and bison, where the output contains some output that is the same for reguardless of input file (gcc's crt1.o, or bison's standard code for all parsers) and this output would reasonably be considered derived from the program, there are usually special exceptions to clear up any confusion.
don't call GPL "viral", call it "tit-for-tat"
by
sethg
·
· Score: 5
A while ago, someone on/. posted a pointer to a Web page by David Rysdam -- I unfortunately didn't save the link, but the title was "Open Source as ESS". For those of you who are familiar with the iterated Prisoner's Dilemma (see Axelrod's The Evolution of Cooperation if you're not), I can summarize the article as follows:
Computer programs competing with each other are like players in an iterated Prisoner's Dilemma game.
Letting another program copy your code is like playing "Cooperate" in the game.
Refusing to let another program copy your code is like playing "Defect".
Closed-source programs are playing the "Always defect" strategy.
Programs with a BSD license are playing the "Always cooperate" strategy.
Programs with a GPL license are playing the "Tit for tat" strategy.
In simulations of the iterated Prisoner's Dilemma, tit-for-tat players usually do better in the long run than players who always cooperate or those who always defect; therefore, GPL programs are likely to displace BSD programs in the long run.
I have some reservations about Rysdam's model, but I would love to see more analyses of this type.
--
send all spam to theotherwhitemeat@ropine.com
Sigh... No perfect solution.
by
Fish+Man
·
· Score: 3
All in all, an excellent article.
I tend to agree with every point made.
However, I tend to favor the GPL over the BSD license myself for code I write and release to the public, in spite of the GPL's problems, for one big reason, which the author did explore:
With the BSD license, some big wealthy corporation could hijack some code I spent hours and hours and sweat and blood writing, make some utterly trivial change to it, then distribute it under a proprietary license and make a huge profit and I never see a penny. In addition, if they made VALUABLE changes, they would be closed, not keeping with the "open source" spirit under which the original code was written. Licensing under GPL prevents this.
Of course, I would still have one defense in such a case. I could do my best to get the word out that BiGreedy Corp.'s XYZ datadiddler (that I actually wrote) was available for free at ftp://gotohell.BiGreedy.jerks.com thus undermining their profitability. If they had made valuable addititions, I could attempt to add them to the still open version (or encourage others to do it and keep the code open). However, such an "education campaign" itself would be a really big effort.
In any case, neither license is perfect, and I often find myself wishing for a hybrid of the two.
However, I REALLY don't want to advocate yet-another-open-source-license! So, I don't have a good answer as to how to address the issues raised.
Re:Malda has lost all integrity
by
Fish+Man
·
· Score: 3
I see nothing in the faqs or descriptions of/. that say that/. will only post articles that are scrictly totally non-biased news fact and will never post links to editorials.
This editorial, even though it may contain factual inacuracies and opinions we don't agree with, as an editorial still falls under the catigory "News for nerds, Stuff that matters", IMHO.
Heck,/. often posts links to MicroSoft utter BS FUD attempting to pass itself off as news! This stuff is still often worthy of our attention.
I don't expect/. to only reference articles and editorials that I 100% agree with!
Re:Peace and Harmony and all that
by
Fish+Man
·
· Score: 3
Finally, I think the LAST thing that GPL and *BSD users should be doing is fighting each other. I'm sure there are people growing interested in *BSD as a result of "Linux hype". I'm sure there are people who use both. I'm sure there are people who switched to *BSD after using Linux. I saw yesterday's news about AOL's interest in a *BSD-powered set-top as proof that the attention is benefitting everyone.
Those who favor GPL and those who favor *BSD have more in common than not. They also have bigger opponents than each other.
Hear hear!!
PLEASE let's not have any BSD vs. GPL flamewars! Both are imperfect but noble attempts to accomplish essentially the SAME THING.
I think we need to see an objective comparison between the two licenses. Free Software Foundation texts which compare the GPL to other licenses are always written from the FSF's point of view, and their hardline politics comes through in their articles. This article suffers from the same problem, just from the opposite angle. For example, here is a quote from the final section of the article, in which the author expresses his opinions on various licensing issues:
It is my opinion that the General Public License is not so much about ``keeping free software free'' as it is about forcing us to accept the extreme Communistic political philosophy of Richard Stallman and others at the Free Software Foundation. The very spirit of the GPL is to attack the very concept of Capitalism and individualism.
This quote seems to me as loaded as the pro-GPL, anti-everthing-else texts published by the FSF.
It seems to me that any article on licensing is going to have some political, ideological aspect to it. We're all human, we all have opinions, and our opinions are guaranteed to show in what we write, to a greater or lesser extent. However, I think it is possible to write a reasonably objective article which doesn't descend into attacking another's ideology.
Peace and Harmony and all that
by
DonkPunch
·
· Score: 5
(Putting flamethrower away) Let's talk.
First of all, my personal opinion is that a person (or entity) who writes code has the right to determine the terms of how that code is distributed. When I write a program, I can release it under public domain, BSD-style license, GPL, or whatever. Heck, I can create a license that forces people to "subscribe" to my program and send me money every year or it shuts down. Nobody is obligated to use my software if they don't like my license.
In fact, I believe that terms of use are a feature of software -- just like speed, ease-of-use, and reliablility. I only wish we had software consumers who were more educated about EULAs and what clicking that "Next" button during the install really means.
I'm very leery of an interpretation of the GPL from someone whom I don't believe is a lawyer. The use of terms like "communist" and "viral" is simply inflammatory.
I do understand why people who favor a BSD-style license are concerned about developers using GPL without considering a BSD license. Thanks to the attention focused on Linux, there's a certain "trendiness" to releasing code under the GPL today. In some cases, a BSD license may be more appropriate and beneficial.
Developing Free Software is often a labor of love. For some, it's their art. I sympathize with a developer who worries that their work will be "embraced and extended" by a corporate entity and they'll never see what happens to it. The GPL prevents this (even for developers who might find the license's introduction a little heavy-handed).
Finally, I think the LAST thing that GPL and *BSD users should be doing is fighting each other. I'm sure there are people growing interested in *BSD as a result of "Linux hype". I'm sure there are people who use both. I'm sure there are people who switched to *BSD after using Linux. I saw yesterday's news about AOL's interest in a *BSD-powered set-top as proof that the attention is benefitting everyone.
Those who favor GPL and those who favor *BSD have more in common than not. They also have bigger opponents than each other.
--
Save the whales. Feed the hungry. Free the mallocs.
About some things commented on here...
by
Kymermosst
·
· Score: 3
I'll start off by putting on my asbestos underwear.
I support intellectual property that is truly new and unique. I DO NOT support ideas that are not new or just spinoffs, or really stupid patents.
If I write some damn awesome software, or invent something really unique and new, why should I not profit from it? Without intellectual propery laws, it would be an interesting world, where secret societies and guilds of tradesmen kept their secrets quiet to protect their intellectual property. Where they would kill to keep it safe. Sound familiar? Just remember, those who do not remember the past are doomed to repeat it. We need intellectual property laws. We also need a responisble patent office, too. We don't have one yet.
So, on to the infective aspect of the GPL:
Say I am writing SuperProgram2000, and I need a blinkenLights() function for it. I want my software to be propriety, because I want to make money off of it.
I notice that someone else has a GPLed program out there with a damn nice blinkenLights() that is perfect for my application. I have a few choices here:
1. I can write my own blinkenLights(), but it's big and complex, and could add months to my development time, and it's already been done anyway. 2. I can steal the other guy's blinkenLights() and face possible legal issues were it discovered. 3. I can use the other guy's blinkenLights() and give him credit, and be forced to place my entire program under the GPL, and lose my profit. THIS IS INFECTIVE. 4. I can ask him to license blinkenLights() to me under a different license, either for free, for royalty, or for flat-fee. But what could happen?
Suppose someone notices that the blinkenLights() in my code look a lot like the blinkenLights() in a nifty GPL program. He tells the FSF. The FSF sues me. Suppose they don't accept the fact that I licensed blinkenLights() from the original author, because the code exists as GPL in the rest of the world. I'd have to fight a legal battle and it would cost me time. I'd probably win, but it would still cost me time.
So, I am not sure if the GPL and the FSF can be trusted. And the GPL is definitely against intellectual property, which is a big part of capitalism nowadays.
For the record, RMS is probably anti capitalist for that reason, and maybe leans socialist, but he's no communist like the article said. RMS is doing good work, but is the motivation out of altruism, or is it to further a political view?
He may say it's altruism, and makes software free in a "free speech" sense, but I could also say the Sun is blue, and you would really have no way of knowing what color I see the sun as.
Guess that's all my $.02.
-- "Alcohol, Tobacco, Firearms, and Explosives" should be a convenience store, not a government agency.
It also contains a lot of text that on the surface looks like neutral commentary but actually carries a critical undertone:
Here, we see that the GPL places restrictions on any derivative work, whether in whole or in part, verbatim or with modification. This essentially means that the GPL infects, like a hereditary condition, derivative works permanently.
True, but why is this bad (words like infect and condition make it sound negative)? IMO this is good.
I believe the intention of this clause is not to place the output of compilers, parser generators etc under the GPL. But, to use a noddy example, if I write a program that lists itself, the fact that it is the output of a program does not mean that it's suddenly not under the GPL any more.
If the GPL and non-GPL code are distributed together (as is most often logically the case), then the non-GPL code's license, if any, is automatically null and void (may in some cases be illegal) and the entire work is now GPL-infected
It's exactly this clause that stops Microsoft wrapping up a GPL'd program inside a proprietary one and not allowing end users to get at the GPL'd program or its source.
When a program or work is released under a license, this means that you are in effect licensed to use the program. If this is the case, then you are not the real owner of your code, the Free Software Foundation is!
Hmm. Not sure about this. I think if you're the copyright holder, you may re-release it later under a different licence if you want.
In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. [ This just states that the FSF couldn't find a way to take control of programs that just happen to be stored on the same media as a GPL'ed program! ]
Now this I object to - most unfair. The intention is to clarify: you can distribute GPL and proprietary s/w on the same medium, but proprietary code can't call GPL code.
More political extremism: if you cannot distribute the program in FULL compliance with the GPL, then you cannot distribute it at all. This is nothing more than anti-competitive, anti-capitalism restrictions.
Political extremism my foot - what it says if you can't get away with saying "it wasn't possible for me to respect the licence, so I just ignored it". The author seems to be suggesting that it would be desirable for people to be able to ignore sections of the licence that they didn't feel like respecting. Anti-competitive, anti-capitalist is what Microsoft is. And I wouldn't call taking a free program, adding a feature and then making it proprietary particularly "competitive".
If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. [ A rather interesting twist: if part of the license doesn't hold up in the law, the rest of the license still applies. Not sure of the legality of this, and could be up for debate... ]
This is a standard get-out clause in any contract and is necessary. If one part of the GPL was found to be unenforceable in one particlar jurisdiction, you don't want people to be able to ignore the rest of it.
The article is interesting and certainly provokes a reaction, but the author needs to clarify exactly why he objects to the things he does.
Chris
Gordon Matzigkeit is working on something he calls the FIG license which is an attempt to strike a different balance between the author and the user than the GPL while still maintaining freedom. You might want to check it out.
Some people in the BSD camp must have a serious chip on their shoulder. There was a great deconstruction of this article by someone on gnu.misc.discuss a few days ago, but unfortunately I cannot locate it on the new and "improved" DejaNews. Some of what I am going to say is taken from that.
.....
First, the article is wrong in some basic facts. Flex is not under the GPL, so it's output is not GPL. The output of Bison was only covered by the GPL because the "output" of bison included a very large chunk of Bison parser code written by Stallman into the output, not just because the the Bison parser spits out code. Additionally, it has been quite some time since this code was GPL'd. It is now under a license that allows proprietary use. These are just a couple of examples.
Second, his explanation of the "meat" of the BSD license leaves out the advertising clause. Whoops. I wonder how he could have overlooked such a wonderful feature
Third, this guy's legal analysis of the GPL is pretty flawed. If you have concerns about the license, I suggest hiring a real lawyer to look it over.
But most importantly, this article is simply an anti-GPL screed full of abuse for the GPL, the FSF, etc. I wonder if Michael Maxwell is a pseudonym for John Dyson? Listen to a few of these things:
-- "the GPL is more concerned with political extremism rather promoting free software"
-- "This clause reeks of political extremism"
-- "If this is the case, then you are not the real owner of your code, the Free Software Foundation is!"
-- "This just states that the FSF couldn't find a way to take control of programs that just happen to be stored on the same media as a GPL'ed program!"
-- "This sounds much like a Microsoft-style license"
-- "Not sure of the legality of this, and could be up for debate"
-- "the General Public License is not so much about ``keeping free software free'' as it is about forcing us to accept the extreme Communistic political philosophy of Richard Stallman"
-- "The GPL is not about freedom."
As you can see, lots of FUD and anger. And aside from its obvious biases, it is full of so many inaccuracies that I urge everyone to completely discount anything it says. I suggest contacting Jordan Hubbard of the FreeBSD project for more clear, accurate, and reasoned information on the BSD community's thoughts on this issue if this article caused you any major concerns.
Here's the email I wrote a week ago when I first read this article. It says mostly things other people have said in these comments, but not entirely.
RMS responded to the email and said, "It is clear that the article you're commenting on was completely confused."
It is my opinion that this article is not, in any sense, a good article. It consists almost entirely of acrimonious accusations and misstatements of fact that can generously be described as gross misunderstandings.
I am willing to have this comment posted as a Slashdot article if the Slashdot gods see fit to do so.
The only reason you could find one or the other "markedly inferior" is to judge them according to some set of needs and desires.
What is needed is a discussion of the two licenses that does not assume some set of needs and desires, and discusses how the licenses serve two different ends, discusses those ends, and discusses how it could affect use of your code.
In other words, we need something to give "objective" information about the two licenses so that the _reader and developer_ can make an informed decision.
An example would be the cat program. After compiling it, depending on how we run it, the output may be considered a derived work.
Running it as "cat --help" would probably count as a work derived from the program. The output of "cat ~/my-text-file" would not. The reason for the wording is to stop people claiming the output of "cat cat.c" (printing out the program's own source code) is not covered by any licence.
In cases like gcc and bison, where the output contains some output that is the same for reguardless of input file (gcc's crt1.o, or bison's standard code for all parsers) and this output would reasonably be considered derived from the program, there are usually special exceptions to clear up any confusion.
- Computer programs competing with each other are like players in an iterated Prisoner's Dilemma game.
- Letting another program copy your code is like playing "Cooperate" in the game.
- Refusing to let another program copy your code is like playing "Defect".
- Closed-source programs are playing the "Always defect" strategy.
- Programs with a BSD license are playing the "Always cooperate" strategy.
- Programs with a GPL license are playing the "Tit for tat" strategy.
- In simulations of the iterated Prisoner's Dilemma, tit-for-tat players usually do better in the long run than players who always cooperate or those who always defect; therefore, GPL programs are likely to displace BSD programs in the long run.
I have some reservations about Rysdam's model, but I would love to see more analyses of this type.send all spam to theotherwhitemeat@ropine.com
All in all, an excellent article.
I tend to agree with every point made.
However, I tend to favor the GPL over the BSD license myself for code I write and release to the public, in spite of the GPL's problems, for one big reason, which the author did explore:
With the BSD license, some big wealthy corporation could hijack some code I spent hours and hours and sweat and blood writing, make some utterly trivial change to it, then distribute it under a proprietary license and make a huge profit and I never see a penny. In addition, if they made VALUABLE changes, they would be closed, not keeping with the "open source" spirit under which the original code was written. Licensing under GPL prevents this.
Of course, I would still have one defense in such a case. I could do my best to get the word out that BiGreedy Corp.'s XYZ datadiddler (that I actually wrote) was available for free at ftp://gotohell.BiGreedy.jerks.com thus undermining their profitability. If they had made valuable addititions, I could attempt to add them to the still open version (or encourage others to do it and keep the code open). However, such an "education campaign" itself would be a really big effort.
In any case, neither license is perfect, and I often find myself wishing for a hybrid of the two.
However, I REALLY don't want to advocate yet-another-open-source-license! So, I don't have a good answer as to how to address the issues raised.
I see nothing in the faqs or descriptions of /. that say that /. will only post articles that are scrictly totally non-biased news fact and will never post links to editorials.
/. often posts links to MicroSoft utter BS FUD attempting to pass itself off as news! This stuff is still often worthy of our attention.
/. to only reference articles and editorials that I 100% agree with!
This editorial, even though it may contain factual inacuracies and opinions we don't agree with, as an editorial still falls under the catigory "News for nerds, Stuff that matters", IMHO.
Heck,
I don't expect
Finally, I think the LAST thing that GPL and *BSD users should be doing is fighting each other. I'm sure there are people growing interested in *BSD as a result of "Linux hype". I'm sure there are people who use both. I'm sure there are people who switched to *BSD after using Linux. I saw yesterday's news about AOL's interest in a *BSD-powered set-top as proof that the attention is benefitting everyone.
Those who favor GPL and those who favor *BSD have more in common than not. They also have bigger opponents than each other.
Hear hear!!
PLEASE let's not have any BSD vs. GPL flamewars! Both are imperfect but noble attempts to accomplish essentially the SAME THING.
We are friends here, not rivals!
I think we need to see an objective comparison between the two licenses. Free Software Foundation texts which compare the GPL to other licenses are always written from the FSF's point of view, and their hardline politics comes through in their articles. This article suffers from the same problem, just from the opposite angle. For example, here is a quote from the final section of the article, in which the author expresses his opinions on various licensing issues:
This quote seems to me as loaded as the pro-GPL, anti-everthing-else texts published by the FSF.
It seems to me that any article on licensing is going to have some political, ideological aspect to it. We're all human, we all have opinions, and our opinions are guaranteed to show in what we write, to a greater or lesser extent. However, I think it is possible to write a reasonably objective article which doesn't descend into attacking another's ideology.
(Putting flamethrower away) Let's talk.
First of all, my personal opinion is that a person (or entity) who writes code has the right to determine the terms of how that code is distributed. When I write a program, I can release it under public domain, BSD-style license, GPL, or whatever. Heck, I can create a license that forces people to "subscribe" to my program and send me money every year or it shuts down. Nobody is obligated to use my software if they don't like my license.
In fact, I believe that terms of use are a feature of software -- just like speed, ease-of-use, and reliablility. I only wish we had software consumers who were more educated about EULAs and what clicking that "Next" button during the install really means.
I'm very leery of an interpretation of the GPL from someone whom I don't believe is a lawyer. The use of terms like "communist" and "viral" is simply inflammatory.
I do understand why people who favor a BSD-style license are concerned about developers using GPL without considering a BSD license. Thanks to the attention focused on Linux, there's a certain "trendiness" to releasing code under the GPL today. In some cases, a BSD license may be more appropriate and beneficial.
Developing Free Software is often a labor of love. For some, it's their art. I sympathize with a developer who worries that their work will be "embraced and extended" by a corporate entity and they'll never see what happens to it. The GPL prevents this (even for developers who might find the license's introduction a little heavy-handed).
Finally, I think the LAST thing that GPL and *BSD users should be doing is fighting each other. I'm sure there are people growing interested in *BSD as a result of "Linux hype". I'm sure there are people who use both. I'm sure there are people who switched to *BSD after using Linux. I saw yesterday's news about AOL's interest in a *BSD-powered set-top as proof that the attention is benefitting everyone.
Those who favor GPL and those who favor *BSD have more in common than not. They also have bigger opponents than each other.
Save the whales. Feed the hungry. Free the mallocs.
I'll start off by putting on my asbestos underwear.
I support intellectual property that is truly new and unique. I DO NOT support ideas that are not new or just spinoffs, or really stupid patents.
If I write some damn awesome software, or invent something really unique and new, why should I not profit from it? Without intellectual propery laws, it would be an interesting world, where secret societies and guilds of tradesmen kept their secrets quiet to protect their intellectual property. Where they would kill to keep it safe. Sound familiar? Just remember, those who do not remember the past are doomed to repeat it. We need intellectual property laws. We also need a responisble patent office, too. We don't have one yet.
So, on to the infective aspect of the GPL:
Say I am writing SuperProgram2000, and I need a blinkenLights() function for it. I want my software to be propriety, because I want to make money off of it.
I notice that someone else has a GPLed program out there with a damn nice blinkenLights() that is perfect for my application. I have a few choices here:
1. I can write my own blinkenLights(), but it's big and complex, and could add months to my development time, and it's already been done anyway.
2. I can steal the other guy's blinkenLights() and face possible legal issues were it discovered.
3. I can use the other guy's blinkenLights() and give him credit, and be forced to place my entire program under the GPL, and lose my profit. THIS IS INFECTIVE.
4. I can ask him to license blinkenLights() to me under a different license, either for free, for royalty, or for flat-fee. But what could happen?
Suppose someone notices that the blinkenLights() in my code look a lot like the blinkenLights() in a nifty GPL program. He tells the FSF. The FSF sues me. Suppose they don't accept the fact that I licensed blinkenLights() from the original author, because the code exists as GPL in the rest of the world. I'd have to fight a legal battle and it would cost me time. I'd probably win, but it would still cost me time.
So, I am not sure if the GPL and the FSF can be trusted. And the GPL is definitely against intellectual property, which is a big part of capitalism nowadays.
For the record, RMS is probably anti capitalist for that reason, and maybe leans socialist, but he's no communist like the article said. RMS is doing good work, but is the motivation out of altruism, or is it to further a political view?
He may say it's altruism, and makes software free in a "free speech" sense, but I could also say the Sun is blue, and you would really have no way of knowing what color I see the sun as.
Guess that's all my $.02.
"Alcohol, Tobacco, Firearms, and Explosives" should be a convenience store, not a government agency.