GitHub 最近發佈了 2019 年度報告。一年以來,GitHub 用戶增加十分迅猛,新增了一千萬用戶,如今總共有超過四千萬用戶。在過去一年,GitHub 用戶新建了四千四百多萬倉庫,合併了八千七十多萬 pr,關閉了二十多萬 issue。react
在四千多萬用戶中,大約有十分之一用戶是活躍用戶(在公開或私有項目上發佈過代碼、提交過 issue、評論過 pr 和 issue 的用戶)。這些活躍用戶在過去一年的增加也是十分迅速,特別是亞洲、歐洲、北美。這應該是由於大多數 IT 行業的從業者在這些地區居住。git
在 GitHub 的用戶中,2019 年有超過二百五十多萬用戶爲開源項目作出貢獻。GitHub 上爲開源項目作貢獻的用戶數增加也很迅速,特別是美國之外的用戶,增加尤其突出。github
如上所述,亞洲、歐洲、北美的活躍用戶最多,增速最快。在這三者之中,亞洲尤其突出。而亞洲的活躍開發者,有 31% 是中國開發者。從不一樣國家和地區開源項目的使用量(克隆、分叉數)上來看,中國也是一騎絕乘。express
被微軟收購後,不差錢的 GitHub 推出了免費的私有倉庫,全球各地的開發者對此十分歡迎,甚至包括身處南極洲的開發者。自 2019 年 1 月推出以來,美國之外的開發者建立了 80% 的免費私有倉庫。亞洲地區的開發者建立了 36%,其中大部分是由印度、中國和日本的開發者所建立。npm
今年有 35 萬人爲前 1000 個項目(按 star 排序)作出了 500 萬以上的貢獻。130 萬開發者首次爲開源項目作出貢獻。編程
開發者經過軟件組成了一個愈來愈緊密聯繫的社區。在庫的依賴關係中這一點體現得尤其明顯,一個庫可能被數百萬個項目依賴。react-native
每一個語言生態系統(JavaScript,Python,Ruby 等)中排名前 50 位的開源包都被數量衆多的項目依賴。因爲 JavaScript 社區更青睞粒度較小的包,流行的 npm 包的平均直接貢獻者可能少於 40 人,但仍可能被數百萬項目依賴。安全
每種包管理器排名前 50 的包 | 平均被依賴數 | 平均直接貢獻者 | |
---|---|---|---|
Maven | 167k | 99 | |
pip | 78k | 204 | |
npm | 3.5m | 35 | |
NuGet | 94k | 109 | |
RubyGems | 737k | 146 |
被最多項目依賴的十大開源軟件包中,位列前三的 [lodash]、[express]、[debug] 都各自被超過四百萬個項目依賴。在以前的表格中咱們已經見識過 top 50 npm 包鶴立雞羣的平均被依賴數。因此,絕不意外,這十大開源軟件包都源自 npm。框架
讓咱們暫時告別 JavaScript 社區,看下 Python 社區的明星項目 TensorFlow。TensorFlow 向咱們展現了開源項目如何鏈接更大的軟件社區。依賴 Python 軟件包的項目的社區貢獻者平均數量約爲 1.9 萬。TensorFlow 的社區也不例外。成千上萬的人爲其依賴作出了貢獻,包括 numpy、pytest 等。機器學習
GitHub 上的開源項目正在不斷髮展,今年建立的開源項目佔 GitHub 上全部開源項目的 30%。
跨語言、跨平臺構建應用程序和網站的工具包和框架在今年的增加很快。2018 年 12 月發佈 1.0 版本的 [flutter] 2019 年在貢獻者最多的項目中位列第三,在增加最快的開源項目中位列第二。[react-native] 也在貢獻者最多的項目中位列第六。
在上面這個最多貢獻者項目榜單中位列第一的 [vscode] 從 2016 年起就是這個榜單的常客。這個微軟開源的代碼編輯器,既輕量又強大,贏得了使用各類語言的衆多開發者的歡心。2019 年新登上最多共享者項目排行榜前十的項目,除了以前提到過的 flutter,還有 [first-contributions] 和 [home-assistant] 兩個項目。first-contributions 是供 Git 初學者練手的項目,而 home-assistant 則是基於 Python 開發的開源智能家居方案。
最受歡迎語言 top 10 排行榜中,年度使用人數最多的編程語言仍然是 JavaScript,連續 6 年穩坐第一!另外,藉着數據科學和人工智能的東風,Python 首次戰勝 Java,成爲 GitHub 上使用人數第二多的編程語言。實際上,不單單是 Python,「深度學習」、「天然語言處理」、「機器學習」等主題的項目正變得愈來愈流行。從 2016 年到 2019 年,Jupyter Notebook 的使用量同比增加超過 100%。 NTLK 之類下降 NLP 入門門檻的工具包的使用量增加趨勢也與此相似。此外,C# 和 Shell 在過去一年增加迅速。
以前提到 flutter 2019 年在貢獻者最多的項目中位列第三,在增加最快的開源項目中位列第二,因此 Dart 成爲增加最快的語言也就不足爲奇了。Rust、Kotlin、TypeScript 等注重類型安全和互操做性的靜態類型語言發展勢頭也十分喜人。
2019 年,愈來愈多的人成爲開發者,開發者社區愈來愈國際化,開源軟件的生態愈來愈繁榮,古老的語言和嶄新的框架交相輝映。讓咱們以 GitHub 2019 年度報告的最後一句話結束本文:
你正建立代碼、社區、工具、技術,它們將是將來若干年驅動咱們世界前行的動力。
本文圖片和數據來自 GitHub 2019 年度報告,解讀僅供參考。