區(qū)塊鏈將會(huì)如何影響開(kāi)源
在中本聰十年前創(chuàng)立比特幣伊始,就引來(lái)來(lái)眾多的追隨者,并慢慢演變?yōu)槿ブ行幕囊粓?chǎng)運(yùn)動(dòng)。甚至于,對(duì)于某一些人來(lái)說(shuō),區(qū)塊鏈技術(shù)就像互聯(lián)網(wǎng)那樣深刻影響著人類社會(huì)的技術(shù),當(dāng)然,也有很大一部分人認(rèn)為,區(qū)塊鏈不過(guò)是另外一場(chǎng)龐氏騙局罷了,就在這眾說(shuō)紛紜之中,區(qū)塊鏈也在進(jìn)化并不斷的嘗試尋找自己的位置。無(wú)論怎樣,有一件事是確定的,那就是區(qū)塊鏈?zhǔn)且豁?xiàng)顛覆性的技術(shù),將從根本上改變一些行業(yè)。我深信開(kāi)源就是其中之一。
開(kāi)源的模式
開(kāi)源是一種軟件協(xié)作開(kāi)發(fā)方法,也是軟件分發(fā)的模式,開(kāi)源允許擁有共同興趣的人們一起協(xié)作,進(jìn)而生產(chǎn)出他們中間任何個(gè)體都無(wú)法獨(dú)立完成的事情,它讓整體所創(chuàng)建的價(jià)值遠(yuǎn)遠(yuǎn)大于部分的總和。開(kāi)源通過(guò)分布式的協(xié)作工具(IRC、email、git、wiki、issue 跟蹤等)、以及開(kāi)源許可證模式下的分發(fā)和保護(hù),當(dāng)然還有諸如 Apache 軟件基金會(huì)和云原生基金會(huì)這樣的非盈利基金會(huì)的治理。
說(shuō)來(lái)已久,最讓人們好奇的莫過(guò)于開(kāi)源的模式本質(zhì)上是缺乏金錢(qián)上的激勵(lì)的。在開(kāi)源界,像人類社會(huì)的其它方面一樣,分很多的派系,如其中一些人就認(rèn)為談開(kāi)源就不要談錢(qián),開(kāi)源本應(yīng)該就是由內(nèi)在的激勵(lì)的自由和資源的行為(諸如“共同理想”、“為了偉大的事情”);也有另外一些人認(rèn)為開(kāi)源需要獲得外部的尤其是金錢(qián)上的激勵(lì)。雖然開(kāi)源項(xiàng)目?jī)H僅通過(guò)世上的志愿者來(lái)完成是富有理想的浪漫主義色彩的,就目前的現(xiàn)狀來(lái)看,事實(shí)上主要的開(kāi)源完成的貢獻(xiàn)均是在有支付的情形下搞定的。當(dāng)然,毋庸置疑的是我們擁有大量的無(wú)償貢獻(xiàn)者,但是這些貢獻(xiàn)都是臨時(shí)性的,或者是某些受追捧的項(xiàng)目備受世人關(guān)注。建立和維系開(kāi)源項(xiàng)目是需要企業(yè)傾注大量心血和精力來(lái)進(jìn)行開(kāi)發(fā)、文檔化、測(cè)試、修復(fù)缺陷,而且是持續(xù)性的一如既往的,絕不是一時(shí)心血來(lái)潮。
開(kāi)源的商業(yè)化
眾所周知,Apache 軟件基金會(huì)是通過(guò)捐助而生存的,當(dāng)然還有其它的一些收入:贊助、會(huì)議費(fèi)用等等。但是要知道這些資金主要是用于運(yùn)營(yíng)基金會(huì)本身,如為項(xiàng)目提供法律保護(hù),以及確保有足夠的服務(wù)器來(lái)運(yùn)行構(gòu)建程序、缺陷追蹤、郵件列表等等。
同樣的,云原生基金會(huì) CNCF 會(huì)收取會(huì)員費(fèi),以及更多的會(huì)議費(fèi)用,這些費(fèi)用同樣是用來(lái)運(yùn)營(yíng)基金會(huì)以及為項(xiàng)目提供資源。如今的年頭,絕大多數(shù)的軟件已經(jīng)不能在自己的筆記本電腦里構(gòu)建了,它們都的運(yùn)行和測(cè)試都是在云平臺(tái)中上百臺(tái)服務(wù)器當(dāng)中。這些都屬于基金會(huì)的日常開(kāi)銷。其它如開(kāi)展?fàn)I銷活動(dòng),品牌設(shè)計(jì)、分發(fā)一些小的宣傳物品,也是基金會(huì)份內(nèi)的事情。基金會(huì)的核心任務(wù)是實(shí)施正確的流程,與用戶,開(kāi)發(fā)人員和控制機(jī)制進(jìn)行交互,并確保將可用財(cái)務(wù)資源分配給開(kāi)源項(xiàng)目以實(shí)現(xiàn)共同利益。
看起來(lái)是一切都運(yùn)行良好,不是嗎?開(kāi)源項(xiàng)目可以募捐到錢(qián),基金會(huì)也可以公正的進(jìn)行分發(fā),那么哪里有問(wèn)題了呢?
這里沒(méi)有說(shuō)明的是:用于在開(kāi)源生產(chǎn)者和開(kāi)源消費(fèi)者之間進(jìn)行價(jià)值轉(zhuǎn)移,直接,透明,可信,分散,自動(dòng)的雙向鏈接。就目前而言,所有的鏈接都是單向或間接的:
- 單向:一名開(kāi)發(fā)者(廣義上的開(kāi)發(fā)者,可以是軟件生產(chǎn)中的任何角色:碼農(nóng)、維護(hù)者、分發(fā)者),利用自己的聰明才智,絞盡腦汁,并花費(fèi)無(wú)數(shù)時(shí)間來(lái)開(kāi)發(fā)開(kāi)源項(xiàng)目,且提交貢獻(xiàn)為所有的開(kāi)源用戶分享這一價(jià)值。但是基本上都是一廂情愿的。
- 間接:如果軟件出現(xiàn)了 bug,影響到了特定的用戶/公司的話,有下列幾種情形出現(xiàn):
- 讓內(nèi)部開(kāi)發(fā)人員修復(fù) bug,然后提交一個(gè)拉取請(qǐng)求(PR),這是比較理想的狀態(tài),這些公司并不總是能夠聘請(qǐng)到特定的開(kāi)源項(xiàng)目的開(kāi)發(fā)人員,因?yàn)橐话愎径紩?huì)使用成百上千個(gè)開(kāi)源項(xiàng)目。
- 聘請(qǐng)專門(mén)從事該特定開(kāi)源項(xiàng)目的自由職業(yè)者并支付服務(wù)費(fèi)用。理想情況下,自由職業(yè)者也是開(kāi)源項(xiàng)目的提交者,可以直接快速更改項(xiàng)目代碼。否則,修復(fù)程序可能永遠(yuǎn)不會(huì)進(jìn)入上游項(xiàng)目。
- 接近圍繞開(kāi)源項(xiàng)目提供服務(wù)的公司。這些公司通常雇用開(kāi)源提交者來(lái)影響和獲得社區(qū)的可信度,并提供產(chǎn)品、專業(yè)知識(shí)和專業(yè)服務(wù)。
第三種選擇是維持許多開(kāi)源項(xiàng)目的成功模式。無(wú)論這些公司提供服務(wù)(培訓(xùn)、咨詢、workshop)、技術(shù)支持、打包、開(kāi)放核心,還是 SaaS 服務(wù),不可否認(rèn)的是他們都需要雇傭上百個(gè)全職的員工來(lái)為開(kāi)源做出努力,我們可以看到這樣的公司有一大把,他們成功的建立了有效的開(kāi)源商業(yè)模式,而且正在有更多的公司加入這個(gè)陣營(yíng)。
支持開(kāi)源項(xiàng)目的公司在這個(gè)生態(tài)系統(tǒng)中發(fā)揮著重要的作用:它們介于開(kāi)源項(xiàng)目和用戶之間,起著重要的催化劑作用。那些能夠真正為用戶創(chuàng)造價(jià)值的公司,不僅僅是能夠打包出很棒的軟件;而是他們能夠識(shí)別用戶的真實(shí)需求,且能夠洞察技術(shù)趨勢(shì),有能力創(chuàng)建出一個(gè)完整的堆棧甚至是開(kāi)源項(xiàng)目的生態(tài)系統(tǒng)來(lái)滿足這些需求。 他們可以全身心的撲在一個(gè)有些寂寥和無(wú)聊的項(xiàng)目上,而且會(huì)一直支持很多年,只為堅(jiān)守其中的價(jià)值。還有如果在某個(gè)軟件堆棧中缺少了某一部分,他們隨時(shí)可以從頭開(kāi)始一個(gè)開(kāi)源項(xiàng)目,并圍繞它來(lái)構(gòu)建一個(gè)社區(qū)。他們甚至可以收購(gòu)一家閉源的公司,然后將項(xiàng)目再整個(gè)的開(kāi)源了(沒(méi)錯(cuò),可能很多讀者看到這里已經(jīng)猜到了說(shuō)的是哪家公司了,沒(méi)錯(cuò),這里的特性紅帽公司都擁有。)
簡(jiǎn)單總結(jié)一下,基于商業(yè)化的開(kāi)源模式就是這樣,項(xiàng)目由少數(shù)個(gè)人或公司正式或非正式的管理和控制著,這些個(gè)人或公司確保了項(xiàng)目的成功發(fā)布,而且有著商品化的能力,并有效的在回饋給開(kāi)源的生態(tài)。對(duì)于開(kāi)源開(kāi)發(fā)人員,管理公司和最終用戶來(lái)說(shuō),這是一個(gè)沒(méi)有輸家的美好格局。這可以很好的替代那些日薄西山且昂貴的閉源軟件!
自我供給,去中心化的開(kāi)源
毫無(wú)疑問(wèn),想要讓項(xiàng)目贏得好口碑,就得滿足一些人們的期望。舉例來(lái)說(shuō),Apache 軟件基金會(huì)和云原生計(jì)算基金會(huì)均需要孵化和畢業(yè)的過(guò)程,除了所有技術(shù)和形式要求之外,項(xiàng)目還必須擁有健康數(shù)量的活躍提交者和用戶。這些都是形成可持續(xù)發(fā)展開(kāi)源項(xiàng)目的關(guān)鍵。在 GitHub 上擁有源代碼與擁有一個(gè)活躍的開(kāi)源項(xiàng)目是有著本質(zhì)上的不同。一個(gè)活躍的開(kāi)源項(xiàng)目意指編寫(xiě)代碼的提交者和使用代碼的用戶,兩個(gè)組通過(guò)交換價(jià)值并形成一個(gè)每個(gè)人都受益的生態(tài)系統(tǒng)來(lái)不斷的螺旋式成長(zhǎng)。一些項(xiàng)目生態(tài)系統(tǒng)可能很小而且壽命很短,有些可能包含多個(gè)項(xiàng)目和競(jìng)爭(zhēng)服務(wù)提供商,其中非常復(fù)雜的交互持續(xù)多年。但只要有價(jià)值交換,每個(gè)人都從中受益,項(xiàng)目就會(huì)得到發(fā)展、維護(hù)和可持續(xù)。
我們來(lái)看下 Apache 軟件基金會(huì)的項(xiàng)目 Attic,該項(xiàng)目已經(jīng)完成了它的歷史使命,正在走入其生命周期中后面的階段。這是非常正常的現(xiàn)象:當(dāng)一個(gè)項(xiàng)目在技術(shù)上不再適合它的當(dāng)初的開(kāi)發(fā)目的時(shí),它通常會(huì)自然結(jié)束。同樣,在 ASF 的孵化基地,你會(huì)發(fā)現(xiàn)很多項(xiàng)目從未畢業(yè)但卻已經(jīng)退出了歷史舞臺(tái),通常情況下,這些項(xiàng)目無(wú)法構(gòu)建足夠大的社區(qū),要么因?yàn)樗鼈冞^(guò)于偏門(mén),要么是被更好的方案所替代。
但更多的情況是,具有高潛力技術(shù)的項(xiàng)目無(wú)法維系自身,因?yàn)樗鼈儫o(wú)法形成或維持一個(gè)有效的生態(tài)系統(tǒng)來(lái)進(jìn)行價(jià)值交換。目前的開(kāi)源模式以及基金會(huì)并沒(méi)有為開(kāi)發(fā)者提供一個(gè)獲得報(bào)酬或讓用戶獲知他們的請(qǐng)求的框架或機(jī)制,這樣的話,就沒(méi)有任何一方擁有共同的價(jià)值承諾。這樣的話,結(jié)果就是一些項(xiàng)目只能在商業(yè)的開(kāi)源環(huán)境中維持自身,在商業(yè)化的開(kāi)源中,公司充當(dāng)中間人的角色,并在開(kāi)發(fā)者和用戶之間進(jìn)行價(jià)值獲取。這還增加了另外一個(gè)局限且要求服務(wù)提供商的公司來(lái)維持一些開(kāi)源項(xiàng)目。這似乎離我們理想中的情況很是遙遠(yuǎn):用戶可以完整而直接的表達(dá)他們對(duì)項(xiàng)目的期望,開(kāi)發(fā)人員能夠以透明、可量化的方式來(lái)兌現(xiàn)他們對(duì)項(xiàng)目的承諾,這是一個(gè)具有共同利益和意圖進(jìn)行價(jià)值交換的社區(qū)。
現(xiàn)在各位看官可以想象一下,有這樣一個(gè)模式,它的工作機(jī)制和工具可以實(shí)現(xiàn)開(kāi)源用戶和開(kāi)發(fā)人員直接打交道。這不僅僅體現(xiàn)在諸如通過(guò)拉取請(qǐng)求來(lái)貢獻(xiàn)代碼、使用郵件列表發(fā)送問(wèn)題、GitHub 的星星數(shù)量、以及筆記本電腦上的貼紙,而且還體現(xiàn)在用戶有更多的方式、更加自控的、透明的行為來(lái)影響項(xiàng)目的走向。
該模型可包括對(duì)以下行為的激勵(lì):
- 直接為開(kāi)源項(xiàng)目提供資金,而不是通過(guò)軟件基金會(huì)
- 通過(guò)投票影響項(xiàng)目方向(通過(guò)代幣持有人)
- 由用戶需求驅(qū)動(dòng)的功能需求
- 及時(shí)的合并拉取請(qǐng)求
- 為提交缺陷者給予獎(jiǎng)勵(lì)
- 為更好的測(cè)試覆蓋率進(jìn)行獎(jiǎng)勵(lì)
- 獎(jiǎng)勵(lì)及時(shí)更新文檔者
- 及時(shí)的安全修復(fù)
- 專家協(xié)助、支持和服務(wù)
- 為項(xiàng)目的布道師和推廣者進(jìn)行合適預(yù)算
- 定期活動(dòng)的預(yù)算
- 更加快速的電子郵件和在線聊天幫助系統(tǒng)
- 全面了解整體項(xiàng)目的狀態(tài),等
聰明的看官可能已經(jīng)猜到了,沒(méi)錯(cuò),以上所談就是使用區(qū)塊鏈和智能合約,進(jìn)而實(shí)現(xiàn)最終用戶和開(kāi)發(fā)者之間的積極互動(dòng)。 智能合約可以讓代幣持有者擁有真實(shí)的權(quán)力來(lái)影響項(xiàng)目的走向。
上圖所示:在開(kāi)源生態(tài)系統(tǒng)中區(qū)塊鏈的應(yīng)用
目前現(xiàn)有的開(kāi)源生態(tài)系統(tǒng)中,采用非正常手段來(lái)影響項(xiàng)目的走向是可能做得到的,如服務(wù)提供商的財(cái)務(wù)承諾、通過(guò)基金會(huì)的較為有限的方式等。但是在開(kāi)源生態(tài)系統(tǒng)上增加基于區(qū)塊鏈的技術(shù)會(huì)為用戶和開(kāi)發(fā)者之間打開(kāi)一條新的通道,這么做并不是說(shuō)會(huì)取代商業(yè)的開(kāi)源模式;因?yàn)榇蠖鄶?shù)使用開(kāi)源的公司做了許多智能合約無(wú)法完成的事情。但是智能合約可以引發(fā)一種新型的開(kāi)源項(xiàng)目,為那些不堪重負(fù)的項(xiàng)目提供二次生命的機(jī)會(huì)。它可以激勵(lì)開(kāi)發(fā)者去認(rèn)領(lǐng)那些無(wú)聊的拉取請(qǐng)求、撰寫(xiě)文檔、測(cè)試程序代碼等等,在用戶和開(kāi)源開(kāi)發(fā)人員之間提供直接的價(jià)值交換渠道。即使公司支持不可行,區(qū)塊鏈也可以增加新渠道,幫助開(kāi)源項(xiàng)目增長(zhǎng),并在長(zhǎng)期內(nèi)實(shí)現(xiàn)自我維持。它可以為自我維持的開(kāi)源項(xiàng)目創(chuàng)建一個(gè)新的互補(bǔ)模型 —— 一種雙贏的模式。
通證開(kāi)源
其實(shí)已經(jīng)有許多旨在將開(kāi)源通證化的實(shí)現(xiàn)了,它們其中有一些是僅僅聚焦于開(kāi)源模式的,也有一些是更加通用的(也適用于開(kāi)源模式),以下是我收集的列表:
- GitCoin,在開(kāi)源成長(zhǎng)起來(lái)的,這是該領(lǐng)域最有前途的開(kāi)源項(xiàng)目之一。
- oscoin,針對(duì)開(kāi)源的加密貨幣。
- 開(kāi)放協(xié)作,一款支持開(kāi)源項(xiàng)目的平臺(tái)。
- FundYourselfNow,針對(duì)項(xiàng)目的眾籌和 ICO 平臺(tái)。
- Kauri,支持開(kāi)源項(xiàng)目文檔。
- Liberapay,經(jīng)常性的捐贈(zèng)平臺(tái)。
- FundRequest,針對(duì)開(kāi)源協(xié)作的去中心化市場(chǎng)。
- CanYa,最近被 Bountysource 收購(gòu)。
- OpenGift,開(kāi)源套現(xiàn)的新模式。
- Hacken,為 Hacker 們提供的白帽令牌。
- CoinLancer,一個(gè)去中心化的人力市場(chǎng)。
- CodeFund,一款開(kāi)源的廣告平臺(tái)。
- IssueHunt,為開(kāi)源維護(hù)者和貢獻(xiàn)者提供的募捐平臺(tái)。
- District0x 1Hive,眾包和策展平臺(tái)。
- District0x Fixit ,GitHub 缺陷懸賞系統(tǒng)。
這個(gè)列表在本文撰寫(xiě)之時(shí)仍然在增長(zhǎng)著,而且是蠻快速的那種,它們其中一些肯定會(huì)消失,也有一些會(huì)轉(zhuǎn)移目標(biāo),但是總有一些會(huì)融入到諸如 SourceForge、Apache 軟件基金會(huì)、以及 GitHub。這些平臺(tái)不會(huì)也沒(méi)有必要去取代這些平臺(tái),但是令牌模型是對(duì)這些平臺(tái)的很好補(bǔ)充,它可以讓開(kāi)源生態(tài)系統(tǒng)更加的豐富。每個(gè)項(xiàng)目都可以選擇其分發(fā)模型(許可證)、管理模型(基金會(huì))和激勵(lì)模型(令牌)。無(wú)論哪種,都會(huì)為開(kāi)源的世界諸如新鮮的血液!
開(kāi)放和去中心化的未來(lái)
- 軟件正在吞噬世界
- 每家公司都是軟件公司
- 開(kāi)源是創(chuàng)新的良田
事實(shí)就在眼前,開(kāi)源已經(jīng)發(fā)展到如此巨大的產(chǎn)業(yè),是不會(huì)輕易失敗的,而且開(kāi)源對(duì)于這個(gè)世界實(shí)在是太重要了。它是不可能被少數(shù)人所操縱,或者被世人所遺棄而自生自滅。開(kāi)源是一個(gè)對(duì)所有人都有價(jià)值的共享資源系統(tǒng),而且更要重要的是,它只能以這樣的方式來(lái)被管理,這個(gè)世界上所有的公司都希望自身在開(kāi)源擁有籌碼和發(fā)言權(quán),然而,頗為不幸的是,我們并沒(méi)有一種工具或者習(xí)慣來(lái)這么去做,我們對(duì)工具的期望是:這些工具將允許任何人表達(dá)他們對(duì)軟件項(xiàng)目的欣賞或忽視;它將在生產(chǎn)者和消費(fèi)者之間,開(kāi)發(fā)者和用戶之間創(chuàng)建直接而且更快的反饋循環(huán);它將促進(jìn)由用戶需求驅(qū)動(dòng)的雙創(chuàng)新模式,而且是通過(guò)令牌來(lái)進(jìn)行追蹤和衡量的。