當前位置:
首頁 > 科技 > 開源已過了壯年期?開源需要被取代嗎?一些公司稱是的,另一些公司稱純屬胡扯

開源已過了壯年期?開源需要被取代嗎?一些公司稱是的,另一些公司稱純屬胡扯

本文由雲頭條編譯自外媒ZDnet,作者Steven J. Vaughan-Nichols

真假開源之爭愈演愈烈

2月19日,Redis Labs宣布籌集到6000萬美元的新資金,該公司開發的Redis是一款大受歡迎的開源內存數據結構存儲系統。Redis Labs CEO Ofer Bengal當時告訴IT外媒Ars Technica,之所以能拿到這筆融資,一個原因在於新的「開源」Commons Clause許可證。Bengal 說:「開源社區現在明白,原來的開源概念需要加以修正,因為它已經不再適合當前這個時代了;眼焉,許多雲計算公司利用手中的壟斷力量,採用任何成功的開源項目,對開源項目卻沒有任何貢獻。」

不好意思,我不這麼認為。引用雲原生計算基金會(CNCF)首席技術官Chris Aniszczyk的話來說就是「他媽的饒了我吧」。

此外,Aniszczyk指出:「一些雲提供商是開源社區的最大貢獻者。」比如說,谷歌和微軟一直在推動其在雲開源方面的工作。的確,我們現在知道微軟在公司內部正式採用開源開發方法。

Aniszczyk 絕不是唯一一個竭力反對 Redis 開源立場的人。

Apache軟體基金會的聯合創始人Jim Jagielski 發推文道:「誰要是認為開源界20多年來沒有遇到過像目前這樣必須面對的情況,他要麼是毫無頭緒,要麼是不夠誠實。」他繼而指出,比如說,Apache Web 伺服器的開發人員始終很樂於被商業公司「免費搭車」。這是由於,這樣一來,可以進一步確保為所有Web用戶提供一個開放公平的競爭環境。

Rich Bowen 是Red Hat開源宣傳官,他想知道Redis是不是果真「毫無頭緒」。「今天很多人進入開源社區,他們不願意進行一番研究、閱讀相關內容,想當然地以為這些都是新問題。其實,1994 年並不是很久以前。」

儘管面臨重重阻力,為什麼Redis採用這種方法?這主要是由於AWS ElastiCache 提供Redis 服務,而Redis沒有得到相應的回報。Redis 正通過讓新的代碼模塊採用Commons Clause來應對這個問題。正如BaenCapital的風險資本家Salil Deshpand解釋的那樣,「亞馬遜拿來Redis後,給予很少的回饋,將其作為一項服務來運行,還改頭換面、取了AWS ElastiCache這個名稱。很雖然,這並不違法。但我們認為這不對,不利於可持續發展的開源社區。」因此,「Commons Clause阻止開源濫用現象。」

早些時候,面對開源方面這種博弈的做法,開源促進會(OSI)重申了對開源定義的支持。OSI得到Debian、Mozilla 和 Document基金會等眾多合作夥伴的支持,聲稱「如果沒有這一套標準的『開源』定義,我們所知道的軟體開發就不可能存在。在誰都可以自行杜撰開源定義的世界裡,沒有信任可言;要是沒有信任,就沒有社區,沒有合作,沒有創新。」

Document基金會的LibreOffice負責人之一Italo Vignoli在電子郵件中稱,CommonsClause及之類的許可證將「破壞開源的完整性;如果置之不理,將破壞開源軟體用戶和貢獻者的信任。」

Andrew "Andy" Updegrove是Gesmer Updegrove LLP的創始合伙人,也是大名鼎鼎的標準和開源律師,他基本上同意這個觀點,但認為「開源定義永遠不會變是錯誤的說法。」

Updegrove繼續表示,開源定義「基本上體現了有關方(注意不是所有的有關方)在一個歷史上很重要的時間點就公平性等話題達成的共識。」

如果你從長遠的歷史視角來看,在某個時間點,這個共識可能會在一定程度上發生變化,就像關於歷史上涉及平等和公正等概念方面的共識已發生了變化,通常是往好的方向改變。開源定義可能也會出現這種情況,任何變化也有可能往好的方向改變,只要由所有的有關方達成共識。

話雖如此,Commons Clause不是開源。Updegrove在之前的博文中寫道:

將Commons Clause添加到開源許可證使得它不再是開源許可證。其次,如果Commons Clause被人接受,它可能會帶來一個不受歡迎的趨勢。開源早期的許可證遍地開花毫無幫助,還導致了此後曠日持久的困惑和複雜性,因為不是所有許可證都與其他許可證相兼容。這意味著在任何一段開源代碼可以添加到代碼庫之前,有必要確定其許可證是不是與同一個產品中所有其他軟體的許可證相兼容。這是個老大難問題。

Commons Clause和類似的許可證(比如MongoDB的伺服器端公共許可證,SSPL)無疑是個頭痛的問題。它們試圖讓公司可以保住開源這塊蛋糕,又能蠶食專有軟體的利潤。

Commons Clause禁止你銷售來自採用其許可條款的代碼的軟體,還阻止你提供相應的諮詢或提供支持服務,「作為其價值全部或大部分來自軟體功能的產品或服務」。這一切的目的就是阻止你(具體來說就是AWS)將Redis作為一項服務來提供。

Redis最初做出這個舉動時,OSI總裁Simon Phipps在推特上炮轟:「Redis完全走專有化道路,這糟透了。不,這不僅僅是『影響公正使用的一種限制』,它更是取締了軟體自由。」

此那以後,這場口水和利益之爭愈演愈烈。Debian和Fedora等流行的Linux已經從各自的發行版擯棄了Redis。由於SSPL,Red Hat擯棄了MongoDB。

從短期來看,Redis是成功的。6000萬美元可不是筆小數目。可是從長遠來看,對開源許可證和軟體採用心理恐嚇戰術(FUD)只會害了Redis以及試圖靠開源來開拓業務的其他任何公司。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 雲頭條 的精彩文章:

Google 開源 ClusterFuzz:使得查找錯誤並修復錯誤變得異常簡單

TAG:雲頭條 |