Softpanorama
(slightly skeptical) Open Source Software Educational Society

May the source be with you, but remember the KISS principle ;-)

Google   


GNU General Public License

Main page Ebook Reference Recommended papers Freedom Zero BSD License Artistic License GPL general issues
GPL and Anarchism GPL as an "incompatible license" GPL and fair use GPL's Suppressed Envy Problem GPL and government-sponsored work GPL and Corba Python License Change KDE Jihad
Forking Shareware & Giftware Framing Eben Moglen     Humor Etc

Text of the license:

Version 2, June 1991

Copyright (C) 1989, 1991 Free Software Foundation, Inc.  
59 Temple Place - Suite 330, Boston, MA  02111-1307, USA

Everyone is permitted to copy and distribute verbatim copies
of this license document, but changing it is not allowed.

Preamble

The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too.

When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things.

To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it.

For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights.

We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software.

Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations.

Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all.

The precise terms and conditions for copying, distribution and modification follow.

TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION

0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you".

Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and 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). Whether that is true depends on what the Program does.

1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program.

You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee.

2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it.

Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program.

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.

3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following:

The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable.

If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code.

4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance.

5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it.

6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License.

7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program.

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.

It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice.

This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License.

8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License.

9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns.

Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation.

10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally.

NO WARRANTY

11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION.

12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES.

 

Notes:
  • This is a Spartan WHYFF (We Help You For Free) site written by people for whom English is not a native language. Some amount of grammar and spelling errors should be expected.
  • The site contain some broken links as it develops like a living tree... Please try to use Google, Open directory, etc. to find a replacement link (see HOWTO search the WEB for details). We would appreciate if you can mail us a correct link.
Google Search
Open directory

Research Index

Old News ;-)

The dotCommunist Manifesto by Eben Moglen

A Spectre is haunting multinational capitalism--the spectre of free information. All the powers of ``globalism'' have entered into an unholy alliance to exorcize this spectre: Microsoft and Disney, the World Trade Organization, the United States Congress and the European Commission.

Where are the advocates of freedom in the new digital society who have not been decried as pirates, anarchists, communists? Have we not seen that many of those hurling the epithets were merely thieves in power, whose talk of ``intellectual property'' was nothing more than an attempt to retain unjustifiable privileges in a society irrevocably changing? But it is acknowledged by all the Powers of Globalism that the movement for freedom is itself a Power, and it is high time that we should publish our views in the face of the whole world, to meet this nursery tale of the Spectre of Free Information with a Manifesto of our own.

Freedom Zero

Linux Today - Stallman and Kuhn on the freedom to choose license

As reported by Gnuheter, a new essay published by Bradley M Kuhn och Richard M Stallman carries the title "Freedom or Power?". The authors state something that we might have suspected from essays from Kuhn and Stallman before, but now is a little more clear, if still ambiguous:

"However, one so-called freedom that we do not advocate is the "freedom to choose any license you want for software you write". We reject this because it is really a form of power, not a freedom."

The essay is interesting in the light of an earlier essay published by Eric S Raymond. Raymond states:

"In other words, Stallman and Kuhn want to be able to make decisions that affect other developers more than themselves. By the definition they themselves have proposed, they want power".

Tim O'Reilly started the debate with his weblog of July 28, 2001: My definition of freedom zero, where O'Reilly states:

"If Freedom Zero for developers is the freedom to offer software on whatever terms the developer sets and a user will accept; Freedom Zero for users is the right to choose whatever software they like, without interference from platform vendors who try to deny that choice."

The issue is not simple. Stallman and Kuhn could be attacked on liberal grounds and even more so on libertarian grounds. This notwithstanding, you probably find a point in their statement:

"We believe you should decide what to do with the software you use; however, that is not what today's law says. Current copyright law places us in the position of power over users of our code, whether we like it or not. The ethical response to this situation is to proclaim freedom for each user, just as the Bill of Rights was supposed to exercise government power by guaranteeing each citizen's freedoms. That is what the GNU GPL is for: it puts you in control of your usage of the software, while protecting you from others who would like to take control of your decisions."

I am not sure whether Raymond, Stallman or O'Reilly is right, but to paraphrase Esther Dyson: the conversation continues.

General Issues

While the FSF promotes open source code as a means of cooperating and producing software, his "free software" philosophy might be considered as somewhat fundamentalist flavor of "software anarchism". And jangling with the words "free" and "freedom" is one of the most prominent Stallman's hobbies. See for example his critique of The Problems of the Plan 9 License  where he failed to realize the license tries to address (among other things) the "renaming game" problem present in GPL v.2. Actually there are two flavors of GNU license (GPL and LGPL):

One problem with both licenses is that they does not protect the author's contributions from "one-to-one" hijacking. In this sense this is "the law of jungles", anti-copyright license. Any as I see on the WEB the author of the derivatives that have a couple of small patches to the original (see for example TARA). Thus one of the GPL's loophole is "renaming game." All that GNU formally require is that "You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change". You do not need any reason for the change. Here is the relevant quote:

2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions:

a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.)

For example if I want to create a "derivative" work by renaming some files in the original and the name of the product it's perfectly OK with GNU.


GPL's Suppressed Envy Problem

The essence of the section is very well explained by the following Slashdot posting:

Re:Is BSD more free than GPL (Score:0)
by Anonymous Coward on Saturday January 01, @11:52AM EST (#51)

His changes are his work...not yours.

WRONG! He changed my code. That means I own his changes. Without me, he'd have nothing to change, so everything he does with my stuff is mine! I do not grant him the right to hide them from me. He must hand over his changes to my work. And he must do it for free. This gives me the maximum power over my own work. If you want to work for me for free, then thanks, but it's still you working for me, because it's my program. Not yours. Get it?

Another variant of the same phobia is the Microsoft will steal their precious code. A good counterargument is reproduced below:

Re:Foo! (Score:3, Insightful)
by Arandir (arandir-at-meer-dot-net) on Saturday January 01, @04:25PM EST (#151)
(User Info) http://www.meer.net/~arandir/
"...but keep in mind that by choosing BSD, you could be working for Microsoft for free."

So what? Are you so arrogant to believe that Microsoft even wants your code? The number of incidents where Microsoft used BSD code can be counted on one hand. Compare that to the myriad BSD packages out there and it's insignificant. And the number of BSD packages which withered away because some "proprietary" Microsoft version existed is exactly ZERO.

Besides which, all you Anonymous Cowards keep telling me that Free Software is not about "free beer". If it's not, then who cares if Microsoft sells your "beer" for money?

Here is one the replies that underline another side of the problem -- the side that also is present in the existence of a special version of Linux for Transmeta -- an ultrasecretive company that does not revel the actual architecture and command set of their chips.

Re:Is BSD more free than GPL (Score:0)
by Anonymous Coward on Saturday January 01, @11:24AM EST (#31)
Yes, but what about those of us who would like to contribute to a GPL product that eventually has many authors?

If the original author wants to take it commercial, and I can't, I'd be pissed -- especially if I did a proportionally similar amount of work.

I seriously question the validity of this position taken in the GPL. If he can, using some of my code, I say fuck him and let him use untested and shaky license in a court case. I'd like to see something like this happen.
Re:Is BSD more free than GPL (Score:0)
by Anonymous Coward on Saturday January 01, @12:07PM EST (#60)

I seriously question the validity of this position taken in the GPL. If he can, using some of my code, I say fuck him and let him use untested and shaky license in a court case. I'd like to see something like this happen.

Agreed. It's about time that a judge applied his line-item veto to cross out invalid portions of the license. And no, that doesn't break the whole thing. That's not how contracts work. Get a lawyer. The GPL is not supportable.

Re:Is BSD more free than GPL (Score:3, Interesting)
by Arandir (arandir-at-meer-dot-net) on Saturday January 01, @04:06PM EST (#145)
(User Info) http://www.meer.net/~arandir/
"Perhaps you should look proprietary up in the dictionary before you apply it to gcc."

-----
Proprietary: (1) of, relating to, or characteristic of a proprietor (2) used, made, or marketed by one having the exclusive legal right.

Proprietor : one who has the legal right or exclusive title to something : OWNER
-----

Proprietary software is owned software. The FSF owns gcc. By retaining a copyright, they have retained exclusive legal rights to gcc.

The FSF is the owner and proprietor of gcc, and thus gcc is proprietary. Perhaps you should use a real dictionary, instead of the redefinitions the FSF uses.

Forking

Geocrawler.com - mozilla-license - Forking the Lizard

I remember it was thoroughly examined at the time of the original licensing of the code and that GPL (and dual licensing) was rejected not just for this reason but it was a significant one.  Its true that one could always argue that any of my scenarios are unlikely to happen but I can`t quite see me bringing a proposal to a board of directors and them being happy with that kind of risk assessment.

Its not as if this kind of attack was unknown or even ignored in literature on GPL ( http://www.softpanorama.org/Social/copyright.shtml#GPL), such as the `renaming problem` where a body of files can be simply renamed under GPL and treated as a separate work.  This actually makes my Company X example much worse, if in releasing their product they had trusted the dual licence and heeded the Stupidity Tax argument then someone could come along and simply rename all the files created by Company X under the GPL licence and
Company X would have no recourse whatsoever and what`s more would be unable to use this renamed copy within their own proprietary software even though the only difference was in the naming of the files.

To counter the argument that the Stupidity Tax (the cost of maintaining a radically different tree) ensures my dire scenarios will not take place, I`d make two points.

Firstly, if the benefits of specifically forking into the GPL outweigh the benefits of not doing so then it will be done.  Up to now a great many GPL`d programs have been *nix based and the nature of that audience is quite well disposed to cooperation, with the mozilla.org XPCOM and XPFE releases an entirely different kind of audience is being sought.

Secondly, unlike a fork for the purpose of functionality, this kind of fork can be continually fed from the MPL code.  Each new release of MPL based code (and dual licensed), can feed the forked version especially when the
object that is forked isn`t part of the main mozilla.org code but a Contributed Work, in other words a significant application.

I think the benefits of forking any successful application based on mozilla.org will become so tempting as to be irresistable.

As for it not being a problem so far with existing `dual licensed` code I`d actually say that its a problem waiting to happen, betting on it not happening might mean that your quotient for belief in fellow man is higher than mine but that`s about all.  For instance, the release of 3.1 of NSS might just encourage someone to mangle GPL code into it because it suits them to have had someone else implement the RSA algorithm.  You can also say that AOL as the original contributor doesn`t care about this because from the time its forked in this way they cease to care about it.  A developer of vertical market applications with small audiences however has a different scale of problems.

I believe this `dual-licensing` is a hideous mistake it will dissuade small commercial developers from contributing significant fixes, and from publishing open source.  This might seem an irrelevant audience to mozilla.org, undoubtedly to AOL it is, but it was one of original aims of the MPL licence.  If this is no longer the ethos on which mozilla.org runs then it would be better if it came out and said so.

Simon


GPL and Corba

Can CORBA Sidestep Open-Source Licensing (Web Techniques, Apr 2001) Counterattack agaist "viral aspect" of GPL.

"This is great for businesses that would rather extend existing code than reinvent the wheel-but there's a catch.. Essentially, this means that if you improve open-source software, those improvements must also be open. In many cases, developers in this scenario are stuck"

... ... ...

As you've likely noticed, other than the reusable boilerplate code, you had to write very little code to run the TaxExpert program in a separate process: 7 lines in the taxes.idl file ( Listing 4), 13 lines in the TaxExpertimpl class ( Listing 8), and then 9 lines in the main routine that starts the CORBA server ( Listing 9). That's a total of fewer than 30 lines of code.

CORBA is a powerful library that you can use to perform many different tasks, like writing distributed software that's in different languages and runs on different machines with different operating systems. Mastering the IDL file is the key to using CORBA. Complex projects require complex IDL files, including features like different data types, arrays, structures, and IO specifications. CORBA also offers many sophisticated instance and memory-management strategies. While complete mastery of CORBA may take awhile, you can use the techniques I've shown to get immediate results.

Open-source software is among the best written and most widely used software in the world. However, as open-source software is licensed and isn't in public domain, you often can't make use of it in real-world commercial situations. Although you should consult a lawyer for a definitive legal opinion, you might be able to use a CORBA-based programming strategy to split your program into two parts: one open-source and one proprietary.

Linux Today - WebTechniques Can CORBA Sidestep Open-Source Licensing

RMS and the RIAA are on opposite sides of the freedom debate, but they do share one common enemy "Church's Thesis" http://cs.fit.edu/~ryan/glossary.html. A direct result of Church's Thesis is that no matter what you're trying to do, there's always a way to do it with one more level of indirection, or one more after that, or one more after that, or .... There's always a way to cheat *any* system you have in place, so unless you're willing to take draconian measures that will make a lot of legitmate uses illegal, you'll just have to accept it.

CORBA-like technologies are a case in point. CORBA, XML-RPC/SOAP, and even plane old named pipes are protocols that work by communicating results back and forth. Essentially, communication can be used to simulate any linkage. If you make communication equal to linkage, you open up a whole rat's nest of legal and enforcement implications.

RMS must be pulling out his hair over the issue, since he doesn't want to become the very thing he's fighting against.

Ultimately, as RMS admits, the issue is not legal, it's moral. You can't legislate morality, but you can make laws that encourage you to do the right thing. The beauty of the GPL is that it "legislates" a set of rules that make it "okay to share without feeling taken advantage of". It's a delicate balance that's incredibly difficult to keep in the long term unless people really want it.

engineer_scotty - Subject: Linking and the GPL ( Apr 2, 2001, 03:11:13 )

The whole question of what level of "linking" to a program is required before
the linked program can be considered a "derived work" (and thus subject to the
original author's copyright restrictions, including those found in the GPL)
is, I believe, an open issue.

One can take somebody else's source and modify it. This is uncontroversially
a derived work.

One can statically link to a library in a language (such as C or C++) that
uses header files, and requires explicit inclusion of someone else's source
in your program--but making no changes. Is this a derived work? Most folks think so.

How about dynamic linking with a shared library or a DLL? A bit of disagreement
on this one.

How about languages like Java, where there are no header files, and your source
is compiled WITHOUT any of the source code of the library being included?
Does linking to a Java archive or loading a class make your work a derived
work?

What about RPC, CORBA, XML/SOAP, the X protocol, the Linux user/kernel
interface, Java RMI, or any number of other technologies where requests are
marshalled into packet form, passed through a "thin" interface, and
demarshalled on the other side?

Remember; RMS does not get to define what constitues a "derived work" and what
does not. Copyright law does that; and the law remains unclear. RMS (or
anyone else) may EXEMPT certain classes of derived works (as Linus exempts
kernel modules from GPL requirements so long as the kernel source itself is not
touched); but authors may not extend the scope of copyright beyond what the law
provides for.

e_s

Well, that's the standard closed source is a PITA problem. That part I understand quite well. Your problem, however, caused me to think about the article in reverse: what if commercial code relied more heavily on CORBA and the like? Wouldn't that make it one heckuva lot easier to sneak in some kinds of fixes and functionality? Not compared to having the source, of course, but better than the common case.
Just a wonderin'.


GPL and government-sponsored work

CNET.com - News - Investor - News - Story -- Allchin's controversy. Jim Allchin was probably the first influential software company official that openly linked GPL license with Anarchism and pointed out that like some other equality-based social schemes GPL might negatively influence innovation:

 Jim Allchin, says that freely distributed software code such as rival Linux could stifle innovation and that legislators need to understand the threat.

The result will be the demise of both intellectual property rights and the incentive to spend on research and development, he said yesterday, after the company previewed its latest version of Windows. Microsoft has told U.S. lawmakers of its concern while discussing protection of intellectual property rights.

...''Open source is an intellectual-property destroyer,'' Allchin said. ''I can't imagine something that could be worse than this for the software business and the intellectual-property business.''

Microsoft clarifies exec's open-source concerns

Allchin's concerns, eWEEK was told, stem from GPL paragraph (2B), which states, "You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License."

In other words, Microsoft representatives warned, "anyone who adds or innovates under the GPL agrees to make the resulting code, in its entirety, available for all to use ... [which] might constrain innovating stemming from taxpayer-funded software development."

Allchin, according to the company, does not have the same concerns about all open-source approaches in general. "There are other kinds of open-source licenses that encourage third-party development but without the same constraints, including the BSD license," Microsoft representatives said.

See also:

A Response to Jim Allchin's Comments by Tim O'Reilly. Rather intresting althouth he avoided the question "Is Anarchism un-American ?"; also he failed to distinguish between BSD License and GPL where BSD license IMHO more represents an academic part of the movement and GPL -- it's anarchist part). It's somewhat apologetic: O'Reilly is the major beneficially of the open source movement -- the quality of O'Reilly book about important open source products are vastly superior to the quality of the documentation written by volunteers but he ignored this fact and praise CatB that claims quite an opposite ;-). Contains a couple important observations (in one linking FSF to a cult :-) :

To be sure, Richard Stallman is evangelical in attempting to convince others that free software is a moral issue, and not just a pragmatic choice, but he is hardly alone in asserting a forceful moral position about issues for which there is no wide cultural consensus.

...The greater part of Microsoft's revenue in the late 90's came from the incorporation of internet functionality (mostly developed on an open source model) into its products. The upgrade stream came not just from innovation inside Microsoft, but in large part from innovation by the very community Allchin now seems to portray as the "worst thing that could happen to the software business."

Slashdot comments:

Re:Ah... so they're Pro-BSD (Score:1)
by davidmb on Wednesday February 21, @06:49AM EST (#361)
(User #213267 Info)
Regarding your second point, has anyone actually tested this out in court yet? It'd be interesting to know whether the GPL is a powerful legal lever or not. At the moment it seems like companies are more worried about damage to their image if they're seen to pilfer GPL code.

Python License Change

Guido van Rossum Responds to Python Licensing Issues  Open Source,Community,Software Sep 7th, 2000

In any case we don't want to use *just* the GPL for Python, because there are many proprietary software developers in the Python community who don't want to work with the GPL. Python has always had a BSD'ish license which was perfect for them. I see no reason to suddenly confront everyone in the Python world with the GPL.

For more information on the CRNI license, see here.

Linux Today - Richard Stallman Response to Dave Winer on Python Licensing

By Richard Stallman

David Winer is passionate in his disgust for me and my work; so much so that he does not limit himself to rebuking me for the things I have done. He feels entitled to imagine other things he would disapprove of, and attack me for them too.

In his column on September 8, he notes that he tells Guido van Rossum, "Don't give in to Stallman." From the context, it is clear Winer imagines that I am asking--or rather, demanding--that Python be released under the GPL and only the GPL.

As Guido can confirm, that is not the case. I have been pushing for the license of Python to be compatible with the GPL, so that it can be linked with GPL-covered programs as well as with other programs.

If the Python license is incompatible with the most popular free software license, that creates a major practical problem for the community. Given the importance of this problem, all my efforts in talking with the Python developers have been aimed at solving it, at trying to propose some solution that they will accept. This isn't easy, and I am not going to make it harder by asking them for something else in addition.

Winer's description of my goals is equally inaccurate. I am not opposed to commercial software. When companies contribute to the Free World by developing free commercial software, I say more power to them. I started a free software business myself in 1985, selling tapes of GNU Emacs; I dropped it when the FSF took over selling these tapes.

What I disapprove of is non-free software--never mind whether it is commercial or noncommercial. But even I sometimes choose a license that permits a library to be used in non-free software (see http://www.gnu.org/philosophy/why-not-lgpl.html).

The idea of the GNU GPL is to establish certain liberties for everyone, and defend them as much as possible from anything that might take them away. We believe in two-way cooperation, and we invite everyone to join, but we do not invite people to exploit us by putting our code into non-free programs.

One thing in Winer's article is accurate: my philosophy is NOT open source. I have been standing firm for the philosophy of the Free Software Movement since 1984. The Open Source Movement, founded in 1998, has a less firm stand. I am not going to join them; I am going to keep standing firm.

But although I do not agree with or speak for the Open Source Movement, I have seen what they say, and I know that Winer misrepresents them when he invokes their name for his opposition to copyleft.

I believe that software users are entitled to certain liberties, to share and change software. I wrote the GNU GPL to defend those liberties. But there are some kinds of liberty I do not agree with. Taking liberty with the truth is not a good thing.

Copyright 2000 Richard Stallman
Verbatim copying and distribution of this entire article are permitted in any medium, provided the copyright notice and this notice are preserved.


KDE Jihad

Stallman on Qt, the GPL, KDE, and GNOME

Making Qt available under the GPL makes it legal to take an existing GPL-covered program and adapt it to work with Qt. It also provides a way to resolve one of the free software community's long-standing problems, the problem of the ethical and legal status of KDE.

The design of KDE was based on a fundamental mistake: use of the Qt library, which at the time was non-free software. Despite the good intentions of the KDE developers, and despite the fact that the code of KDE itself was free software, KDE could never be part of a completely free operating system as long as it needed a non-free program to function.

But the KDE developers were not concerned about this problem, and recruited helpers who shared their views. As KDE/Qt developed, it posed a growing risk to the progress of free software. The risk was that KDE/Qt would become so established that most of the user community would treat it as indispensable--disregarding the fact that this meant using non-free software. Widespread acceptance of one crucial non-free program would encourage a general willingness to accept non-free software, meaning fewer people who might have the will to help replace KDE/Qt with something entirely free. And that job would require catching up with a large head start, just as we did in replacing Unix with GNU and GNU/Linux. To be back in that situation was a discouraging prospect.

But we were not there yet, and it was clear we should take preventive measures before we got there. In 1997 we launched two parallel projects designed to avoid that situation: the GNU desktop (GNOME), which aimed to provide a completely different alternative graphical interface, and Harmony, a free replacement for Qt. The reason for starting two projects in parallel was redundancy: any project may fail, and the risk was big enough to warrant two simultaneous approaches to preventing it.

GNOME caught on, and by 1999 it was a clear success. Then Qt was rereleased under a new license, the QPL, which made it free software. This solved the principal problem of KDE/Qt, the fact that part of it was non-free. But a secondary problem remained: the problem of license inconsistency.

The QPL is incompatible with the GPL, which means that Qt and GPL-covered modules cannot legally be combined, unless the developers of one module or the other grant an exception to permit it. The KDE developers certainly intend their GPL-covered code to be used with Qt, and one can argue that by telling you to link it with Qt they have implicitly given you permission to do that. But they did not formally state this exception in the KDE source code itself, and it is not comfortable to rely on implicit permission for something like this.

In addition, in some cases code was copied into KDE from existing GPL-covered modules whose copyright holders had not given special permission. (Only the copyright holders can give extra permission to do things that the GPL does not permit.) That is a real violation of the GPL. Because of this, and the overall lack of an explicit exception, the legal status of KDE remained clouded.

Qt 2.2 provides the basis to solve this secondary problem, but a certain amount of cleaning up will be needed to fix it thoroughly. Misusing a GPL-covered program permanently forfeits the right to distribute the code at all. Such situations have occurred in KDE, and now they ought to be cleaned up.

It would be a good idea for all of the authors of code in KDE (more precisely, all of the copyright holders) to make a clear statement that linking their code with Qt in the past was done with their permission, thus assuring existing KDE users that they have not forfeited distribution rights to that KDE code.

Also, where code was copied from other GPL-covered programs, their copyright holders need to be asked for forgiveness. To lead the way, the FSF hereby grants this forgiveness for all code that is copyright FSF. More precisely, those who as of September 4, 2000 have used some FSF code in violation of the GPL solely by linking it with Qt, and thus have forfeited the right to use that code under the GPL, will once again have full GPL permissions to use that code upon switching to a GPL-covered version of Qt. I appeal to all the other copyright holders of affected code to grant similar forgiveness and thus help resolve the situation quickly.

Soon KDE should be properly based on a GPL-covered version of Qt, and the Free Software Movement will be able to think of KDE/Qt as a contribution and not as a problem. Meanwhile, I think there is no reason to work on another package which is equivalent to Qt. If you want something like Qt, use Qt.

But GNOME is here, and is not going to disappear. GNOME and KDE will remain two rival desktops, unless some day they can be merged in some way. Until then, the GNU Project is going to support its own team vigorously. Go get 'em, gnomes!


GPL as an incompatible license

Royalty-Free CIFS Technical Reference License Agreement -- funny this is the first license that explicitly mentions GPL as IPR impairing license and discriminates against it in a way similar to GPL's discrimination of BSD works (you cannot use GPL code in BSD project without changing the license to GPL).  It looks that GPL was caught in the same way. Paragraph 1.4 is a Microsoft variant of "viral property":-). It might be also interesting to read FSF reaction  They do not feel the tragicomic elements in this shafu, if they discriminate against others, other has full rights discriminate against them.

... ... ...

1.4 "IPR Impairing License" shall mean the GNU General Public License, the GNU Lesser/Library General Public License, and any license that requires in any instance that other software distributed with software subject to such license (a) be disclosed and distributed in source code form; (b) be licensed for purposes of making derivative works; or (c) be redistributable at no charge.

1.5 "Non-Microsoft Platforms" shall mean any platform other than any version of a Microsoft client, embedded and server operating system product, including without limitation, Windows XP, Windows CE, Windows 2000 and Windows 95 operating system products, or successors of those products.

1.6 "Necessary Claims" shall mean those claims of a patent or patent application, including without limitation, United States Patents Nos. 5,265,261 and 5,437,013, which (a) are owned, controlled or sublicenseable by Microsoft without payment of a fee to an unaffiliated third party; and (b) are necessarily infringed by implementing the CIFS communication protocol as set forth in the Technical Reference, wherein a claim is necessarily infringed only when there are no technically reasonable alternatives to such infringement.

1.7 "Technical Reference" shall mean the Microsoft copyright document titled Common Internet File System (CIFS) File Access Protocol version 1.0 found at MSDN Downloads.

1.8 "Term" shall have the meaning assigned to it in Section 6.1.

2. Enhancements and Updates

2.1 Enhancements. Any Microsoft file system protocol enhancements beyond the Technical Reference are not licensed.

2.2 Updates. Updates to the Technical Reference are not licensed. In the event Microsoft elects to provide updates of the Technical Reference to Company, such updates will only be licensed by Microsoft under a separate written agreement or a written amendment to this Agreement.

LWN.net weekly edition

Meanwhile, "royalty-free" (RF) licenses are generally considered to be good for free software. But what is one to make of Microsoft's "Royalty-Free CIFS Technical Reference License Agreement," which prohibits the distribution of a CIFS implementation under an "IPR impairing" license - specifically the GPL? It's only "royalty-free" if Microsoft likes your license. These terms appear to be an effort to undermine Samba, which is licensed under the GPL. Whether this attempt will see any success is, of course, another question: the Samba developers have not signed this agreement. It does hint, however, at the possibility of real attacks against Samba - using patents, perhaps - in the future.

Microsoft's language also highlights a common misconception about the GPL that Microsoft, seemingly, wants to encourage. One often sees claims that use of GPL-licensed software can force the release of a company's proprietary source code. In fact, the GPL lacks any such power. A company which distributes software derived from GPL-licensed code is required to make source available and follow the other GPL terms. Should a company fail to comply with those terms, however, there is only one thing that happens: the company loses its right to use the original GPL-licensed code. From the GPL text:

You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License.

The loss of the right to use GPL-licensed code can be devastating to a business, but it is not the same as having that business's intellectual property pried away from it.

Open source subject to fiery debate Stallman's "demands for freedom" with microscope ;-)

The panel was stocked with an economist, a researcher, a professor, and a representative from Microsoft -- all invited to participate by hosts the American Enterprise Institute (AEI) and the Brookings Institution, two organizations that analyze the impact of government regulation on the economy.

But audience member Richard Stallman, president of the Free Software Foundation, nearly stole the panel's thunder as he grabbed a microphone during the question and answer period and attempted to commandeer the conference to address what he described as mischaracterizations the panel made about the free software movement. Stallman had not been invited as a panelist.

There are actually three software licensing models in use today, explained panelist Lawrence Lessig, a professor at Stanford University. There is proprietary software, which shields a program's source code from the licensee; open source software that lets the user view the source code and make changes to it; and general public license (GPL) software that adds a restriction to the open source license saying any modifications made to the source code must then also be made freely available. The GPL model was developed by Stallman.

While Lessig argued that each licensing model has validity, he said that some commercial software vendors take issue with GPL's condition that would force them to make their modifications to the code -- as well as the original software -- available for free, since that would jeopardize the companies' ability to sell software with their additions. For example, if a piece of software that emerged from government research was made available to the industry under a GPL license, many software vendors would not be able to base their own programs on it because that would expose their source code to the general public.

"When software is distributed under GPL, it's impossible for a private company to commercialize or incorporate any of that work" into their own products, said panelist Brad Smith, senior vice president and deputy general counsel with Microsoft, since the company would have to charge for its software while others would be allowed to distribute it for free. "Our point is if you're going to license software under GPL, it's important to appreciate the ramifications on the diversity of the software ecosystem."

Another panelist said that open source software such as the Apache Web server has found success because it contains enhancements and modifications from all sorts of different developers. "Even though it's not GPL, people don't want to take (Apache) private, they want to contribute back," said Jim Bessen, director of Research on Innovation, a nonprofit group that promotes research on technological innovation. "There are a lot of economic reasons not to take it private," such as reaping the benefits of others' input, he said.

In some countries, governments are jumping into the debate on the side of open source software, said panel moderator Bob Hahn, director of the AEI-Brookings Joint Center for Regulatory Studies. In Singapore, for example, the government is subsidizing open source software's production and use, he said. The U.S. government ought to pick the best product for the job, be it open source or proprietary, said David Evans, senior vice president with National Economic Research Associates, an economic consulting firm. There isn't a "market failure" in the software industry that the government needs to fix by supporting open source software, he said, and the top firms in the industry are changing all the time.

"The industry over (the past) 20 to 25 years doesn't seem to be screaming out for government meddling," Evans said. "Politicians just aren't very good at picking technology, markets are."

Using this market failure test to determine whether or not the government should commit to open source software is one of the topics that Free Software Foundation's Stallman took issue with. "These questions regarding market failure, I don't think it matters. Injustice, that's what matters, " Stallman told the panel and the audience. Debating over whether "the market is working or not misses the whole point of freedom," he said.

Stallman also disputed Bessen's earlier comments criticizing the press for characterizing free software advocates as free love idealists of the 1960s. Stallman said that, in fact, the groups have similarities. "We're demanding freedom," he said.


GPL and Fair use

Computer News Fair Use and the Fallacy of GNU -- an interesting stance on GPL and fair use doctrine.

Section Five of the GNU GPL says, "You are not required to accept this License ... However, nothing else grants you permission to modify or distribute the Program or its derivative works." Well, not quite, Rich.

The copyright laws include the doctrine of "fair use," which overcomes the exclusivity rights and other restrictions placed on copyrighted material and gives people the right to use copyrighted works without permission, even when permission is explicitly denied. See Campbell v. Acuff-Rose Music, Inc., 114 S.Ct. 1164 (1994).

Fair use may not seem fair to the author whose work is taken, but it is fair to society as a whole.

[Bell, 1998] Bell, T. W. "Fair Use Vs. Fared Use: The Impact of Automated Rights Management on Copyright's Fair Use Doctrine," 76 NC L. Rev., (1998), pp 557-619. URL: http://www.tomwbell.com/writings/FullFared.html

Scholars have explained fair use in at least three ways: (1) as a proxy for a copyright owner's implied consent;[112] (2) as part of a bargain between authors and the public, struck on their behalf first by courts and then by Congress;[113] and (3) as a response to a market failure in private attempts to protect authors' expressions from undue copying.[114] The first of these three explanations has fallen into [p. 581/p. 582] disfavor because it does not explain why fair use protects parody and other uses of copyrighted material that owners find disagreeable.[115] The second explanation receives due consideration below.[116] The present subsection addresses the third explanation of fair use and argues that, as a response to market failure, the fair use doctrine can and should give way in the face of the effective enforcement of authors' rights through automated rights management.

Lawmakers enacted the Copyright Act to cure an alleged case of market failure: creating a work can cost authors a good deal, whereas copying a work costs free riders very little.[117] Absent special protection from such copying, the argument goes, authors will underproduce and the public will suffer. Copyright, as Justice Holmes explained, therefore "restrains the spontaneity of men where but for it there would be nothing of any kind to hinder their doing as they saw fit;"[118] namely, copying others' expressions at will. Perhaps [p. 582/p. 583] in the digital intermedia automated rights management will cure this market failure by protecting authors' works through technological and contractual means.[119] ARM's other curative effects interest us here, though.

Markets, like squeezed balloons, bulge outward where unconstrained. In its attempt to protect authors from the discouraging effects of unfettered copying, copyright law has thus created market failure elsewhere. The costs of avoiding infringement by obtaining permission to use a copyrighted work, and thus avoiding infringement claims, often exceed the benefits of the desired use. Such transaction costs threaten to prevent many socially beneficial uses of copyrighted works from taking place. The doctrine of fair use attempts to cure this particular market failure by excusing as non-infringing a limited (though poorly defined) class of uses of copyrighted works.[120] As Professor Gordon describes it, "courts and Congress have employed fair use to permit uncompensated transfers that are socially desirable but not capable of effectuation through the market."[121]

Understanding fair use as a response to market failure does much to explain the vagaries of its development in the case law.[122] More to the point, it lends support to the holding in American Geophysical. Consistent with the market failure theory of fair use, the court reasoned that "a particular unauthorized use should be considered 'more fair' when there is no ready market or means to pay for the use, while such an unauthorized use should be considered 'less fair' when there is a ready market or means to pay for the use."[123] In other words, the scope of the fair use defense rises and falls with the transaction costs of licensing access to copyrighted works.


GPL and Linux Kernel

Linux-Kernel Archive Linux-2.4.0-test8

The only one of any note that I'd like to point out directly is the clarification in the COPYING file, making it clear that it's only _that_ particular version of the GPL that is valid for the kernel. This should  not come as any surprise, as that's the same license that has been there since 0.12 or so, but I thought I'd make that explicit.

Why? There's been some discussions of a GPL v3 which would limit licensing to certain "well-behaved" parties, and I'm not sure I'd agree with such restrictions - and the GPL itself allows for "any version" so I wanted to make this part unambigious as far as my personal code is concerned.

The reason I wanted to mention that particular issue here explicitly (rather than as just a one-liner in the changelog) is that code written by others is obviously under _their_ discretion, and not limited by my  personal foibles, fears and misgivings.

If anybody wants to explicitly state that their code will be valid under any version of the GPL (current or future - whatever they may look like), please send patches to say so for the code in question. If you've used the FSF boiler-place copyright notice, you already have this in place (it says "v2 or later" - the FSF itself doesn't recommend v1 any more).

(Me, I'm taking the careful "wait and see" approach. I don't know if a GPL v3 is imminent, and I don't know if the issues discussed will even _become_ real issues, so you might as well consider me a paranoid, if careful, bastard).
 


GPL and Business Opportunities

Contrary to Open Source Initiative claims it's proven historically that GPL does not prevents business opportunities per se. It might just prevent a creation of a sustainable scalable business model. Also GPL gives enormous advantage those who first enter the market or grow fast due to external financial infusion made for political reasons (Red Hat can serve as a very nice example here). And GPL proved to be a very hype-friendly and extremly IPO friendly license (i.e. the market capitalization surrounding "Linux" companies IPOs was almost completely based on hype ;-) Here is one opinion from Slashdot:

Re:GPV destroys business opportunities (Score:2)
by dennisp (spam-me-and-die@darkpower.net) on Sunday January 02, @05:59AM EST (#254)
(User Info)
Yes, but the real question is if this is a sustainable business model. If forced to provide all changes to your product, competition will flourish and this sector of the market as a whole will reach a point of diminishing returns -- from which some will leave market and others will join -- producing a cycle that is not very good in the eyes of the shareholder.

However, the hype surrounding linux has also brought proprietary software built around that free software. This model is possibly sustainable if handled properly due to at least temporary product differentiation. If you offer product differentiation that fulfills a market need that free software does not, then you can likely become profitable.

Unfortunately, this model is not similar to the proprietary model that Microsoft runs. Therefore, the market capitalization surrounding these companies is almost completely based on hype. Why? Because this new model relies on support, service, and partially proprietary extensions -- and these industries do not have large profit margins.

Companies such as VA Linux offer very little product or service differentiation in their own specialization. If they can move more towards producing real solutions, they can become a solid player. This sector of the industry is growing at an exponential pace, and there seems to be room for many. They will, however, have to compete with the likes of IBM who have used their past reputation and power of brand name to partially reinvent themselves in this changing market.

SGI, at a glance, seems to be the victim of a few very large long term strategic planning mistakes. In my opinion, if they can provide sufficient product differentiation and added value to forego the recently commodified pc market, or cater specifically to the high end and niche markets, they have a very good future.

Again, those last three giants aren't even specifically in the free software market. They are only leveraging its hype due to the me-too effect. It's kind of like price wars in other industries that come out of nowhere.

Getting away from the market giants, there are a number of viable models that can and will work. Ones that I can currently think of are:

a) companies that are essentially in another industry that is not directly tied to software can collaborate with other companies in the same or other industries to produce open software that will benefit everyone.

example: I prototype a particular java library that is part of a bigger picture in my company. The resources involved in creating this library would be a large drain on project budget. I come up with the idea to make this a community project and talk with friends in other companies (or a less organized community at large). We decide that we can split costs by collaborating on producing all the parts of this library (as well as qa). We GPL this product because it is not part of our bigger software or solution model.

I would also note that I get flak because our traditional model is to monopolize anything and everything our employees produce. I eventually convince management that this is a positive symbiotic relationship.

b) one company comes up with an idea for a standardized format or protocol, but needs industry support for it to be successful

example: Livepicture Inc conceives the flashpix format. It works with Microsoft corp, HP, and Eastman/Kodak to produce this image format. It then donates this format to the DIG.

c) traditional service/support model based around open source software

example: i produce a high level language to help produce ISAPI or NSAPI modules.