MongoDB:有人敢像我一样说出开源的真实用意吗?
现在大大小小的公司都在搞开源,在被问到为什么开源某个项目时,负责人要么说是贡献社区与用户,要么以希望借广大开发者之力完善项目为挡箭牌,虽然这些想法都可以是真实也经得起考验的,但是在这背后更加真实的“目的”,公司都不愿意提及,比如营销品牌需要,比如先开源后“违规”收费,比如 KPI 担当,比如推动相应收费版本的销售……
虽然开源有个人/公益组织的开源、以开源项目作为基础的商业化公司的开源,以及商业公司反过来去涉及开源领域的开源这些区别,但是除去人个与公益组织的开源初衷不表,剩下涉及到公司的开源,他们关于开源的真实想法确实往往不会明示,这其实也可以理解,开源本是一种黑客式的高尚行为,过多地掩盖这种特性,会带来反感,于公司不利。
然而事实是,上述“背后的真实目的”其实都经常被达成。
与这些公司的表里不一不同,最近在接受 Computer Business Review 采访时,MongoDB 公司 CEO Dev Ittycheria 明确表示了 MongoDB 的开源用意:“我们的开源并不是为了获得帮助,使产品更好,而是作为免费增值策略,以推动采用。”
we didn’t open source it to get help from the community, to make the product better. We open sourced as a freemium strategy; to drive adoption.
在被问到 MongoDB 修改开源 License 相关问题时,Dev 说出了这段话。MongoDB 去年 10 月份宣布将开源 License 从 GNU AGPLv3 切换到 Server Side Public License(SSPL),以此回应 AWS 等云厂商将 MongoDB 以服务的形式提供给用户而没有回馈社区的行为。SSPL 明确要求托管 MongoDB 实例的云厂商要么获取商业许可证要么向社区开放其服务源码。
但是开源社区对此似乎有不少反对声音,许多人认为 SSPL 是具有针对性的,对特定类别的用户具有严重歧视性,这违反了开源的真谛,所以 Fedora 认定 SSPL 不是一个自由软件许可,红帽和 Debian 也宣布从发行版中删除 MongoDB。
对于这种情况,MongoDB CEO Dev 认为不必在意,他说:“从那以后,我们的业务增长得更快。这没有任何影响,它只影响那些可能在考虑使用我们的免费版本,并将其作为托管服务提供给第三方的人。”
而为什么 MongoDB 能够如此沉着呢?Dev 说 MongoDB 与其它开源公司不一样,“与其它开源公司不同,我们可以在一定程度上控制 License 是因为大多数其它开源公司都建立在已有技术上”,他认为其它开源公司只是将其非真正业务核心的东西开源出来,继而进入公共领域,他们的开源本质是想让社区进行众包研发,使项目完善得更好。
“根据定义,开源 License 必须非常宽松,因为它希望鼓励人们开发并使开源项目变得更好”,Dev 解释:“然而 MongoDB 不是这样,MongoDB 由 MongoDB 自己构建,没有其它技术经验支持。”他补充:“一方面,这说明了 MongoDB 团队的技术敏锐性;另一方面,我们的开源并不是为了获得帮助,使产品更好,而是作为免费增值策略,以推动采用。”
Dev 这话的意思似乎是直接否认了开源的分布式协作与同行代码审核这基本的特性,否认了参与 MongoDB 项目开发的开发者的贡献,也难怪有开发者会直接回应表示受到侮辱:作为一个为 MongoDB 源码做过一点点贡献的人,听到这样的说法简直觉得侮辱。
而另一方面,实际上,MongoDB 之所以受欢迎还有部分原因是其支持广泛的驱动,虽然 MongoDB 公司实现了与 MongoDB 一起使用的主要驱动,但其仍然依赖了第三方开发者以解决较少使用的驱动问题。
讽刺的是,虽然 MongoDB CEO 都这么明确地说了,但是 MongoDB 还将继续带着“开源”的光环走下去。
然而,回过头来联系一下文章开头提到的各公司的“遮遮掩掩”,是否会觉得 MongoDB 的这种表述多了几分真实呢?你怎么看?
低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
微软开发者透露 Linux 在 Azure 上的使用量比 Windows Server 更多
三年半前,微软云公司 Azure CTO 的 Mark Russinovich 说:“四分之一的 Azure 实例是 Linux。”接下来,在 2017 年,微软披露了 40% 的 Azure 虚拟机是基于 Linux 的。然后在 2018 年秋季,微软云与企业集团执行副总裁 Scott Guthrie 在一次独家采访中说,“大约一半的 Azure 虚拟机是 Linux 的”。 现在,微软 Linux 内核开发人员 Sasha Levin 在请求允许微软加入 Linux 安全列表时透露,“我们云上的 Linux 使用量已经超过了 Windows”。 其实也并非完全如此。 很大程度上,Linux 是在内部服务器和云上运行企业计算的,而多年以来 Windows Server 的市场份额也一直在下降。在最新的 IDC 全球操作系统和子系统市场份额报告中,Linux 占据了 68% 的市场份额,从这开始,Linux 在 Azure 上的使用才持续增长。 Guthrie 说过的,“每个月,Linux 都会上升”,所以 Linux 统治Azure 也只是时间问题。 选择 Linux 的不仅仅是微软...
- 下一篇
Google 开源 robots.txt 解析器
Google 称过去 25 年Robots Exclusion Protocol (REP)协议一直是一种约定的标准,给网站管理员人员和爬虫工具开发者带来了很多不确定性。Google 现在宣布它将率先致力于让 REP 成为一个行业标准,作为这个努力的一部分,它开源了自己使用的 robots.txt 解析器,源代码托管在 GitHub 上,采用 Apache License 2.0 许可证。robots.txt 解析器是一个 C++ 库,用于解析和匹配 robots.txt 文件中的规则,它已经有约 20 年历史了,包含了 1990 年代写的代码。 稿源:Solidot
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
-
Docker使用Oracle官方镜像安装(12C,18C,19C)
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- CentOS8编译安装MySQL8.0.19
- Docker快速安装Oracle11G,搭建oracle11g学习环境
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- MySQL8.0.19开启GTID主从同步CentOS8
- CentOS7,8上快速安装Gitea,搭建Git服务器
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
推荐阅读
最新文章
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- CentOS6,CentOS7官方镜像安装Oracle11G
- SpringBoot2整合Redis,开启缓存,提高访问速度
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Springboot2将连接池hikari替换为druid,体验最强大的数据库连接池
- SpringBoot2整合MyBatis,连接MySql数据库做增删改查操作
- Hadoop3单机部署,实现最简伪集群
- MySQL8.0.19开启GTID主从同步CentOS8
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果