开源许可证的扩散只是程序员生活NYI(Not Invented Here)综合症的另一个例子吗? 我知道一些大型许可证(例如,GPL,Apache,BSD)之间存在一些重大差异,但是当您开始寻找许多项目来创建自己的许可证时。 为什么?

参考文献:

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

===============>>#1 票数:18

这是一个众所周知的问题:开源计划有一个许可证扩散委员会 ,该委员会建议使用“受欢迎且广泛使用或具有强大社区”的八个许可证之一。

  1. Apache License,2.0
  2. 新的BSD许可证
  3. GNU通用公共许可证(GPL版本2或3)
  4. GNU Library或“Lesser”通用公共许可证(LGPL版本2.1或3)
  5. MIT许可证
  6. Mozilla Public License 1.1(MPL)
  7. 共同开发和分发许可证
  8. Eclipse公共许可证

其他许可证分类为:“冗余”(例如,NCSA许可证与BSD冗余),“特殊用途”或“不可重复使用”(例如,NASA许可证,Apple公共源许可证),“取代”(例如,MPL v1.0)等。

===============>>#2 票数:5

拥有自己的许可证(通常是现有许可证之一的变体)允许您完全控制它。 我怀疑像GPL2和GPL3之间的巨大变化(特别是如果你处理网络服务)这样的事情会让人们对一个人无法控制的协议持怀疑态度。

===============>>#3 票数:4

我还认为一些许可证与某些意识形态密切相关。 许多知识共享许可用户对版权立法持相同态度。 另一方面,GPL在Linux开发方面有着悠久的历史。 通常附有特定许可证的不符合哲学的个人或组织可以选择寻找替代方案。

===============>>#4 票数:3

拥有自己的许可证(通常是现有许可证之一的变体)允许您完全控制它。 我怀疑像GPL2和GPL3之间的巨大变化(特别是如果你处理网络服务)这样的事情会让人们对一个人无法控制的协议持怀疑态度。

我认为这在某种程度上是正确的。 但是,根据GPL许可时,您可以选择“版本2”,“版本2或更高版本”。 如果您对未来许可证的更改方式持谨慎态度,您可以自由地说它是根据该特定版本获得许可的。

===============>>#5 票数:1

我不认为人们会意识到您经常无法将代码与不同的许可证相互链接,例如,您可以将任何GPLv2代码与任何其他GPLv2代码相结合。

===============>>#6 票数:1

开源许可证的扩散只是程序员生活NYI(Not Invented Here)综合症的另一个例子吗?

恕我直言,是的,绝对的。 以Microsoft PL许可证为例。 这完全是多余的。 尽管如此,我非常喜欢那个,因为它的措辞非常明确,比大多数其他许可证短得多,并提供了很大的自由度。

另一方面,制定新许可证充满了风险,因为在实际的法庭上证明它的价值之前,它是不值得写的(如果有的话)。

恕我直言,很少有值得了解和使用的许可证,其中包括GPL(我个人不喜欢),LGPL,BSD和Ms-PL,当然还有Creative Commons许可证,但这些许可证不适用于软件。

===============>>#7 票数:1

我认为这在某种程度上是正确的。 但是,根据GPL许可时,您可以选择“版本2”,“版本2或更高版本”。 如果您对未来许可证的更改方式持谨慎态度,您可以自由地说它是根据该特定版本获得许可的。

然而,这开辟了一种不同的蠕虫病毒。

如果您在GPL2下发布并且GPL3出来并且您喜欢它所做的更改,那么理论上您将不得不绕过所有贡献者并获得他们的一致批准来更改其代码所发布的许可。 所需要的只是其中一个说“不,我只根据GPL2许可我的贡献并且拒绝允许GPL3” - 或者他们可以不回复 - 破坏你提议的许可证更改。

===============>>#8 票数:0

如果您仅在GPL2下发布并且GPL3出来并且您喜欢它所做的更改,那么理论上您将不得不绕过所有贡献者并获得他们的一致批准来更改其代码所发布的许可。 所需要的只是其中一个说“不,我只根据GPL2许可我的贡献并且拒绝允许GPL3” - 或者他们可以不回复 - 破坏你提议的许可证更改。

这带来了一些其他问题。 您是否计划接受外部开发人员的补丁? 当您接受补丁时,您是否还需要补丁提交者来移交版权? 如果他们不转让版权,那么如何允许您更改自己的许可以供将来考虑。 如果有一个拥有自己许可证的项目,我打算向它发布一堆代码,它表示它是根据XYX版本N或任何未来版本获得许可,那么说控制该许可证的人赢了“在未来的版本上完成180,并使其完全封闭源?

  ask by dwj translate from so

未解决问题?本站智能推荐: