2019 年终回顾:不忘初心,负重前行
點擊上方藍字關注“汪宇杰博客”
導語
2019 年就要接近尾聲,這一年對于我來說,有許多有意義的事件。我成長了許多,并依然保持著對技術的熱情。在辭舊迎新之際,我想回顧一下我這一年中有意義的事件與收獲,期待與大家一起在2020年繼續(xù)成就不凡!
微軟 MVP 全球峰會
今年3月,我有幸參加了在美國雷德蒙微軟總部舉辦的MVP全球峰會,這是我第二次去美國,第一次去西雅圖。我從小就崇拜比爾·蓋茨先生及他創(chuàng)辦的偉大的微軟公司,而去微軟總部參觀,可以說是“朝圣”,我兒時的夢想之一終于實現,這次MVP全球峰會總算是拔了顆0x14年的草了。
(圖:呼吸著微軟總部的空氣)
微軟總部的園區(qū)非常大,需要乘坐 shuttle bus 穿梭于各個大樓之間。我們的會場在 Building 33,即 Microsoft Conference Center。4天的大會日程非常充實,可以了解到還未發(fā)布的新功能,也可以大量汲取其他MVP分享自己的技術精髓。
會議期間,我十分幸運地見到了兩位久仰已久的專家——James Newton King,可能全世界所有的 .NET 程序員都用過他寫的庫,即大名鼎鼎的 Json.NET (Newtonsoft.Json) ,NuGet 下載量達到了3000萬,排名第一,他現在也就職于微軟。
(圖:汪宇杰, James 和閆曉迪)
(圖:Newtonsoft.Json 下載量排行)
另一位大佬是大名鼎鼎的 Scott Hanselman ,關注 ASP.NET(尤其是 MVC)的不少技術從業(yè)者都看過他寫的書,即著名的紅皮書之一。在微軟的 Channel 9 視頻網站上也經常有他的節(jié)目,我剛工作那會兒經?;丶液筇稍诖采峡此墓?jié)目學習技術,從沒想過能有一天能與大佬面基!
(圖:與 Scott Hanselman 合影)
說到 Channel 9,此次峰會期間我也巧遇了正在錄制 Visual Studio 2019 發(fā)布會視頻的現場,視頻的內容即 VS 的歷史版本回顧,攝制組帶來了上古時候的 Visual Studio .NET、2003、2005和2008的包裝盒。作為 .NET 程序員的我被勾起了童年的回憶,初中時候購買盜版VS.NET 光盤的畫面歷歷在目,而17年后我居然摸到了正版產品的包裝盒,它們奠定了我程序員的道路,心里百般滋味。
我工作后自費補票了所有微軟及非微軟的正版軟件。作為 MVP,現在也可以免費使用 Visual Studio Enterprise 版本,神清氣爽。
(圖:Channel 9 攝制組攜帶的古董)
國內程序員比較耳熟能詳的還有輪子哥、鴨哥這兩位優(yōu)秀的微軟專家,這次去西雅圖也和他們面了基,一起吃了牛排,倍感榮幸。
微軟的員工商店很有趣,里面除了 Windows、Office、Surface 等軟硬件產品,還有很多田牌小周邊,剁手根本停不下來!
(圖:微軟員工商店)
Visitor Center 儼然一個微軟歷史博物館,比如下面這份95年的陳釀:
微軟的第一份代碼:
還有上古之神們:
讓我感到比較意外的是,微軟 MVP 不僅可以在微軟員工店、零售店打折購買微軟自家產品,居然還能在蘋果店里打折買 iPad Pro,正好買了一個給家人,并且裝滿了微軟全家桶!在西雅圖這個宜居又文藝的城市,我們還參觀了不少博物館,登上了太空針,品嘗了各種地道美國菜。這次微軟總部之行絕對是人生中最難忘的經歷之一!
博客系統(tǒng)開源
我的博客系統(tǒng)已經有10年歷史了,從大一時候邊自學邊寫的 ASP.NET 2.0 VB + Access 一直升級維護到后來的 ASP.NET MVC C# + SQL,到今天的 ASP.NET Core + Azure 架構。期間有不少人問我要過源代碼,盡管我一直在博客上分享技術文章,但從沒完全開源過博客系統(tǒng)本身。而去年 .NET Core 成熟之后,我也像納德拉刷新微軟一樣,使用 ASP.NET Core + Azure 重寫了整個博客系統(tǒng),經過極度精簡和優(yōu)化的全新博客在性能、功能、穩(wěn)定性上都全方位無死角碾壓了之前的 .NET Framework 版本。
隨著閱歷的增長,我也意識到開源并不等于拱手相讓自己的心血,盡管國內有很多無良的培訓班、淘寶店家喜歡把人家的開源項目拿下來改logo賣錢,但這樣的人還是少數。前年開源《Character Map UWP》應用后獲得極大的社區(qū)幫助,也讓我認識到了開源的力量比單打獨斗強多了。因此我決定完全開源博客,和博客用到的所有自己寫的輪子。于是,2019年,我的?GitHub 活躍度激增,一年后,我終于和路邊的花壇一樣努力了!
而這個過程,并不只是我的代碼對開源社區(qū)有幫助,可以讓別人部署自己的博客,開源社區(qū)對于我的博客系統(tǒng)也提了很多關鍵意見,尋找了不少 Bug。系統(tǒng)不論從功能、穩(wěn)定性還是代碼質量上都有了明顯的改進。
(圖:2019年GitHub貢獻)
(圖:路邊的花壇)
今年和我的博客一起開源的還有我的第一個 UWP 作品《描圖》也是代表作之一。這是我早年開發(fā)的一款畫圖軟件,達到了百萬下載量,曾經獲得IT之家、Windows Central 等國內外知名媒體推薦。但是由于精力有限以及 UWP 平臺的一些無奈,我無法繼續(xù)維護這些 Windows 應用,于是決定開源給社區(qū),并退出 UWP 方向。
(圖:《描圖》應用)
擁抱開源以來,我的技術成長和收獲實現了質的飛躍, GitHub 這個平臺及 MVP 組織給了我與世界頂尖高手交流的機會。更重要的是,我懂得了一個道理:無知并不可怕,可怕的是傲慢。曾經的我和曾經的微軟一樣,認為自己的心血不能白送給別人,也經常嘲諷開源軟件的各種毛病,而如今,我重新認識了開源,就像不少人重新認識微軟一樣,只有放下彼此的偏見和傲慢,才能攜手進步。
Azure Global Bootcamp
4月的 Azure Global Bootcamp 由胡浩老師等 MVP 前輩承辦,今年我也有幸參與其中,這是我在 Azure 方向首次演講。我分享的話題正是我博客使用的一個 Azure 明星服務:App Service。盡管從2012年我就接觸了微軟云(當年還叫 Windows Azure),但由于不是我平時工作所用的技術,熟悉程度不如 .NET,所以我一直對自己沒有信心。后來我從微軟開發(fā)者市場的朋友那邊了解到,國內懂 Azure 的人太少了。而用過 Azure的我深知這個平臺對于現代公司數字化轉型的強大幫助,可以節(jié)省大量的人力成本,讓程序員少收福報,所以我覺得非常有必要推廣這個平臺。
我認真準備了我的第一次 Azure 課程,并作為新方向的起點去努力。微軟 CEO 納德拉在《刷新》一書中也表達過不要停留在Windows這種已經成熟的舒適區(qū),現在已經移動為先云為先的時代了,抓住機會才能繼續(xù)立足這個世界。
微軟上海Reactor開幕
今年微軟在上海開設了中國第一個 Reactor 社區(qū)空間。我有幸受邀作為開幕式的演講嘉賓之一,帶來了《Azure, 原力覺醒——云原生應用開發(fā)實踐》主題的分享。還面基了久仰大名的韓俊老師。
這次的分享依然圍繞著我的博客系統(tǒng),與之前不同的是,我分享了博客在 Azure 云端的完整架構實踐,并介紹了Azure 在容器方面的優(yōu)秀方案,貫穿應用從構建到上線的各方面。
微軟云課首播
9月25日,我的第一次線上課程在《微軟云課》平臺首播了。內容為 App Service 及 Azure SQL Database。介紹微軟云 Azure 上的兩個 PaaS 服務,結合實例演示 App Service 以及 Azure SQL 數據庫相對傳統(tǒng)虛擬機方式部署網站的巨大優(yōu)勢,演示如何創(chuàng)建和部署網站,并綁定域名證書、定時備份、自動擴容、使用服務編輯器以及部署槽。
公司招聘宣講會,入職5年
11月底,我有幸與我司 VP 及人力等同事在某科技園區(qū)一同給40多名大學生進行了一次頗有意義的校園宣講會。這一次我內心里有一些忐忑,因為我將要面對工作經歷像一張白紙一樣的同學們,他們對技術方向或職場都相對缺乏判斷力,我需要保持謹慎,有可能說錯一句話都會影響到他人的職業(yè)方向。8年前的自己,同樣聽過校園宣講會。當年的我懷著對技術的憧憬,選擇了一家印度軟件外包巨頭的 .NET 開發(fā)職位作為我職業(yè)生涯的起點。
我分享的話題也是.NET技術,我們的消費者產品和銀行即服務(BaaS)平臺都采用該技術。盡管.NET在世界范圍內生機勃勃,但是在國內,使用它比較多的還是外企。這場宣講會的學生里也有不少我母校的學弟學妹,他們都是Java背景,而我接到.NET宣傳任務的時候,有些激動,也有些彷徨。激動的是作為.NET社區(qū)的一份子,終于能有機會宣傳這個優(yōu)秀的技術。彷徨的是,又得和 Java 比了,這兩者的比較就如同 AK47 步槍和 M4A1 卡賓槍,只有適合的場景,沒有絕對的好壞,任何一個陣營的人都能說出對方的缺點和自己的優(yōu)勢。所以我選擇說實話,告訴同學們 .NET Framework 的悲劇故事,也給他們展示開源跨平臺重生后的 .NET Core 以及 C# 精煉簡潔的語法。我想說明的并不是 C# 語法簡于 Java 所以選擇 .NET,而是?.NET 生產力和云原生等優(yōu)勢對于企業(yè)的重要性,也向同學們介紹了我們企業(yè)重視生活和工作平衡等巨大優(yōu)勢。
現場的同學們進行了積極的反饋,讓我非常驚喜與高興。雖然我不知道他們未來是否會選擇我們公司,以后是否繼續(xù)用 .NET 技術,但我知道,我們這樣的企業(yè)可以在輕松的環(huán)境下培養(yǎng)一批 .NET 開發(fā)者,.NET 在國內一定后繼有人。
今年也是我入職 Green Dot 公司的第五年,同時也是公司成立20周年。我見證了公司從幾十人擠在一間小辦公室,到幾百人在嶄新的辦公室一起為公司慶生的發(fā)展歷程。非常幸運能遇到優(yōu)秀的同事們,也期待來年能繼續(xù)發(fā)揮專長,讓技術予力公司成就不凡!
(圖:5年員工證書)
編程一小時
12月中旬,又到了年度全球計算機教育周。今年的活動位于上海計算技術研究所,并請來了code.org的課程研究專家Elizabeth Bacon老師進行主題演講。我們的教材依然是《我的世界》編程游戲,今年的課程有了3D體驗,主題為《AI for Good》,指導小朋友對機器人進行訓練,讓機器人識別易燃物從而達到防火的目的。和小朋友們一起的時間總是短暫而快樂,我們也他們身上挖掘出了許多閃光點,甚至感嘆個別孩子的智慧程度遠超我們自己的當年。時代在進步,如今的教育水平和設施也有著大幅度的提升,我相信這些孩子們未來一定能成為中國以及世界的棟梁。
收獲與感悟
如果要用兩個字來總結2019年的收獲,那就是“成長”。今年我還參與了紐約大學學生參觀微軟、微軟創(chuàng)新杯培訓等其他眾多社區(qū)活動,同時也保持著博客文章以及開源代碼等線上貢獻。
我完成了年初的目標——努力克服程序員的社交恐懼,更多參與到線下交互,在微軟美國總部的拜訪不僅讓我大開眼界,了解到更廣闊的星辰大海,也讓我的演講和備課經驗更加豐富。所以,凡事都不要先急于否定自己,覺得“我辦不到,我不適合”,大膽去做自己沒做過的事,說不定有意想不到的收獲。今年業(yè)余時間我更加積極參與開源,也完全改變了我對開源世界的認知。我從幾年前的開源嘲諷者變成了開源擁護者,就像許多軟黑隨著微軟開源開放而轉變?yōu)檐浄?#xff0c;只要我們彼此放下高傲和成見,互相學習,取長補短,就能共同進步。
我非常感謝 Green Dot、微軟公司以及 MVP 和社區(qū)朋友們,沒有你們的培養(yǎng)、幫助與支持,我無法成長為今天的我。今年也是我30歲的啟程,都說程序員30了,就該轉行送外賣掙錢植發(fā)了,這個行業(yè)確實需要不停的學習,如果沒有興趣,當然很累,好在18年前,我出于興趣,給自己定了長大從事 IT 行業(yè)的目標,而18年后,我依然能在這個行業(yè)保持興趣和熱情,我會繼續(xù)證明,年齡不必成為程序員生涯的終結!
2020 是下一個征程,我的初心不變,我會做好本職工作并積極貢獻社區(qū),期待與大家一同成長!
汪宇杰?
微軟MVP,Azure 及.NET開發(fā)者,擁有豐富的網站開發(fā)及運維經驗。
總結
以上是生活随笔為你收集整理的2019 年终回顾:不忘初心,负重前行的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 小米android手机密码忘了怎么解锁,
- 下一篇: day184-2018-12-21-英语