奠基互聯(lián)網(wǎng)基礎(chǔ)的開源項目如何可持續(xù)發(fā)展
2011 年新年前夕,OpenSSL 項目維護者 Stephen Henson 破壞了互聯(lián)網(wǎng)。他接受了德國開發(fā)者 Robin Seggelmann 寫的“心跳”標準代碼。2 年半之后,“心臟出血”漏洞曝光,它被認為是至今發(fā)現(xiàn)的最嚴重軟件漏洞之一。
OpenSSL 的代碼被無數(shù)項目使用,是互聯(lián)網(wǎng)的基石之一,但它的開發(fā)者長期不超過三人,Henson 在很長時間里是***的全職開發(fā)者。缺乏資金和資源是 OpenSSL 等基礎(chǔ)性開源項目長期面臨的問題,“心臟出血”漏洞讓 OpenSSL 等項目得到了廣泛關(guān)注,雖然 Henson 和 OpenSSL 基金會前 CEO Steve Marquess 已在 2017 年離開了項目,但它的核心開發(fā)團隊已經(jīng)增加到了 7 人,資金也足夠維持到至少 2021 年。
但這起事件仍然引發(fā)了一個疑問:開源項目如何能可持續(xù)發(fā)展?
今天的互聯(lián)網(wǎng)巨頭其成功基本上是建立在開源軟件的基礎(chǔ)之上的,而這些公司很多只是搭便車,付出很少。所以一些人認為只要巨頭們拿出錢來問題就迎刃而解了。當(dāng)然 IBM 和 Google 這樣的公司都鼓勵其雇員回報開源社區(qū),Google 稱它有 2000 多個活躍的開源項目,如 Go 語言和 Kubernetes 容器軟件。
JS 編譯器 Babel.js 的開源開發(fā)者 Henry Zhu 認為, 開源社區(qū)在錢這個問題上有點像宗教,這些宗教社區(qū)需要有錢才能在基本層面上進行運作,但開源社區(qū)最重要的資產(chǎn)不是錢而是志同道合的人。即使所有的錢都盡你使用,一個人也無法創(chuàng)造一個宗教,也不能維持一個廣泛使用的開源項目。開源項目的維持需要鼓勵人們參與進來,在開源中間,時間比金錢更重要。