目录

黄金屋 #2 我应该将产品开源吗?

"开源"(Open-Source),如同"自由软件"(Free Software)一样,凭借其有意为之的模糊赢得了广泛传播。泛泛而谈开源,甚至是将所谓开源硬件、开源文档、开放设计等都归入开源的范畴,很容易丧失焦点。本文不讨论任意个体或组织开发的任意软件是否应该开源,而是聚焦在企业研发的商业软件产品应当采取的开源策略。

从著名的《大教堂与集市》文集当中第四篇《魔法锅》开始。其中 4.6 节"闭源的理由"写到:

闭源真正想保护的是什么?

假如你雇人给你的企业写了一个专业的财会软件,选择闭源不会比开源好到哪里。如果你希望闭源,唯一合理的原因是你想把这个软件卖给别人,或者防止竞争者使用它。

答案很明显,你在保护销售价值。但 95% 的软件写出来是供内部使用的,在没有销售价值可言的情形下,从闭源中还能得到什么好处?

如果我们把商业软件产品具体化到数据库和数据系统,诸如 Snowflake 和 Fivetran 这样的公司,它们的核心商业产品就是打算卖给别人的。销售价值是这些商业软件产品被开发出来的主要目的,因而似乎在此种情况下,闭源的理由恰好成立。

我们再看到第五篇《黑客的反击》,其中 5.9 节"走进未来"写到:

有一个问题值得思量:Linux 社区能否给整个系统提供一个终端用户友好的 GUI 界面?

如果这主要是技术问题的话,其结果就不难推断了。但它并不是,问题主要出在人机工程学设计和界面心理学上,黑客在这些地方从来就很弱。黑客在为其他黑客设计接口时做得很好,但他们往往不善于为另外 95% 人群的思维过程建模,从而写不出能让终端用户愿意花钱购买的页面。

如同 Eric 在文中所预测,Linux 有效占领了服务器、数据中心、ISP 以及互联网的操作系统生态位,而微软仍然保持对桌面的控制。然而,不同于 Eric 的预测,Windows 并没有退出历史舞台,Linux 的 GUI 界面也谈不上多么终端用户友好。类似地,在商业数据库领域,Oracle 和 Microsoft SQL Server 仍然占据了相当部分的市场份额,新兴产品 Snowflake 也在多个榜单上名列前茅。PostgreSQL 和 MySQL 并不能完全取代这些专有软件产品,反而成为云上数据库服务的核心,由各个云厂商补充了管控面板和 GUI 界面,重新包装成专有云服务出售。

可以看到,开源协同带来的核心收益,(来自黑客群体的)同行评审,在某些类型的软件开发上很难出现。这是因为朴素的独立黑客大多关心自己能用上的功能,因此对于 Linux 这样的操作系统及其上面的生态,在自己使用时遇到的问题,将修复和改进的补丁分享出来并非难事。可是,要想让独立黑客们开发一个自己用不上的能力,例如企业合规管理或者大规模的分布式数据系统,除非有明确的企业支持,否则难以为继。

这种企业支持下的软件开发,如果恰好落在了 Eric Raymond 所说的"供内部使用",那么仍然有开源的理由。反之,如果企业本身雇佣开发者就是为了制造商业软件产品并以某种形式出售,那么开源的理由就不成立了。

简而言之,如果你的公司存续依赖于销售商业软件产品,你应当默认将其作为专有软件,谨慎考虑开源策略。

本文后续将介绍商业开源的实例,包括 GitHub / Confluent / Aiven / Airbyte / Snowflake 等。然后,结合实际案例,讨论企业开源的内在动机,企业开源的外部动力,以及如何调动软件研发当中的开源要素。全文一万字。

商业开源的案例分析

本文是转载文章,点击查看原文
如有侵权,请联系 xyy@jishuzhan.net 删除
相关推荐
Kagol2 小时前
OpenTiny 开源社区招募贡献者啦!
前端·vue.js·开源
DevSecOps选型指南6 小时前
2025新笔记:数字化转型建设的开源安全治理实践
笔记·安全·开源
K线引力场9 小时前
如何通过 iTick 外汇数据 API 与 Cursor AI 实现量化策略开发
人工智能·开源
Liudef0610 小时前
开源图生视频模型技术全景解析
开源·音视频
我不叫王小红11 小时前
看了 Anthony Fu「 Yak Shaving 耗牛毛 」引发的思考
前端·开源·设计
kfepiza12 小时前
高速开源镜像站网址列表2503
开源
那些免费的砖12 小时前
Heroicons - 漂亮精致的开源矢量图标库,由Tailwind CSS 官方出品,适配 Vue / React
css·vue.js·开源
努力犯错13 小时前
多模态SVG生成新标杆:StarVector从图像文本生成高精度SVG的AI模型
服务器·人工智能·开源
蚝油菜花14 小时前
BlockDance:扩散模型加速革命!复旦字节联手实现50%无损提速
人工智能·开源