2011 年新年前夕,OpenSSL 项目维护者 Stephen Henson 破坏了互联网。他接受了德国开发者 Robin Seggelmann 写的“心跳”标准代码。2 年半之后,“心脏出血”漏洞曝光,它被认为是至今发现的最严重软件漏洞之一。
OpenSSL 的代码被无数项目使用,是互联网的基石之一,但它的开发者长期不超过三人,Henson 在很长时间里是***的全职开发者。缺乏资金和资源是 OpenSSL 等基础性开源项目长期面临的问题,“心脏出血”漏洞让 OpenSSL 等项目得到了广泛关注,虽然 Henson 和 OpenSSL 基金会前 CEO Steve Marquess 已在 2017 年离开了项目,但它的核心开发团队已经增加到了 7 人,资金也足够维持到至少 2021 年。
但这起事件仍然引发了一个疑问:开源项目如何能可持续发展?
今天的互联网巨头其成功基本上是建立在开源软件的基础之上的,而这些公司很多只是搭便车,付出很少。所以一些人认为只要巨头们拿出钱来问题就迎刃而解了。当然 IBM 和 Google 这样的公司都鼓励其雇员回报开源社区,Google 称它有 2000 多个活跃的开源项目,如 Go 语言和 Kubernetes 容器软件。
JS 编译器 Babel.js 的开源开发者 Henry Zhu 认为, 开源社区在钱这个问题上有点像宗教,这些宗教社区需要有钱才能在基本层面上进行运作,但开源社区最重要的资产不是钱而是志同道合的人。即使所有的钱都尽你使用,一个人也无法创造一个宗教,也不能维持一个广泛使用的开源项目。开源项目的维持需要鼓励人们参与进来,在开源中间,时间比金钱更重要。