他们别无选择。
形势看起来很不妙。在获得Elevation Partners投资仅几个月后,Palm工程团队的士气已经开始不振。公司高管们鼓励他们拿出改变世界的勇气,德瓦安蒂也向他们描绘了一幅革命性的用户界面的蓝图,但默赛尔主导的操作系统在Palm内部依然无法取得大多数人的信任,除了他直接控制的一个工程师小组(成员大约是4人)。
Palm平台总监格雷格·西蒙(Greg Simon)和副总裁安迪·格里格纳(Andy Grignon)此时想到一个解决办法。他们花了一整个周末的时间,尝试对用户界面层采取一种截然不同的做法:完全使用Webkit创建用户界面层。Webkit是一款开源网页渲染引擎,是苹果Safari和谷歌Chrome浏览器的内核。“与其让一名工程师编写排列文字的代码,不如站在巨人的肩膀上,让Webkit完成这个任务。”一名消息人士称。
“与其让一名工程师编写排列文字的代码,不如站在巨人的肩膀上,让Webkit完成这个任务。”
在西蒙和格里格纳看来,使用HTML和Javascript的优点很多。一,系统能够快速执行大量任务,因为底层标准简单明了且被广泛使用。二,允许设计师直接将手工设计的作品应用到程序、屏幕和用户界面元素中。而且最大的好处是,Webkit已经存在--Palm只需将其移植即可。
当然,完成这一设想并非易事。Webkit最初并非为移动设备而生。Webkit核心的开发者从未将移动设备的内存有限、处理器性能低下和电池寿命等因素列入考虑范围--更不可能想过利用Webkit渲染整个用户界面。诺基亚和苹果当时已经将Webkit移植到了手机浏览器中,但西蒙和格里格纳的想法要宏伟得多。
两天后,西蒙和格里格纳相信他们可以做出初步模型并向其他人证明,马蒂亚斯的远见能够得以实现,他们所需要的仅仅是一款网页渲染引擎而已。他们向Palm软件负责人米奇·艾伦(Mitch Allen)做了演示,鲁宾斯坦不久之后也观看了这个演示。格里格纳获准带走十名工程师,用一个月的时间对该项目进行试验,目的是将Webkit和基本功能运行于早期原型机上。这款原型机代号为“Floyd”,基本上就是一款修改后的Treo 800w。Palm领导层当时并未承诺未来将采纳该系统,而仅仅是允许格里格纳进行尝试。
这个项目被命名为“Luna”。
十多名工程师组成的Luna团队开始了隐居式的生活。他们把办公地点安置在Palm园区内部的一间会议室,把所有窗户统统用纸糊上。这一切的目的,都是为了在Palm公司内部创立一个自己的创业团队。(这种内部秘密创新小组通常又被称作是“臭鼬工厂”)。“在Palm这样的大公司里,我们不得不这样做。我们必须保护工程师,”一名团队成员透露。Palm软件负责人迈克·阿伯特(Mike Abbott)甚至还为了确保“创业”团队保持专注,而与公司其他人发生冲突。Luna团队夜以继日地工作,研究如何完全基于网络标准开发一款手机。这是激动人心的时刻--所有参与这个项目的成员都带着远离Prima的强烈愿望而团结在一起。由于时间紧张,他们必须一次成功,因为再也不会有第二次机会。
一个月之后,Luna项目成为现实。使用Webkit的想法被证明是可行的。Luna团队当天晚上在库伯提诺小有名气的高档餐厅Alexander‘s举行了庆祝活动,一顿饭消费了数千美元,甚至差点使阿伯特在活动过程中心脏病发作。这次庆祝活动花费不菲,但是如果考虑到Luna团队所付出的艰辛,这点钱根本不算什么。“那是Luna团队应得的,”一名消息人士指出,“就算给其他硅谷工程师每天500美元的补贴,他们也不愿意承担这样艰巨的任务,而是宁愿选择辞职。”
匆忙上市的Pre
但Prima并未就此终结。2008年4月左右,初代Pre的原型机开始流传于Palm园区内部。与此同时,Luna系统的表现并不完美,尤其是运行在内存仅为256M的初代Pre上。系统会经常性地耗尽所有资源。为了提升系统运行速度,Luna团队决定移植高性能的谷歌V8 Javascript引擎。Palm成为第一家在移动平台使用V8引擎的公司;Android直到后来的2.2版本时才引入V8引擎。当时的形势非常敏感:谷歌已经发布Android操作系统,T-Mobile G1的首次亮相也仅有数月之遥。竞争加剧导致当时的互不信任达到前所未有的程度。“部分Palm员工甚至使用假冒的名字混迹在谷歌的邮件列表里,不时请教有关V8引擎的问题。我们不想让外界知道Palm在利用Webkit开发新产品。”一名工程师说。
为了解决Prima与Luna团队的内部竞争问题,Palm举行了一场“编程竞赛”,在预先设定好的时间内,两个团队同时开发各自系统的关键功能。多名消息人士均证实,Luna团队每次都能在开发速度和最终产品质量方面击败Prima。
到2008年年中,默赛尔和他的支持者陷入绝望、无助的境地。对于他们来说,与Luna团队的冲突已经从政治斗争升级为个人恩怨。在Luna团队埋头苦干的一个月里,默赛尔的团队也获准用一个月的时间修复Prima系统的问题。“那只是走过场而已,”一名前员工表示。所有人当时都已经确信,Luna才是未来。最终,阿伯特宣布终结Prima项目。这是一个关键的平台决定,这个决定将最终决定Palm品牌的未来。而当时,距离CES消费电子展只剩下6个月的时间。
由于Prima项目的终结,默赛尔被分配到了新的岗位上,负责寻找优化Webkit的方法。但没过多久其他人就发现,他不过在是利用这一职位继续他自己的事业:他接连开发出多款基准测试工具,试图证明移动平台上的技术尚未“成熟”。在某种程度上,他是对的--当时的移动网络技术的确尚未成熟,但Palm的工程师仍在努力试图完成这一创举。
“我们就像准备一场苹果发布会那样进行排练。”
当时,整个用户界面层全部被重写,Luna团队每天从清晨工作到深夜,希望Luna能够赶上1月份的CES展会。由于担心Sprint对重写整个平台的反应,Palm对Sprint谎称该公司只是在“重新设计系统外观。”Palm此前向Sprint展示Prima系统时,仅仅展示了电话应用部分,因此Sprint当时并未发现异样。
德瓦安蒂、科里根和鲁宾斯坦开始排练CES大会演讲。他们明白形势的严峻程度--这场演讲必须精彩绝伦,必须做到完美。“德瓦安蒂甚至会排练一整天,而我们则负责做记录,”一名员工称,“我们像准备一场苹果发布会那样进行排练。”