在區塊鏈領域,開源更多的時候代表著代碼可以公開訪問,開源帶來的是「信任」;從更深層次來說,開源是指軟件開發的一種方式,這種方式想要帶來的是「自由」和「效率」。
開源不只是為了讓我們能夠看到代碼,它更是為了讓我們能夠使用代碼——而后者,才是開源真正的「魔力」,或者說,力量所在。
《大教堂與集市》(The Cathedral and the Bazaar)是一本介紹開源文化的優秀著作,它也被人們稱為開源運動的獨立宣言。該書的作者埃里克·斯蒂芬·雷蒙(Eric Steven Raymond)是開源運動的主要領導者之一,他在書中為我們講述了開源思想背后的黑客文化,分析了集市模式能夠取得成功的原因,并總結了開源開發的一些商業模型。
《大教堂與集市》(The Cathedral and the Bazaar)
本文是對《大教堂與集市》一書的提煉,內容全部來源于原著作。希望這些內容有助于我們思考區塊鏈開源社區的自我組織形式,以及這種組織形式怎樣才有可能取得成功。
記住,開源社區并不是把代碼開源就完成了,它是一個需要付出熱情、智慧和努力才有可能實現的禮物文化市場。
一、黑客文化簡史
多少年來,互聯網原生的一群充滿活力的倡議者,一直在追求、實現并珍愛著開源思想。這些人以自稱「黑客」為榮。這里所說的黑客(hacker),并非如今被濫用的電腦犯罪分子的代稱,而是指天才發明家、問題解決高手和技術專家。利用網絡入侵他人系統的破壞者應該被稱為「駭客」(cracker)。
黑客文化的起源時間大致可定位于 1961 年,那一年,麻省理工學院有了第一臺 PDP-1 (程序數據處理機1號),技術模型鐵路俱樂部把這臺機器當作他們最喜歡的科技玩具,并由此發明了一系列的編程工具、俚語以及直到今天仍然依稀可辨的文化氛圍。
1982 年,麻省理工學院 AI 實驗室的標志性人物理查德·馬修·斯托曼(Richard Matthew Stallman,開源社區的人們也喜歡用「rms」來稱呼他)開始用 C 語言重新構建整個 UNIX 的克隆,并且免費發布,這就是廣為人知的 GUN 操作系統。GUN 迅速成為了黑客活動的焦點。事實上,在其后大約十多年里,斯托曼建立的自由軟件基金會在很大程度上定義了黑客文化的公共意識形態。
1991 年,林納斯·班奈狄克·托瓦茲(Linus Benedict Torvalds)開始為 386 機器開發自由 UNIX 內核,他很快獲得了成功并吸引了互聯網上的黑客們,他們幫助林納斯一同開發 Linux:一個全功能的 UNIX,源代碼完全免費,而且可以再發布。這一次,Linux 和互聯網把黑客文化從公共意識的邊緣引領到了如今的顯赫地位,黑客文化開始以自己的觀點重塑商業軟件世界。
Linux 最重要的特點不是技術上的,而是社會學上的。
在 Linux 被開發出來之前,所有人都認為如果軟件復雜到操作系統這樣的程度,就必須要有一個精心協作的團隊,團隊要比較小,而且緊密互動,有著集中式的管理和嚴格的流程,就像建造大教堂那樣由行家里手精心打造。不管是以前還是現在,這都是很典型的開發模式。
而 Linux 幾乎從一開始就發展出一條完全不同的路,其開發更像是僅通過互聯網合作的大量志愿者的隨意之作。在質量方面,它沒有嚴格的標準,也沒有一個強有力的機構來管理,它只是執行一個簡單的有點幼稚的策略:每周發布,并在接下來幾天內獲取數百個用戶的反饋。Linux 創造了一種類似達爾文的物競天擇的選擇機制,被選擇對象是開發者們所做的種種軟件修改。
讓所有人吃驚的是,這種方式工作得非常好。1993 年底,Linux 在穩定性和可靠性上已經和很多商業 UNIX 不相上下,并能支持比商業 UNIX 多得多的軟件,一些商業應用軟件都開始考慮移植到 Linux 上。
20 世紀 90 年代后期,黑客圈的活動中心是開發 Linux 和宣揚互聯網?;ヂ摼W成為主流后,黑客文化開始受到尊敬,并有了一定的政治影響力。1994 年到 1995 年間,正是因為黑客的大規模強烈抗議,試圖將強加密算法置于美國政府控制之下的 Clipper 提案無疾而終。1996 年,黑客動員起廣泛的同盟,使得《通信合宜法》被廢止,阻止了政府對互聯網的審查。
伴隨著在《通信合宜法》上取得的勝利,黑客文化從歷史邁進到了現在。
二、集市模式為何奏效?
在 Linux 社區里,沒有建筑大教堂那樣的安靜和虔誠,倒更像是一個亂糟糟的大集市,開放到幾乎是混亂的程度,充滿了各種不同的計劃和方法,而既穩定又一致的一個操作系統就這么誕生了。
為什么 Linux 世界沒有在混亂中四分五裂,反而以大教堂建筑者們難以想象的速度變得越來越強大?
事實上,開源開發的集市模式真的管用。埃里克·雷蒙從 Linux 以及他本人負責的 popclient 開源項目中總結了集市模式奏效的原因:
· Linux 社區里原創軟件的平均質量為何如此之高?因為好的軟件作品往往源自于開發者的個人需要。但在大教堂模式下,太多的軟件開發人員并不需要也不熱愛他們正在開發的軟件,他們把編程當差事,為的只是拿薪酬。
· 相比其他地方,從 Linux 世界多達數 T 字節的開放源碼中找到一些他人寫的足夠好的代碼更為可行,共享代碼使得代碼重用變得很便利。卓越的程序員有個很重要的特征是「建設性懶惰」,從一個部分可行的方案開始,要比從零開始容易得多。
· 如果有足夠多的 beta 測試者和開發合作者,軟件中幾乎所有的問題都會很快顯現,然后自然有人會把它解決。這被作者稱為 Linux 定律,它道出了大教堂模式和集市模式的最關鍵區別:
在大教堂建筑者看來,bug 是棘手的、難以發現的,要經過幾個人數月的仔細檢查才能有點信心去發布。而發布間隔越長,倘若版本并不完美,人們的失望就越發不可避免。
對集市模式而言則完全不同,開源項目的很多用戶本身就是黑客,因為可以拿到源代碼,這些黑客能極為有效地縮短排錯時間,只要給他們一點點鼓勵,他們就會幫你查找問題,給出建議并幫助改善代碼,這些比自己做要快得多得多。
如果想讓代碼質量快速提升并有效排錯,把用戶當成開發合作者對待是最省心的途徑,用戶越多,就越能有效對抗系統的復雜性。
· 開發者和測試者對程序有著不匹配的思維模式,程序員是從內往外看,測試者是從外往內看。開源打破了這種困境,由于大家都有真實的源碼,雙方很容易發展出一個共享的表達模式并進行有效的交流。事實上,一個僅描述外部可見癥狀的 bug 報告,和一個直接關聯到源碼的分析型 bug 報告,對開發者而言簡直是天壤之別。
· 「Brooks 定律」說,「在一個已經延期的項目上增加人手,只會讓項目更加延期」,它指出了傳統軟件開發在組織結構上的根本問題:隨著開發人員數目的增長,項目復雜度和溝通成本按照人數的平方增加,但工作成果只會呈線性增長。而在開源項目中,外圍開發者實際工作在分散而并行的子任務上,只有在那個小的核心團隊里才會有 Brooks 開銷。
以上就是 Linux 的集市模式奏效的主要原因,這種開源開發的方式是林納斯真正最聰明和最有價值的成就。該方式使得幾千名散布在全球各地的開發者,利用業余時間,僅僅是通過互聯網這種脆弱的合作,就鬼斧神工般地造就了一個世界級的操作系統。
三、如何取得開源社區的成功
集市模式能夠運轉的前提是什么?
首先,很顯然,你不可能從零開始實施集市模式。開發者社區從成立伊始,就需要一個可以運行和測試的東西。程序此時并不需要特別好,但它至少要做到:1. 能運行;2. 讓潛在的合作開發者相信,這個軟件在可預見的未來能演變成一個非常棒的東西。
其次,為了建立一個開發社區,你需要吸引人們,讓他們對你做的事感興趣,因此項目協調人或領導人的人格特征很重要;此外,協調者是否擁有卓越的原創設計能力可能不是決定性因素,但他是否能識別出他人的優秀創意則一定是最關鍵的。
接下來,也許是最重要的,Linux 的開源社區之所以成功,是因為它創建了一個有效率的「egoboo」市場。egoboo 是「ego boosting」的縮寫,它代表的是「個人在團體中聲望的提升」:Linux 黑客們致力于開源社區的項目開發,其目的并不是經典意義上的經濟價值,而是自我滿足和黑客聲望這些無形的東西。
有人把這種動機稱為「利他」,但其實「利他」本身是利他者自我滿足的外在表現,它是未被意識的某種「利己」。因此,Linux 世界的運轉在很多方面像一個自由市場,或者像一個由很多利己個體組成的生態系統,系統中每個個體都追求自身效用的最大化,在其共生的過程中,自然建立起一種具備自我糾錯能力的秩序,這種秩序比任何集中式規劃都要精妙和高效。
egoboo 市場把一個個黑客的利己動機盡可能牢靠地牽系到一個艱巨的任務目標上,并在眾人持續的合作之下達成目標。
黑客文化是創建一個有效的 egoboo 市場,進而獲得開源社區的成功的真正動力,因此在接下來的部分,我們討論黑客的「禮物文化」,它呈現出的面貌是:參與者通過付出時間、精力和創意,在競爭中獲取聲望 / 聲譽的文化。
大多數的人類組織模式都是為了適應稀缺和匱乏。最簡單的組織模式是命令體系,稀缺物品被中心化的權力分配并以武力為后盾;最常見的組織模式是交換經濟體系,稀缺物品主要通過貿易和資源合作的方式完成分配。大多數人同時存在上述兩種心理模式并理解它們之間如何交互。
然而,還有一種大多數人不太了解的和上述兩類完全不同的組織模式:禮物文化。禮物文化并不是對物質稀缺的適應,它是對物質充裕的適應,注意,充裕性會使命令關系難以維持,會使交換關系變得無意義。因此在禮物文化中,社會地位(人類對社會地位的競爭有一種天然的內驅力,它通過進化根植于人心)并不取決于你控制了什么,而是你給予了什么。
這種「給予」的禮物文化為何又在黑客文化中體現為「獲取聲望」?主要原因在于黑客贈予的禮物非常復雜,與其他禮物相比其價值體現難以評估,只能微妙地取決于同儕們的評價;另外,絕大多數禮物文化都會有折中,比如宗族結盟,但開源文化中不存在類似的折中,也就是說,要想獲取地位,除了同儕聲望,沒有什么更多的途徑了。
因此,禮物文化中獲得社會地位的方式以及黑客禮物的特殊性,使得黑客會去追求在同儕中的聲望,聲望對于他們而言是最基本的一種激勵。
除了作為激勵,聲望也是吸引人他人注意和合作的途徑,在純禮物經濟中,這或許也是唯一的途徑;此外,如果禮物經濟和交換經濟、命令體系互相關聯,那么聲望就可能從前一種環境傳播到后兩種環境中,使得黑客在另外的模式里也能獲得更高的地位。
這就是開源開發自身的「聲望」動力,也是開源社區能否取得成功的關鍵所在。
最后需要簡單提及的是,相比增量改進現有的軟件產品,創意十足的產品會讓人獲得更多聲譽;相比和成熟項目競爭,填補領域空白更容易實現;相比另起一個新項目,對現有項目做出貢獻更容易吸引注意力。因此,開源項目總是傾向于填充前沿地帶的功能性缺口(其中一些非常成功的項目成了類別殺手),從全球來看,「類別殺手」和「填補空白」是開源項目發展的總體趨勢。
四、開源開發的盈利機制
集市模式在軟件開發上是奏效的,但這種模式在現實的交換經濟中可以如何存活?換句話而言就是,這種模式怎樣賺錢?
我們首先需要注意的是,計算機程序有著兩種不同的經濟價值:銷售價值和使用價值。銷售價值是它作為一個可買賣商品的價值,使用價值是它作為一個工具、一個生產率倍乘器的經濟價值。
一直以來,人們傾向于假設軟件具有的是批量商品的價值特點,也就是認為大多數開發者的薪金由軟件銷售價值支付,軟件開發投入與軟件銷售價值成比例。但實際上,這種理解是錯誤的,被編寫用來出售的代碼僅僅是編程冰山的一角,給程序員支付報酬的工作大部分都是「維護」。
換句話說,軟件業很大程度上是一個服務業,使用價值才是軟件開發的主要驅動力。在從閉源轉向開源的過程中,受到威脅的僅僅是銷售價值,而非真正重要的使用價值。
如果開源開發比閉源更有效也更快捷,就像前文中論述的那樣,我們應該能夠僅靠使用價值就可以持續資助開源開發。埃里克在書中總結了開源開發的五種經濟模型,并認為未來還會有更多的模型出現:
· 軟件免費,服務收費。也被形容為送剃須刀,賣刀片。源碼開放會產生強大的市場效果,開源軟件是為服務占領市場。這是 Red Hat 和其他 Linux 發行商所采用的做法:他們真正銷售的東西不是軟件,而是他們所提供的附加價值。
· 軟件免費,品牌收費??梢蚤_源一項軟件技術,保留其測試套件或兼容性標準,然后賣品牌認證。如果某公司的產品通過認證,則表明他們對該技術的實現和其他擁有該品牌認證的產品是兼容的。
· 軟件免費,內容收費。想象一個類似股票報價訂閱的服務,其價值既不在客戶端也不在服務器端,而在于提供客觀可信的信息,所以可以開源軟件而銷售內容訂閱。當黑客們把客戶端移植到新平臺時,市場還會自然而然地擴展。
· 當下收費,未來免費。以封閉許可證的形式發布軟件的源碼,但其中的封閉條款有過期時間。這種模型的好處在于它使顧客確信產品是可以客戶化的,是始終可用的,因為他們有源碼,開源社區可以接管起來。
· 占領市場。利用開源軟件建立或維護專有軟件的市場地位。最常見的形式是將客戶端軟件開源,用來幫助服務器端軟件的銷售。
盡管黑客圈外仍然廣泛流傳著「黑客敵視市場」的謬論,但其實大多數黑客樂于和商業世界合作。有必要談談黑客對直接收費類型許可證心存不滿的真正原因是什么,這個問題微妙而有趣。
第一個原因與「對等性」有關,大多數開源開發者希望不會有任何人站在一個特權地位上牟利。第二個原因與「非有意后果」有關,如果對軟件的使用 / 銷售 / 修改 / 發布加以限制,會給某些活動,比如開源軟件的發布籠上了一層法律陰影,人們需要小心翼翼防范那些潛在的法律風險。
最后的也是最關鍵的一個原因,如果許可證被設計用來獲取銷售價值,它通常就會在法律上使項目不可能產生分支。這是黑客們絕不答應的,這也是 Sun 關于 Java 和 Jini 的社區源碼許可證方案被開源社區普遍拒絕的原因。
黑客社區里沒人愿意看到項目分裂成互相競爭的多條開發線,不到萬不得已人們并不想使用分支的權力,但如果有人試圖奪去這些權力,那一定是非常危險的信號。
以上三個原因解釋了「開源」定義中的某些條款,這些條款表達了黑客社區的共識,也是標準許可證,比如 GPL、BSD 許可證的關鍵特征。
五、黑客態度
黑客文化和黑客行為帶來了開源運動,理解黑客精神,是理解開源模式為何能夠奏效、開源社區如何才能成功的關鍵所在。而對于任何一個要在未來工作和生活的人,懂一些黑客文化都是很有意義的。
另一件有趣的事情是,黑客精神并不局限于軟件文化中,黑客的天性其實是獨立于他們所從事的工作的。人們會把黑客態度用在其他事情上,比如電子或音樂,科學或藝術。黑客的態度可能主要包括以下幾點:
· 認為這個世界充滿了迷人的問題等待人們去解決。成為一名黑客,你必須要對解決問題、磨礪技能和智力挑戰有著基本的興奮感。
· 你要相***造性頭腦是無比珍貴的有限資源,其他黑客的思考時間是很寶貴的,以至于共享信息、解決問題并將解決辦法饋贈給其他黑客幾乎就是你的道德義務,這樣一來,其他黑客就可以去解決新問題。
· 相信無聊和乏味不僅是不好的,而且是有害的。
· 自由是好事。無論什么地方出現權威主義傾向,你都要與之抗爭,以免他們壓迫你和其他黑客。濫用權威者依靠審查和保密而強大,他們不信任自愿合作和信息共享,他們只喜歡他們控制之下的合作。若要做得像一名黑客,對審查、保密以及使用武力或欺騙這類行為,要有一種直覺上的反感。
· 態度不能代替能力。要成為一名黑客,你需要智慧、實踐、投入和努力。
對照這幾點,你是一名黑客嗎?
埃里克·斯蒂芬·雷蒙把《大教堂與集市》獻給羅伯特·安森·海因萊因,一位了不起的科幻小說作家,并引用海因萊因的一句話開啟了全書的內容。
這句話是這么說的:「要尊重能力,要珍視和捍衛自由」。就讓我們以這句話作為本篇文章的結束吧。
責任編輯:ct
評論
查看更多