Why the proliferation of open source licenses? [closed]

筅森魡賤 提交于 2019-12-04 17:39:40

问题


Is the proliferation of open source licenses just another example of programmers living NYI (Not Invented Here) syndrome? I know there are some big differences between some of the big licenses (e.g., GPL, Apache, BSD) but when you start looking to see many projects creating their own licenses. Why?

References:

http://en.wikipedia.org/wiki/Open_source_licenses
http://developer.kde.org/documentation/licensing/licenses_summary.html


回答1:


This is a known issue: the Open Source Initiative has a License Proliferation Committee, which recommends the use of one of eight licenses that are "popular and widely used or with strong communities."

  1. Apache License, 2.0
  2. New BSD license
  3. GNU General Public License (GPL version 2 or 3)
  4. GNU Library or "Lesser" General Public License (LGPL version 2.1 or 3)
  5. MIT license
  6. Mozilla Public License 1.1 (MPL)
  7. Common Development and Distribution License
  8. Eclipse Public License

Other licenses are classified as: "redundant" (e.g., the NCSA license is redundant with BSD), "special use" or "non-reusable" (e.g., the NASA license, the Apple Public Source License), "superceded" (e.g., MPL v1.0), and so on.




回答2:


Having your own license (usually a variant on one of the existing ones) allows you full control over it. I suspect that things like the huge change between GPL2 and GPL3 (especially if you deal with web services) make people leery of licensing with an agreement outside of one's control.




回答3:


I also think some licenses are closely tied to certain ideologies. Many Creative Commons license users have the same attitude towards copyright legislation. The GPL, on the other hand, has a long history with Linux development. An individual or organization which does not agree with the philosophies generally attached a specific license may choose to look for an alternative.




回答4:


Having your own license (usually a variant on one of the existing ones) allows you full control over it. I suspect that things like the huge change between GPL2 and GPL3 (especially if you deal with web services) make people leery of licensing with an agreement outside of one's control.

I think this is true to some extent. However, when you license under the GPL, you have the option to say, "Version 2", "Version 2 or later". If you're leary about how the license may change in the future, you are free to just say it is licensed under that specific version.




回答5:


Is the proliferation of open source licenses just another example of programmers living NYI (Not Invented Here) syndrome?

IMHO, yes, absolutely. Take the Microsoft PL license as an example. It's completely redundant. Still, I like that one a lot because it's very clearly worded, much shorter than most other licenses and provides a good amount of freedom.

On the other hand, crafting a new license is fraught with risks because until it has proven its worth before an actual court it isn't worth the paper it is written on (if any).

IMHO, there are very few licenses that are worth knowing and using, among them GPL (which I personally don't like), LGPL, BSD and Ms-PL, and of course the Creative Commons licenses but these aren't suitable for software.




回答6:


I think this is true to some extent. However, when you license under the GPL, you have the option to say, "Version 2", "Version 2 or later". If you're leary about how the license may change in the future, you are free to just say it is licensed under that specific version.

That opens up a different can of worms, though.

If you released under GPL2 only and GPL3 comes out and you like the changes it makes, you're theoretically going to have to go around to all your contributors and get their unanimous approval to change the license their code is released under. All it takes is one of them to say "nope, I only licensed my contributions under GPL2 and refuse to permit GPL3" - or they can just not reply - to derail your proposed license change.




回答7:


I don't think people appreciate that you often can't inter-link code with different licenses, whereas for example you can combine any GPLv2 code with any other GPLv2 code.




回答8:


If you released under GPL2 only and GPL3 comes out and you like the changes it makes, you're theoretically going to have to go around to all your contributors and get their unanimous approval to change the license their code is released under. All it takes is one of them to say "nope, I only licensed my contributions under GPL2 and refuse to permit GPL3" - or they can just not reply - to derail your proposed license change.

Which brings up some other questions. Do you plan to accept patches from outside developers? When you do accept patches do you requires patch submitters to hand over copyright also? If they don't transfer copyright, how does that allow you to change your own license for future considerations. If there was a project with their own license and I was going to release a bunch of code to it, it stated that it was licensed under XYX version N, or any future version, then what's to say that the people controlling that license won't do a complete 180 on a future version, and make it completely closed source?



来源:https://stackoverflow.com/questions/23098/why-the-proliferation-of-open-source-licenses

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!