從Visual Studio 2005開始,這套軟體就活在小弟的電腦裡面,雖然當時還不是很會用…(抖抖),但因為學校上課的關係,就讓他一直存活者。
而到了Visual Studio 2010,Visual Studio整個煥然一新,更是讓人覺得Visual Studio進入了另外了一個里程碑!!而這個時期,也正是小弟第一次來台北參加恩師Ruddy老師與百敬老師的研討會 ( 當時一整個覺得百敬老師外表像流氓一樣..但內心實際上根本就是個活佛…... ),而直到現在,Visual Studio也準備進入2015了,歷經了10年的時間,看著Visual Studio的版號,就等同看著自己的成長阿…
阿,廢話那麼多,那這場軟體高峰會為什麼會吸引小弟去哩??又為何講古講了一堆Visual Studio勒!?因為這場Microsoft請到了 全球資深副總裁 潘正磊女士 Julia,大家會想說他是誰!?他就是鼎鼎大名的Visual Studio Team的超高級長官!! 有多高級哩??..連 C#之父Anders Hejlsberg都是他底下的人…( 現在Scrum的創辦人之一Ken Schwaber,應該也是在他底下,只是這次沒有證實… ) 所以,大家這樣應該就可以猜到,他底下負責的產品,就是Visual Studio、.Net、TFS、Visual Studio Online、TypeScript!!
既然那麼重量級的人物出現,小弟我又怎麼可能不去晃晃哩!!?
這次是舉辦在高級的寒舍艾麗裡面,時間還沒到,其實就已經有很多人開始報到了~~
Image may be NSFW.
Clik here to view.
這次的會場其實非常漂亮=v=,我們也可以看到DX Team的團隊已經在準備了。
Image may be NSFW.
Clik here to view.
這次當然還是由我們台灣區偉大的Dann哥來負責主持與總指揮啦XDD,快要開始前,Dann哥已經躍躍欲試了XDD。
Image may be NSFW.
Clik here to view.
正式開始!!,當然就是由Dann哥主持啦!!
Image may be NSFW.
Clik here to view.
接下來,有那麼大的人物來台灣,當然就是由台灣區的微軟總經理 紹光華開場嚕。
Image may be NSFW.
Clik here to view.
總經理首先針對微軟的政策,特別述說了Mobile-first與Cloud-first,所以可以看出,行動與雲端依然是微軟主要的策略。
Image may be NSFW.
Clik here to view.
接下來,提到了MS的開宗始祖Bill Gates,在1975年說的那句名言,而40年後的今天,現任的微軟執行長Satya Nadella,也依據雲,提出了相同的論點。
Image may be NSFW.
Clik here to view.
接下來的重頭戲,就是Julia上台了!!~基本上他是中國人,所以全程是用中文來講,完全不用擔心聽不懂,在開頭的自我介紹中,Julia說他從Visual Studio第一版,就開始參與,而且是裡面的開發工程師,所以可以看出,她也有深厚的技術實力;也可以看到微軟的制度,就算是高層的總裁,技術實力也依樣的深厚。
Image may be NSFW.
Clik here to view.
Julia一開始就提到,微軟未來的三大方向,就是更開發,更創新和更加的敏捷,而對於她來說每一個企業,都是一個軟件公司,因為每家企業,未來都會持續的開發屬於自己的系統,也因此未來軟體的開發會極為重要;另外因為雲端和手持裝置的崛起,流量可能會是以前的百倍,而透過Mobile與Cloud來收集資料與分析,更是未來的趨勢。
Image may be NSFW.
Clik here to view.
更開放的部分,微軟用更開放的態度,和其他公司合作,例如在Azure上面放上Oracle的VM,甚至是最近的大新聞,Google的AngularJS 2.0 將使用TypeScript、又或是在iOS裝置上提供Office等等,這些都是以前微軟沒有做到的事情;而如今,連.Net都Open Source了!!
Image may be NSFW.
Clik here to view.
更創新的部分,則提供更多的方案,來讓不同的使用者滿足,例如Visual Studio 2015就開始內建使用JavaScript的Cordova來建立Mobile,但可能還是有很多人使用C#阿,所以也提供了以C#為基底的Xamarin;當然,使用C++的朋友們,也有提供以C++為主的跨平台方案~ ( 這次的Office轉移,就是使用C++的跨平台方案 )。
其次,雲端的開發上,提供了新版的.Net Core,讓Web Site的開發更小;而透過雲端的應用Load Test也更方便測試。
處此之外,在生產力方面,也持續的讓C++ 速度的提升等等,效能的提升,讓大家能更加的感受到改進。
最終,Julia提出了她的願景,就是希望幫助每一個開發人員,無論你是哪個平台,哪個語言。
Image may be NSFW.
Clik here to view.
接下來談到了Visual Studio的開發歷程,改成每2~4個月更新一次;那這個原因當然是因為現在Visual Studio 開發Team已經完全啟用敏捷,所以更新與回饋的速度就更快了,這也是因應現在的潮流;所以我們可以看到Visual Studio 2012和Visual Studio 2013的推出間隔其實是很短的,而過程中,也不斷的發佈新的更新包。
Image may be NSFW.
Clik here to view.
接下來提到,以前的Visual Studio開發,參與人數高達4700人。
Image may be NSFW.
Clik here to view.
當然,也是跨全球的一個研發團隊。
Image may be NSFW.
Clik here to view.
接下來,就提到,以前Visual Studio的開發就是使用瀑布流的方式 ( 所以台灣其實沒有落後很多,基本上台灣遇到的問題,微軟也遇到過了XDDD )。
他們的週期大概是兩年到三年一輪,所以一開始會花很多的時間,決定未來兩年後的趨勢。
Image may be NSFW.
Clik here to view.
而這個過程中,測試花的時間,其實會遠比寫Code的好幾倍,而早期會花費很多的測試時間和測試人員;Julia有提到,那是因為早期的時候,都是要透過店鋪購買盒裝的軟體,而如果裡面出現嚴重的bug,那回收回來的成本是很可觀的;而現在則可以透過網際網路快速的更新,所以著重的反而是能快速反應使用者的需求… ( 題外話..其實家用電玩也是一樣,記得之前看過FF13的報導,日本Square Enix 之前也是花費了大量的測試人員進行測試與封閉型的開發,現在也逐漸轉變成敏捷的方式了。 )
Image may be NSFW.
Clik here to view.
而早期的專案結構,會有PM、Development和Testing,如果有讀過微軟出的測試一書的朋友,就會對於底下的這張圖很熟悉~~,當然,現在就不是這樣的結構了。
Image may be NSFW.
Clik here to view.
那現在變成怎樣子勒,現在約18的月發行一次大版本,例如 xx 2015 xx 2017之類的,而每六個月會評估一次,目前的方向和方案是否與市場狀況相同,團隊則以3週為一個Sprint,而且人數也沒以前那麼多了,目前不到2000人。
Image may be NSFW.
Clik here to view.
而現在的內部開發人員,會非常的重視白箱測試,也就是會撰寫Unit Test ( 那黑箱測試,不會就落到我這白老鼠的身上了吧= =+.. 總之會場沒特別提到黑箱怎樣做了… ),並且多聽使用者的反饋,而不是以前的蠻幹。
另外,工程師也開始進行數據收集與分析的工作 ( 這點台灣倒是還沒有開始… ),透過數據收集與分析,來決定未來的方向;所以也不是以前,完全靠有經驗的大師們指揮,就算是大師們,也必須透過數據。
另外,工程師也要開始直接與客戶交流 ( 這點台灣最難辦到吧XDD 我們都是宅宅阿~~抖抖 ) 透過與客戶的交流,來更了解客戶的需求。
Image may be NSFW.
Clik here to view.
組織結構也改成如下圖了,移除了Testing,但並不代表不用測試,而是由開發人員自行來測試,也就是說,整合了開發人員與測試人員;整合的過程中也滿有意思的,Julia有提到,先讓兩邊人馬互相交換做事情,而過程中,也發現到,原來兩邊人馬有非常多的重工。
但不管怎樣,目前還是依據功能來區分;並且每個Team都有非常高的自主性管理。
Image may be NSFW.
Clik here to view.
Team Room 的結構,不再是以前一個一個獨立的房間,而是把大家聚在一起,更加的Open,從一開始只有一棟的試驗,現在已經有四棟的大樓,都是採用此模式了。 ( 其實小弟的Team目前也是用此模式,溝通更快了,間隙更小了 )
Image may be NSFW.
Clik here to view.
接下來,提到Sprint,基本上是三周一次,而三周內,還有一周會進行佈署,所以時程其實是非常緊迫的;而Julia也有提到,初期改成Scrum的時候,內部也是有很多人反對,例如…我是寫編譯器核心的,我兩周根本沒辦法Demo!!但後來實際run後,的確還是可行的,畢竟不可能兩周完全沒做事情吧,有做多少東西,就Demo多少東西~~
Image may be NSFW.
Clik here to view.
最後,再重新回顧的時候,有提到Visual Studio 2015 CTP的Codava 第一代的安裝包,就是因為沒有WIN 7的版本,所以一堆Win 7的使用者,都發生了錯誤;其次,當進行Codava安裝的時候,很多都要透過第三方的下載的中心,進行下載,但有時,第三方的下載中心可能會出問題,或是擅自的更改位置,這些都會讓安裝過程遇到問題,但這些都是和功能無關,MS還是會想辦法解決,這就是注重需求與體驗,也就是未來微軟的方向。 ( 從這邊也可以看到,現在的整合,真的是難上加難阿… )
Image may be NSFW.
Clik here to view.
另外,有提到一件事情,是別的國家問的問題,你們微軟是跑真正的sprint嗎?
Julia也解釋說,如果是真正的Sprint,Bug單是不會大起大落的,因為真正的Sprint,在每次交付的時候,都會有許多的bug單回饋回來;而如果是假的Sprint,那會到最後的時候,才會看到大量的Bug單提交…
Image may be NSFW.
Clik here to view.
所以~Microsoft是真的Srpint ( 笑 )
Image may be NSFW.
Clik here to view.
最後,現場留了一些時間來Q&A,而Q&A的問題如雪片般的飛來 ( 可見大家還是非常想知道大公司內部是怎樣運作的… )
以下是Q&A的內容,當然,內容是小弟憑印象Key的~
Q : 短期的開發是否認定客戶為白老鼠
A : 我們希望客戶可以參與到,並且確認的確是客戶所需要的,而事實證明,客戶也很樂意的反饋,並且告訴我們,這東西做的是對還是不對;最終,我們會修正成客戶真正想要的。
Q : 可否敘述清楚,關於3、6、18這些數字。
A : 以去年年初 ( 一、二月為案例 ) ,我們決定要制定跨平台開發,過程中,我們不新增人,而是調度人員,透過調度人員,讓大家能做到不同的事情;六個月後出版,再來看看,做出來的東西,是否和現在的市場符合;過程則使用為期3周一次的進入Sprint 來開始開發;而在進行Codova的部分,我們也發現,原本的核心應該可以更好,所以抽了一部份的人,去改Codova核心,這也是回饋Open Source的一個方法。
Q : 可否敘述文件是怎樣寫的。
A : 我們的文檔多半是Word寫的,我們沒有使用沉重的工具,因為每天都在改..所以不需要沈重的文件,其實Code就是最好的文件了;但有些時候,我們會希望透過Word,來寫一些當初的想法或是當初比較特殊的思維;但不管怎樣,這是由每個Team自行決定;最後,交流才是最重要的,只要Code清晰的表達,文件只要能共享就可以了。
Q : 人員流失(離職)怎麼辦勒??
A : 我們會定期Code Review的機制來解決這個問題。 ( 看來未來有人問到小弟這個問題,小弟有一個極好的案例可以拿來解釋了~~ )
Image may be NSFW.
Clik here to view.
過程中,其實大家都聽得很認真也很High,這邊也謝謝Julia女士的經驗分享,也謝謝她帶領的團隊,能提供一個那麼好用的ide工具。
Image may be NSFW.
Clik here to view.
接著,就是由Dann哥所率領的DX Demo Team,來進行VS 2015的功能Demo。
Image may be NSFW.
Clik here to view.
他們以一個企業叫車的案例,來串所有的Demo內容,所以我們可以看到跨平台開發還有新的ASP.NET 5。
Image may be NSFW.
Clik here to view.
比較好玩的梗,雙Scott都變成叫車司機XDD,希望哪一天我可以搭到這兩位的車 ( 抖抖 ),另外,果然還是Scott Gu第一名阿XDDD。
Image may be NSFW.
Clik here to view.
另外一個主題是當紅的物聯網,這邊拿電梯監控和倫敦地鐵為案例。
Image may be NSFW.
Clik here to view.
其實倫敦地鐵去年TechDay就已經出現過了..QQ..,但也可以看出,其實微軟這方面,很早就已經開始準備與琢磨。
Image may be NSFW.
Clik here to view.
比較有意思的是這個架構圖,透過Azure服務來達到IoT ( 未來有機會,小弟來實作一下看看好了=V= )
Image may be NSFW.
Clik here to view.
另外一個大主題就是大數據,這也是近期出現在FB當紅的題目 如果搭上了鐵達尼號,有機會生還嗎?
Image may be NSFW.
Clik here to view.
這是依據那些搭上鐵達尼號的名單,來進行分析;後來,發現只要是女生,生還比率最高= =+。
最後,就是由小白來進行5min的壓力測試與佈署的Demo,雖然只有短短的五分鐘,但我知道,這個東西是要準備很久的,so,小白辛苦了XDD
總之,雖然只有半天的研討會,和短短的Demo,但聽到了官方開發Visual Studio的經驗,還是非常可貴的,而透過這半天的研討會,也讓小弟深深的開始省思,一個軟體的成功,並不是只是單單的開發出來就好,尤其現在這個快速改變的時代,整個思維也必須敏捷與改變才行。
總之,還是要謝謝 Visual Studio Team 與 Julia的帶領,讓我們能一直不斷的使用這麼好的開發軟體。