作者 | Or Weis
译者 | 冬雨
策划 | 凌敏
如今,开源你的核心业务产品可不是一个好主意。如果你创造的项目开始与你的核心内容展开直接竞争,或者让其他玩家吃掉你的奶酪,你便会对它的成功心生不满。
我并不反对开源,相反,作为一名开发人员,我使用许多开源工具,定期参与贡献,甚至自己构建了几个项目。
我相信开源是(将会是)所有现代软件栈的基石。
它是实现有意义的对话、建立真正的社区来解决复杂问题和促进行业标准(被标准协会采用,或作为一个项目变得越来越重要的即成事实)的最佳方式之一。况且如果创建社区,就是希望社区能够提供真正的价值。否则,为什么要创建它呢?
早在 2010 年左右,像 Redis、MongoDB 和 Red Hat 这样的公司就创建了开源项目,这些项目大受欢迎,并取得了巨大的成功,它们在这些项目的基础上提供了额外的企业版本和专业服务。
MongoDB 的首席执行官表示,当时,该公司在核心的 MongoDB 开源项目上花费了大约 50%的研发预算。
问题是,时代变了。以前,一个项目可能需要数年时间才能获得崭露头角。这使得依赖于开放核心模式的企业可以创建、培育一个项目,然后找到正确的方法开始商业化。现在事物发展得快多了。现在尝试这样做,很有可能最终会与你自己的开源产品竞争,或者有人会在你的项目上更快地构建产品,而只给你留下些残羹剩饭。
Docker有一个非常强大的 OSS 产品,最终蚕食了自己的市场。Docker 的反应是开始限制自己的 OSS 产品,这种方式激怒了 OSS 社区,在商业和开源产品之间制造了冲突。
Elastic 非常快速有效地发展了它的 OSS,但当 OSS 变得非常大时,其他公司开始在其基础上提供 SaaS(比如 Logz.io、AWS 和 Coralogix)。由于他们的市场(基本上是他们创造的)被严重削弱,他们别无选择,只能转向另一个领域——网络安全。与十年前相比,今天的软件采用速度要快得多,以至于在市场被接管之前,Elastic 几乎没有时间意识到这个问题。他们的“主场优势”变成了一个沉重的负担。
意识到这一转变,MongoDB 自己退出了他们最初采用的开放核心模型,改变了管理免费开源 MongoDB 项目的许可条款。
你越关注开放核心项目,你就越会发现公司在努力保持自身发展、项目发展压力和市场加速之间的平衡。
那么,还有什么替代方案呢?我建议你寻找一个真正的问题,你的开源解决方案可以帮助你解决这个问题,这个问题既可以补充你的业务,又不会放弃核心价值,并通过坚持以下三个关键原则来与市场接轨:
如果你坚持这些原则,你可以创建一个开源产品作为核心产品的补充。它授权、支持、增强、启用产品的一部分,而不是产品本身或其核心。这将使你能够享受开源社区的所有好处,而不会损害产品的核心部分。
这一策略已经被数十家公司实施。
Netflix (Spinnaker)、谷歌(Kubernetes)和 Meta (React)都创造了非常成功的 OSS 产品,它们为开发者和社区提供了真正的价值,但却没有放弃其产品的核心价值。小型公司也在使用这种模式——Komodor (ValidKube)、Up9 (Mizu)和我自己的公司 Permit.io(OPAL)。
当我们共同创建我们的开源项目 OPAL 时,我们希望为开发人员提供一种标准的方法,以便随着云中的动态变化保持最新的权限。我们推广这个项目,并希望人们使用它,而不管他们是否为我们提供的 SaaS(Permit.io)支付过一分钱。
我们的开源项目做得越好,它们发展得越大,对我们的产品就越好,这正是当你考虑将开源作为一项业务来构建时所希望看到的变化。
开源不会消失,开放基金会是开源商业战略发展的下一步。我很兴奋地看到它带给世界的所有那些令人惊叹的社区、产品和标准,以及会与之一起成长的业务。
译者简介:
冬雨,小小技术宅一枚,现从事研发过程改进及质量改进方面的工作,关注研发、测试、软件工程、敏捷、DevOps、云计算、人工智能等领域,非常乐意将国外新鲜的 IT 资讯和深度技术文章翻译分享给大家,已翻译出版《深入敏捷测试》、《持续交付实战》。
原文链接:
https://thenewstack.io/the-future-of-open-source-or-why-open-core-is-dead