2019 年中國開源年度報告(資料篇)

開源社發表於2020-01-07

資料篇 - Grank 分析

本報告中收錄的是 Linux 中國發布的《中國開源專案 Grank 分析報告(2019)》的簡化版本,此處略。

資料篇 - Gitee 分析

Gitee.com 是開源中國旗下的程式碼託管平臺,自 2013 年推出至今,已有超過 400 萬開發者使用者。我們對託管在 Gitee 的開源專案進行了統計分析,梳理和解讀程式語言、功能分佈的變化趨勢,分析開發者在 Gitee 參與開源的情況,以期為觀察國內開源的演進提供一個“本土平臺”視角。

一、趨勢與分佈

1.1 程式語言趨勢

2019 Gitee 最受歡迎程式語言 TOP 10

2019 年中國開源年度報告(資料篇)

  • Java 和 JavaScript 佔據前兩位,與去年排名一致,但 Java 開源專案佔比小幅下降,而 JavaScript 開源專案佔比有小幅上升。 結合下跌 4 位、排在第 10 的 Android 來看(Android 嚴格而言不是程式語言,本質上反映的主要是 Java 與 Kotlin 語言),Java 佔比小幅下降可能與谷歌今年的 Kotlin First 戰略有關,現在,如果開發 Android 應用,Kotlin 成為了與 Java 一樣的一級語言,這或許分流了一部分 Java 開發者。

  • Android 的整體下跌可能與 Kotlin 剛剛大規模進入 Android 開發者視野有關,畢竟專案從 Java 遷移到 Kotlin,或者開發者從 Java 切換到 Kotlin 來開發新專案都需要一些成本。但更主要是受到了近兩年爆發的大前端趨勢的影響。微信小程式、百度智慧小程式、阿里小程式(支付寶、釘釘等)、快應用、混合、PWA 與 WebAssembly 等各種大前端技術在 2019 年爭相進入落地期,催生出各種跨端方案,使得大前端熱鬧異常。聚焦到移動開發,由於這些技術解放了對底層平臺的限制,移動開發不再侷限於 Android 與 iOS 這樣的特定端,許多開發者不再需要開發“移動 app”,直接用跨端框架開發“小程式”不僅更加便捷,對企業而言也是能夠大幅降低研發和運維成本的價效比之選。同時,經濟形勢放緩、網際網路寒冬也是 Android 開發的“式微”的一個背景原因。

  • Python 今年上升一位,首次進入前三,反映出人工智慧持續升溫,在 2019 獲得更多程式設計師認可。C++ 佔比上升兩位,雖然 Rust 今年大火,但當前底層基礎設施性質的專案以及區塊鏈、比特幣等新興基礎專案主要還是使用 C/C++。

  • Golang 首次進入前十,這與近年來雲原生、容器化火爆不無關係。

2019 Gitee 增速最快程式語言 TOP 10

2019 年中國開源年度報告(資料篇)

  • 隨著 Google 的 Flutter 框架的火熱,Dart 語言受到廣泛關注和使用,增速超過 250%。今年 Flutter 釋出了迄今為止最重大的版本,一舉成為多平臺框架,支援移動、Web、桌面與嵌入式裝置;而 Dart 也在與 C 的互操作、UI 構建和預編譯本地可執行程式等特性上大幅改進。

  • 注重高效、安全與並行的系統級程式語言 Rust 受到越來越多開發者的關注和使用。值得一提的是,國內目前並沒有太多特別優秀的 Rust 落地實踐,這可能與 Rust 語法晦澀難懂、學習曲線過於陡峭有關。但 Rust 是一門極具潛力的語言,並且獲得了微軟、谷歌等大廠的大力支援,未來可期。已有 Rust 開源專案的成長同樣值得期待,比如內嵌式 Docker ——Rocker,針對基於 Linux 的資源受限的 IoT 系統,旨在提高其資源利用率和系統安全性,避免額外的效能開銷。

  • MATLAB 已連續兩年以超過 130% 的速度增長,MATLAB 應用範圍非常廣,包括訊號和影象處理、通訊、控制系統設計、測試和測量、財務建模和分析以及計算生物學等眾多應用領域。

  • TypeScript 穩紮穩打,目前是 JavaScript 中最受歡迎的方言,這與幾大 TS 編寫的前端框架在大前端領域的自由發揮有極大關係。

  • Kotlin 的增長似乎不太理想,不過如前文所述,Kotlin 剛剛大規模進入開發者視野,開發者在遷移時會有一些成本,並且長期以來,Java 以其實用性與豐富的生態統治著 Android 開發領域,或許還沒到退位的時候。

2019 有更多新語言出現在 Gitee

2019 年中國開源年度報告(資料篇)

2019 年有許多特別小眾的語言出現在 Gitee 上,除了小眾,這些語言的特點是特別“極客”,都有很強烈的特色。除了廣受歡迎的明星開源專案,我們也非常欣喜地看到一些相對小眾、極客式的、具有無限潛力的專案和新嘗試湧現。

1.2 功能分佈

2019 Gitee 新增開源專案功能分佈 TOP 10

2019 年中國開源年度報告(資料篇)

  • 程式開發和 WEB 應用開發佔據前兩位,與 2018 年排名一致,但佔比都有所下降,可能的原因是開發者在更多嘗試新的功能和新的方向。另外,人工智慧這一功能分類首次進入前十,與去年相比增長了 60%。關於 2019 年人工智慧的持續升溫,不得不提到 2019 年 TensorFlow 與 PyTorch 的演進,TensorFlow 釋出了 2.0,PyTorch 釋出了 1.0,各自都帶來了極其強大的新特性,同時,基於這兩大框架,各大廠商也相繼開源了各自的人工智慧方案。

  • 微信開發跌出前十。

  • 其他開源類專案同比增長 52.11%,其中增速最快的三個子類別是硬體相關專案、物聯網/邊緣計算、圖書/手冊/教程。中國自主研發的物聯網作業系統 RT-Thread 成功獲得數百萬美金的A輪投資,Raspberry Pi (樹莓派)釋出 4.0 版本,也讓物聯網、硬體專案持續受到開發者關注。

2019 Gitee 新增開源專案二級功能分佈 TOP 10

2019 年中國開源年度報告(資料篇)

硬體相關專案及 Vue 擴充套件元件首次進入前十,且排名上升幅度較大。硬體相關專案與 2018 年同比增長 139.29%,Vue 擴充套件元件與 2018 年同比增長 44.74%。

通過程式語言、功能與開源專案相關的資料榜,我們可以看出,Gitee 平臺上的開發者與開源專案趨勢也折射出國內當前軟體開發行業的大趨勢。

1.3 捐贈分佈

這些功能的開源專案在 2019 收穫捐贈最多

2019 年中國開源年度報告(資料篇)

其中,這些二級功能的開源專案最受歡迎:

2019 年中國開源年度報告(資料篇)

後臺管理框架的捐贈者人數佔比超過了四分之一,捐贈者佔比最多的專案的一大共同特點是:應用性強、開箱即用。

1.4 開發者地域分佈

2019 年中國開源年度報告(資料篇)

使用 Gitee 的開發者分佈排名前三位是:廣東、北京、上海,整體分佈沒有太大變化,這與 IT 產業的整體佈局相吻合。值得注意的是,河南省使用者數增多,首次進入地域分佈前十位。

二、開源治理與社群

2019 年,開源界精彩紛呈,開源受到了前所未有的關注,越來越多的開發者開始關注和了解開源文化、規則,開始認識到社群的重要性,開始嘗試參與開源。我們從 Gitee 的資料也捕捉到了這一變化。

2.1 開源許可證

開發者對開源許可證的關注和規則意識在逐漸加強,2019 年,Gitee 使用開源協議的倉庫佔比 提升至 72%。

2019 年 8 月,Gitee 率先支援中國開源許可證 —— 木蘭寬鬆許可證。目前, Gitee 上使用木蘭寬鬆許可證的開源倉庫已經超過 4000 個。

2.2 開源組織

Gitee 的開源組織數量在 2019 年以月均 24.46% 速度持續增長。

隨著各大科技企業對開源的關注持續升溫,越來越多優秀的開源組織陸續入駐 Gitee,如騰訊藍鯨智雲 與 TARS、滴滴開源、華為鴻蒙( HarmonyOS )與尤拉(openEuler)、螞蟻金服 SOFASTACK 與 AntV、北京大學數字視訊編解碼技術國家工程實驗室視訊編碼組、微眾銀行(WeBank)、科學大資料開源社群等。

2.3 協作方式

2019 年,很多人邁出了參與社群的第一步——提了第一個 Issue/PR,這是一個非常好的趨勢。越來越多的人選擇使用 Issue 來反饋問題、使用 PR 來參與程式碼貢獻,以更好的方式參與開源協作。我們相信,未來會有更多開發者以更“開源”的方式參與開源,參與專案和社群的成長,感受開源所帶來的便利和欣喜。

Issue

  • 2019 年,開源專案的 Issue 數比去年增長 84.42% ,有 3.8 萬開發者第一次在 Gitee 提 Issue,參與開源。
  • 結合功能分類的維度來看,WEB應用開發-後臺管理框架的討論度最高,Issue 數佔比 32.58%,比第二位的資料庫開發包功能下的開源專案多出 27.5%,以絕對優勢佔據第一。
  • 這些功能的開源專案新增 Issue 數最多:

2019 年中國開源年度報告(資料篇)

Pull Request

  • Pull Request 數比去年增長 48.96% 。
2.4 捐贈開源

除了提 Issue 和 PR,也有些人選擇更“直接”的方式表達了對開源專案的認可,2016 年,Gitee 正式上線了捐贈功能。2019 年,近 2000 位開發者第一次在 Gitee 對開源專案捐贈,回饋開源。

2.5 GVP 參與度分析

GVP ( Gitee most Valuable Project ) - Gitee 最有價值開源專案計劃,是經綜合評定優選的開源專案展示平臺,經兩年多的發展,已有 200 餘個專案,其中,2019 年有 93 個開源專案入選 GVP 。

這些專案的表現,在一定程度上反映了本土優秀開源專案的情況,我們通過 Gitee 指數、Star、Issue、Pull Request、貢獻者等維度對其進行了分析:

綜合分析

Gitee 指數是 2018 年底推出的一項功能,從程式碼活躍度、社群活躍度、團隊健康、流行趨勢、影響力這 5 個維度對開源專案進行分析,以直觀數值的形式來展示對一個開源專案各方位的指標綜合度量。

  • 在 2019 年 Gitee 指數排名前 50 的開源專案中,GVP 佔據 41 個席位,Gitee 指數普遍超過 80 分。

2019 GVP- Gitee 指數排名 TOP 10

2019 年中國開源年度報告(資料篇)

Star、Issue、Pull Request

  • 2019 年 Gitee 新增 Star 最多的 TOP 50 開源專案中,有 37 個 GVP 專案。
  • 2019 年,平均每個 GVP 專案的 Issue 數比去年增長 119%,Pull Request 數增長 71%。

貢獻者

  • 2019 年,有 79% 的 GVP 專案新增超過 2 位貢獻者,50% 的 GVP 專案貢獻者增長超過 5 人。GVP 專案貢獻者人數分佈情況:

2019 年中國開源年度報告(資料篇)

GVP 專案貢獻者人數普遍較多,一方面反映出有更多開發者願意為優秀專案貢獻程式碼,成為社群的一員;另一方面也體現了運作良好的社群對專案健康成長的意義。

程式碼與社群是相輔相成的關係,優質的專案總是可以吸引更多貢獻者,而社群也為專案成長提供了更多靈感與力量。我們期待越來越多開發者以更高效、社群化的方式參與開源,越來越多的開源專案在社群中汲取營養、發展壯大。 —— Gitee.com(統計截至 2019 年 12 月 20 日)

2019 年中國開源年度報告(資料篇)

訂閱“Linux 中國”官方小程式來檢視

相關文章