Per Ploug是Spotify公司的开源技术负责人,他在开源领域工作了多年,在观察了开源技术的演变之后,他认为,企业现在对于“开源”的真正含义有了更多的了解。“我认为他们在成本方面更清楚了,也更明白以更具战略性的方式采用开源技术意味着什么。”
开源避免了所谓的“厂商锁定”,即最终用户组织被绑定到复杂的商业软件合同中。他们的IT架构决策变更率,通常是由该软件的供应商决定的。不过,虽然开源不存在这种锁定,但是开源所提供的灵活性,对于很多公司来说也可能是一把双刃剑。他说:“我认为开源可以让你获得你自己无法开发的技术。”
这意味着组织可以跨入他们可能缺乏足够专业知识的技术领域,这样一来,开源软件的用户就与他们部署的技术创新联系在一起了。
“当你做出这些更重大的投资选择时,我认为每个人都需要了解他们所采用的技术是否接近于特定领域的通用标准,或者了解他们基本上要依赖于某种正在失去市场份额或者失去用户心智的技术。”
选择后者将导致组织在某个时候不得不放弃这个开源工具,这么做的代价可能是非常大的。
他说,如果不存在开源,那么大型科技企业将垄断技术来服务于特定的客户群,此类技术可能成本极高,因此仅适用于较大型的企业。“小公司买不起这些东西,”Ploug说。
例如,Spotify从一开始就开始使用开源,这让他们得以成长。“当我们规模还很小的时候,我们使用开源作为快速进入市场的一条途径,我认为我们已经制定了一个战略方法,也就是把开源置于一切之上。”
关于开源的战略性选择
在Spotify,开发人员可以自行从种类繁多的库中进行挑选。但对于更重大的战略投资来说,Ploug表示,如果开源技术成为企业可以长期依赖的标准,Spotify将对其进行严格评估,以确保该技术不会过早地被迫转向更新的技术。
一个事后看来非常有趣的例子是:“在Kubernetes发布的前一天,我们开源了我们自己的容器编排层。”
另一个更积极的项目是Spotify开源了Backstage,而开源是创建通用标准的一种方式。Backstage是一个用于构建开发人员门户的开源框架,由Spotify开发,已经捐赠给了CNCF,如今被数百家企业采用。
Ploug说:“我们不想只是观望,并将这项技术保留在我们自己内部。我们希望推动开发者门户领域的创新。”
这样一来,Spotify Backstage就成为了市场领导者。Spotify继续进行内部投资,但通过将其捐赠给CNCF,确保了这项技术可以存活下来,这让内部用户有信心继续使用它。
财务可持续性
Ploug认为,相信开源产品的寿命,是开源社区当前面临的核心问题。他说:“我们在开源方面存在很重要的财务可持续性问题。我认为,有很多开源维护者的报酬过低或者没有得到充分的重视,而且对维护开源不断增长的需求,也让他们感到重重压力。”
使用开源代码的组织需要了解其中的意义。Ploug说:“你与这家提供商没有签订服务水平协议,它不是供应商。你没有付钱给维护代码的人,这中检不存在供应商关系[合同]。”
缺乏服务水平协议对于全行业提高开源安全性举措的有效性,产生了重大影响。
他说:“我认为很多问题都来自于缺乏维护,因为维护人员根本没有时间,或者他们的工作没有报酬,他们都是在晚上和周末运行这些项目的。”
因此,Ploug不认为软件安全供应链的概念适用于开源。由于维护人员没有报酬,所以他们不是供应商。“你没有供应链的。”
而且公司在财务上支持为项目提供支持仍然不是一种普遍的做法,Ploug希望看到有更多使用开源的组织为开源项目提供财务支持。
扩大人才库
由于只有某些人能够放弃他们的时间来维护开源项目,Ploug担心,这会让开源社区局限于非常特殊的人群。
“这是一群非常特殊的人,他们热衷于在晚上和周末从事开源,他们是没有家务、没有孩子要抚养、没有家庭生活、没有生病亲戚要照顾的人。”
他说,开源需要成为一个公平的竞争环境,能够吸引各种各样的贡献者和维护者社区,这也和财务问题、行业和政策制定者建立软件安全供应链的雄心息息相关。
如果维护者和开源贡献者获得了报酬并且项目得到赞助,人们就更有可能把他们在开源社区中的角色视为一种职业。他们与他们开发和维护代码的用户签订合同在财务上具有约束力的话,就会为这些用户提供服务等级协议并承担相关责任。
好文章,需要你的鼓励
由于人类活动强度更大、建筑密度更高且绿地面积有限,城市区域温度往往远高于周遭农村地区,而这就是所谓城市热岛效应。此类影响已经对城市居民的健康与福祉构成重大挑战,而且问题本身也随着城市化进程的推进而不断凸显。