谷歌为什登不上去github_我们分析了GitHub上5.46 亿条日志,发现中国开源虽然贡献大但还有这些不足......
全球最大代碼托管平臺(tái) GitHub 在 2019 年發(fā)布的年度報(bào)告中顯示, GitHub 上目前已有超過(guò) 4000 萬(wàn)開(kāi)發(fā)人員、將近 300 萬(wàn)個(gè)組織帳戶。其中來(lái)自中國(guó)的貢獻(xiàn)者數(shù)目?jī)H次于美國(guó),排名第二,中國(guó)的開(kāi)發(fā)者 fork 并 clone 的項(xiàng)目比往年增加 48%。
在開(kāi)源日益重要的今天,我們也需要一份建立在全域大數(shù)據(jù)基礎(chǔ)上得出的相對(duì)完整、可以反復(fù)進(jìn)行推演的數(shù)據(jù)報(bào)告(報(bào)告、數(shù)據(jù)、算法均需開(kāi)源)。因此,近日 InfoQ 聯(lián)合 X-lab 開(kāi)放實(shí)驗(yàn)室發(fā)布“GitHub 2019 數(shù)字年報(bào)”,通過(guò)對(duì) 2019 年 GitHub 上 5.46 億條日志進(jìn)行分析,展現(xiàn)目前開(kāi)源世界全貌,以及中國(guó)的開(kāi)發(fā)者和企業(yè)組織在整個(gè)開(kāi)源產(chǎn)業(yè)中的表現(xiàn)。
1宏觀統(tǒng)計(jì)結(jié)果X-lab 開(kāi)放實(shí)驗(yàn)室在本次報(bào)告中使用 2019 年全年 GitHub 日志進(jìn)行統(tǒng)計(jì),總?cè)罩緱l數(shù)約 5.46 億條,相較 2018 年的 4.21 億條增長(zhǎng)約 29.7%。
在對(duì)開(kāi)發(fā)者活躍度與項(xiàng)目活躍度統(tǒng)一定義下,統(tǒng)計(jì)得到 2019 年總活躍項(xiàng)目數(shù)量約 512 萬(wàn) 個(gè),相較 2018 年的約 313 萬(wàn) 增長(zhǎng)約 63.6%。值得關(guān)注的是,這其中僅有 1399 個(gè)項(xiàng)目的活躍度超過(guò)了 1000,占總項(xiàng)目數(shù)量不足萬(wàn)分之三。
2019 年總活躍開(kāi)發(fā)者數(shù)量約 360 萬(wàn),相較 2018 年的約 303 萬(wàn) 增長(zhǎng)約 18.8%。而參與開(kāi)發(fā)者數(shù)量超過(guò) 1000 人的項(xiàng)目?jī)H有 333 個(gè),可謂萬(wàn)里挑一。
這一數(shù)據(jù)結(jié)果說(shuō)明大多數(shù)項(xiàng)目還是處于低活躍、少參與的狀態(tài)。
對(duì)于這 512 萬(wàn) 個(gè)項(xiàng)目的活躍度分布,如下圖:
對(duì)于這 512 萬(wàn)個(gè)項(xiàng)目的活躍開(kāi)發(fā)者人數(shù)分布,如下圖:
2世界 Top 10 開(kāi)發(fā)者賬號(hào)我們對(duì) 2019 年全年活躍開(kāi)發(fā)者進(jìn)行了活躍度統(tǒng)計(jì)與排名,這里給出世界活躍度 Top 10 的開(kāi)發(fā)者賬號(hào)列表:
從數(shù)據(jù)統(tǒng)計(jì)來(lái)看,世界活躍度 Top 10 的開(kāi)發(fā)者賬號(hào)均為機(jī)器人賬號(hào),其中 7 個(gè)賬號(hào)為 GitHub App。這也可以看出開(kāi)發(fā)者最常使用的自動(dòng)化倉(cāng)庫(kù)管理、協(xié)作功能有哪些,主要集中在依賴更新、自動(dòng)同步上游、GitHub 學(xué)習(xí)、漏洞檢測(cè)等方面。
3世界 Top 10 項(xiàng)目根據(jù)項(xiàng)目活躍度定義,我們對(duì) 2019 年全年活躍項(xiàng)目進(jìn)行了活躍度統(tǒng)計(jì)與排名,這里給出世界活躍度 Top 10 項(xiàng)目的列表:
其中 996.ICU 作為一個(gè)現(xiàn)象級(jí)開(kāi)源項(xiàng)目,大家并不陌生。2019 年 3 月 到 4 月,中國(guó)程序員為抗議 996 工作制,在 GitHub 發(fā)布了一個(gè)名為 996.ICU 的項(xiàng)目,該項(xiàng)目短時(shí)間內(nèi)獲得超過(guò) 20 萬(wàn)顆星星,成為太陽(yáng)系最受歡迎的項(xiàng)目。
而活躍度最高的項(xiàng)目則是來(lái)自微軟的跨平臺(tái)代碼編輯器 Microsoft/vscode;此外微軟使用開(kāi)源的方式來(lái)建設(shè)其 Azure 云平臺(tái)的項(xiàng)目 MicrosoftDocs/azure-docs 排名第三,顯然微軟在開(kāi)源上的努力獲得了程序員的認(rèn)可。
在這個(gè) TOP10 排名中,涉及了三個(gè)來(lái)自谷歌的項(xiàng)目,分別是:前端跨平臺(tái)開(kāi)發(fā)框架 Flutter、容器編排系統(tǒng) Kubernetes 以及深度學(xué)習(xí)框架 TensorFlow,這也進(jìn)一步說(shuō)明谷歌在開(kāi)源上的努力和影響力獲得業(yè)內(nèi)的認(rèn)可。
4中國(guó) Top 20 項(xiàng)目分析針對(duì)所有排名項(xiàng)目,我們也篩選出了中國(guó) Top 20 的開(kāi)發(fā)者項(xiàng)目,列表如下:
從 Top 20 列表信息中我們可以看出,996icu/996.ICU 的綜合活躍度數(shù)值遠(yuǎn)遠(yuǎn)高于其他項(xiàng)目,數(shù)值上超過(guò)其他項(xiàng)目一個(gè)數(shù)量級(jí)。
列表中另外兩個(gè)比較有趣的項(xiàng)目分別是 selfteaching/selfteaching-python-camp 和 Advanced-Frontend/Daily-Interview-Question,這兩個(gè)項(xiàng)目的活躍排名是第 4 和第 13,分別對(duì)應(yīng)了教育和面試求職兩個(gè)領(lǐng)域。這側(cè)面反映出開(kāi)發(fā)者對(duì)這兩個(gè)領(lǐng)域的需求和關(guān)注度非常高。
從這個(gè)列表中我們還發(fā)現(xiàn),在中國(guó)開(kāi)源成績(jī)比較突出的兩家公司是百度和阿里。百度的深度學(xué)習(xí)平臺(tái) PaddlePaddle 占據(jù)了兩個(gè)項(xiàng)目,分別是核心框架 Paddle 和模型庫(kù) Models;此外開(kāi)放自動(dòng)駕駛平臺(tái) Apollo 也榜上有名。另外,由百度貢獻(xiàn)的數(shù)據(jù)可視化項(xiàng)目 ECharts 在 2018 年進(jìn)入 Apache 孵化器,此次榜單中 ECharts 排名 11。
咱們?cè)賮?lái)看看阿里,阿里“服務(wù)于企業(yè)級(jí)產(chǎn)品設(shè)計(jì)體系” 的 Ant-Design,是螞蟻金服采用 React 封裝的一套組件庫(kù),在中國(guó)范圍內(nèi)屬最活躍的開(kāi)源項(xiàng)目,排名第二。上榜的基于 Java 的 RPC 框架 Dubbo,也在今年成為 Apache 頂級(jí)項(xiàng)目。另外上榜的阿里項(xiàng)目還包含動(dòng)態(tài)服務(wù)發(fā)現(xiàn) Nacos。
在中國(guó)的 Top 20 列表中,我們發(fā)現(xiàn)前端項(xiàng)目幾乎占據(jù)了一半,包括阿里的 Ant-Design 組件庫(kù),由餓了么(已被阿里收購(gòu))前端團(tuán)隊(duì)開(kāi)源的 Vue UI 組件庫(kù) Element,由有贊基于 Vue 構(gòu)建的移動(dòng) UI 組件庫(kù) Vant 等等。這說(shuō)明在國(guó)內(nèi),前端群體在社區(qū)更為活躍;另外前端代碼一般也不太涉密,因此公司在心態(tài)上更開(kāi)放一些。不過(guò)這其中也有一點(diǎn)需要引起注意,上榜的前端項(xiàng)目組件庫(kù)居多,但是缺少核心項(xiàng)目。
5repo 協(xié)作關(guān)系圖針對(duì)排名前 20 的中國(guó)開(kāi)源項(xiàng)目,我們對(duì)倉(cāng)庫(kù)的歷史 commits 記錄進(jìn)行挖掘,并做了可視化展示(藍(lán)色節(jié)點(diǎn)代表倉(cāng)庫(kù)文件,紅色節(jié)點(diǎn)代表用戶)。Git 倉(cāng)庫(kù)中的每一個(gè) commit 記錄由貢獻(xiàn)者產(chǎn)生,對(duì)倉(cāng)庫(kù)的一個(gè)或者多個(gè)文件產(chǎn)生影響,因此對(duì)特定時(shí)段內(nèi)的所有貢獻(xiàn)者的提交記錄分析能反映出貢獻(xiàn)者的活躍程度、協(xié)作模式以及項(xiàng)目社區(qū)本身的類型屬性。
從可視化的關(guān)系圖來(lái)看,996.ICU 項(xiàng)目從 3 月份開(kāi)始出現(xiàn)提交記錄,且 3、4 兩個(gè)月份最為活躍,之后熱度開(kāi)始消減。該項(xiàng)目圖中存在一個(gè)主要貢獻(xiàn)者 n_996Icu,和另一個(gè)相對(duì)較大的用戶節(jié)點(diǎn)機(jī)器人賬戶 ImgbotApp 。
996 .ICU 全年貢獻(xiàn)圖
從 TiDB 項(xiàng)目的內(nèi)容貢獻(xiàn)圖來(lái)看,整個(gè)社區(qū)存在多個(gè)核心維護(hù)者,他們各自維護(hù)著不同的模塊,周邊也有大量的開(kāi)發(fā)者在做出貢獻(xiàn)。其背后的企業(yè) PingCAP ,是業(yè)界非常典型的開(kāi)源企業(yè),他們的協(xié)作模式是所有開(kāi)發(fā)人員通過(guò) GitHub 進(jìn)行協(xié)作。
TiDB 2019 全年貢獻(xiàn)圖
以 Vuejs 下的兩個(gè)項(xiàng)目 vue-cli 和 vue 為例,在 vuejs/vue-cli 項(xiàng)目中,從每月貢獻(xiàn)圖可以看出該項(xiàng)目的大部分貢獻(xiàn)由 Haoqun Jiang 做出,單月的主要貢獻(xiàn)者不超過(guò)兩名。
Vuejs/Vue 大部分貢獻(xiàn)都是由一個(gè)賬號(hào) Evan You 尤雨溪做出的,該項(xiàng)目 4 月份之后內(nèi)容貢獻(xiàn)圖呈現(xiàn)出許多協(xié)作孤島的形態(tài),反映出貢獻(xiàn)者對(duì)少量文件的修改,項(xiàng)目變動(dòng)不大。
Vue 3 月和 4 月內(nèi)容貢獻(xiàn)圖
6開(kāi)發(fā)語(yǔ)言分析我們分別對(duì)世界項(xiàng)目活躍度 Top 1000 的項(xiàng)目、世界項(xiàng)目參與人數(shù) Top 1000 的項(xiàng)目和中國(guó)開(kāi)源項(xiàng)目統(tǒng)計(jì)了不同開(kāi)發(fā)語(yǔ)言的項(xiàng)目數(shù)量以及使用不同開(kāi)發(fā)語(yǔ)言進(jìn)行 PushEvent 操作的開(kāi)發(fā)者的數(shù)量,二者相乘估計(jì)使用不同開(kāi)發(fā)語(yǔ)言的開(kāi)發(fā)者的數(shù)量,可以發(fā)現(xiàn) JavaScript 使用最多。
原因我們分析如下:
JavaScript 是一門直接被嵌入到 HTML 中的腳本語(yǔ)言,是一門可以被 Web 瀏覽器理解的語(yǔ)言。它無(wú)需編譯、在瀏覽器環(huán)境可以直接運(yùn)行的特性,讓 JavaScript 項(xiàng)目在活躍度的提升上占據(jù)了優(yōu)勢(shì)。
谷歌開(kāi)發(fā)的 Angular 和 Facebook 開(kāi)發(fā)的 React,另外還有 Vue,這些主流前端框架都是 JavaScript 生態(tài)圈中的一部分。
這幾年隨著行業(yè)的發(fā)展,JavaScript 變得幾乎”無(wú)所不能“,現(xiàn)在基本所有的主流互聯(lián)網(wǎng)應(yīng)用,其前端都有大量的 JavaScript 代碼。比如我們?nèi)粘J褂玫泥]件、社交工具等等。
此外,全球項(xiàng)目活躍度 Top1000 和全球項(xiàng)目參與人數(shù) Top 1000 的項(xiàng)目中,Python 的使用居于第二位,可能是因?yàn)?#xff1a;
Python 相較于其他主流編程語(yǔ)言具有更好的可讀性,簡(jiǎn)單易學(xué)、易于維護(hù)。
Python 應(yīng)用范圍廣,它自帶的各種模塊加上豐富的第三方模塊,免去了很多“重復(fù)造輪子”的工作,可以更快地實(shí)現(xiàn)多種功能。
人工智能的浪潮進(jìn)一步推動(dòng)了 Python 的發(fā)展,很多人工智能任務(wù)以及大數(shù)據(jù)分析都會(huì)優(yōu)先使用 Python 實(shí)現(xiàn)。
在中國(guó)開(kāi)發(fā)者社區(qū)中,我們發(fā)現(xiàn)除了 JavaScript 外,Java 和 Go 的活躍度也很高,分別排在第二、第三。
我們認(rèn)為:在服務(wù)器和移動(dòng)端開(kāi)發(fā)上,Java 還沒(méi)有真正意義上的對(duì)手,可以預(yù)見(jiàn) Java 依舊是企業(yè)軟件、大數(shù)據(jù)、電商... 最核心的技術(shù)棧。Go 是谷歌開(kāi)發(fā)的新一代編程語(yǔ)言,在過(guò)去的幾年里取得了很大的成功。現(xiàn)代的云端、網(wǎng)絡(luò)和 DevOps 軟件的很大一部分都是用 Go 編寫的,例如 Docker、Kubernetes、Terraform、etcd、Istio 等項(xiàng)目。許多公司也將它用于通用場(chǎng)景下的開(kāi)發(fā)工作,Go 語(yǔ)言中國(guó)社區(qū)也極具活力。
對(duì)比全球的開(kāi)發(fā)語(yǔ)言排行榜,我們發(fā)現(xiàn)中國(guó)開(kāi)源項(xiàng)目中 Python 的使用與 Java、Go、C++ 相比較少。另外還值得關(guān)注的是,Ruby 和 PowerShell 在中國(guó)社區(qū)也并不受重視。
7國(guó)內(nèi)技術(shù)公司開(kāi)源項(xiàng)目一覽其實(shí)各大開(kāi)源項(xiàng)目的背后,基本都有科技公司的支持,我們給出了一個(gè)科技公司維護(hù)的 GitHub 組織和項(xiàng)目列表,并根據(jù)該列表,計(jì)算出了科技公司所維護(hù)的開(kāi)源項(xiàng)目在 2019 年的活躍情況與開(kāi)發(fā)者參與情況,結(jié)果如圖:
在國(guó)內(nèi)企業(yè)的開(kāi)源數(shù)據(jù)中,我們可以看到阿里的數(shù)據(jù)幾乎在所有類別里都名列第一,有時(shí)甚至是其它公司之和,并且在社區(qū)化 / 開(kāi)放等方面也做得不錯(cuò)。但放到全球角度,出自阿里的知名度相對(duì)較高的項(xiàng)目,還是 Apache Dubbo,以及在 2019 年收購(gòu)而來(lái)的大數(shù)據(jù)流處理框架 Flink。2019 年 9 月在杭州的云棲大會(huì)上,阿里宣布賈揚(yáng)清正式擔(dān)任阿里巴巴開(kāi)源技術(shù)委員會(huì)負(fù)責(zé)人,開(kāi)源將明確升級(jí)為阿里技術(shù)戰(zhàn)略之一。
AI 是百度開(kāi)源最鮮明的競(jìng)爭(zhēng)力,比如 PaddlePaddle 和自動(dòng)駕駛平臺(tái) Apollo。PaddlePaddle 也是當(dāng)前國(guó)內(nèi)唯一開(kāi)源開(kāi)放的深度學(xué)習(xí)平臺(tái)。
華為在 2019 年也做了不少開(kāi)源的工作,推出了原生數(shù)據(jù)庫(kù) GaussDB 以及鴻蒙 OS 等,一改保守作風(fēng)。
而騰訊 2019 年也對(duì)外宣布”已在 Github 上開(kāi)源了 86 個(gè)項(xiàng)目,超過(guò) 1000 個(gè)貢獻(xiàn)者參與了開(kāi)源貢獻(xiàn),擁有超過(guò) 25 萬(wàn)個(gè) Star 數(shù),騰訊在 Github 全球公司貢獻(xiàn)榜上排名前十“。
可以看出,各大企業(yè)近年來(lái)均在不斷加大開(kāi)源社區(qū)生態(tài)建設(shè)。
8展望2019 年的 Github 曾一度被推到風(fēng)口浪尖。2019 年 5 月,ASF 和 GitHub 官網(wǎng)先后更新了兩則消息,表明其旗下的項(xiàng)目、產(chǎn)品將受到美國(guó)出口法律的約束。
2019 年 7 月,GitHub 封禁部分國(guó)家、地區(qū)的開(kāi)發(fā)者賬號(hào),導(dǎo)致這些賬戶無(wú)法創(chuàng)建私有庫(kù),并且關(guān)閉了已經(jīng)創(chuàng)建的私有庫(kù)。這些開(kāi)發(fā)者并未得到提前通知,沒(méi)有任何緩沖備份時(shí)間。當(dāng)時(shí)還有消息稱 GitHub 將采取實(shí)名制,以便于執(zhí)行美國(guó)貿(mào)易制裁。
2019 年 12 月,據(jù)《金融時(shí)報(bào)》消息稱,GitHub 正計(jì)劃采取“分階段的方式”,考慮在中國(guó)設(shè)立一家外商獨(dú)資子公司,以便探索在中國(guó)建立合資企業(yè)和托管 GitHub 內(nèi)容的可能性。
這些事件也給我們敲響了警鐘,我們不僅需要擁有自己的核心技術(shù),同樣,我們也需要有自己的代碼托管平臺(tái)。這些也是中國(guó)企業(yè)和開(kāi)源社區(qū)正不斷努力的方向。
附錄:原文地址:https://github.com/X-lab2017/github-analysis-report-2019/blob/master/REPORT.md分析程序:https://github.com/X-lab2017/github-analysis-report-2019參考文獻(xiàn):GitHub 官方 2019 年度報(bào),?https://octoverse.github.com/中國(guó)開(kāi)源年度報(bào)告,?https://kaiyuanshe.cn/project/china-open-source-report/中國(guó)開(kāi)源項(xiàng)目 Grank 分析報(bào)告(2019),?https://linux.cn/article-11755-1.html徐川,覃云:中國(guó)互聯(lián)網(wǎng)公司開(kāi)源項(xiàng)目調(diào)研報(bào)告, https://www.infoq.cn/article/G4O6JUhJF*Tsv9eWM0L6云計(jì)算開(kāi)源產(chǎn)業(yè)聯(lián)盟,開(kāi)源產(chǎn)業(yè)白皮書(2019),2019 云計(jì)算開(kāi)源產(chǎn)業(yè)大會(huì), 北京.Gitee 2019 年度數(shù)據(jù)報(bào)告,?https://blog.gitee.com/2020/01/08/gitee-2019-annual/作者介紹
“GitHub 2019 數(shù)字年報(bào)”由 InfoQ 聯(lián)合 X-lab 開(kāi)放實(shí)驗(yàn)室共同發(fā)布。X-lab 開(kāi)放實(shí)驗(yàn)室是一群由來(lái)自華東師范大學(xué)、同濟(jì)大學(xué)的師生所構(gòu)成的開(kāi)放創(chuàng)新共同體,專業(yè)背景包括計(jì)算機(jī)科學(xué)、數(shù)據(jù)科學(xué)及其相關(guān)跨學(xué)科,長(zhǎng)期思考并實(shí)踐教育與開(kāi)源兩大主題。本次數(shù)字年報(bào)的主要貢獻(xiàn)者包括:趙生宇、王偉、周添一、范家寬、王皓月、夏小雅、吳紹嶺、林海銘、李苗進(jìn)、吳佳潔、黃立波、陳亮、楊尚輝、方孝君、陳旭剛等。
推薦閱讀
▽
《如果新型肺炎下只能遠(yuǎn)程辦公?我們?cè)撟鲂┦裁?#xff1f;》
點(diǎn)擊在看,為中國(guó)開(kāi)發(fā)者打Call▽
總結(jié)
以上是生活随笔為你收集整理的谷歌为什登不上去github_我们分析了GitHub上5.46 亿条日志,发现中国开源虽然贡献大但还有这些不足......的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: flink source 同步_如何生成
- 下一篇: 电脑wifi不见了_大家好,我是来给你家