神译局是36氪旗下编译团队,关注科技、商业、职场、生活等领域,重点介绍国外的新技术、新观点、新风向。

编者按:作为智能手机时代的开创者,iPhone的诞生无疑是一个划时代的事件。但是,关于它的起源故事,由于苹果一贯的神秘风格,我们也只能从各种媒体和书籍了解到一些片段。比方说,关于iPhone操作系统的选型,在媒体添油加醋的渲染下,仿佛两支团队的竞争达到了白热化。本文综合梳理了各种来源,力图还原当年iPhone起源的时间线。文章来自编译,篇幅关系,我们分两部分刊出,此为第一部分。

上个月,The Information 发表了一篇非常有趣的报告,称 Facebook 决定取消自家的虚拟与增强现实操作系统(内部代号为“XROS”的项目),转而支持“VROS”。后者是源自 Android 的一套系统,他们的Oculus头显用的就是它。当我看到这篇文章时,不仅将 Facebook 的两个内部操作系统项目与 苹果iPhone 操作系统的起源进行了比较:

我在想这是不是有点像苹果 iPhone 的早期努力。那时候苹果内部有两支相互竞争的操作系统团队:一支是由 Scott Forstall / Bertrand Serlet领导的团队,他们试图把 Mac OS X 精简一下,移植到手机上运行。另一支是Tony Fadell /Jon Rubinstein/Steve Sakoman 领导的团队,他们打算将 iPod 的嵌入式 Linux 操作系统扩展为手机操作系统。也许 Facebook 那里发生的事情与其说是“我们放弃了自己的新操作系统,就用 Android好了”,不如说是“我们在 Android 上开发自己的操作系统的努力效果更好,不如继续用那个吧。”

不过,到了第二天,我意识到这不是一个好的,或者说公平的比较。我还意识到,把嵌入式 Linux 项目说成是“Tony Fadell /Jon Rubinstein/Steve Sakoman的领导”是错误的——尤其是考虑到Fadell在该项目所扮演的角色。

据我所知, Fadell支持该项目说法源自2011年《商业周刊》 一篇关于Scott Forstall(“苹果的魔法师学徒”)的特写文章,作者是Adam Satariano 、Peter Burrows 以及 Brad Stone:

领导另一支团队的是Fadell,他帮助开发出了 iPod。作为又一位神童, 2005 年,36 岁的Fadell成为了苹果有史以来最年轻的高级副总裁之一。据苹果前员工称,这场竞争开始变得白热化, Fadell和Forstall在人才、资源、注意力以及名声等问题上争论不休。

我上个月链接并再次引用这篇文章时,我略掉那篇文章的结尾,其中包括了一段来自Fadell的声明,立场很坚定:

“ Jon Rubinstein 与 Steve Sakoman离开苹果时,我接手了他们这项竞争激烈的 iPhone OS 项目。在评估了修改后的 Mac OS 是开发 iPhone 的合适平台之后,我迅速就停掉了这一项目。很显然,要想做出最好的智能手机产品,我们需要利用数十年来在 Mac OS 上投入的技术、工具与资源,同时避免项目之间不必要的竞争。”

Fadell本人在推特上插嘴说:

你看到的所有内容都不要信,尤其是 @ gruber的这篇文章。没有比这更扯的了。我同意,他写的东西一般都不错。我试过联系他好几次,但......

后来我确实与Fadell取得了联系。但我意识到,在与他联系之前,我本该了解得多一些。苹果一直是秘密的运作模式,但 iPhone 的起源故事已被多个来源多次讲述过。长话短说:Fadell的说法说得通; 《商业周刊》关于Fadell领导的嵌入式 Linux 项目的说法说不通。 (不过, 《商业周刊》关于Forstall 与 Fadell是政治对手的说法肯定说得过去。史蒂夫·乔布斯领导下的苹果残酷的内部政治——强烈个性,极其自负——各种纷争(参见下面的时间线)俨然一出像《继承之战》(Succession)那样的大戏。)

在苹果工作的时候,Ken Kocienda曾做出了当初 iPhone 触摸屏键盘,他的那本《创意选择》(Creative Selection) 既是一本引人入胜的读物,又是极好的历史资源——他提到了我关于 苹果的那篇《iPhone OS项目的决斗》,并在推特上写道:

那篇文章说:“然而,乔布斯并没有马上做出选择,而是让两支团队在烘焙大赛中相互竞争。”

当大家听到“烘焙”这个词的时候,他们可能会想象两支团队各自做出一款完整的OS供品鉴测试。但情况并非如此。

我记得iPhone手机操作系统的烘焙大赛只持续了几个月(大概是2到4 个月?),而从写出UIKit的第一行代码到史蒂夫·乔布斯在舞台上举起 iPhone,整个iOS的开发周期大概只用了1年多。

我们对手机操作系统的探索更像是概念验证的决斗——所以我同意DF那篇文章的标题。考虑到像操作系统这样重要项目的时间尺度,我们很快就做出了选择,而且当我们对后来成为iOS开展后续工作时,我们并没有回头看。

一位长期在苹果工作的工程师私下给我写信,并附上了Fadell推文的链接:

操作系统决斗这样的写法是一种常见的比喻。实际情况并非如此。

史蒂夫·乔布斯以擅长早早选出获胜的赛马著称。我联系过的一些消息来源还提到了大家不怎么提到的果断。乔布斯的品味是出了名的,但他对直觉的信心也非同寻常。他决定支持Forstall,用 Mac OS X 作为 iPhone 操作系统基础,这个决定显然是正确的,但也是很快就做出了的。

多年来,Facebook对自家 AR/VR 操作系统战略的态度总是模棱两可,这完全有可能并不是马克·扎克伯格本身优柔寡断的迹象,而是整个行业趋势的指标。是因为害怕断了想法的后路。每一个想法都应该深入探索——还有这么多钱可以花,为什么不呢? FOMO(害怕错过)嘛,又是大公司,手握数万亿美元的股份。

但苹果给 iPhone 操作系统举办的“烘焙”大赛只持续了几个月,牵涉到的工程师和设计师最多几十人。据 The Information 报道,Facebook 的 XROS 项目持续了四年多,到去年 11 月关闭时涉及的员工多达 300 多名。比较这两次烘焙大赛会很有趣,但这种有趣仅限于比较它们举办的不同之处。

Fadell曾经是——现在也依然是——一位硬件专家,从各方面来看,是他领导了 iPhone 的硬件项目。作为一款产品,初代的 iPhone 体现出苹果硬件和软件彼此成全的整体做法,但在工程的层面,iPhone 硬件和软件团队几乎是完全孤立的,只有乔布斯和他最信任(也很有才华的)的几个高级管理人员知道整个故事。

另一个曾在 iPod 软件团队工作过几年的消息来源,来自电子邮件的回复:

iPod 操作系统一直都是一团糟。这款操作系统是在 Portal Player、 Pixo以及我们编写的代码基础上做出来的,这些全都混在一起了。它没有内存保护或独立的进程,就是一大堆代码凑到一块,跟经典的 Mac OS 一样。一旦某个线程崩溃,整个系统就全完了。时间安排一直都很紧张,他们告诉我们,为了保证马上交付,一切必要的事情都得做,做了再说,以后再打扫残局。只不过后来已经没有后来了,而且代码也变得越来越难以维护。

苹果拿得到了Pixo的代码,Pixo破产的时候苹果买了后者的 IP。但是苹果和Portal Player还在打。 Portal Player 的胃口更大,想要的不只是ARM组件与支撑软件的批发商而已,它还想比这更成功些。 苹果后来决定放弃 Portal Player,所以我们删掉了PP所有的代码,开始自己重写。

这给 iPod Linux 爱好者提供了一个机会,他们提出了一个假设,如果我们完全抛弃掉笨拙的iPod 操作系统,然后用他们已经在跑的 Linux 取代如何?其实有这么一群 Linux 爱好者,他们总觉得任何技术问题都可以在 Linux 里面找到答案。有个项目就是要创建一套 Linux版的 iPod 操作系统,用来取代我们一直在跑的那个破旧的 iPod 操作系统。我觉得应该是 [Steve] Sakoman在负责这项工作。他们把项目推进到了演示阶段,但是从很酷的技术演示走到发布操作系统有很长一段路要走,认真审视一下所涉及的工作量很令人沮丧。管理层决定还是坚持用他们已经了解的这头恶魔,这个决定可能是正确的。

大约在同一时间,苹果开始开发手机。 Fadell负责硬件部分。在设计出可以大规模量产的硬件方面,他是真正的行家里手。 Fadell设计初代的 iPod 的目标之一就是为了便于制造,iPod的产量在苹果制造的所有硬件当中是最高的,而这个又转化为高利润。

译者:boxi

推荐内容