> (Of course i am not legal expert and never read the GPL. so i might be wrong)
i can see that you've never read the GPL. the GPL does NOT give your rights to the code to the public. you retain full copyright of all the code you wrote.
the gist of the GPL is this:
- the code remains the property of the author(s)
- you accept the code as is, and don't hold the author liable for any damages you inflict upon yourself
- when redistributing the application/library/whatever *must* include the source code
- you may not sell the source code or the binary code
- any derived or additional code must also use the GPL
the LGPL is almost exactly the same, except that the last point does not apply... if you use GPL code in your app, it must be GPL too, if you use the LGPL in your app, your app doesn't have to be GPL or LGPL. the MPL (Mozilla Public License) is even less restrictive than that...
Still it doesn't seem very usefull for those who'd like to use the program. They can't make any changes/updates to the code unless the copyright holder gives them copyright ownership too. Otherway is like giving their rights to someone else. If they used or going to use the same peace of code on one of their applications is a violation of GPL, right?
Also the LGPL is not for any kind of app but only for drivers and services. If anything gets mixed with your program is dangerous. There is a fine line there, it could easilly said that your program is build around the LGPL.
So, for the public, it's more restrictive than say MIT language. My opinion about GPL has changes but not for the better.
- - - - - - - - - - - - - - - - - -
Memory leaks is the price we pay \0
The problem with the GPL is obvious - by being viral you are forced to make any code that uses GPL code also GPL'd. This effectively prevents me from using GPL'd code in any commercial work that I do - it certainly does not encourage me to generate more OpenSource software as the FSF advocates.
The LGPL was, I agree, supposed to fix that, but the fact that Richard Stallman actively discourages people from using the LGPL, and the Free Software Foundation have deprecated its use.
This has caused me all sorts of pain, and has put me off the OpenSource world considerably. Some things from OpenSource are great, like Apache, where they can be used out of the box, and you are unlikely to use them as a library. But if you want library code to be actually used by real developers, then you pretty much can't use the GPL.
It becomes even worse in the real world where you use libraries from many sources. At work, we use both BCGSoft, and CodeJock windows libraries. These are not OpenSource, and we have had to pay to get access to the source code. Any attempt to include a GPL'd library into our software would require us to release the entire software base, which we are legally obliged not to do. That means we can use commerial or GPL'd libraries - not both. I recently had to write a lexer and parser from scratch, because none of the libraries I evaluated had suitable licence arrangements.
I agree therefore that GPL is Evil - but worse still, Richard Stallman &c are shooting themselves in the foot by withdrawing backing for LGPL which makes the OpenSource movement usable. They have done it to increase the amount of OpenSource software, but are actually doing the reverse.
have you ever read the Microsoft Windows XP EULA?? it's even worse! and it REALLY *is* evil... the GPL is all about freedom, the EULA is all about how you have no right to anything, and if anything goes wrong it's your fault.
(me having actually taken the time to sit down and read through both)
If you are using open souce code in your application it would be normally covered by the LGPL (or equivilant), not GPL - this is standard for libraries.
This means that you must release your code to the public domain only the parts of your program that directly modify the library. If you only access the library through an API then you don't have to do anything.
That is my understanding of the license anyways, I'm not really an expert.
jaxterama wrote: When using code, I shouldn't have to feel that I am being forced into a licensing scheme for MY code that uses someone elses code.
Well, it is their code you are using, they have as much right to choose the conditions under which they allow you to use their code as a company that sells closed source lets you see their code under restrictions, don't they?
* commercial closed source
* commercial but you can buy the source
* open source licensed restricted to use in other open source products
* open source licensed with a fee for commercial use
* simply free retaining copyright
* simply free with no copyright
is really up to the developer(s). Unfortunately, I don't think developers think about the licensing/copyright complexities before putting something out in the public domain. There's a lot of code downloads on CP where there's no copyright from the author. (And the opposite is true too--there's times when the code is based on someone else's code without any acknowledgement).
* Patent law provides a production/sales monopoly on inventions; though this
protection is broad, it requires thorough identification of prior art and
proof of the uniqueness of the invention.
* Copyright law establishes a set of (transferable) publication rights.
* Trademark law protects the identifying names, logos, and other symbols used in manufacturing or service businesses against unfair competition.
* And trade secret law protects unpatented and concealed processes, compounds, or tools with competitive advantage.
So it all depends on what the developer feels is appropriate for how he/she wants to establish the rules governing the use of the code.
What amazes me though is how emotional people get over open source licensing, and some the arguments that are so incredibly irrational. I guess it's hard to separate the zealotry that drives open source licensing from its usefulness.
I agree with most everything you said. However I think that "open source licensed restricted to use in other open source products" (e.g. GPL), are pure evil. Not because they're anti-capitalistic (which they are) but it is about imposing a communistic belief system on others by restricting their development to free-use if any GPL code is used. I think commercial, $$$ licenses are freer than GPL!
Simple licenses are best. Developers should either make their code free (while retaining copyright) or commercial, or a combination (a free non-commercial license and a $$$ commercial license).
> Not because they're anti-capitalistic (which they are) but it is about imposing a communistic belief system on others by restricting their development to free-use if any GPL code is used. I think commercial, $$$ licenses are freer than GPL!
You're kidding, right???
You could just as easily argue that distibuting commercial software is imposing an evil, capitalistic belief system on others.
Definitely there is particular philosophy behind GPL, but I don't see any imposition happening. No-one has held a gun to my head and forced me to use GPL software. Or commercial software for that matter. Personally I'm pleased to have both options.
First, I really agree with that statement. But then again there is a little contradiction between the survey's headline and its details. While the Headline What type of source code license do you prefer? is quite ambiguous (this is where I also would say it depends on the situation) my vote was more an answer to the second questions: What license would you use for code you wish to share with the community? For me true sharing with the community means not wanting to make money out of it. So I don't care if some hobby programmer uses the code or some big company. Consequently I voted for Unrestricted use and redistribution whereas I basically meant the BSD License[^].
For my consultancy work I have a set of libraries that I use across projects. These are all BSD licenced. I do this so that I can retain copyright but my clients are also free to have other developers work on the projects in the future.
Although I am evaluating using GPL for full projects that I'm considering open-sourcing. For the general purpose libraries though, I'll stick with BSD because I don't like restricting developers who may find the libraries useful.