不按牌理出牌,其實有跡可循:微軟跨上雲端的一大步/葉光釗

微軟為什麼要打破規則,推出配備ARM處理器的筆電、以及採用Android系統的手機?本文是曾在微軟服務、並擔任高階開發主管的作者對〈競爭、侵蝕、瓦解?微軟耐人尋味的下一步〉一文的回應;歡迎先參閱前文,以便對本文的前提與評論有更深刻的理解。

微軟為什麼要打破規則,推出配備ARM處理器的筆電、以及採用Android系統的手機?本文是曾在微軟服務、並擔任高階開發主管的作者對〈競爭、侵蝕、瓦解?微軟耐人尋味的下一步〉一文的回應;歡迎先參閱前文,以便對本文的前提與評論有更深刻的理解。

這一陣子IT界的熱門消息之一,就是微軟「不按牌理出牌」,一口氣出了配備ARM處理器的Surface Pro X、以及使用Android系統的Surface Duo手機 。

大家好奇的是,MS 要放棄一路打下來的x86/x64 Windows江山另起爐灶嗎? 這裡就我自己過去在微軟工作的經驗和理解,提出一個脈絡。

不過要先聲明的是,有部分內容事關微軟的商業機密,不方便寫得太細;有些則是憑自己的記憶和判斷寫出來,所以可能有些誤差和主觀。如果有些地方和讀者的看法不同,還請大家不必太過計較。(笑)

一個核心、多個平台

早在十幾年前(約略是2007到2008年左右),微軟的資深技術人員就提出過,Windows家族(包含Windows、Windows CE、以及Windows Mobile)的核心、以及應用的發展環境,都應該歸於一統,而且要以Windows NT技術為依歸。

其實,當年x86版的16/32位元核心已經一統於Windows XP,也就是XP的核心;但我們還是習慣稱它為「NT核心」。在當年的Think Week中,已經有一篇論文提出這個想法(這個大家可以去Google一下「One Windows Kernel」這個詞),也在微軟內部造成了許多震盪。

順便提一下這件跟大家認知可能不太一樣的事:

微軟對於將系統移植到不同運算平台上,其實是很駕輕就熟的。

在ARM版之前,微軟也曾經出過PowerPC、DEC Alpha、以及MIPS等處理器版本的Windows NT,而且都還是正式的產品。

同樣的,Office軟體也都有專做平台移植的資源(多半在印度);所以,「技術」絕對不是決定要不要做這件事的關鍵,一切都是商業考量。

接下來要提到的,就是大家比較有印象的事情了,也就是Windows RT。而它的下場如何,大家也都很清楚:微軟從這場瘋狂實驗中,學到了很多重要的教訓,這裡就不再加油添醋了。

「雲端人」登場

那麼,為什麼這次微軟還要重新推出之前看起來失敗的產品,而且平台選擇充滿了各種矛盾的訊息?

的確,如果單純從傳統的微軟產品思維來看,這些都是很奇怪的決定;如果要看清楚脈絡,就要從近年微軟的轉變談起。

就我的觀察,微軟的前任執行長Steve Ballmer和現任的Satya Nadella有個很大的不同:Ballmer基本上是一個「協調者」(coordinator),他必須在Windows、Office、遊戲、Bing搜尋等各個事業單位(BU)的主要商業目標之間找到平衡點,所以決策上會有許多妥協。

而Nadella的路線很不一樣:所有的BU和投資都只有一個目標,就是將微軟雲端服務的價值極大化;這一點他非常堅持,甚至不惜對老臣開鍘。所以,華爾街給了Nadella一個稱號,就叫做「雲端人」(Cloud Guy)。目前看來,這個方向是OK的;至少資本市場給了很強的獎勵 (所以我才有閒功夫可以寫這篇文章 ? )。

從這個角度出發來看,對於微軟在不同平台之間的大舉投資,就很容易理解了:

無論黑貓白貓,能連上Azure和Office 365的都是好貓。

只要有更多裝置連上微軟的雲端,而且更進一步的說,只要使用者都是透過微軟的app、或是微軟控制下的體驗來使用,就是在加強這些雲端服務的價值。

所以當我們看到微軟做出了各個平台的Office和開發工具、甚至是Linux版本的WSLAzure Sphere,就一點都不足為奇了。

ARM與Android扮演的角色

回到我們的場景:Surface Pro X的產生,是要將ARM的「超低耗電量」和「不間斷上網」兩個特性(Intel在這些方面的成果一直很不理想),帶進微軟拿手的生產力應用環境,進一步拉長使用雲端的時間。

不過根據之前的教訓,要讓這件事成功,還要將整個應用的生態系也跟著搬過來,所以發展了機器碼即時轉譯的能力,讓x86版本的exe執行檔,也能在新的ARM版Windows上執行。

如果這樣的體驗用戶能接受,接下來微軟就會大舉邀請PC製造商進入這個領域。究竟光靠微軟自己,是沒辦法擴大戰場的;至於與Intel之間的革命情感,可能就顧不到了……。

那手機為什麼要使用Android系統呢?我的解釋是,微軟已經明確瞭解了手機的體驗,現有的各種應用與生態系也非常成熟穩定;基本的雲端應用如地圖、電子郵件、行事曆等等,都已經在Google控制之下。

所以,與其花費極大的工夫重新複製,不如專注於將微軟能控制的體驗加上去。其實微軟之前已經推出相當多的app,包含主流的Office、還有Launcher等等;所以,從生產力應用的角度去提供一支將「微軟雲端體驗」整合得更好的手機,就是很自然的下一步發展。

不過,以我之見,微軟還有許多挑戰要因應。其中優先順序比較高的,就是Google和微軟的雲端基礎還是不同的兩套東西,包含最基本的身份認證和授權等都不一樣。

而既然要在人家的系統上加值,如何在兩套基礎上設計好的「雙向溝通」(interop)和流暢的體驗,就是一個很大的門檻。如果有一個稱職的聯盟機制 (federation) ,能讓使用者用同一個身份就能在Google和微軟服務之前穿梭,才能真正將使用者連結到微軟的雲端。

結語

最後一點,則是我自己的狂想:我希望微軟不要再重複以前「embrace and extend」(請參閱〈競爭、侵蝕、瓦解?微軟耐人尋味的下一步〉一文結尾)的做法;因為,太多的歷史教訓證明,被微軟「分支」過的技術,下場通常都不好,而且回不到主流發展。

我寧願微軟能發揮掌握生產力體驗的獨特優勢,直接在Android的主流上直接提供貢獻;這樣所產生的效益,會遠大於微軟自己分支一個「特製版Android」。

不過,這只是我一個退役老兵一廂情願的期望;至於將來會如何發展、方向成不成功,就看微軟當家領導們的智慧了。