(非)商业项目:Redis更改许可证但仍保持开源

8月下半月,同名网络日记数据仓库的开发者Redis Labs的网站上出现了一篇帖子 ,其中谈到了该项目的许可政策的变化。 在网上, 人们立即想到他们计划使Redis成为专有产品。

警报原来是假的。 Redis将仍然是一个开源项目,并将继续根据BSD许可进行分发。 但是,开发公司仍将许多模块的许可证从GNU AGPL更改为Commons Clause

我们了解这对Redis意味着什么,并讨论一般而言开源项目商业化的问题。


/ 照片 / PD

发生什么事了


Redis网站上发布有关许可证变更的公告后,社区开始积极讨论这种情况 。 有时会产生误解-有些人认为Redis正在更改许可证。 为了澄清几点,CTO和Redis Labs的联合创始人Yiftach Shoolman代表公司写了一篇关于发生了什么的官方帖子

它说Redis仍受原始许可证-BSD的约束。 仅对Redis Labs的许多模块(例如RediSearch,Redis Graph,ReJSON,ReBloom和Redis-ML)更改许可顺序。 它们为公司用户提供高级功能。 他们的许可证从GNU AGPL更改为Apache 2.0 Commons Clause。

根据新的许可条件,任何人都可以使用这些模块,并遵守Apache License 2.0自由软件许可的基本条件 。 但是,现在禁止出售模块-这规范了Commons条款

换句话说,如果应用程序使用模块的功能或基于模块的功能构建,则对此类服务的销售没有任何限制。 但是现在您无法出售原始模块。

为什么要更改许可证


这个决定是在反对转售开放Redis模块的斗争中的折衷方案。 据舒尔曼说,许多第三方公司免费使用其解决方案并将其转售给客户,但绝不参与社区和产品的开发。

许多开放项目 (例如HadoopSpark)中也 发生了类似的情况 -在此基础上,许多公司建立了业务,仅对其进行了少量修改。

据Redis称,更改许可证将允许作者保证开发商或其赞助商将从项目销售中获得收益。

开放产品的商业化问题


显然,开发开源项目的资金不是从空中拿走的。 一些开发人员获得政府补贴,例如, NASAcode.nasa.gov项目提供资金 。 商业公司正在支持某人。 例如,沃尔玛在Hapi.js框架上花费了大量资金。 零售商支持Hapi.js的开发人员,因为它使用其解决方案来创建自己的应用程序。

也有一些人决定通过部分产品商业化来开发开源软件来获得收益,例如Redis Labs。 他们并不是唯一走这条路的人-Berkeley DBAsteriskQt和许多其他人都在此模型上工作。 但是,社区对付费开源项目翻译的意见差异很大。

反对意见

Redis决定更改社区遇到的某些模块的许可证,这主要是负面的。 如果您查看黑客新闻 主题开发人员在主题博客上的评论 ,则有很多常见的不满意原因。

第一个原因是任何形式的商业化都违反了开源原则。 小组成员注意到,不允许使用使用许可(如Commons Clause)的产品开源。

一些社区成员决定Redis Labs用开源价值换钱。 开源计划(OSI)总裁西蒙·菲普斯(Simon Phipps)甚至 Redis Labs 描述为“放弃软件自由”。

第二个原因-付费开源项目的转让有可能破坏多年来形成的用户社区。 2015年, FoundationDB被苹果公司收购时也发生了类似的情况 。 该组织限制了多模型DBMS的下载,并关闭了GitHub上的所有存储库。 结果,五年来聚集在该项目周围的社区开始瓦解。

社区规模是许多公司选择产品的关键方面之一。 例如,最近在1cloud中,我们为自己选择了一个新的日志记录系统。 之所以选择Redis和Logstash,是因为它们有一个广泛的社区-这意味着在StackOverflow上有详细的文档,常见问题解答和实时线程。


/ 维基媒体 / CC

的意见

Andreessen Horowitz的合伙人Peter Levine 指出 ,任何开源项目都需要一种业务模型。 显然,没有资金,他将“弯曲”。 开发人员可能根本没有足够的资金来支持和扩展。 毕竟,参与开发开放源代码软件的项目实际上是第二项工作。

例如,Habr的一位居民亲自为库编写了一个用于组织Web套接字服务器的库,并将其“上传”到GitHub上 。 不久之后,其他用户对该项目产生了兴趣,并要求作者实现其他功能。 但是,开发人员本人已经拥有足够的已写内容,并且他不希望进一步开发该项目。

也许将产品商业化将有助于其开发。 例如,这样的故事发生在nginx上 。 作者在业余时间参与了该Web服务器的创建。 但是现在,根据他的决定,他为客户提供了商业服务。 在这种情况下,nginx代码本身保持打开状态

主张开放产品部分商业化的人们还注意到,没有适当的资金,该项目将无法吸引优秀的开发商。

因此,Chandler项目于2009年关闭 ,他们在该项目下开发了用于管理进度表的软件。 缺乏资金和少量捐助者导致了对该计划的兴趣实际上在一年中就消失了。

在这种情况下,可以将Linux内核用作肯定案例。 许多开发人员对该项目的工作全部或部分由RedHat等公司提供资金。

因此,开发人员将他们的时间和精力投入到项目中,使其变得更好,从而延长了其寿命。 反过来,这对整个开源生态系统的发展也具有积极影响。

我们公司博客中的一些资料:

Source: https://habr.com/ru/post/zh-CN423723/


All Articles