03.29 Apache 之道,開源可持續成功的祕籍

Apache 之道,開源可持續成功的秘籍

方法論在人類的發展歷史上是至關重要的,很多組織行為、社會學等科學家都認為三次工業革命的本質人類的組織上的變革,而並不僅僅是技術的進化。而以 Apache 為代表的現代軟件工業,是最先進的軟件生產方式,其方法論“Apache 之道”才是精華所在。

-- Sally

譯自: https://blogs.apache.org/foundation/entry/the-apache-way-to-sustainable

轉自: http://www.ocselected.org/posts/foundation_introduce/the_apache_way_to_sustainable_os/

方法論在人類的發展歷史上是至關重要的,很多組織行為、社會學等科學家都認為三次工業革命的本質人類的組織上的變革,而並不僅僅是技術的進化。而以 Apache 為代表的現代軟件工業,是最先進的軟件生產方式,其方法論“Apache 之道”才是精華所在。

毫無疑問,開源軟件是越來越重要了,那麼作為開源軟件中重要的中流砥柱的 Apache 軟件基金會 (ASF)也迎來了 20 週年,那麼我們是不是應該反思一下關於 Apache 的能夠如此長盛不衰?以 Apache 之道(Apache Way)為原則的社區驅動開放模式儘管遇到了不少的挑戰,但是仍然在開源的生態系統中發揮著舉足輕重的作用。

Apache 之道的歷史要更為遠久一點,該方法論的提出在 24 年前,即該基金會建立之前的原 Apache 小組(Apache Group)提出的。該方法論經過時間的證明,是 Apache 成功的一個重要的基礎,而且我們認為它對於開源之所以能走到今天是至為重要的。

這麼多年下來,Apache 之道盡管修改了不少內容,但它仍然堅持初心:高度的透明性,讓所有人可訪問的中立的環境中進行社區驅動的協作。

Apache 之道從法律和社會框架兩個維度對開源進行了定義,它有助於人們理解是什麼讓開源變得如此的強大,以及參與開源的過程中的行為方式。本文我們將在 基金會的使命 的背景下來詮釋 Apache 之道:

“Apache 軟件基金會的歷史使命是為公眾利益提供軟件。我們由許多志同道合的獨立的個人所組成,這些個人通過參於 ASF 的社區活動,來為軟件項目提供服務和支持。”

接下來就讓我們一句一句的來剖析這段宣言:

提供軟件的公共產品

本節的關鍵點:

  • 我們生產的軟件是非競爭性的,也是非排他性的。
  • 在任何上下文中使用 Apache 軟件都不會降低其他人的可用性。
  • 用戶和貢獻者對於基金會、項目以及社區均毋須承諾任何的責任。
  • 使用符合開源定義的許可證是必要的,但這並不足以完成我們的使命。

investopedia 站點定義的公共產品的意思是:”一個人可以消費的產品,而不會降低其對另一個人的可用性,並且不會排除任何人。”從字面上來看,似乎我們使用該定義是蠻不錯的選擇,但是,這其中有一些細微的差別,我們的使命不是生產“公共產品”,而是“為公眾利益提供軟件”。

若要理解為什麼這點差異是如此重要的話,人們必須去思考是什麼激勵著 Apache 軟件基金會去為公眾利益而生產軟件。

開源軟件可以被無限的複製和重用,每一位用戶都可以按照自己特定的需要而去更改代碼,他們也可以根據需要和其它的軟件合起來,他們可以使用自己設計的創新產品和服務,且從中獲得切身利益。以上所談都是可行的,而且也不會影響到其他人對軟件的使用。因此,ASF 所生產的軟件可以通過許多種不同的方式提供給公眾利益。

為了讓我們能夠完成這部分任務,至關重要的是,我們選擇使用法律來保護基金會,即策劃了軟件的許可證。對於我們來說就是 Apache 許可協議版本 2 ,另外,我們也採用了 入站許可證規定 ,該規定定義了哪些許可證授權的軟件是可以用於 Apache 項目的,該規定可以簡略的總結為:

  • 協議必須滿足 開放源代碼定義 (Open Source Definition)(OSD)。
  • 在實踐中應用的許可證不得強加超出 Apache 許可證 2.0 的限制。

這也就意味著人們完全可以放心,由 Apache 軟件基金會的孵化的軟件項目,既是公共產品,也是為公眾利益。人們可以基於任何目的去使用 Apache 的軟件,而且人們並不會對基金會、項目、以及社區有任何的責任。

這裡有一個值得重點強調的事情是,有些軟件採用了 Apache 許可證,但是沒有遵循相應的入站許可規定,這類項目可能會帶來 Apache 許可證所沒有涵蓋到的限制;因此,仔細檢查這些項目的許可政策非常重要。這也就是說,如果只是採用了 Apache 許可協議,而不是在基金會所孵化,注意這而二者之間有著顯著的差異。

Apache 項目在很多領域裡都是成功的,這要歸功於我們所遵守的定義非常清晰的許可證規定。這也讓下游的用戶可以非常清楚的理解那些事情可以做,那些事情是不能做的。Apache 許可的初衷是希望每個人參與開源的機會是均等的,這個開源是廣義的開源,不僅限於 Apache 軟件項目,也包括其它的開源項目。Apache 的許可證是被允許修改的,但是修改之後的 Apache 協議,就再也不是 Apache 許可證了,也不會得到 Apache 軟件基金會的許可或承認。修改之後的許可證是不可以使用 Apache 的名義的,這也是被嚴格禁止的,因為這會讓用戶感到困惑,也會損害 Apache 的名譽/品牌。

雖然我們認識到許多方法可以授權軟件,無論是開放源代碼還是其他方式,但我們斷言,只有同時使用我們的許可證(未修改的)和入站許可規定的項目才能真正遵循並遵守 Apache 之道。

雖然 OSD 批准的許可證和相關政策是成功開源生產所必需的,但我們認為還需要補充一些內容。它們為開源的生產提供了法律框架,但它們沒有提供社會框架,這就引入了我們所闡述的使命的後半句話:

我們由許多志同道合的獨立的個人所組成,這些個人通過參於 ASF 的社區活動,來為軟件項目提供服務和支持。

我們由許多志同道合的獨立的個人所組成

本章節的關鍵點:

  • Apache 之道提供了一種治理模型,旨在為協作創建一個社會框架。
  • Apache 軟件基金會(ASF)發展社區,而社區去開發項目。
  • ASF 項目社區開發和重用軟件組件,而軟件組件又可以在產品中重複使用。
  • ASF 軟件的用戶經常使用我們的軟件組件構建產品和服務。
  • 我們的模型以及其他類似的模型已經產生了一些規模最大、壽命最長的開源項目,這些項目徹底改變了行業。

這句話雖然很短,但是它蘊含的內容卻非常的豐富。理解了這些文字,就基本理解了 Apache 之道所持續發展的軟件和其它開源許可證下的軟件之間的差別了。而且還特別的強調了基金會本身並不參與軟件的開發與生產,這個事實就擺在面前,Apache 軟件基金會,軟件代碼價值超過 80 億美元,其本身並不開發軟件。相比於專注於軟件本身,基金會更加傾向於構建和支持協作的社區;軟件則是這一目標的附帶產物。

這些志同道合的項目社區之所以能夠聚在一起,是因為他們分享遇到的共同的問題,且可以在軟件的開發中得到解決。常言道:“分享問題,問題其實已經解決了一半。” 通過將具有獨特想法和技能的個人聚在一起,我們打破了協作的邊界。

Apache 之道經過精心設計,旨在創建一個協作的社交結構,它補充了上面討論的法律框架。在法律框架確保使用軟件的平等權利的情況下,Apache 之道確保了為軟件做出貢獻的同樣的效果,這對於開源軟件項目的長期可持續性至關重要。許多非 Apache 項目沒有采用類似這樣的協作社交結構,但強大的社交結構無疑是 ASF 項目長期成功的關鍵組成部分。

Apache 之道是完全包容、開放、高度透明、以及基於共識的。積極的倡導供應商中立原則,以防止來自單個公司的不當影響(以及控制)。它可確保任何有價值貢獻的個人均有權獲得授權,儘管社區成員資格隨著時間的推移不可避免地會發生變化,但是它可確保項目可持續性發展。

Apache 項目通常會以不同的方式生成可與其他軟件(任何許可證)組合的軟件組件,以解決不同的問題。這為參與者提供了大量機會,可以在給定的軟件項目中進行協作,而不依賴於他們在基金會之外的關係。這與根據開源許可證將產品作為一個整體來授予許可是非常不同的做法,Apache 之道的模式提供了更多的重用機會,反過來又為社區的人才儲備做出了一定的準備。

此外,Apache 之道以實際成績為基礎的制度旨在確保:在社區人來人往的情況下,保持項目的持續前進,總是有人能夠代替現有的人。也正因為此,一些獨一無二的 Apache 項目能夠存在 20 多年,在萬維網(WWW)的商業化進程中,功不可沒,當然,也有數十個項目也站在時代的前沿,在諸如大數據、物聯網等細分的行業內引領創新。

Apache 之道的核心原則是”社區勝於代碼”,這句精煉的話深刻體現我們的哲學:健康的社區優先於卓越的代碼。一個健壯的社區總能糾正代碼的問題,而一個不健康的社區可能很難以可持續的方式來進行代碼的維護。健壯的社區確保基金會可以在未來的 20 年甚至更遠的未來保持茁壯成長的態勢。

Apache 的項目在擴展到其它項目上並沒有遇到任何問題,這區別於那些聚焦於法律框架下的開源項目,如果環顧四周,看看和 Apache 項目一起成長起來的項目,就能明顯的看到 Apache 在治理模式上的重點傾向。這並非是偶然的事情,是我們精心設計的結果。

為什麼 Apache 之道很重要

軟件是現代經濟中不可或缺的一部分。軟件已經觸及到現代社會的方方面面,生活的各個角落,而且也反過來改變著人們的日常生活,從生到死,無處不在。

在 Apache 軟件基金會,我們深信每一位開發者都明白自己打造軟件的驅動力所在。我們尊重他們選擇何時以及如何構建軟件的權利,包括他們使用非開放許可的權利。

我們也不會去決定什麼對開發人員或軟件行業最為有利。

相對來說,我們更加軟件的供應,這使得我們的用戶、貢獻者以及公眾能夠決定什麼是最適合他們的。

我們非常歡迎任何人使用我們的軟件,也歡迎大家去為項目做出貢獻,即使不做貢獻也沒有關係,完全取決於人們自身。

當然,我們對於商業的要求,是留在 Apache 的大門之外。

無數組織證明,他們在供應商中立環境中協作的團隊成員經常將開放式創新流程(例如 Apache 之道)應用於他們的工作。這有助於創造內部效率,併為可能提供額外附加利益的新外部機會奠定基礎。

只有帶來讓人們參與貢獻的意願才是讓 Apache 社區更為壯大,也是增強 Apache 品牌的不二途徑,且可以贏得大眾的信任,更是幫助我們實現為公眾利益提供軟件的使命。

我們一起學習,共同提高,只為交付出我們所能做出的最好的軟件。

Apache 的軟件是提供給所有人的。

選擇的自由是基金會和 Apache 項目如此強大的原因。

總結

軟件工業已經徹底改變,而且改變將會一直持續。而且交付軟件的方式也已經徹底改變。身處軟件產業的老前輩們有的已經退休,而新人正在積極的跟進。但是這個世界上有些東西是不會變的,那就是我們通過法律和社會框架共同約束下軟件開發的協作模式,也是繼續保持生產軟件的最佳模式。

伴隨著用戶數量的增加,哪怕是他們沒有為代碼做過貢獻,這對於項目仍然是有益處的,其實對於開源項目來說,多多益善。這意味著一個很簡單的道理,越多的用戶機會就越多,在 Apache,更多的用戶意味著他們在未來有極大的可能成為貢獻者。

作為一家在美國註冊為 501©(3) 的公共慈善機構,Apache 軟件基金會幫助獨立個體和組織去理解開源是如何在一個激烈競爭的市場中發揮優勢的。二十多年來,我們的重點不是生產軟件,而是指導生產軟件的社區。Apache 之道對於開源社區的持久發展有著顯著的優勢:我們所做的一切都是開源的,所有的用戶都可以從中受益。Apache 是所有人的 Apache。


分享到:


相關文章: