Linux中國

微軟開源 .NET 一年後,ASP.NET 情況分析

方法

上一篇中,我們首先把 問題 issue / 拉取請求 PR 分成 擁有者 Owner 協作者 Collaborator 社區 Community 三類。然而這有一些問題,正如在評論中指出的那樣,有幾個人並非微軟僱員,但是由於其在某個項目上的積極貢獻也被列為了協作者,比如 @kangaroo@benpye

為了解決這個問題,我決定分成兩類:

這是可行的,因為(基本上)所有的微軟僱員都會在其 GitHub 個人頁面上標記其為微軟僱員,比如:

David Fowler Profile

這種情況有一些例外,比如 @shanselman 顯然是在微軟工作,不過這種情況很好解決。

結果

在結束了所有分析之後,我得到了結果。總的來說,超過 60% 的「 發現的問題 Issues Created 」和 33% 的「 合併的 PR Merged Pull Requests 」來自社區。然而,PR 的佔比受到了 Entity Framework 項目中微軟僱員超高的 PR 數量的影響,從而有些不能準確反映情況。如果忽略這個項目,社區貢獻的 PR 將佔到 44%。

發現的問題(2013/11 - 2015/12)

項目 微軟 社區 合計
aspnet/MVC 716 1380 2096
aspnet/dnx 897 1206 2103
aspnet/EntityFramework 1066 1427 2493
aspnet/KestrelHttpServer 89 176 265
合計 2768 4189 6957

合併的 PR(2013/11 - 2015/12)

項目 微軟 社區 合計
aspnet/MVC 385 228 613
aspnet/dnx 406 368 774
aspnet/EntityFramework 937 225 1162
aspnet/KestrelHttpServer 69 88 157
合計 1798 909 2706

備註:我包括了 Kestrel Http Server 項目,因為它是一個有趣的例子。當前它的第一號貢獻者 Ben Adams 並非微軟僱員,他為改善其內存使用做出了很大的貢獻,讓 Kestrel 可以每秒鐘接受更多的請求。

通過觀察隨時間推移的變化,可以很清楚的看到社區(淺色條)在過去兩年(2013/11 - 2015/12)來的參與情況,看起來並不像是趨於停止。

每月發現的問題數 - 按提交者

每月問題數 - 按提交者(微軟或社區)

此外,雖然社區參與情況可以很容易地從每月發現的問題數上看出來,不過從合併的 PR 數上也可以再次印證這兩年來的趨勢。

每月合併的 PR 數 - 按提交者

每月合併 PR 數 - 按提交者(微軟或社區)

貢獻總數

每個項目的貢獻人數也很有意思。通過這個你可以看到社區貢獻者的實際規模,並不是少量的人做了大量的工作,而是這些工作由大量的人分散完成的。

這個表格展示了每個項目中發現問題和提交了被合併的 PR 的人數:

項目 微軟 社區 合計
aspnet/MVC 39 395 434
aspnet/dnx 46 421 467
aspnet/EntityFramework 31 570 601
aspnet/KestrelHttpServer 22 95 117
合計 138 1481 1619

FSharp

在我的第一篇文章的評論中,Isaac Abraham 指正說:

.NET 的一部分已經開源一年多了,F# 編譯器和 FSharp.Core 已經開源一段時間了。

所以,為了解決這個問題,我去了解了一下主要的 FSharp 倉庫:

按 Isaac 的解釋,他們之間的關係是:

... visualfsharp 是微軟自己的 Visual F# 版本倉庫。而另外一個是社區管理的一個。前一個是直接作為 Visual Studio 其中的 Visual F# 工具;而後一個則是類似 Xamarin 的東西。這裡有個(稍微過時的)解析它們關係的圖表,以及另外一個有用的資源:http://fsharp.github.io/

FSharp - 發現的問題(2010/12 - 2015/12)

項目 微軟 社區 合計
fsharp/fsharp 9 312 321
microsoft/visualfsharp 161 367 528
合計 170 679 849

FSharp - 合併的 PR(2011/5 - 2015/12)

項目 微軟 社區 合計
fsharp/fsharp 27 134 161
microsoft/visualfsharp 36 33 69
合計 63 167 230

結論

我認為,公平地說社區已經對微軟越來越多地開源其代碼的動作做出了回應。在幾個項目上社區花費了大量時間,做出了顯著的貢獻。雖然你可以說微軟也花費了大量的時間來開源,但是看起來 .NET 開發人員很喜歡他們做的事情,體現了可觀的社區響應。


本文轉載來自 Linux 中國: https://github.com/Linux-CN/archive

對這篇文章感覺如何?

太棒了
0
不錯
0
愛死了
0
不太好
0
感覺很糟
0
雨落清風。心向陽

    You may also like

    Leave a reply

    您的電子郵箱地址不會被公開。 必填項已用 * 標註

    此站點使用Akismet來減少垃圾評論。了解我們如何處理您的評論數據

    More in:Linux中國