寫在.NET 15週年之際——致那些仍然愛着.NET的中國程序員們

我曾經是一名VB、PHP、ASP程序員,大概12年前吧,那時候我還在大學裏,.NET剛誕生3年不到,還不是很流行。2005年我開始接觸.NET 1.1,從那時起我就開始迷上.NET的核心語言C#。有人開玩笑說C#是C++++,其實沒錯啊,他確實是C++的加強版。

.NET其實有一段鮮爲人知的歷史,感謝微軟早期華裔員工陳榕先生在3個月前與我分享這段歷史,當然能在上海見到陳榕先生絕對是緣分,也是我的榮幸,可能大家不知道,陳榕曾參與IL Remoting和DCOM的開發和設計工作,他甚至創造了真正的國產操作系統Elastos以及C++ with Metadata(C++版的.NET框架)。

.NET的歷史

1999年在微軟42號樓一羣人開會討論是否要做一個能夠與Java相抗衡的語言,它應該是一個加入了元數據(metadata)的高級語言,這門語言的目標就是實現SaaS,要知道在那個時代SaaS是非常先進的東西,幾乎沒有什麼人知道。經過大家不懈的努力,2003年2月終於誕生了.NET Framework 1.0以及.NET CLR。其實.NET有個Codename: Project 42,因爲他就是在42號樓誕生的項目,Java就是.NET的假想敵。

.NET從1.0到如今4.5,走過了15個年頭,總體而言,.NET已經成爲非常成熟的語言平臺,在全球有數不清的案例,雖然語言排名上仍然無法與Java直接抗衡,但一直在追趕Java的腳步,隨着時間的推移,差距正在逐步縮小。

.NET中國市場現狀

在全球市場,.NET語言C#的排名一直在往上升,與其形成鮮明對比的是.NET中國區的淪陷!真的是淪陷!大量.NET項目正在或者已經被轉成Java項目,這是非常令人擔心的事情。

然而微軟中國不但沒有任何行動,還放任這種趨勢繼續,他們天天在給社區講開源,卻不管.NET市場的死活。他們似乎並不在意.NET程序員們是否能找到工作,因爲這不是他們的績效考覈內容,這也是我一直恨的一點——微軟中國的不作爲。

誰該對.NET市場問題承擔主要責任

首先我要批一下微軟中國Dev eXperience部門(簡稱DX組),因爲他們纔是真正負責推廣.NET的部門,他們對.NET在中國區的失敗承擔主要責任。DX組有大量的技術步道師(Technical Evangelist),步道師這個詞來源於聖經,也可翻譯爲傳教士。他們的任務就是推廣微軟相關技術,但很遺憾的是他們在.NET方面的步道非常失敗,如今在微軟中國的各種活動中已經幾乎看不到.NET的身影,這是非常令人遺憾和尷尬的事情。照理說這麼多的公司和合作伙伴轉Java,他們應該是要介入的,但很遺憾,他們從不認爲這是他們的事,或者說他們不在意,因爲這不是他們的KPI。

其次我這裏要點一個人的名Peter Hu,他是Visual Studio的中國市場部經理,也是現在雲應用開發工具市場經理,其實他在過去一直是負責Visual Studio推廣的,但請問Visual Studio現在在中國用的怎麼樣大家心裏清楚。前幾天我託人跟他提了辦Visual Studio 2017 Launch Party的想法,本以爲可以由微軟贊助一些經費,我們慶祝下Visual Studio發佈,同時慶祝.NET 15週年,理都不理我。我能說什麼呢?

就連微軟全球C&E總經理Scott Gu跑中國來都明確說Visual Studio Code才適合中國,因爲中國企業很少買單TFS和Visual Studio, Visual Studio license的消耗量和全球比起來基本可以忽略。我只能說 教主英明!Scott一直是我非常敬佩的頂級技術人員,他是ASP.NET之父,我們通常喜歡叫他紅衣教主,他的思路非常清楚,對市場的洞察能力和理解力超乎常人。

中國區.NET的未來在哪?

我曾經做了好幾個.NET領域的開源項目(NPOI, Toxy, Wex等),目標是彌補.NET頂級開源項目的不足,特別是NPOI,下載量已經接近100萬!這個組件只要是做.NET業務系統的人幾乎都知道。

但說心裏話,我的能力很有限,我也很難改變目前的局面,經過深度分析和調查,我最終認爲單靠幾個開源項目救不了.NET。

.NET的未來在傳統行業!爲了解決最根本的企業需求問題,我從去年開始佈局建築行業,並在今年開始孵化航空和食品飲料行業。我的觀點是隻有.NET的企業需求起來了,.NET纔有希望!有了需求就會有人去學,這是非常基本的道理。等需求起來了,.NET培訓也就火了,纔會有人願意去學.NET。

雲計算是.NET的發力點和突破口。隨着Azure的不斷推廣,越來越多的企業開始使用Azure,.NET其實可以充分利用這一點,展開反擊攻勢,務必讓客戶認同.NET的價值,不要讓寫假CTO和架構師們污衊.NET,放大各種潛在的問題,並且讓.NET背各種鍋。我一直開玩笑的說,.NET技術就是背鍋俠,就連當年myspace倒閉也有人怪.NET,實在無語。

.NET相比其他語言的優勢

其實中國開發界正在走入一個誤區,大量開發者崇尚開源的東西,包括很多大型公司(比如阿里巴巴、京東等),他們並沒有意識到這些東西其實潛在擁有成本非常高,並且一旦出了問題,如果社區沒有人及時響應你連一點辦法都沒有,只能對着它乾瞪眼。其實在中國要找到頂級的開發人員是非常困難的,更何況是懂開源的開發人員,其實中國區真正貢獻開源代碼的人非常少,很多所謂的開源貢獻者其實貢獻的代碼質量並不高,相當一部分是自娛自樂,那隻能說是一個愛好,但這些項目從開始到結束幾乎沒有人知道,或者說只有非常少數的人知道。

微軟的產品其實整體擁有成本並不高,隨着微軟雲的推廣,license授權費用已經不存在,越來越多的企業開始認同微軟雲的價值,確實微軟雲在幫助企業省人力和設備成本,最關鍵的是它還非常穩定,企業省去了僱傭頂級IT運維的費用,何樂而不爲!

.NET經過15年的努力,已經超越Java,在並行編程及動態語言編譯技術方面已處於領先地位,再加上宇宙最好的IDE——Visual Studio的助攻,一切如虎添翼,開發者沒有理由拒絕這麼先進的語言和IDE。當然我們可能缺少Java的那些開源項目和可參考的架構,這是.NET在接下來幾年需要解決的問題。但還是有一點,開源項目很多時候其實只供參考,並不能幫助企業解決太多問題,企業如果重度依賴開源可維護性其實並不好。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章