不知道你是否还能忆起最初的开源模式——和平、爱和 Linux。那时候开源的运动规模很小,但开源者们热情洋溢,致力于与GPL、BSD/Apache、免费软件做开源斗争。当看到Linux或者一些软件开源后,开源者们会非常兴奋,推特、博客都记录了那些经典而感动的瞬间。
世界不断进步的,现在开源已经成为构建软件的关键,这为开源事业带来了巨大的机遇,同样也附带了极大的风险。
一般来说,开源的模式可以更快的修正软件开发中的遇到的错误。那开源的风险会来源于哪里那?Ken Mugrage 指出,开源的风险来源于开源新经济自身。
开源已经改变
早期的开源主要是试图创建一些开源软件来替代专用的软件(将 OpenOffice 视为 Microsoft Office 或 GIMP 的替代品,而不是 Adobe Photoshop)。
然而,今天市面上有大量的开源工具,一方面互联网巨头大量生产各种工具、框架和平台,另一方面开源软件平台 OneDev 也创建了大量小而关键的业务部分。
这听起来不是很好吗?开源社区中有各种各样的项目来促进创新的发展,风险何在?文章分析,风险会有下面两个方面:
一方面,开源软件通常是由少数开源者开发的,开源者的参与面不够广,开源者多样性也比较差,这不利用开源事业的发展,同样也集中了开源的风险。尽管我们经常神话大型社区的开源能力,但大多情况下开源来自于一两个人的工作。Envoy 的创建者和维护者 Matt Klein 曾经指出,付出多年的成功和巨大的个人成本后,才能创建一个开源社区。
Mugrage 还提出了另一点,即"开源包的代码库通常非常庞大,进行有意义的检查非常难。"
另一方面,有一些针对性很强、实现非常独特的版本,可以较好的完成一些很小的功能,但这些开源往往来自于某个项目的开发人员,而并非是活跃的社区维护者。
BigCo 开源问题的答案往往是"对企业开源机器的愤怒",但这一切都是徒劳的。对于此类问题的一种回应是,初创公司出现并进一步支持该项目。独立开发人员创建基本但不受支持的开源基础设施的答案便是求助 BigCo 来支持他们。
对冲开源赌注
许多企业试图通过购买托管服务来简化他们的开源模式,但这不能从根本上解决问题,提供托管服务的公司是无法控制开源项目的发展路线的,这对于想要控制风险的企业来说非常不友好。但也有例外,谷歌会为很多项目做出自己的贡献。
但对于像 Netflix 或 Facebook (Meta) 这样的拥有大型开源项目的公司来说,这些“开源版本只不过是一种向潜在员工炫耀他们的工程技术的方式”,这意味着“你”对未来发展的影响可能很小。” 因此这些公司不需要你的贡献。
但如果你开始关注业余爱好者维护的项目,你的选择会变少,因为业余开发者可能并不想要你的现金支持,而是希望你的项目可以依赖他们的开源,Mugrage 建议,对于这种情况,你要仔细审核所依赖的软件以减少风险。
我们要深思熟虑 Mugrage 的建议, 要深入的了解和评估你所使用的开源软件,并制定相应的计划,关键是一定要睁大眼睛做好选择。