就在兩年前,微軟做了一件令人意想不到的事情:它宣稱將開源其 .Net 開發框架,這包括 .Net Core 及 ASP.Net 等。這份公告非常令人吃驚,因為微軟長久以來一直仇視開源項目,擔憂開源軟件破壞其軟件生態。
隨著微軟 CEO 納德拉宣稱“微軟愛 Linux”,微軟在開源方面的舉措頻頻,不僅僅在 GitHub 上其名下的幾個倉庫活躍非凡,而且也和各種開源廠商積極展開合作。
不管微軟積極擁抱開源背后的想法是什么,或許是想通過開源銷售更多的軟件或者云服務,也有可能是想吸引更多的開發者到微軟平臺上,但是目前看起來微軟這步棋是下對了。從微軟開源 .Net 和 ASP.Net 之后的分析看,微軟的開源戰略已經值回票價了。
微軟現在將 .Net Core 定位為跨平臺開發框架,不只是 Windows,而且也延伸到了 MacOS 和 Linux 平臺之上。.Net Core RC1 是 2015 年 11 月發布到 GitHub 上的,而今年 6 月就發布了 1.0 版本。開發者們對此表示認可,微軟合作伙伴總監項目經理 Scott Hunter 如是說:
“40% 的 .Net Core 客戶是新進入該平臺的用戶,這就是我們(開源)的目的,我們希望吸引新的用戶。”
由于 .Net Core 的開源,過去一年以來, .Net 的開發者增加了 61%。 Hunter 在 11 月的一次講演中提到,GitHub 上 .Net 上的開發活躍度增長極快。
雖然 .Net Core 并沒有直接給微軟帶來收入,但是其潛在地增加了收益。Rob Sanfilippo 說,“可以說,這項技術間接地通過 Azure 服務和微軟開發者工具增加了微軟的收入。”。
程序員們表現活躍
.Net 程序員和博客作者 Matt Warren 把.Net 的開源稱之為“成功”。其數據明確地顯示社區積極地參與了微軟在 GitHub 上開源的多個倉庫的活動。
“開源社區匯報了問題和建議,并通過發送拉取請求(PR)而實際貢獻了代碼,經過一段時間之后,這些代碼就會被包括到產品里面,而社區的貢獻量還在持續增長”,Warren 說,“我積極跟蹤和參與了 CoreCLR 和 .Net Core Lab 這些倉庫的討論,因此獲得了社區貢獻的第一手資料。”
微軟的舉措是否完全成功還不能完全定論,未來或許還有變數,但是這終究是從封閉走向開放的一步。他說,“我的意思是,他們并不是僅僅把源代碼放在那里就行了,而是努力讓社區可以參與進來。”
微軟最近發布的 Visual Studio for Mac 也為 .Net Core 帶來了利好
“這是 Visual Studio IDE 首次發布到非 Windows 平臺上(Visual Studio Code 是不同的技術,而且它根本不算 IDE),它是基于微軟收購的 Xamarin 的技術,重點關注于 .Net Core 開發”,Sanfillippo 說,“這次發布近一步帶動了 .Net Core 的發展。”
微軟最近也準備在 Visual Studio 2017 IDE 中增強 .Net Core 工具,包括簡化 .Net Core 項目文件的格式。
微軟開源 .Net 讓外界對它的觀感有所改變, Warren 說,“現在感覺(微軟)更開放和更平易近人了。”
相對于某些公司,雖然開源社區還對微軟抱有一定的疑慮,但是顯然,微軟已經不是開源社區最敵視的公司了。