微软公司的视窗产品确实是改变人类历史的一项伟大产品。尤其是1995年8月24日,Windows95的发布轰动了整个世界。
这次划时代的产品发布活动盛况空前,无数新闻媒体追风报道。当时,美国纽约帝国大厦沐浴在微软的霓虹灯下,英国的发布会现场被漆成Windows95的巨大标识,在空中也清晰可见。位于华盛顿雷德蒙的微软总部完全变成了欢乐嘉年华现场:到处是美食、魔术、小丑、热气球、摩天轮、马戏团的帐篷……
这场发布会的中心当然是盖茨,他穿着微软的蓝色衬衣,脸上带着羞涩的微笑,在与《杰伊·连诺今夜脱口秀》名嘴杰伊·连诺(Jay Leno)开玩笑时,他竭力表现得很放松,他最风趣的一句话是:“Windows95是如此易用,连脱口秀节目主持人都能搞定。”
为了这次市场活动,微软耗费了3亿美元巨资,其中包括购买滚石乐队的单曲《现在出发》(Start Me Up)的版权,微软将其中的乐曲作为其Windows95操作系统的启动乐调。在Windows95的发布现场,滚石乐队倾情献唱。一篇文章记录到:“很多没有电脑的顾客受到宣传的影响而排队购买软件,但他们甚至根本不知道Windows95是什么。”
这个跨时代的产品可以说凝聚了数万人的心血。产品经理这样描述开发工程的浩大:“技术人员在开发Windows95的过程中一共消耗了2283600杯咖啡,同时还有4850磅的爆米花。”
后来,出色的多媒体特性、人性化的操作、美观的界面令Windows95获得空前成功。Windows95的出现带给使用者一个完整的图形化操作与使用概念,使人在电脑前的工作过程不那么枯燥乏味,使用电脑的经历也开始变得有趣。它的出现被认为是人类科技史上具有里程碑意义的事件。随后,微软在视窗的研发投入上力度越来越大。到后来又研发出Windows98、Windows2000、WindowsXP,以及后来的Windows Vista。
接下来三年半的时间,我有幸参与了微软Windows Vista的研发工作。在这个过程中深深地感受到了,我们现在已经使用的微软产品方便、快捷而又智能,但是在科技研发过程中却充满了曲折和困难。尤其是微软的Windows Vista系统,从开始酝酿到最后的发布,用了整整5年的时间,其间甚至经历过一次完全的推翻重写,这个过程,让微软视窗团队的每一个工程师都曾经充满沮丧和煎熬。也许,无论是历史还是科技,这种曲折都是前进的一个组成部分。
2002年初,我加入了Windows Vista的团队,组建了一个新部门,叫做自然互动服务部。盖茨总是对语音、语言、智能型助手式用户界面情有独钟,于是,他要求全公司在这方面的团队都加入我的队伍。
这些团队结合起来后,我们针对盖茨的Windows Vista目标,作了详细的策划。盖茨定位的Windows Vista的三大目标是:(1)支持新语言C#,所有操作系统软件都改用C#来写。因为C#语言的运行较慢,但是开发速度很快,这样微软不会落后于多人参与的开源Linux操作系统的发展。(2)开发WinFS (Windows File System),它是新一代档案系统,可以将每一个文件存成数据库。如果WinFS能够成功,慢慢的,全世界的数据就都存到微软的数据库,不但可以击败Oracle、IBM的数据库,也可以防止别的网络公司(例如Google)掌控这些数据。(3)开发Avalon——新一代显示系统,让用户在浏览器里看到的网站或服务和传统的应用软件感觉一样。如果某网站的服务和用户端软件看起来一样,用户也更难理解网站服务的优点在什么地方。
这三大目标从战略上来说都非常高明,如果实现了,微软就可以用最强大的武器Windows来攻击Linux、IBM、Oracle、Google,甚至所有的网站。
但是,这三大目标都是前所未有的技术,从来没有大规模得到商业认证,更没有在这么重要的产品中成为关键。不过最严重的是:这三大目标都是极难的技术问题,很可能多几倍的时间也做不出来。因为技术的瓶颈已经到了极限,很多总监看到这个设想就倒吸了几口凉气:“技术难度太高了!C#这么慢,怎么能做操作系统啊?数据库不够快啊?怎么可能当做档案系统?”还有些研究芯片的专家常常看着Intel的芯片计划就开始担忧:“一定是微软习惯Intel芯片加速的速度,才这么乐观。但是每18个月芯片速度就快上一倍的日子已经过去了,别说2004年推出了的这些芯片,照这样,2007年Intel的芯片都不够快啊。”他们没想到的是,Windows Vista真的迟了几乎三年,直到2007年才推出。
这三个团队发愁的时候,几乎所有其他的团队都开始挑战极限!大部分的团队,就像我的团队一样,说服自己做了leap of faith(信仰的飞跃),相信在盖茨的督促之下,这三大目标都可以完成。我们开始用尚未建好的基础着手搭建我们的产品。虽然可以预想到会有重重的困难,但是谁知道伟大的产品是不是就产生在不断挑战极限当中呢?
我和我的团队定了自己的目标:我们要在盖茨规划的基础上,做用户需要的功能。这样我们既能够帮助公司达到战略目标,又可以帮助我们的CEO满足用户第一的价值观,还能帮助公司做出又炫又有用的产品,而且真的能够解决用户问题。我们当时拟定了几个Windows Vista的新功能。
“视窗智能助手”:它在你随时需要帮助的时候,一点就出来,甚至会聪明地自己出来。它会根据别的用户碰到的问题和犯的错误来推测你可能碰到的问题和犯的错误,然后它会一步步地帮你解决问题。
“执行助理”:事先编译好的各种指令,只要用户要求就可以执行。例如:“在离我最近的打印机上打印”,“转发给北京分公司的员工”。
“机器学习”:有些新的指令或工作没有被人工录入,我们增加了机器的学习功能,能够学到这些新的词汇、描述等,让我们的机器助手拥有可以自我学习、补充知识的功能。
“新档案处理”(就是打开任何文件夹看到的):除了现在静态的档案排序外,我们的软件可以聪明地找到任何你的档案,即根据每个文件的数据库内容,聪明地搜索。例如:“王力宏2000年以后所有的MP3音乐”,“老板今年寄给我的邮件”。这些指令发出之后都会被转换成为WinFS的数据库指令,而形成真正的智能数据库。
这些工作都还是非常振奋人心的,我的团队从2001年年中到2004年年底,都非常努力地工作。作为Windows Vista开发过程的亲历者,我体验了其中的无比艰辛。大到一点点成果的突破,小到一个团队的组成建立。
比如,我的团队人手不够,而公司又很难增加新人来支援这些项目,因此,我不得不砍掉一些原有的项目。但是,在这样的小型重组中,不可避免的是人员的变动,甚至涉及一些裁员。
当时,我发现在一个语言小组里,居然有一个150人的团队都在做着“无用功”。在这150人的语言处理项目团队中,有一半是完全不懂技术的语言学家,而这些语言学家居然在指挥工程师的工作。负责这个团队的高管有一个“瑰丽”的梦想:通过语言学家的介入,逐渐地形成一道“语言彩虹”,一步步解决人机界面问题,让机器越来越多地可以理解人类的语言。
但是这一套技术是绝对不可行的。这几乎等同于我在博士论文阶段拒绝用“专家系统”的方式来做语音一样。我决心让这个团队中的工程师“解放”出来,专心地做更有前景的项目。
当我把这个决定告诉该团队的建立者时,他怎么也不同意我将这个团队解散和重组,于是他把状告到了鲍尔默那里,而鲍尔默又告诉了盖茨。
盖茨找到我说:“开复,我希望你的团队能让用户自然地与机器交流。那为什么你执意取消这个自然语言处理团队呢?”
“因为,这个团队走的方向是错的。”
“但是,大卫也是专家,还拯救过公司。他不认可你的看法。”
“比尔,大卫是操作系统的专家。我才是语音语言的专家。”
“但是,这个项目我们的投入很多,我们特意批准了一百多个人,围绕着语言学家来解决人类语言理解的问题。”
“比尔,当你走错方向的时候,投资越大,损失就越多,弥补也越难。”
“你确定这个方向不行吗?”
“比尔,你还记得我加入公司的时候,你和奈森都告诉我:微软的技术多次跟随着我在别的公司的工作吗?”
“当然!”
“如果我不在公司时都跟随我,那我加入了一定也要请你相信我。”
盖茨沉吟了一下,没有说话。
我看着盖茨的眼睛,对他说:“在公司很多人为了自己的利益会跟你说很多话。但是,我对你保证,我不会骗你。”
在那一刹那,我感觉我们的心灵有一个难得的碰触。
“好,那就照你的做。”盖茨说。
盖茨亲自参与这个问题的解决,最后支持了我的决策。然后,我亲自操刀,把这个团队裁剪了一半,才腾出了资源来做Windows Vista的项目。
第八章 西雅图五年:灾难——Windows Vista全部重写!
经过了三年的奋力拼搏,微软视窗团队的工程师们都已经疲惫不堪。但是,Windows Vista的成功却似乎遥遥无期。其实灾难早就在酝酿,因为大家在一开始就知道,这个伟大的计划实现起来,其执行难度实在是太大了!
WinFS团队虽然承诺了盖茨提出的三大目标,但是在实际的工作中感到了迷茫。WinFS团队认为他们的任务是“不可能的任务”,但是也不敢告诉盖茨。任何一个接触过Vista团队的人都知道,每次把测试版的Vista搭建出来以后,都发现庞大的系统根本无法运行。
作为一个亲历者,我只能诚实地回忆,当核心团队看到任务无法完成时,他们不再努力工作,只想着如何推卸责任。当时,几乎每一个团队都沉浸在这样的氛围里。Windows95与WindowsXP全球震撼登场的场景似乎已经飘然而去,而成功的渴望已经变成了对失败的恐惧和对项目的怀疑。我的团队也多次怀疑Vista能否照预期的时间表推出,另外,还有种种我们团队的工作需要依靠别人的项目的实现才能完成(这称做dependency)。这个时候,团队里的懈怠氛围就更加浓重了。这个时候,我总是告诉团队专注自己的工作,不要去乱猜别人的schedule(时间表)。慢慢的,整个公司都弥漫着一片“皇帝的新衣”的气氛,士气非常低落。
鲍尔默曾经说过,“在微软,唯一不变的就是变化!”Windows Vista的推出时间表一再地被改写,这种变化对于微软来说,确实并不稀奇。
终于,微软的最高层也认识到推迟已经无法解决真正的问题,而是要把所有以前的方案推翻。2004年秋天的一个星期六,Windows Vista的大老板吉姆·阿尔钦把所有的副总裁召集在公司,他无奈地对下属们表示:
“我们确定无法按预期完成这项产品。而且照现在的进度,Windows Vista无法预估出上市的日期。所以,我们别无选择,只有重新设计这个产品。我想问问你们,如果重头做起,希望两年能做完,你们认为可以做到什么地步?”
这个噩耗吓坏了所有的副总裁,几乎每个人第一个想到的就是:“盖茨如何反应?”接着想到的是“谁负责?”然后,大家就不自觉地想到,过去两年半的努力全部付之一炬了,而且还要开始未知的研发旅程,他们无法预知未来的结果到底如何。在场的人不禁全部倒吸一口冷气。
阿尔钦接着又说:“我知道,你们想知道比尔如何反应。我两个星期前告诉他这个消息的时候,他当时不相信这件事。他找了很多技术负责人咨询了他们的意见。昨天晚上,他找我开了会。他说:‘你自己看着办吧,我不管了。’”阿尔钦神情专注地解答了其他人的问题,其实,他没有说的是他自己因为这个问题已经丢官。不久之后,吉姆·阿尔钦宣布了自己的退休计划。
当时,从头做起的消息对于大家来说,真是个巨大的打击。大家静默了几秒钟以后,如同从梦中惊醒一般,开始七嘴八舌地讨论各种对策。最终,我们讨论出来的最可行的对策就是:“彻底改变这三大目标,具体做法是:(1)不允许用C#;(2)WinFS要取消,但是先不要告诉合作伙伴;(3)Avalon也要修改,看能留住多少。”
我对大家讨论出的技术决定是认同的,但是我觉得对合作伙伴应该坦诚透明。于是,我试着提出意见,我对阿尔钦说:“既然要取消一个项目,就应该坦诚地告诉合作伙伴。”
半天以后,我回到我的团队,对着四五百人宣布了这个“重大消息”,我压抑着自己的痛苦和激动,告诉员工:“今天我去开VP(副总裁级别)的会议,吉姆·阿尔钦告诉我一个令人惊讶的消息,按照新公布的三个原则,我们要重新策划我们的工作。我知道,这个消息对大家来说可能令人难以接受,但是,如果按照原来的计划,我们真的无法完成Vista的发布,因此,重新策划和重新工作是最明智的选择。希望大家能够振作起来,别受太大的影响。”
这个时候,我看到员工的脸上也露出不可思议的表情。很多员工在我宣布“噩耗”以后,身体僵在那里一动不动。我非常理解这些员工的感受,因为我和他们在这两年半同样经历了彻夜不眠和全力以赴。这样的决定对我和他们来说,同样是无法想象的打击。但是,我们知道,在高科技公司工作多年,半途而废和无疾而终是时有发生的事情,而作为一个探索者,接受是必须的。
按照新的规划,我们开始收拾现有的已经做好的工程,看看什么该丢掉,什么该留下。不幸的是,当我们开始重新作策划的时候,发现我们所有的工作几乎都要丢掉重做。两年半的时间呀!这样的割舍让我倍感痛苦。另外,按照新的规划,我发现我们能做出的有用户价值的东西微乎其微,这让我们非常失望。不过最后,Windows Vista推出时,十大功能里面,有两项是我的团队做的,只是那仅仅发挥了原来的创意和潜力的10%。