亦敌亦友 微软Edge浏览器为何要采用Chrome引擎?
(原标题:INSIDE MICROSOFT’S SURPRISE DECISION TO WORK WITH GOOGLE ON ITS EDGE BROWSER)
网易科技讯5月19日消息,据国外媒体报道,微软早在2015年就发布了Edge网络浏览器。但却在2018年出人意料地转而采用谷歌的Chromium开源引擎。本文就微软如何做出这一重大决定以及接下来可能发生什么的故事进行了描述。
微软首席执行官萨蒂亚・纳德拉(Satya Nadella)对此感到很沮丧。微软副总裁乔北峰(Joe Belfiore)在接受采访时表示:“萨蒂亚找到我们说,‘嘿,我希望看到我们在浏览器方面取得更多进展。’”。当时纳德拉这样说,“谷歌在基于Web协作的用户体验方面做得很好,Office团队正在投入更多的资金来改善我们的,我们希望自己的Web浏览器也能变得更好。” 乔北峰承认“Edge的声誉好坏参半” ,但微软一直在花大量时间试图提高其浏览器的兼容性,同期谷歌一直在推进Chrome浏览器的开发,这巩固了其作为桌面默认Web浏览器的地位。
在这种情况下,微软不得不大幅改变其Edge浏览器。乔北峰与纳德拉的会面最终导致微软做出了一个巨大的决定,抛弃自己开发的浏览器内核,转而使用Chromium作为新的浏览器引擎。这一决策的风险再高不过了:Windows和Web本身的未来可能都取决于这个项目。
在与纳德拉会面后不久,微软的浏览器团队开始分析Edge的所有问题,并为其缺陷选择了一个不同的术语,称其为“逆风”( headwinds)。“这是一个信号,表明Edge在2017年面临的不仅是技术层面的问题,也不一定是无法克服的。从理论上讲,这些缺陷只是减慢了被接纳的速度。
最强劲的逆风之一是使用量。尽管Windows 10的安装基数在不断增长,但使用Edge浏览器的用户却不够多。人们仍然在选择Chrome和其他浏览器。乔北峰也承认:“Edge浏览器的使用量很低,部分原因是我们只在Windows 10系统上运行。”“在全球所有设备中,尽管Windows 10操作系统体量庞大,但占比来看仍然是少数。”
除此之外就是Edge浏览器的兼容性。由于Edge使用的渲染引擎与Chrome或Safari有所不同,这意味着其有时会在某些网站上出现问题。测试网站对于多个浏览器的兼容性一直都很困难,而且由于Edge浏览器的使用率很低,这意味着针对其进行的优化常常不在Web开发人员的优先级列表上。
Edge浏览器还建立在微软的通用Windows平台(Universal Windows Platform,简称UWP)基础之上,这是该公司此前通过Windows 8和Windows 10大力推介的通用应用程序,可以在台式机、平板电脑、手机、Xbox游戏机和HoloLens等设备上运行。“我们的第三个逆风是UWP。这并不是说UWP不好,但UWP并不是一个有着35年历史的成熟平台,也不是一个已经编写大量应用程序的平台,”乔北峰解释道。这意味着UWP中像支持多显示器等功能并不可靠,而Edge团队将不得不等待UWP的更新。微软需要让Edge浏览器重新成为一款真正的桌面应用程序,能够适用于Windows 7、Mac和Windows 10多个平台。
微软考虑过许多不同方法来应对所有这些不利因素。它考虑过看似简单的解决方案,比如让Edge浏览器进入Windows商店,因此能够比核心操作系统更新得更频繁。它还考虑在Windows 7操作系统上启用Edge浏览器。而迁移到Chromium引擎也是解决这些问题的方法之一。
“我们说,‘不,我们认为可以通过兼容性达到目的。’”乔北峰说。
因此,微软投入了更多工程师试图解决Edge浏览器的兼容性问题,但这是一种打地鼠式的愚蠢方法:每当解决了Edge浏览器中的一个问题后,就会弹出另外10个问题。随着谷歌通过Chrome推出了许多新标准和速度,Web网络的发展速度大大加快,而微软却没有跟上脚步。
微软实现其关于Web网络野心的另一个大问题是公司的组织方式。当微软开始Edge项目时,Windows的Web平台工作EdgeHTML是由一个独立的团队来进行的,而构建和维护Edge浏览器本身的团队没有参与其中。微软去年对Windows业务进行了大规模重组,前Windows负责人特里・迈尔森(Terry Myerson)离开了微软,微软Web平台和Edge团队在乔北峰的领导下进行了整合,以增强最终打造出更好Windows浏览器的责任机制。
这次重组更加凸显出Edge的问题,现有的Web团队已经联合起来改进公司的浏览器工作。微软开始在不同的开源技术实现上构建新的浏览器原型,看看什么是可行的。其中一个原型代号为“Septagon”,完全实现了Chromium引擎。Septagon浏览器原型是显而易见的选择。但这一转变事关重大,必须由最高层做出最终决策。
微软花了几个月时间对Edge浏览器迁移到Chromium引擎进行了认真评估,因为这是该公司通常做法的一个重大转变。“我们做了路演,”乔北峰解释说。“我们去见了比尔・盖茨(Bill Gates),我们去见了来自LinkedIn的首席技术官凯文・斯科特(Kevin Scott),他是我们的,,还有我们的董事会成员里德・霍夫曼(Reid Hoffman)。”该团队还会见了现任GitHub负责人奈特・弗里德曼(Nat Friedman)。
所有这些会面的目的都是为了获得一些关于Edge浏览器切换到Chromium引擎的外部建议,所涉及的挑战,以及该公司到底期望与谷歌建立什么样的关系。毕竟对微软来说,转向Chromium引擎是一个巨大的赌注,也是更多接纳开源代码。
其中一些挑战涉及如何与开源社区建立良好的关系,但另一些挑战则是微软Windows工程团队运作方式的根本性改变。Edge浏览器每六个月向公众发布一次更新,但是Chromium Canary的开发人员每天都要重构一次代码。Chromium也是一个不同的代码库,微软的工程师必须对其进行深入理解并为之做出贡献。
在2018年9月决定采用Chromium引擎之前,微软花了大量时间对其进行分析。纳德拉和他的领导团队批准了这一变更,然后微软准备在12月公开宣布。这是一个重要的时刻。
“我们有点紧张,”微软Edge项目经理杰特・曼恩(Jatinder Mann)承认。“幸运的是,当我们宣布这一消息时,我们得到了Chromium工程师和其他Chromium浏览器厂商的积极响应,他们非常高兴看到我们能够加入这个社区。”人们的反应大多是积极的,其他浏览器工程师认为这是为改进Web网络而获得更多帮助的一种方式。
然而,火狐浏览器开发商Mozilla并不欢迎微软的举动。这可能意味着Web开发人员不太可能使用任意浏览器编写符合Web标准的代码,而更可能只为Chromium和Safari编写代码。所以Mozilla说它将继续“为一个真正开放的Web网络而战”。
一旦做出决定并公之于众后,Edge浏览器转向Chromium引擎的真正工作就开始了。虽然谷歌和微软的工程师以前常常一起合作来帮助设计Web标准,但是这次将是非常不同。微软采用Chromium引擎意味着这种关系将变得更加紧密。
有时双方需要决定到底采用Google Hangouts还是Microsoft Teams进行协作通信,或者到底是使用Word还是Google Docs。而微软的工程师们往往愿意迁就谷歌。
谷歌工程师与微软讨论了Chromium开源社区通常是如何工作的,微软的工程师也采纳了这些流程。曼恩表示:“我们的许多原则与这些最佳实践非常一致。”这些实践包括长期参与Chromium项目,维护微软所做的任何贡献,尊重架构设计以及跨平台和跨设备的需求。
微软和Chromium工程师现在正在合作解决一些问题,比如浏览器的易访问性、滚动和触摸控件等问题。触摸控件一直是Edge浏览器的重要组成部分,微软现在正在对Chromium引擎进行改进,使在Web表单中选择日期或时间时更易于触摸操控。微软还在开发支持Chromium引擎的Windows触摸键盘,包括加入在键盘上滑动书写等功能。
很明显,现在还处于微软开发Chromium的早期阶段,来自微软和谷歌的工程师似乎在为类似的目标进行良好合作。但微软和谷歌仍然是激烈的竞争对手。以前,谷歌的Chrome浏览器专用网站在Edge上运行得并不好,Mozilla的一位前高管最近指责谷歌多年来一直在破坏火狐浏览器,尽管谷歌与火狐浏览器有着密切的合作关系,曾经达成过一项将谷歌搜索作为默认设置的协议。
谷歌和微软多年来也有过公开的斗争,这导致生态系统战争的发生,并影响了两家公司的客户。Windows Phone用户暂时无法使用谷歌地图,Windows Phone的YouTube应用程序也引发了一场激烈战斗,而谷歌还切断了Gmail对Windows Phone中Exchange ActiveSync支持,这让微软感到意外。加之谷歌拒绝开发Windows应用程序,所有这些事件都削弱了微软在移动领域与Android操作系统竞争的努力。
YouTube工程师甚至在近10年前策划了一个秘密计划,要消灭Internet Explorer 6。最近,YouTube在Edge、火狐或Safari等非Chrome浏览器上运行得并不好。考虑到这段黑历史,一些人担心谷歌可能会利用它的许多Web优势和服务来破坏微软向Chromium引擎的迁移。这并非毫无根据的恐惧,但却是一种讽刺:如果这种情况继续下去,微软可能最终成为“拥抱、延伸、消灭”战略的受害者。
最近,当Google Meet突然不在支持新版Edge浏览器时,这些担忧变得更加强烈。谷歌最近还在Edge Chromium用户使用Google Docs时添加了一个“不支持浏览器”的警告。埃里克・劳伦斯(Eric Lawrence)在加入谷歌开发Chrome之前曾为IE浏览器工作,现在又回到了微软。他在Twitter上透露,谷歌最近的改动可能不是恶意的。谷歌并不是故意要屏蔽微软的新版Edge浏览器。
“我认为我们的期望是谷歌浏览器将与我们公平竞争,”乔北峰说。“我们希望我们能成为Web标准和Web实现方面的工程合作伙伴,在Windows设备上运行良好。这似乎是可能的,而且符合所有人的最大利益。而且在差异化方面还有很大的竞争空间。”
毫无疑问,谷歌欢迎微软对Chromium引擎的贡献。谷歌工程师们在最近的一次BlinkOn Chromium活动上邀请微软登台,到目前为止,微软已经为Chromium贡献了400多种融合。谷歌一位发言人表示:“Chrome从一开始就是开放网络的拥护者,我们欢迎微软加入Chromium开发者的社区。”“我们感谢微软和Web标准社区在推进开放Web网络、支持用户选择和提供良好浏览体验方面所做的工作。”
新旧Edge浏览器的转换不会一蹴而就,微软仍在研究如何实现这一目标。
微软正在展示为Edge Chromium浏览器规划的一些新功能,而Mac版浏览器也应该很快就会推出。Edge浏览器也将推出一种新的“IE模式”,这可能会帮助一些仍然依赖于面向IE设计的古老内部网站企业用户转向更现代的网站。Edge浏览器还设计了一个新的“收藏”功能,以改善从Web上收集信息和笔记的不良体验。微软甚至添加了精细的跟踪控件,以阻止广告通过Web网路跟踪用户。
除了这些特性,Edge Chromium还在不断改进,而微软与谷歌的关系也在不断变化。但最终的结果意味着,如果你使用Windows,那么Chrome和Edge浏览器在未来几个月都将变得更好。Edge已经感觉和Chrome一样好了,它很容易就会成为有史以来最好的默认浏览器窗口。不过Chrome可能还不够好。现在轮到微软来说服所有人,为什么放弃Chrome是值得的。(辰辰)