如果有人給你這樣的訊息:“在全球最大的代碼託管平台 GitHub 上,總計超過 8 萬 6000 個區塊鏈項目中,目前有超過 90% 的項目已經不再活躍,死於分叉的項目更是達到 95%,項目平均壽命僅為 1.22 年”。你是否開始產生了具體的認知?
這些數字來自知名諮詢機構勤業 (Deloitte) 近期根據全球最大的代碼託管平台、開原代碼平台 GitHub 上的數據出爐的一份統計報告。研究數據來源於代爾夫理工大學 (Delft University of Technology) 所記錄的 GitHub 公開活動的數據庫和 GitHub 的 API。這份題為《區塊鏈技術的發展 — 從 GitHub 平台的視角分析》的報告為區塊鏈發展狀態的研究提供了一個非常特殊的視角。
為何說是一個特殊的視角?因為區塊鏈技術的核心是“去中心化”,“開源”的概念與“去中心化”不謀而合。實際上,包括區塊鏈技術的最大規模應用 — 比特幣在內,大多數有影響力的區塊鏈項目都選擇了開源。而 GitHub 便是這些項目的首選平台。
此外,區塊鏈技術的應用也隨時間在不斷擴展,如何在最基礎的區塊鏈技術上打造出真正的應用這件事,需要很多人的共同努力, GitHub 能幫助開發者降低開發成本。於是,聚集了區塊鏈技術人才的 GitHub ,自然成了反映整個區塊鏈技術生態的最佳平台。
那麼,究竟區塊鏈項目在 GitHub 上面是什麼狀態?從中我們又可以看到目前區塊鏈技術什麼趨勢?
在這份報告中,你可以瞭解到:
- 區塊鏈項目和社區的變化
- 區塊鏈的程式設計語言使用情況
- 區塊鏈研究人才的地域分佈
區塊鏈項目和社區的變化
(ㄧ) 區塊鏈項目的總體發展情況
2009 年 4 月,支撐比特幣運行的核心代碼在 GitHub 上公佈,從那以後, GitHub 上有關區塊鏈的項目就飛速成長。
下圖顯示了 GitHub 上每年項目的新增情況。藍線表示的是個人項目,橙線表示組織機構的項目,綠線則表示整體情況。
下圖則顯示了倉庫總數的變化情況 (註:勤業的研究主要針對 GitHub 的倉庫數據進行,所謂倉庫,就是存儲項目所有相關的代碼和文件的地方,在本報告中“倉庫”和“項目”代表同一含義。) 。在 2012 年之前,區塊鏈項目倉庫的數量成長緩慢,而到了 2012 年之後倉庫數出現了明顯增加,尤其是個人項目的代碼倉庫。
目前, GitHub 上有關區塊鏈的項目有 8 萬 6034 個,每年平均成長 8600 個新項目。僅 2016 年就增加了約 2 萬 7000 個新項目。但是只有 8% 的項目是活躍的,分叉之後的項目中,只有 5% 的項目繼續生存。這些項目的平均延續時間只有 1.22 年。
GitHub 上區塊鏈項目的年度變化如下圖所示,其中綠色部分為組織機構的項目,藍色部分為個人項目。
可見,隨著時間的推移,越來越多的組織機構參與到了區塊鏈的技術發展中來。在 2010 年,只有不到 1% 的項目是由組織機構擁有的,而到了 2017 年,這一比例增加到了 11%。這些組織機構的項目甚至扮演著更重要的角色,一些項目已經成為了真正的平台,例如以太坊、Ripple 等。
在 GitHub ,一些經常被其他項目複製的項目被稱為“中心項目”,許多中心項目都是有組織機構開發和維護的,例如比特幣的核心代碼、以太坊的 C++ 和 Go 語言實現等。
總體而言,這些由組織機構開發和維護的項目是區塊鏈項目的發展主力。
比起個人項目,組織機構公佈的項目有著更明確的需求和目標,因而他們的項目就天然受到了更多的關注,從而主導了區塊鏈技術的發展。此外,這些組織機構也往往不只擁有一個項目,多個項目的進行也推動了區塊鏈技術的發展。
(二) 區塊鏈的發展離不開“社區”
該研究觀察了 772 個區塊鏈社區,發現,每個社區,都是由項目之間的合作產生的新應用而形成的。例如,以太坊最初只是由比特幣項目中的兩個核心人物發展過來的。
在區塊鏈的世界裡,一個項目社區至少包含了 25 個項目,有一些大的社區則包含幾百個項目。
一個專門的成熟社區將會產生特定的新項目。例如,一些開發支持 Crowdsales 和 ICO 的工具的項目通常是與某些大型的區塊鏈子項目相關聯的,如:智慧合約的內容開發項目、記帳帳戶的開發項目等。
即便是一些相關性並不是很大的項目也會相互聯繫,門羅幣雖然在隱私保護水平、安全性上與比特幣都有不同,但是,與門羅幣有關的社區或項目卻常常與比特幣相關。
以下三張圖顯示了在引用、合作、和相互關注三個角度下,項目之間的聯繫。其中陳色的圓形代表組織機構的項目,而藍色圓形代表個人項目。圓形越大,表示該項目影響力越高。
個人項目和組織機構項目之間的引用關係。
個人項目和組織機構項目合作的關係圖。
個人項目和組織機構項目的相互關注關係圖。
勤業認為,許多真正地讓區塊鏈系統豐富起來的的行業或應用項目,讓整個區塊鏈系統有了越來越緊密的聯繫。
(三) 區塊鏈項目存活情況
存在與開源項目中一個殘忍的事實是,大部分的項目最終難逃被丟棄或者永遠無法達到目標的厄運。區塊鏈項目也是如此,研究發現,只有 8% 的項目是活躍的 (在過去的六個月中有更新) ,7% 的個人項目是活躍的,15% 的組織機構項目是活躍的。
在 GitHub 上,有 90% 的區塊鏈項目都是閒置的,許多項目在項目開始不到 6 個月內就宣告“死亡”了。這中情況主要受以下三個因素影響:
- 個人開發的項目的“壽命”都較短,並且都是作為獨立的區塊鏈技術應用,並不是一個能夠支持構建多種應用的基礎的技術庫。
- 單個成員進行的大中型項目“死亡率”都很高,因為他們難以集中精力在一個方向上。而團隊執行的項目“存活率”相對較高,因為他們比較專注。
- 分叉得多的項目“存活率”高,分叉得少的項目“死”得快。而分叉出來的項目副本由於沒有關注度,沒有新的參與者加入並更新,也容易中斷和“死亡”。
區塊鏈的程式設計語言使用情況
下圖顯示區塊鏈技術剛開始興起之時,Python、Ruby 和 JavaScript 是最受歡迎的程式語言。
而到了 2017 年,JavaScript、Python、Go、C++ 則成為了最受歡迎的幾種程式語言。
雖然 C++ 不是最受歡迎的語言,但是,在 GitHub 的區塊鏈核心項目中,C++ 是用得最多的語言。
另外,由 Google 於 2009 年開發的 Go 語言獲得越來越高的影響力。在 2015 年,只有不到 2% 的項目代碼是用 Go 語言完成的,現在,Go 語言已經成為了 GitHub 區塊鏈相關項目中第二大程式語言。
區塊鏈研究人才的地域分佈
該報告還分析了區塊鏈研究人才的分佈情況。大部分的 GitHub 項目持有者分佈在北美或者歐洲地區。從城市的角度上看,美國舊金山的相關人才最多,其次是兩個傳統金融中心:倫敦和紐約。北京排名第四,有 567 個個人項目和 17 個組織機構項目,緊接著是上海,有 390 個個人項目,12 個組織機構項目。北京和上海兩座城市的項目,主要是屬於加密貨幣和貨幣兌換的。
以下三張圖也展示了區塊鏈技術的地域發展演變情況,一開始, GitHub 上只有美國用戶上傳了區塊鏈的項目相關代碼和文件。
到了 2011 年,北美、歐洲、亞洲都有了越來越多的區塊鏈相關項目。2015 年,區塊鏈技術漸漸向全球範圍內擴展開來。到了 2017 年,世界上的大部分國家都有了區塊鏈的項目。但主要還是集中在北美、歐洲和亞洲。
最後,在比特幣的該報告提到了金融服務公司的一些表現,從公開的訊息上看,在 GitHub 上,並沒有許多的金融服務公司的員工對區塊鏈的項目進行更新,但是有一些金融服務公司則以公司的品牌的名義在 GitHub 上託管區塊鏈相關項目,並且有很高的活躍度。但具體有多少金融服務的公司是關注區塊鏈技術發展的,則不得而知。
總結
區塊鏈技術自誕生以來,就受到了研究者的關注,全球相關項目逐年成長,但是可惜,大量的項目最終都閒置了,尤其是個人項目,一些組織機構的項目成為了發展的主力。相關聯項目組成的社區也在影響著新項目的出現,同時也讓項目之間有了更多的聯繫。
隨著時間的發展,區塊鏈技術使用的程式語言也在發生變化。在地域上,北美是最早出現區塊鏈技術的地區,歐洲和亞洲緊隨其後,並最終集中在這幾個地區。 GitHub 上的趨勢,在一定程度上說明了全球區塊鏈技術的發展趨勢。
《新芽》授權轉載
【延伸閱讀】