GPL licensing - is it actually legal?
Over the years I've had many arguments with proponents of the GPL licensing agreement and I've often wondered if it would stand up in a court of law. I've no idea whether the GPL has ever been tested in court but my gut feeling is that it would never stand up to legal scrutiny. Here's why...
The Free Software Foundation (originators of the GPL) state categorically that 'free' is intended to be interpreted as in 'free speech' - not as in 'free beer'. Even if you use GPL source code in your project, it doesn't prevent you from charging for the end product. It is not the intention of the GPL to deprive programmers of their income.
The problem is that the actual license offers no such protection. If my program is covered by the GPL I am required to release all my source code to anyone who receives a copy of the program. So let's say I write a program for customer A who pays me $500. A month or so later, customer B wants a copy and also pays $500. Next month, customer C approaches me for a copy and pays the appropriate $500. But customer C is a dodgy character. He only wants my program because he's realised that after a few hours work making minor changes, he can churn out any number of copies of 'his' program at a fraction of the price that I'm charging for it. If I complain, he can flood the market with free versions of the program. AFAICT this is all perfectly legal under the terms of GPL.
IMHO, GPL is a badly thought out licensing arrangement which is simply unfit for purpose. Furthermore, in the UK we have a statute called the 'Unfair Contract Terms Act'. This states that (a) clauses which exclude or limit the rights of one participant in a contract are void unless they’re reasonable - and (b) that there must not be an overwhelming and permanent inequality of bargaining power (in other words you cannot be tied to any agreement in perpetuity - which seems to be exactly what the GPL seeks to enforce).
Does anyone else have any arguments for or against GPL licensing?
Re: GPL licensing - is it actually legal?
You might not like the bargain, and you might not think that the right balance is struck, but that's the bargain you make when you use GPL'd source code in your own product.
There's an old saying about "my kingdom for a pepper-corn", which basically means that the Courts will not interfere with a bargain just because one party complains that the other side didn't give enough in return.
Quote:
If my program is covered by the GPL I am required to release all my source code to anyone who receives a copy of the program.
Correct. The GPL license is, in a sense, a "viral" license.
Quote:
So let's say I write a program for customer A who pays me $500. A month or so later, customer B wants a copy and also pays $500. Next month, customer C approaches me for a copy and pays the appropriate $500. But customer C is a dodgy character. He only wants my program because he's realised that after a few hours work making minor changes, he can churn out any number of copies of 'his' program at a fraction of the price that I'm charging for it. If I complain, he can flood the market with free versions of the program. AFAICT this is all perfectly legal under the terms of GPL.
Also correct.
The problem is actually your perception of what's fair. At some point, you were Customer C, except from your perspective, the changes you made in order to use someone else's code were not "minor". Who's to say what is or is not "minor". Anyway, you want to use somebody's open source GPL's code in the "free beer" sense, since you want their code for your own use without paying anyone for it, and then you want to charge someone for your product. That's not the deal you struck. If you use GPL'd code, then the deal is that you must release your own source code too.
The moral of the story: Avoid GPL'd code like the plague, if you ever want to make any money with your product. If you have GPL'd code in your product now, rip it out and get someone to audit the code, so that you can prove that there's nothing in it that forces you to release your source code.
There are other forms of licenses for open source code, including licenses of the "free beer" kind. For one very brief overview, see http://www.codeproject.com/info/licenses.aspx . Also, "Comparison of free software licences" at http://en.wikipedia.org/wiki/Compari...tware_licences
Mike
Re: GPL licensing - is it actually legal?
That is CORRECT. You may charge for your program, but you MUST freely release the Source Code. And anyone with your source code may (actually MUST) also freely release it.
Your charge is NOT for the code, but rather some value that you add to it. For example, manuals, support, etc.
As a side note, many commercial software firms actually forbid (immediate termination if violated) their employees from EVERY even looking at GPL code (even on their own time).
The reason is simple. If an employee looks at a piece of GPL code, and then implements the same constructs in the commercial project, the commercial product (even though not intended as GPL) may be forced to release its source code to the public domain.
While this has not stood up in court for trivial items (e.g. "++i"), there have been large settlements for even very small routines that could not be proven to be independantly derived.
Re: GPL licensing - is it actually legal?
Quote:
Originally Posted by TheCPUWizard
While this has not stood up in court for trivial items (e.g. "++i"), there have been large settlements for even very small routines that could not be proven to be independantly derived.
Hmmm.... are you sure they'd have been settlements in respect of GPL code though?? I'm no legal expert but I do know that in the UK a claimant eventually gets to the stage of needing to prove 'quantum' - in other words, how big a loss they suffered compared to the benefit derived by the party they're claiming against. If a claimant offered to give something away for free, it would be very difficult for them to claim later that they'd suffered a loss - simply because the other party didn't use it in accordance with their wishes.
For example, if I offered to decorate my neighbour's kitchen for free, then I reneged on that agreement, my neighbour hasn't (in the legal sense) suffered a 'loss'. Okay, he still has an undecorated kitchen - but that's no worse a position than he was in, in the first place. I suppose laws are different in different countries though.
Re: GPL licensing - is it actually legal?
I am 100% sure thare have been settlements (agreements between the parties involving a transfer of cash). The two situations I was directly involved in were both settled out of court. I do not have any 100% verifiable information on any actual court imposed verdicts...
Re: GPL licensing - is it actually legal?
Ah yes, I can understand out of court settlements. Litigation is always complex and there might have been other factors that we don't know about - but essentially, my question is whether or not the GPL, if tested in court, would be legally enforceable. I strongly suspect that it wouldn't.
Mike made some points about fairness but it isn't my perception of fairness (or any other programmer's perception) that matters. Since the late 1970's the UK and probably most of Europe has had statutes to define what is fair in a contract (dunno about the rest of the world though). If the 'seller' of a license specifically states that it is not their intention to deprive you of an income - but the license is constructed such that it entitles others to deprive you of your income easily and with impunity, that license is almost certainly 'unfair' (and probably not legally enforceable).
I must admit, I'd be interested to see some counter-arguments though.
Re: GPL licensing - is it actually legal?
The United States (where I am located) and Europe differ significantly in this regard. Without changing the subject too much, just consider that nearly all of Microsoft's legal challenges in the past 5 years have been in Europe....
Re: GPL licensing - is it actually legal?
You and I might not like the terms of the GPL license, but that doesn't make these terms intrinsically unfair. GPL is what it is. You get source code for free, and in turn, you must make your own source code free and open. It's misguided, but it's an attempt at the "stand on the shoulders of giants" approach to innovation and progress.
Quote:
If the 'seller' of a license specifically states that it is not their intention to deprive you of an income - but the license is constructed such that it entitles others to deprive you of your income easily and with impunity, that license is almost certainly 'unfair' (and probably not legally enforceable).
GPL didn't sell you anything: you got it for free. I'm playing devil's advocate here, but if you got it for free, what are you complaining about? Explain why you think that deal is somehow unfair.
Besides, GPL is not depriving you of your income. You just need to think about the way you make your money. Consider companies like Redhat. It sells Linux which is completely free and open source, and anyone with modest computer skills would not need to pay Redhat one single dime to get an equivalent copy of Linux up and running on his computer. Yet they do pay, and Redhat makes money. What are they paying for? As mentioned by theCPUWizard, the "charge is NOT for the code, but rather some value that you add to it. For example, manuals, support, etc."
Quote:
I do know that in the UK a claimant eventually gets to the stage of needing to prove 'quantum' - in other words, how big a loss they suffered compared to the benefit derived by the party they're claiming against. If a claimant offered to give something away for free, it would be very difficult for them to claim later that they'd suffered a loss - simply because the other party didn't use it in accordance with their wishes.
In the U.S., the term is called "damages", not "quantum". While not an expert, it might be argued that the damages are equal to the gross amount of your sales. And more importantly, an injunction might be entered, preventing you from selling at all.
For actual court cases, see http://gpl-violations.org/index.html
Quote:
For example, if I offered to decorate my neighbour's kitchen for free, then I reneged on that agreement, my neighbour hasn't (in the legal sense) suffered a 'loss'. Okay, he still has an undecorated kitchen - but that's no worse a position than he was in, in the first place. I suppose laws are different in different countries though.
That doesn't seem like a fair analogy. GPL is based on copyright law that is roughly identical in all industrial countries. GPL starts with the premise that each software author owns the copyright to his code. Copyright includes the right to make derivative works, and that right belongs exclusively to the author (this is the same in all countries of interest). So, the GPL license agreement states that the author of the code grants to you the right to make derivative works only on the condition that you adhere to all other conditions of the license.
The "kitchen" analogy doesn't seem to capture any of that.
Mike
Re: GPL licensing - is it actually legal?
Those articles make for fascinating reading. There's a couple of examples of motherboard manufacturers who implemented firmware firewalls (using GPL derived code) but then failed to release the source code for their own firmware. Okay, I can agree with that. But there's another example of a laptop manufacturer whose crime was to supply laptops - preloaded with Linux - but they failed to provide (or offer to provide) the Linux source code. A technicality you might think, but no - apparently, you MUST either provide the source code with the product or make an offer to provide it. If you make an offer, it must be provided in a physical form (e.g. on a CD). You can't just provide a link where the source can be downloaded later. This seems quite draconian to me and I'm still surprised that a court upheld it (especially a European court!!)
To be honest though, I could only find a few cases that actually ended up in court. And although the courts found in favour of the plaintiff, the awards just seemed to cover the plaintiff's costs in bringing the case. What a strange world we live in.... :confused:
Re: GPL licensing - is it actually legal?
Hmmm.... thinking about this a bit harder, I actually DON'T agree with the judgement against the motherboard manufacturers. If they used GPL code in their firmware, that shouldn't really make the firmware a derivative work because (presumably) most of the firmware had already been in existence for many years.
Re: GPL licensing - is it actually legal?
Quote:
Originally Posted by John E
Hmmm.... thinking about this a bit harder, I actually DON'T agree with the judgement against the motherboard manufacturers. If they used GPL code in their firmware, that shouldn't really make the firmware a derivative work because (presumably) most of the firmware had already been in existence for many years.
Start with 1 million lines of code....
.... Change one line and it is a derivative work.
.... Chage 999,999,999 lines over a period of time, and it is STILL a derivative work.
The point is that your work in some way originated with the work of someone else.
Re: GPL licensing - is it actually legal?
But what about this example....?
Start with 900,000 lines of code
.... Add 25,000 lines from someone else's code
.... Without touching the original 900,000 lines, extend those 25,000 lines by adding 75,000 lines of enhanced features
How much of the code has been derived from the other person's code?
Re: GPL licensing - is it actually legal?
Quote:
Originally Posted by John E
But what about this example....?
Start with 900,000 lines of code
.... Add 25,000 lines from someone else's code
.... Without touching the original 900,000 lines, extend those 25,000 lines by adding 75,000 lines of enhanced features
How much of the code has been derived from the other person's code?
"Derivation" is not a matter of "how much". The resulting product is a derivative work of each and every authors work (other than the current author). The chain continually grows, unless extreme actions are taken to specifically remove any and all intellectual property of a previous author.
If a body of work is acknowledged as a derivative work, it can be very difficult to remove that knowledge (even if every line of original code is removed. After all "proving" that you thought of the replacement code without letting any of the knowedge gained by looking at the other authors code "leak" into your design is virtually impossible.
Re: GPL licensing - is it actually legal?
The point is this, never GPL your code.
LGPL it at the very most.
Re: GPL licensing - is it actually legal?
Quote:
The point is this, never GPL your code.
I don't think that's the point. At the very least, it's not the point I was trying to make.
You can GPL your code if you want. It doesn't matter to me, and if you believe in the efforts of the "copy-left" proponents, then go for it.
The point I was trying to make is that you should never use GPL'd code in your own product. Because of the viral nature of the GPL license, if you use GPL'd code in your own product, then you have no choice: your own product must also be GPL'd.
Mike