圖片來(lái)源@視覺(jué)中國(guó)
文|pockry
最近微軟拋棄 Edge 瀏覽器,轉(zhuǎn)投 Chromium 陣營(yíng)的消息震動(dòng)了業(yè)界,有人說(shuō)瀏覽器大戰(zhàn)終于結(jié)束、谷歌 Chrome 獲得了最后的勝利;也有人擔(dān)憂 Web 技術(shù)多樣性遭遇打擊,Chrome 會(huì)成為新 IE。但在這一片嘈雜的討論中,沒(méi)有人討論微軟為什么會(huì)這么做。這篇文章會(huì)分析一下這個(gè)問(wèn)題,以及試圖說(shuō)服你:瀏覽器大戰(zhàn)還未結(jié)束,微軟還有機(jī)會(huì)!
要討論微軟為什么會(huì)轉(zhuǎn)投 Chromium,讓我們先從 TypeScript 談起。
TypeScript 是 JavaScript 的超集,是為了解決 JavaScript 過(guò)于靈活、難以在大型項(xiàng)目中使用而創(chuàng)立。自創(chuàng)立至今,TypeScript 已經(jīng)被越來(lái)越多的人所接受,成為企業(yè)級(jí) JS 項(xiàng)目的主流。
TypeScript 早在 2010 年就在微軟內(nèi)部使用,然后在 2012 年 10 月對(duì)外公開(kāi)。到了 2014 年納德拉上臺(tái),微軟的風(fēng)氣為之一變,TypeScript 也迎來(lái)了另一個(gè)階段:發(fā)布了 1.0 版本,從微軟自己的代碼托管平臺(tái) Codeplex 遷移到 GitHub,從而吸引更多的開(kāi)發(fā)者。同時(shí)微軟的計(jì)算機(jī)大神——Delphi、C# 之父 Anders Hejlsberg 也開(kāi)始領(lǐng)導(dǎo) TypeScript 的研發(fā),他還走到前臺(tái),到各地去為 TypeScript 布道。
我還記得 Anders 來(lái)到中國(guó),在微軟北研做的一場(chǎng)分享,在分享中他手寫代碼演示了 TypeScript 的種種特性,還說(shuō)自己現(xiàn)在每天工作有很大一部分時(shí)間在 GitHub 上。他還介紹了微軟新的研發(fā)理念,以開(kāi)源為先。后來(lái)微軟的種種動(dòng)作都驗(yàn)證了這個(gè)說(shuō)法。
TypeScript 對(duì)微軟來(lái)說(shuō)太重要了。在之前開(kāi)源軟件吞噬世界,而微軟則在社區(qū)逐漸邊緣化,人們談?wù)?Linux 和其它開(kāi)源軟件,而對(duì)微軟的技術(shù)視而不見(jiàn),甚至有的開(kāi)發(fā)者在發(fā)布軟件庫(kù)的時(shí)候拒絕開(kāi)發(fā) Windows 版本。TypeScript 幫助微軟重回軟件開(kāi)發(fā)的主流,重新贏得了開(kāi)發(fā)者的認(rèn)可。
![]()
Source:The State Of JavaScript 2018
在前不久 Stateofjs 發(fā)布的調(diào)查報(bào)告里,除了 JS 的官方語(yǔ)言 ES6,TypeScript 的支持率遠(yuǎn)遠(yuǎn)超過(guò)了其它 JS 的方言 / 近親。
TypeScript 的成功也鼓舞了微軟更多的擁抱開(kāi)源,包括后面將.NET core及相關(guān)工具開(kāi)源,甚至將 Azure 的文檔也開(kāi)源在 Github 上。在 2018 年的 GitHub 年度報(bào)告里,微軟不僅在參與開(kāi)源項(xiàng)目人數(shù)上名列前茅,還有多個(gè)項(xiàng)目進(jìn)入最受歡迎的項(xiàng)目 Top 10.
2014 年微軟還有另一個(gè)大動(dòng)作,就是發(fā)布了 Visual Studio Code,這對(duì)微軟來(lái)說(shuō)是另一個(gè)歷史性的突破。
微軟第一次將開(kāi)發(fā)工具帶到了 Linux 和 macOS 上,第一次將開(kāi)發(fā)工具開(kāi)源,同時(shí)也是第一次利用其它公司的核心技術(shù)開(kāi)發(fā)自己的產(chǎn)品。這個(gè)核心技術(shù)就是現(xiàn)在在跨平臺(tái)桌面開(kāi)發(fā)中越來(lái)越受歡迎的 Electron(之前叫 Atom-Shell)。
Electron 是 GitHub 在打造自己的桌面端產(chǎn)品的過(guò)程中沉淀下來(lái)的,GitHub 基于它開(kāi)發(fā)了自己的桌面客戶端和代碼編輯器 Atom。Atom 為代碼編輯器領(lǐng)域吹進(jìn)了一股新風(fēng),并對(duì)傳統(tǒng)的代碼編輯器 Sublime Text 等形成了強(qiáng)烈的沖擊。
微軟的 Visual Studio 號(hào)稱“宇宙第一 IDE”,其強(qiáng)大毋庸置疑。它適合 C++、C# 等靜態(tài)語(yǔ)言的開(kāi)發(fā),但越來(lái)越多的編程語(yǔ)言如 JavaScript、Python、PHP 等青睞使用輕量級(jí)的代碼編輯器來(lái)進(jìn)行開(kāi)發(fā)。為了應(yīng)對(duì)這股潮流,2015 年微軟推出 Visual Studio Code,但出人意料的是,微軟在 VS Code 使用了 GitHub 的開(kāi)發(fā)框架。
微軟不是沒(méi)有能力推出自己的開(kāi)發(fā)框架,并且當(dāng)時(shí)的 Atom-Shell 也才推出一年多尚顯稚嫩,但這次稍顯冒險(xiǎn)的行為,為微軟贏得豐厚的回報(bào):發(fā)布僅僅三年之后,VS Code 成為開(kāi)發(fā)者最喜歡的代碼編輯器。
![]()
Source:StackOverflow Developer Survey Results 2018
VS Code 是如此受歡迎,它甚至都不需要微軟的開(kāi)發(fā)者們到處去布道。這中間有一件趣事:極客 時(shí)間曾聯(lián)系 VS Code 團(tuán)隊(duì)的工程師呂鵬,讓他來(lái)開(kāi)設(shè)一個(gè)付費(fèi)的課程,課程本身不貴,作者既布道了這個(gè)編輯器又從勞動(dòng)中獲得收益,但作者卻擔(dān)心被人認(rèn)為靠公司項(xiàng)目斂財(cái)而將課程下線了。在短短不到一周的上線時(shí)間內(nèi),課程就有幾千人購(gòu)買,足以見(jiàn)得 VS Code 受歡迎的程度。
如果說(shuō) TypeScript 代表著對(duì)開(kāi)源的擁抱,VS Code 既開(kāi)源又使用別家技術(shù)所以代表著開(kāi)放,既然微軟已經(jīng)在這兩個(gè)項(xiàng)目上驗(yàn)證了開(kāi)源和開(kāi)放的威力,那么為什么不在其它的項(xiàng)目上復(fù)用已有的經(jīng)驗(yàn)?zāi)兀?/p>
微軟 Edge 團(tuán)隊(duì)在 GitHub 上發(fā)布了一篇文檔,解釋了為什么 Edge 是復(fù)用上述經(jīng)驗(yàn)的一個(gè)良好的目標(biāo):
當(dāng)然,還有一條微軟不好意思說(shuō)但外人看的很明白的點(diǎn):Edge 之前在調(diào)研中市場(chǎng)覆蓋率僅占 4% 左右,這樣下去什么也不做才真會(huì)默默死掉,還不如掀桌子重來(lái)。
當(dāng)你看明白了微軟正在 Edge 上復(fù)用它們開(kāi)源與開(kāi)放的經(jīng)驗(yàn)的時(shí)候,也就知道我為什么會(huì)說(shuō)瀏覽器大戰(zhàn)還沒(méi)有結(jié)束了。
大家對(duì)于 Web 技術(shù)多樣性的擔(dān)憂暫時(shí)是沒(méi)有必要的,微軟在瀏覽器內(nèi)核的更上游——Web 標(biāo)準(zhǔn)上正在投入更大的力量參與,具體就體現(xiàn)在微軟會(huì)更多的參與到 W3C 和 WHATWG 的事務(wù)中去。
如果谷歌無(wú)視 Web 標(biāo)準(zhǔn)一意孤行,到時(shí)候微軟熟悉了 Chromium 的開(kāi)發(fā)之后,將有能力從 Chromium 創(chuàng)建分支,這也是開(kāi)源允許的做法。
Edge 更換底層平臺(tái),毫無(wú)疑問(wèn)影響深遠(yuǎn),而這么做也給微軟帶來(lái)新的機(jī)會(huì):
所以 Edge 轉(zhuǎn)投 Chromium 不但不意味著瀏覽器大戰(zhàn)的結(jié)束,反正還意味著未來(lái)還可能再起波瀾!
大公司通常容易患上一種 NIHS 綜合征(Not Invent Here Syndrome),具體表現(xiàn)為如果哪項(xiàng)受歡迎的技術(shù)不是自己的,那么一定要做一個(gè)和它類似的。微軟也曾經(jīng)是這一癥狀的患者,在歷史上,它創(chuàng)建了類比于 JavaScript 的 JScript、類比于 Flash 的 Silverlight,毫無(wú)疑問(wèn),這些全都失敗了。
一旦拋棄了這個(gè)癥狀,微軟突然發(fā)現(xiàn)自己可以發(fā)揮真正的實(shí)力:在開(kāi)發(fā) Windows、Office、Visual Studio 期間積累的豐富的經(jīng)驗(yàn)技術(shù)和對(duì)用戶體驗(yàn)的理解。
使用別家的技術(shù),然后比別人做的好,這目前是微軟的獨(dú)家本領(lǐng)。這種行為就像特洛伊木馬,進(jìn)入別人腹地顛覆對(duì)方。而且讓對(duì)方無(wú)奈的是,這種行為甚至無(wú)從防御,這些都是開(kāi)源規(guī)則允許甚至是鼓勵(lì)的,只能眼睜睜的看著對(duì)方超過(guò)自己。
當(dāng)然,前兩次成功不一定能證明接下來(lái)也一定成功。特別是 Edge 與對(duì)手相差懸殊,想要趕超其難度超乎想象。
總之,未來(lái)的瀏覽器領(lǐng)域的競(jìng)爭(zhēng)仍然充滿變數(shù),谷歌暫時(shí)領(lǐng)先了,但也不能躺在功勞簿上打盹,畢竟,IE 的前車之鑒就在前面,而微軟還沒(méi)有放棄。
快報(bào)
根據(jù)《網(wǎng)絡(luò)安全法》實(shí)名制要求,請(qǐng)綁定手機(jī)號(hào)后發(fā)表評(píng)論
微軟還是堅(jiān)強(qiáng)的,爆發(fā)力存在。