Geek
Palm 兴衰史:从 Palm 到 WebOS(中)
[-]
上一篇: Palm 兴衰史:从 Palm 到 WebOS(上)
继续说 UI 设计团队的老大 Matias Duarte 这边,他和以前的同事 Daniel Shiplacoff 一道,已经在用 Prima 做关键的「卡片式任务界面」设计的原型展示,同时还有负责弹出式提示系统的 Rich Dellinger,他们都很·不·爽·,「如果你站远了眯起眼睛看手机屏幕,或许还能体会到些许Matias的设计韵味,我们总被忽悠。只要Matias提点要求,做点手势动画的特效,整个界面刷新率就变得狂慢无比。这个系统还不支持透明度混合,也就是说所有的按钮和菜单只能以矩形显示,不能自定义形状。但凡我们有点想法要实现,都会把工程师团队搞得精疲力竭,我们设计团队都不好意思提需求了,只能不断妥协,Matias总没法完全实现他想要的结果。」
「太复杂,太难了,这个样子不会有人陪你们玩的,」
更要命的是,2008年初,Palm组织了一场第三方开发者大会,高层知道 Palm 需要开发者的支持才能保证 Nova 的成功,他们向开发者展示了 Prima 的 API 开发接口,和开发文档的草案。反响可谓炸开了锅,到处都是「这……尼玛怎么搞啊,玩蛋去吧!」的热烈回应。开发者表示「太复杂,太难了,这个样子不会有人陪你们玩的,你们要搞,就不要别出心裁,搞些符合行业标准的东西出来。」
复杂的事情还在后头,Palm 已经拍胸脯,让运营商 Verizon 首先发售第一款 Nova 设备——也就是后来的 Pre —— 但 Verizon 莫名其妙地突然改变了主意 (美国的运营商的反复无常虐厂商是出了名的)。这让 Palm 不得不尴尬地和相对弱小,用户基数也更小的运营商 Sprint 签署了协议。而Palm高层对 Windows Mobile 系统继续持乐观态度,认为WM可以帮助 Palm 熬过这段特殊时期,争取时间擦亮 Nova 的招牌,虽然它正以火箭坠毁的速度,连带着当时的旗舰机 Treo Pro 的销量一起崩盘。
但箭在弦上不得不发,Colligan 和 Rubinstein 就要在一年后一月份的 CES 大展上登台发布 Pre。时间和金钱,还有人们的耐心正在迅速耗去。
Palm 只能背水一战。
[-]
在 Pre 发布的时候,Palm设计了一款展现Palm辉煌过去(牌盒正面手机的是 Palm V ),和重回市场中心舞台的昂扬斗志的扑克牌发给雇员们,在掀盖顶部上印着项目代号「Castle」,里面印着这样的话:「我们宣示对 Palm 的商标、产品设计、软件设计、□□爆身手、江湖地位、震撼思想之能与颠覆世界之力拥有无可争议的权利。」
地下革命
事情看起来不太妙。就在获得 Elevation Partner 的注资之后,Palm 工程师内部开始谣言四起。老大们已经向全世界许下「改天换地」的诺言,Duarte 也交出了一幅革命性软件界面的蓝图,但是除了只听命于Mercer的团队自己(只有4个人左右), 新的操作系统却没有获得任何人的肯定。
「与其让一个家伙为了字符对齐写一堆代码,还不如直接在现成的技术上,用WebKit实现。」
平台总监 Greg Simon 和 副□□ Andy Grignon,他们曾一同工作于 Pixo —— 想出了一个解决当前危机的好点子。在某个周末,他们坐到一起,讨论是不是有可能在 UI 层面上进行一次戏剧化的大改革:只用 WebKit 作为内核来实现所有界面功能。WebKit 是当时苹果 Saifari 和 Google Chrome 浏览器的渲染引擎。在 Lampdesk,Simon 和 Chatterjee 已经开发出了一款名叫 WebVM,可以让开发者把网页前端技术用在软件开发上,所以他们觉得这想法或许能行。Prima 在文本排版处理上就是个让工程师泪奔的废柴,很多人向我们提到了这点。「与其让一个家伙为了字符对齐写一堆代码,还不如直接在现成的技术上,用WebKit实现。」
在 Simon 和 Grignon看来,用纯粹的 HTML 和 JavaScript 实现 UI 有几个突出的优势。首先,可以很快实现一大堆必须的功能,因为 WebKit 就是干这个的,底层的逻辑非常直白简单,任何开发着都能快速上手。第二,Duarte 可以立即解放,摆脱需要工程师熬夜配合开发的窠臼,迅速把设计稿变成软件、视图和界面元素,不需要费神考虑技术细节。最后,也是最关健的是,WebKit是现成的技术,Palm 要做的只是拿过来用就行了。
Simon 和 Grignon
当然,事情也不是这么简单。WebKit 可不是为手机而生的,这活它干不了。没有人会在手机那样内存局促、主频低弱、电池捉急的设备上做 WebKit 开发,更不可能在 WebKit 上开发出一整套系统界面来。虽然 Nokia 和 苹果早就发布了自己的基于 WebKit 的手机浏览器,但 Simon 和 Grignon 要搞的,是比浏览器更具野心和野性的东西。
只用了一个周末的时间,这哥俩并肩抠腚,七拼八凑出了技术原型,证明了只用 WebKit 就能实现 Matias 的全部视觉设计需求。他们拿着 demo 给软件开发主管 Mitch Allen 看; Rubinstein 也很快看到了这份 Demo。 Allen 被惊到了,于是分配给他俩10个程序员和紧紧张张的1个月时间来让 WebKit实现必要的基础功能,并开发出一台叫做「Floyd」的验证机,其实就是一台定制版的 Treo 800w,而且他们没有从 Palm 高层那里得到保证说 WebKit 就是未来的开发方向,他们得到的只是「你们可以试试看」的许可。
这次大变招的项目代号:「Luna」。
Luna 的十武士团队开启了忍者隐身开发模式,藏匿于 Palm 位于 Sunnyvale 的办公室的一间会议室里,窗户全部用报纸糊上。为了在 Palm 内部保住一个「创业团队」必须这么干,「在大公司里你要搞这种玩命的事情,只能以这种方式保护你手下的工程师们。」一个当年参与这个项目的成员如是说。Mike Abbott,他被 Ruby 从微软挖来当软件开发主管,接替了升任 CTO 的 Mitch Allen,帮正在公司内部「艰苦创业」的这个秘密团队挡掉各种会议应酬,让他们专心谋反。日落月升周而往复,这帮猛士飞速写代码,抠细节,把一个浏览器渲染引擎修改成一个手机系统的内核,这种前无古人之事必须以超常规的方法和强度工作才能达成,人际关系办公室政治这种东西通通抛之脑后,技术要摊上桌面说亮话,掐架是少不了的,那是一段压力山大下的激情岁月,所有人都为了能逃离 Prima 的梦魇而同仇敌忾,发誓要用代码灭掉这个杂碎。时间不等人,他们只有一颗子弹,一次机会,每一秒都不能浪费。
一个月以后,他们做到了,Luna已经成型了。团队在饭店欢庆大功将成,十个人一晚上恶形恶状地吃掉了上千美元,结账的时候差点让 Abbott 心肌梗死在 Pos 机前面。这是一次奢侈的公费吃喝,但这钱花的尼玛值啊:「这让我们的脊梁骨□□起来,而且这种玩命的项目,你就想花个500美金,打发一个硅谷工程师去卖命?门都没有好吗?!」
大步向前冲
[-]
Mike Abbott
但 Mercer 的 Prima 还没死硬。Pre 的第一次内部展示是在2008年的4月。那时候 Luna 还远没成熟,特别是在最早只有 256M 内存的Pre原型机上特别容易崩。为了改善性能,Luna 团队决定把 Google 的高性能 Javascript V8 引擎fork过来,这让 Palm 成为历史上第一家在移动领域使用V8引擎的公司;连 Android 都得等到 Froyo 才用上 V8。那是个特别敏感的时间点:Android 刚发布,一个月以后,开天辟地的 T-Mobile G1 就将面世。时不待我的竞争之激烈已经达到了顶点。一位Palm工程师说:「那时候我们的人逼急了只能匿名往Google的开发邮件列表里发求助,我们总不能公开说:嗨狗哥,胖弟我正在用WebKit做手机系统呢!问您个事儿呗?」
Prima 的人用帘子把自己的桌子围了起来
为了尽快平息 Prima vs Luna 的内耗,公司举行了「比武大赛」,两个团队必须在规定的时间里,展示自己实现规定功能的能力。从各个渠道得到的反馈是,Luna 无论在最终成品的效果上还是性能和开发效率上,都妥妥地战翻了 Prima。
在 2008 年中期,Mercer 和他的部下们已经进入静默模式,成了不发言不帮忙的无用存在。对他们来说,Luna 已经不止在公司策略上打压他们,而且已经上升到人身攻击了。有人描述 Prima 的人用帘子把自己的桌子围了起来,要知道那原来是一个开放式的办公空间——你抬头能看见的脸上,都写着支持 Luna,除了躲在帘子后面的 Prima 团队。在 Luna 团队度过了那段隐匿开发模式以后,Prima 团队也进入了一样的状态,与世隔绝埋头修bug,前雇员说:「他们只是名义上还存在,但其实大家都认为 Luna 才是Palm的未来方向。」最后 Abbott 宣布 Prima 团队将被解散。这是一个关键的平台抉择——Luna将担负起 Palm 未来发展的重任——一个只用了6个月时间的东西,就拿要去 CES 大展见人了。
Mercer 被洗牌出局,被委以「给 WebKit 提意见」的虚职,但有消息说,他倒没自暴自弃,很快找到了一个表达抗议的的好方式:他写了一个 WebKit 性能测试套件,以证明网页技术不能在移动领域唱主角——还别说,那时候他的观点也不算错,这种技术的确还没成熟,但是 Palm 的工程师们已经被逼上梁山无路可退,因为所有人都明白,这才是代表未来的技术方向。一位高层人士告诉我们,大部队正在探索未知的时候,Mercer还在原地打转。
[-]
「我们以十足的苹果范儿准备着发布会」
UI 层的阴霾已经一扫而空,Luna准备好了在一月份被端上 CES 的大桌来供人品评。黑夜刚去黎明将来。 Palm 却开始担心,不知道等告诉运营商 Sprint 他们最近到底做了什么(半年来我们开发了新系统,一直忘了诉你)的时候会,对方会有什么反应。所以他们硬着头皮和之前看过 Prima 的Demo的 Sprint 的决策层说:「你看,我们换了一套皮肤……」。因为 Sprint 只看过内部测试的程序,所以没闹明白这里面的机关。
但是在 1.0 版本里,还没有完全干掉 Prima 的代码,所以工程师们抓耳挠腮地要写一个和让基于web技术的界面与老的 Java 内核通信的中间层。第三方开发者更是不被允许直接和 java 内核交互(对开发者来说 Luna 是不存在的),但实际上 Luna 就在那儿黑着脸帮 Prima 的 java 代码擦屁股。一位工程师叹道:「这事儿本来应该在2009年了结,但……哎,不说了。」
与此同时,Duarte,Colligan,和 Rubinstein 已经开始备战 CES 的工程师大会。他们知道这次大会的重要性——必须牛的一逼,□□的一地。「Duarte 将要每天操练走台,我们帮他准备PPT」一位成员说:「我们以十足的苹果范儿准备着发布会。」
结果也确实牛一逼,□□一地:在 Venetina 酒店举行的发布会上,无论是硬件性能还是软件界面的展示,都让与会的人神魂颠倒满脸笑容。在对CES的报道中说道:「这是 Palm 的一次重大胜利,我们被征服了。」发布会还登上了 Joshua Topolsky 的博客。令人遗憾和困惑的是运营商 Sprint 的网络制式是 CDMA,这让人诟病 Pre 在关键的 2009 年上半年销售窗口期只有这一种版本,但是对于 webOS 或者 Pre 本身的负面评价却很少。
[-]
[-]
发布会后,Topolsky 和我有机会在一间会议室里拿 Pre 把玩了一个多小时。当时 Pre 还处于比较粗糙的阶段(做工和感受上),但是整体上接近 Matias Duarte 在众人面前所展示的;从各方面来看,Pre 是一款扎实的产品。
「皇帝没穿新衣」
在 CES 大展上的展示没有造假,但大量的关键功能,在后台并没有完美实现。知情者说:「皇帝没穿新衣。」就算为了赶时间,在底层保留了大量 Prima 的代码要处理掉,那在 Pre 正式上市前,还有很多艰巨的工作需要完成。Palm 内部所有人都明白这一点。在 CES 上,工作人员拒绝让任何媒体碰机器,这个举动引起了很多媒体的注意,引来了对产品完成度的质疑。
没有 iPhone 的 Sprint,却已经开始马力全开。在那时候,Pre 被运营商视为一款「神奇的异类」。Sprint 甚至在 Pre 上市之前,就给了 Pre 入网许可,这在美国的无线通讯业内是很罕见的——只有iPhone享受过这种待遇。
2009年6月5日,Pre 正式在美国上市,在2009年上半年销量还算不错。几天以后,在位很长时间的 CEO Ed Colligan 让位于早已深入公司运营的 Jon Rubinstein,Palm 守护者的更迭已经完成。
webOS Blowfish 与致命收购案
产品面世只是一系列灾难的开始,「我们搞砸了太多事情。」,一位知情人士说:「在早期的发布中,在2009年底就发布了 1.0.3, 1.2, 1.2.1, 1.3.1, 1.3.2, 和 1.3.5 这么多版,都是为了抢在 Pre 正式上市前抢修bug和缺漏。」
2009年11月,Motorola Droid 的发布,让屋子里的人都倒吸一口凉气
在 Palm 内部,新系统的发布会有两个版本号:一个是首字母按字母表顺序起名的主版本(比如 webOS 1.0 叫「Albacore」),还有抢修bug的,和主版本号同首字母,以酒精饮料命名的小版本号(比如「Absinthe」)。要赶在2009年底前完成「blowfish」也就是 webOS 2.0 ,并替换 Albacore 的开发工作成了拖垮团队士气的原因,事实上,Blowfish 才是 Palm 工程师团队想要发布的第一个版本:这是第一个真正「去 Mercer化」的版本,和 1.0 还保留了大量 Prime 代码需要 Luna 作为中间层不同的是,Blowfish 不会有一行Prime代码。也是第一次彻底在webOS里扫除了所有 java 代码。
与此同时, Pre 并没有成为大家期待的明星产品,与 Sprint 合作被批评者认为是 Pre 不火的主要元凶,但实际情况可能更加复杂,因为 Palm 推出的一侧 Pre 广告,结结实实地毁掉了 Pre 的产品形象,广告里一个没睡醒的女人要观众「顺其自然」—— 顺你【哔——】 啊!这则广告实在太古怪了,以至于在YouTube上冒出了一堆恶搞 Pre 的视频。
但是 Palm 还在试图和 Verizon 达成交易的谈判的中途,Verizon 抛出了一份关于 Pre Plus 和 Pixi Plus 设备的大订单,向 Palm 承诺 Pre Plus 将会成为运营商2010年主推的一线产品。但就在2009年11月,Motorola Droid 的发布,让屋子里的人都倒吸一口凉气——它让Palm彻底处于谈判劣势。据回忆,Verizon 已经决定抛弃 Pre Plus,向 Google 和 Motorla 订购更多,利润更高的产品,让 Droid 成为市场的矛尖。
结果就是 Droid 获得了巨大成功。Verizon 许诺的投给 Palm 的市场费用全都落空,而可怜巴巴的一点宣传投入,让 Pre Plus 成为了一款特定年龄层定位的小众产品。Verizon 终止了采购协议,而Palm却已经准备了大量库存,这彻底击垮了公司的底线——多方都认为,Verizon的叛变,是Palm棺材上的最后一刻钉子,战略失误让Palm损失了上亿美元,在2010年初,管理层就已经意识到除了被收购,Palm已经走投无路了。虽然银行里还有足够的现金让他们再经营一阵,但产品和平台开发了已经无力为继了。
此时,Palm雇员们都对于收购的事情守口如瓶,虽然这高层已经在秘密推进这件事了。Duarte 和一些高级员工,常会被耳语叫去会议室见一些不认识的人,向他们展示产品和技术,也不许他们多问对方的身份。「但实际上你可以大概辨认出这些人的来历,比如这个家伙可能是三星的。」
(未完待续)……
下一篇:Palm 兴衰史:从 Palm 到 WebOS(下)