choose-your-software-license (in a nutshell)


bsp

Very Active Member
Joined
Dec 2, 2006
Messages
314
The github folks recently published a choose-your-software-license-in-a-nutshell website: http://choosealicense.com/

I like that initiative. In my experience, many devs just release their code out into the wild without proper licensing info, in the false belief that this means that it is free as free can get. Click the link and learn why the exact opposite might be the case if you do just that (hint: implicit copyright laws).

According to github, ~75% of their hosted source codes misses out on this small but important detail.

My advise: Please add a short comment header to each and everyone of your source files stating under which licensing terms you intend on distributing them.

This does not take more than a minute and clarifies the situation for ppl who would otherwise refrain from touching your sourcecodes even with a ten foot pole.

On a side note: They should have linked to the FSF's rather comprehensive, and commented, compilation of licenses, see here http://www.gnu.org/licenses/license-list.en.html
 
 
Is it such a good idea to add a content header to _every file_? The old system with a txt; LICENSE, COPYING or README stating the license worked just fine.  MAME licensing is scary, since it implicitly isnt easy to deal with.
 
Last edited by a moderator:
I always use a Creative Commons license. Although under that site, it puts CC licenses under "My content isn't code.". Is that saying CC licenses don't apply to code?
 
I always use a Creative Commons license. Although under that site, it puts CC licenses under "My content isn't code.". Is that saying CC licenses don't apply to code?
You can use a CC license for code, but since those licenses are broad and mainly designed with artwork in mind (music, graphics, books etc), they do not necessarily cover all relevant concepts like source code and binaries, dynamic linking, patents, tivoization, etc.

The GPLv3 is probably the most watertight license if you want to make sure that a project is fully Free and will stay so forever.
 
Is it such a good idea to add a content header to _every file_?
It is. Especially when you host your files in a public repository, somebody may find just one of your files, like this: https://raw.github.com/theZiz/sparrow3d/master/sparrowRenderer.c

Then a person, which found my code, knows: "Ah, GPL, cool."

Or you are a developer and want to improve a part of the application. So you add your name to the file you changed and commit it.

Or maybe a program has mixed licenses (maybe it uses some libraries, which code is in the repository, too).
 
Yup agree with Ziz here.

And CC wasn't intended for use with code but it can be used with code and is better than no license at all.

I generally try to stick to LGPL for libraries, GPL3 for opensource and don't provide sources otherwise.
 
Yup agree with Ziz here.

And CC wasn't intended for use with code but it can be used with code and is better than no license at all.

I generally try to stick to LGPL for libraries, GPL3 for opensource and don't provide sources otherwise.
The argument of which specific license is off topic. But, the important thing is to use a license for source on code and a source like CC for things that are not code. Some people GPL pictures, which is largely meaningless as the license doesn't really apply. You still have to conform to the terms, but it's hard to know what that really means.

I definitely take issue with folks that claim tha the GPL3 is the most free license as it was specifically written to prevent companies like Tivo from borrowing code.
 
The argument of which specific license is off topic. But, the important thing is to use a license for source on code and a source like CC for things that are not code.
exactly, thanks for pointing this out.

I definitely take issue with folks that claim tha the GPL3 is the most free license as it was specifically written to prevent companies like Tivo from borrowing code.
I don't fully agree with this. The GPL3 license was not designed to "prevent" anything, it was designed to make sure that when companies "borrow" such code, the licensees (customers) right of modifying the parts of the device that are subject to that license is not being taken away.


There are many licenses that are compatible with the GPL -- you can even build a whole ecosystem of closed source software on top of a GPL software stack like Linux, if you want to.


Needless to say, it is a common misconception that just because you can download the source code of a software, it is up for grabs and there are no strings attached.


You have to comply with the terms of distribution / its license. Any software company on the world will hold you to that.

It's a free market, after all. If you don't agree with the licensing terms, the competition will be glad to make you an alternative offer.
 
Last edited by a moderator:
There is the Gnu free document license, which is for documents. Or FDL for short. All the content on the repo is covered by it. 1.2 though, i wonder whats new in 1.3...

Why is it "borrowing" when the same "what-you-want-to-call-it" is clearly not permitted in any other way, except for the loophole they found by doing drm hardware bad enough to take away the other freedoms. Freedoms for which clearly state borrowing, or sharing if you will, is perfectly fine.

Whatever freedom there is to speak of, is by nature of GPL the same for all parties. Tivo very much steals the rights of the user. And that is possible on v2, not on v3. They _fixed_ it.
 
Last edited by a moderator:
There is the Gnu free document license, which is for documents. Or FDL for short. All the content on the repo is covered by it. 1.2 though, i wonder whats new in 1.3...

Why is it "borrowing" when the same "what-you-want-to-call-it" is clearly not permitted in any other way, except for the loophole they found by doing drm hardware bad enough to take away the other freedoms. Freedoms for which clearly state borrowing, or sharing if you will, is perfectly fine.

Whatever freedom there is to speak of, is by nature of GPL the same for all parties. Tivo very much steals the rights of the user. And that is possible on v2, not on v3. They _fixed_ it.
They didn't fix anything, the changed the license in a way that become fundamentally different from the previous version. TiVo was in compliance of what the previous license required.

And precisely what rights of the user did Tivo steal? AFAIK, Tivo granted users all the rights that the GPL included, so, to say that they stole the rights is more than a little bit misleading. They never had those rights, so they couldn't have been stolen from the users.

This is why people don't take GPL advocates seriously. The GPL was written with a set of concerns that have never materialized on any large scale. People still steal GPL code and companies still contribute back to more permissive licenses. The difference is that with more permissive licenses there's a greater probability of companies giving back as they have the option of testing the waters before going all in.
 
TiVo was in compliance of what the previous license required.
That's true. (source: http://en.wikipedia.org/wiki/Tivoization)

The wikipedia article mentions that even with GPLv3, it is possible to sell devices that use digitally signed GPLv3 software parts that cannot be updated on the device by anyone. This sounds to me like this issue was resolved years ago then.

This is why people don't take GPL advocates seriously. The GPL was written with a set of concerns that have never materialized on any large scale. People still steal GPL code and companies still contribute back to more permissive licenses. The difference is that with more permissive licenses there's a greater probability of companies giving back as they have the option of testing the waters before going all in.
I would not go so far as to say that people don't take GPL (advocates) seriously. If you mean 'zealots' by that, then yes, nobody really takes zealots seriously.


Let's not forget that the GPLv3 has not really caught on the past 6 years since it was released.


Linux is still GPLv2, so is the majority of GPL'd software.


I can see / understand the reasoning behind GPLv3 but personally I simply would not buy a device if my intents were to repurpose it and the manufacturer wants to prevent that (for whatever reason, e.g. to prevent piracy because the HW is sold at a loss and SW sales / subscriptions are needed to make it a viable business).


Everyone: Please let's not make this yet another GPL/FSF discussion, my intentions were to just spread awareness of the "missing license" situation, nothing more.
 
Ah, I thought the problem companies would have with GPLv3 was that it explicity doesn't allow you to use that code with DRM, so PVRs like the Tivo which encrypt the recordings so you can't take the drive out and copy them off would be breaking those clauses of the license.

I went though the process of choosing a license when putting up some code the other week.  I went with GPLv3 in the end, because it was the least permissive, and as the copyright holder I am free to relicense it to any third party I choose.  Although if others contribute to my project under it's current license, I wouldn't be able to use their patches.
 
Ah, I thought the problem companies would have with GPLv3 was that it explicity doesn't allow you to use that code with DRM, so PVRs like the Tivo which encrypt the recordings so you can't take the drive out and copy them off would be breaking those clauses of the license.
From what I understand, the situation is like this: You _can_ use GPLv3 for DRM but you have to make sure that your binaries are water-tight. I.e., it must be (physically) impossible to alter the code afterwards (e.g. by a firmware update).


The reasoning for this is simple: If only the original manufacturer can provide official updates but the system is not actually secure, possibly "anyone" who dedicates enough time to this can crack your security-by-obscurity protection scheme and possibly alter the device's function in malicious ways.

Sounds like a reasonable compromise to me.


Bottom line is: It is up the manufacturer to secure his product. If he fails to do so, there's no legal ground for lawsuits in case someone finds a loop hole in the SW, after all.

As we all now, finding loop holes has exactly nothing to do with open source -- even closed source software has been reverse-engineered, cracked, and pirated for decades now.
 
Last edited by a moderator:
There is the Gnu free document license, which is for documents. Or FDL for short. All the content on the repo is covered by it. 1.2 though, i wonder whats new in 1.3...

Why is it "borrowing" when the same "what-you-want-to-call-it" is clearly not permitted in any other way, except for the loophole they found by doing drm hardware bad enough to take away the other freedoms. Freedoms for which clearly state borrowing, or sharing if you will, is perfectly fine.

Whatever freedom there is to speak of, is by nature of GPL the same for all parties. Tivo very much steals the rights of the user. And that is possible on v2, not on v3. They _fixed_ it.
They didn't fix anything, the changed the license in a way that become fundamentally different from the previous version. TiVo was in compliance of what the previous license required.

And precisely what rights of the user did Tivo steal? AFAIK, Tivo granted users all the rights that the GPL included, so, to say that they stole the rights is more than a little bit misleading. They never had those rights, so they couldn't have been stolen from the users.

This is why people don't take GPL advocates seriously. The GPL was written with a set of concerns that have never materialized on any large scale. People still steal GPL code and companies still contribute back to more permissive licenses. The difference is that with more permissive licenses there's a greater probability of companies giving back as they have the option of testing the waters before going all in.
The users had those rights when the software was written, hint, not by tivo.

Sure, if you rewrite reality your theories hold true. Your argument is so weak it can be flipped, permissive licenses are the reason big companies can come along and not give back. Which is the case. Your choice of language is an excuse. "freedom" "borrowing" "testing the waters" these words dont mean what you think they do, also you chose words which connotations support your claims, which in practice, aren't holding true. Just like the context the words are in. GPL software is the biggest software project in the world. Both as a license in single project and popularity.
 
There is the Gnu free document license, which is for documents. Or FDL for short. All the content on the repo is covered by it. 1.2 though, i wonder whats new in 1.3...


Why is it "borrowing" when the same "what-you-want-to-call-it" is clearly not permitted in any other way, except for the loophole they found by doing drm hardware bad enough to take away the other freedoms. Freedoms for which clearly state borrowing, or sharing if you will, is perfectly fine.


Whatever freedom there is to speak of, is by nature of GPL the same for all parties. Tivo very much steals the rights of the user. And that is possible on v2, not on v3. They _fixed_ it.
 
They didn't fix anything, the changed the license in a way that become fundamentally different from the previous version. TiVo was in compliance of what the previous license required.


And precisely what rights of the user did Tivo steal? AFAIK, Tivo granted users all the rights that the GPL included, so, to say that they stole the rights is more than a little bit misleading. They never had those rights, so they couldn't have been stolen from the users.


This is why people don't take GPL advocates seriously. The GPL was written with a set of concerns that have never materialized on any large scale. People still steal GPL code and companies still contribute back to more permissive licenses. The difference is that with more permissive licenses there's a greater probability of companies giving back as they have the option of testing the waters before going all in.
The users had those rights when the software was written, hint, not by tivo.
Sure, if you rewrite reality your theories hold true. Your argument is so weak it can be flipped, permissive licenses are the reason big companies can come along and not give back. Which is the case. Your choice of language is an excuse. "freedom" "borrowing" "testing the waters" these words dont mean what you think they do, also you chose words which connotations support your claims, which in practice, aren't holding true. Just like the context the words are in. GPL software is the biggest software project in the world. Both as a license in single project and popularity.
 
They didn't fix anything, the changed the license in a way that become fundamentally different from the previous version. TiVo was in compliance of what the previous license required.


And precisely what rights of the user did Tivo steal? AFAIK, Tivo granted users all the rights that the GPL included, so, to say that they stole the rights is more than a little bit misleading. They never had those rights, so they couldn't have been stolen from the users.


This is why people don't take GPL advocates seriously. The GPL was written with a set of concerns that have never materialized on any large scale. People still steal GPL code and companies still contribute back to more permissive licenses. The difference is that with more permissive licenses there's a greater probability of companies giving back as they have the option of testing the waters before going all in.
The users had those rights when the software was written, hint, not by tivo.
Sure, if you rewrite reality your theories hold true. Your argument is so weak it can be flipped, permissive licenses are the reason big companies can come along and not give back. Which is the case. Your choice of language is an excuse. "freedom" "borrowing" "testing the waters" these words dont mean what you think they do, also you chose words which connotations support your claims, which in practice, aren't holding true. Just like the context the words are in. GPL software is the biggest software project in the world. Both as a license in single project and popularity.
In other words, you're completelyl full of it and lack anything of substance to say on the subject.


Those rights that you claim were stolen, were never included in the license because they cause substantial problems. Such as software that's intended to replace a commercial OS for a computer that requires a special key to unlock. With the GPL3, virtually all desktops that were designed for Windows 8 would be off limits to Linux if Linux had been able to go with the GPL3. Emulators requiring a proprietary firmware would be on questionable ground as well as to whether or not they violate the anti-tivoization rules.


And what's more, the source code for the Tivo was available for download AFAIK, because that would have been a clear violation of the GPL not requiring an entire rewrite of the GPL to deal with, and people did have that available to work with.


And those individuals in those companies that you're demonizing usually give back to projects they borrow from because it's less costly to contribute patches back than it is to maintain a separate fork.


BTW, you keep using the word freedom, and it does not mean what you think it means. There are no licenses, save Public Domain, that are less encumbered than the BSD and MIT licenses. Whereas the GPL has some rather substantial infringements on the rights of developers that you seem to think are OK, because ZOMG THYE MITE STEELZ UR KODZ. In practice, the GPL doesn't prevent code theft any more than any other license does, it just forces people to join the borg over a theoretical risk that has never borne out to be common.
 
Last edited by a moderator:
Your freedom to embed secret code in my computer that steals my money contradicts my freedom to modify the code and remove that function. Likewise, forcing copyleft such that an end user can copy and modify my code removes my freedom to distribute binaries without faffing about with source code. There's no such thing as absolute freedom for everyone.
 
There is the Gnu free document license, which is for documents. Or FDL for short. All the content on the repo is covered by it. 1.2 though, i wonder whats new in 1.3...
 
Why is it "borrowing" when the same "what-you-want-to-call-it" is clearly not permitted in any other way, except for the loophole they found by doing drm hardware bad enough to take away the other freedoms. Freedoms for which clearly state borrowing, or sharing if you will, is perfectly fine.
 
Whatever freedom there is to speak of, is by nature of GPL the same for all parties. Tivo very much steals the rights of the user. And that is possible on v2, not on v3. They _fixed_ it.
 
They didn't fix anything, the changed the license in a way that become fundamentally different from the previous version. TiVo was in compliance of what the previous license required.
 
And precisely what rights of the user did Tivo steal? AFAIK, Tivo granted users all the rights that the GPL included, so, to say that they stole the rights is more than a little bit misleading. They never had those rights, so they couldn't have been stolen from the users.
 
This is why people don't take GPL advocates seriously. The GPL was written with a set of concerns that have never materialized on any large scale. People still steal GPL code and companies still contribute back to more permissive licenses. The difference is that with more permissive licenses there's a greater probability of companies giving back as they have the option of testing the waters before going all in.
The users had those rights when the software was written, hint, not by tivo.
Sure, if you rewrite reality your theories hold true. Your argument is so weak it can be flipped, permissive licenses are the reason big companies can come along and not give back. Which is the case. Your choice of language is an excuse. "freedom" "borrowing" "testing the waters" these words dont mean what you think they do, also you chose words which connotations support your claims, which in practice, aren't holding true. Just like the context the words are in. GPL software is the biggest software project in the world. Both as a license in single project and popularity.
 
They didn't fix anything, the changed the license in a way that become fundamentally different from the previous version. TiVo was in compliance of what the previous license required.
 
And precisely what rights of the user did Tivo steal? AFAIK, Tivo granted users all the rights that the GPL included, so, to say that they stole the rights is more than a little bit misleading. They never had those rights, so they couldn't have been stolen from the users.
 
This is why people don't take GPL advocates seriously. The GPL was written with a set of concerns that have never materialized on any large scale. People still steal GPL code and companies still contribute back to more permissive licenses. The difference is that with more permissive licenses there's a greater probability of companies giving back as they have the option of testing the waters before going all in.
The users had those rights when the software was written, hint, not by tivo.
Sure, if you rewrite reality your theories hold true. Your argument is so weak it can be flipped, permissive licenses are the reason big companies can come along and not give back. Which is the case. Your choice of language is an excuse. "freedom" "borrowing" "testing the waters" these words dont mean what you think they do, also you chose words which connotations support your claims, which in practice, aren't holding true. Just like the context the words are in. GPL software is the biggest software project in the world. Both as a license in single project and popularity.
In other words, you're completelyl full of it and lack anything of substance to say on the subject.
Compelling argument, the irony is strong with this one. Mad type bro.
 

Those rights that you claim were stolen, were never included in the license because they cause substantial problems.
See post above or actually read license.  GPL v2   v3 The rights i describe are the same in both. The loophole that you take issue with in me defending the GPLs rights, guess whos with the GPL on that one. You will find it described at the top in the v3 quick guide.

Tivoization: Some companies have created various different kinds of devices that run GPLed software, and then rigged the hardware so that they can change the software that's running, but you cannot. If a device can run arbitrary software, it's a general-purpose computer, and its owner should control what it does. When a device thwarts you from doing that, we call that tivoization.
Also worthy of note #neutralizing-laws-that-prohibit-free-software-but-not-forbidding-drm

Stop making things up. GPL only causes substantial problems for your way of dealing with the real world. Lets read on to find out what those are.
 

Such as software that's intended to replace a commercial OS for a computer that requires a special key to unlock.
Oh, you mean something that is anti-competitive, and thus illegal for the two big commercial desktop OSes to do? (where it would apply) Which brings us onto:  And no, it isn't what you think it is.

With the GPL3, virtually all desktops that were designed for Windows 8 would be off limits to Linux if Linux had been able to go with the GPL3.
No, and specifically not this. If you want to learn about UEFI and secure boot, I suggest Matthew Garrets blog.
It would however be non feasible for non-commercial operating systems, such as things other than linux, just like the reality of the matter is today. I like that its the rights of the most power abusing and anti-competitive corporations you are out to protect. How about you defend that with something else than the GPL license. Because its not in any version by virtue of what it wants to do. Nor would Microsoft actually do anything different in terms of windows 8, which is not where the bulk of that code resides.

Emulators requiring a proprietary firmware would be on questionable ground as well as to whether or not they violate the anti-tivoization rules.
No, you aren't allowed to distribute that, and why would you. Copyright law's clause of derivate works only kicks in if you do, regardless of updating from GPL v2 to v3. Stop confusing matters, its your understanding thats questionable.

And what's more, the source code for the Tivo was available for download AFAIK, because that would have been a clear violation of the GPL not requiring an entire rewrite of the GPL to deal with, and people did have that available to work with.
Oh so no problem then? That isn't what we are discussing, its the implementation. Read about license please.  The people out to protect those rights of users that you claim don't don't matter as soon as the vendors are in compliance with the license that instates them, actually wrote a separate section into their new license covering this. Would you like to take a wild guess as to why?

And those individuals in those companies that you're demonizing usually give back to projects they borrow from because it's less costly to contribute patches back than it is to maintain a separate fork.
I do not demonise them more-so than the license you are talking about does.

BTW, you keep using the word freedom, and it does not mean what you think it means. There are no licenses, save Public Domain, that are less encumbered than the BSD and MIT licenses. Whereas the GPL has some rather substantial infringements on the rights of developers that you seem to think are OK, because ZOMG THYE MITE STEELZ UR KODZ.
I use this word in this context of software just like everyone else, free as in freedom, free software FOSS. For a variation of your own use of the word encumbered, which you make no effort to explain, would i be wrong in guessing you meant permissive? That is covered by my example above, which you opted to ignore.
 
Public domain, well this falls flat on its face in lieu of your critique or GPL. Or are you suggesting companies are actually releasing their software into the public domain at will? I'm sure it checks all boxes for what is ok with you, and how you think it works, it does however not work outside of that context.
 
GPL does not infringe on the developers rights, that would be what tivo does to the code that they wrote. May i enlighten you in saying any license is optional. The GPL protects the rights of the developers who chose to license their code in such a way.
The code is theirs in the example you make, not mine, unless i make it to be. Again, a right that the GPL grants me, in turn made practical by developers writing GPL code. Suggested reading http://en.wikipedia.org/wiki/Ad_hominem

Suggested reading 2: First part of thread title.
 

In practice, the GPL doesn't prevent code theft any more than any other license does, it just forces people to join the borg over a theoretical risk that has never borne out to be common.
It does prevent code theft, unless you want to not obey copyright, in which case your argument doesn't defend any license, sure. Public domain makes perfect sense here. It doesn't separate stealing from borrowing.

The risk of someone not contributing back isn't merely theoretical, proven by the history of GPL violations, or to turn the coin: guess what happens to _all_ the permissive licenses that say the risk isnt only worth taking, its ok?
 
You seem to think loopholes in the things the GPL is trying to achieve is fair game, but don't at all take into consideration that what you are comparing to is something that is diametrically opposite. So you end up with a system in which everyone uses permissive licenses and contributes back in equal measure, for the benefit of having their license less "encumbered"
I'm sure that works for you, but not for the GPL, and not for the corporate world.
 
Last edited by a moderator:
Our of interest, what is the deal with places like China that are perceived as not caring very much about licenses? Is it the case there are still laws that apply to govern software licenses, it is just a blind eye is turned, or does China not acknowledge a lot of software licenses?
 
Back
Top