IBM的确是一家了不起的大公司。
——比尔·盖茨
惠普和施乐公司在个人计算机市场中并没有什么惊天动地的作为,因此人们都非常关注IBM公司将如何动作。这家实力强大的公司一向被人们视为所向披靡、无往不胜的公司。至少从20世纪60年代中期以来,该公司就赢得了赫赫名声,当时它占据了2/3的计算机市场。后来,当IBM公司的老板小汤姆·沃森把公司的前途命运押在一种采用半导体器件的新型计算机系列上,而这种新型计算机会使IBM的大多数有利可图的计算机立即过时,但是这项举措得到了很好的回报时,IBM公司的经营显得更有活力了。1971年,曾经领导IBM360计算机开发的文森特·利尔森接替沃森担任IBM公司的首席执行官。两年后,敢于冒风险的弗兰克·加里又接替了利尔森的职位。
不过,仅仅依赖企业的规模,是无法确保它在个人计算机经营中取得成功的。在华盛顿州的贝尔维尔,与苹果计算机公司相比,微软是个小公司,而与旁边的跨国公司IBM相比,就更加微不足道了。虽然微软只有几十名员工,他们大多数是在上班时穿着T恤衫的编程员,但是它显然经营得相当不错,它甚至通过销售硬件来赚钱。
微软公司从事硬件经营是通过一个偶然机会而开始进行的。保罗·艾伦与比尔·盖茨坐在微软公司停车场上一辆小型运货汽车的后面,谈论“苹果公司的问题”。当时微软公司的程序都不能在惟一的苹果公司的个人计算机上运行。盖茨不同意修改微软公司的所有软件,使之能够在作为苹果计算机大脑的6502微处理器上运行。艾伦则建议说:“也许有办法通过硬件来解决这个问题。”
他们请来华盛顿湖对面的西雅图计算机产品公司的蒂姆·佩特森,为苹果计算机开发一种插件板,以便在苹果机上运行微软的8080和Z80软件,他们将该插件板取名为“软卡”(SoftCard)。佩特森制作了一系列的软卡样品,后来唐·伯迪斯接管了这个项目的开发工作。当然,如果要运行应用软件,插件板也必须能够运行为之而编写软件的操作系统CP/M。盖茨与数字研究公司签订了一份购买用于软卡的CP/M使用许可证协议。
一天下午,艾伦与盖茨坐在一起谈论软卡的前景问题。他们认为,如果伯迪斯能够使软卡运转,他们将能销售5000块左右的软卡。伯迪斯真的使软卡运转起来,而且他们在3个月内卖出了5000块软卡,后来又卖出了更多。
软卡解决了微软的软件在6502微处理器上运行的问题,但是如果以后出现又一个热销微处理器,那该怎么办?微软公司必须提供另一种软卡,或者转换它的所有软件。1980年夏,微软决定永远结束这种软件转换方案,改用新的解决办法,也就是首先在数字设备公司的小型计算机上将微软的所有软件重新编写成一种“自然”语言,然后编写特定芯片的翻译程序,该翻译程序能够自动将使用“自然”语言的软件转换成6502或其他任何特定处理器需要的形式。这项任务的工作量很大,但是,如果微软打算向所有微机制造商提供软件,而且使它的产品成为业界的标准,那么这项工作是非常合算的。这就是他们当时的想法。
1980年6月,保罗·艾伦对BASIC语言进行了改进,使之能在采用新型英特尔8088和8086芯片的计算机上运行。8086是专门为小型计算机开发的新一代微处理器之一,它配有设计更加符合逻辑的指令集,并且具备更多的功能,更加适合系统编程员使用。它还采用16位结构,也就是说8086处理的信息字节长度是8080、Z80、6502或市场上其他常用的8位微处理器处理的字节长度的两倍。这一差别会大大影响计算机的运行性能,因此它的内存容量会成千倍地增加。8088是8086的折衷版本,它配有一些老的8位处理器特性,但是它的指令集与8086相同。
同年7月,比尔·盖茨正忙于为阿塔里公司开发BASIC语言。一天他接到IBM公司的一位代表打来的电话。他感到有些吃惊,但是并不十分惊奇。IBM公司的官员曾经在购买一种微软公司的产品之前给他打过电话,后来那笔生意没有做成。但是这次电话更显得蹊跷,IBM公司想从该公司设在佛罗里达州博卡奇卡的机构中派一些研究人员与盖茨谈一谈关于微软的事情,盖茨毫不犹豫就答应了。“下个星期怎么样?”盖茨问道。“明天我们坐飞机来。”IBM公司的人说。
盖茨准备取消第二天与阿塔里公司的董事会主席雷·卡萨尔的约会。“IBM是个大公司。”他睡意朦胧地说道。
由于IBM确实是一家规模极其庞大的公司,因此盖茨决定求助于史蒂夫·巴尔默,巴尔默是盖茨的商务顾问、代理与投机公司(Proctorand Gamble)的前产品部副经理。1974年盖茨上哈佛大学时就结识了巴尔默。1979年,盖茨感到微软公司的管理出现困难时,他聘用了巴尔默。巴尔默脾气急躁,而且雄心勃勃。从哈佛大学毕业后,他又进入斯坦福大学进修MBA课程,后又中途退学,开始从事赚钱的买卖。
能够进入微软公司,巴尔默感到非常高兴。他对这家规模不大的软件公司抱有很大的热情,而且他喜欢盖茨这个人。他让盖茨重又想起在哈佛大学时他是如何说服盖茨加入他的男子俱乐部的。在加入俱乐部的仪式上,他让盖茨穿上紧身小礼服,蒙住他的眼睛,把他带到学生自助餐厅,让他向其他学生介绍计算机知识。这次盖茨与IBM公司的交易使他想起了过去的这段经历。
盖茨也喜欢巴尔默。晚上盖茨常常在哈佛大学的宿舍里打扑克,打完扑克以后,他常常跑到巴尔默那里讲述玩扑克的趣事。1980年他们在微软公司一道工作时,盖茨发现他仍然喜欢与巴尔默讨论各种问题,巴尔默很快就成为盖茨业务上最亲密的知己,因此当他接到IBM公司的代表打来的电话时,他自然想到要求助于巴尔默。
“你瞧,史蒂夫,”盖茨说,“IBM公司的代表明天就要来了,IBM是个大公司。我们最好让这些家伙觉得我们很有城府。为什么我们两个人不一起去会见IBM的代表呢?”
盖茨与巴尔默都不清楚IBM公司的代表来访是否有什么特别的事情,不过盖茨不得不为此而进行充分的准备。“盖茨有点儿过分激动,”艾伦后来回忆道。“他希望IBM公司将会使用我们的BASIC语言。”为此,巴尔默说,他与盖茨立即对事情进行了安排,也就是准备穿上制服和领带,这在微软公司中属于非同寻常的装束。
会议开始前,IBM公司的代表要求盖茨和巴尔默签署一份协议,承诺不向IBM公司的人员透露任何机密信息。蓝色巨人(即IBM公司)的这种做法是想避免将来卷入诉讼案件之中。这样一来,如果盖茨向IBM公司的人员透露了关于微软的有价值的信息,以后倘若IBM利用了这些信息,盖茨将不会向IBM公司提起诉讼。IBM对诉讼这类事情很熟悉,巧妙地运用法律制度,这在IBM公司长期控制大型计算机经营领域的过程中,曾经起过非常重要的作用。盖茨对IBM公司的这个要求显得有些摸不着头脑,不过他同意签署这个协议。
这次会议不仅仅是个互相介绍情况的礼节性会议,IBM公司的两名代表向盖茨和巴尔默提出了“许多非常奇怪的问题。”他们想了解微软公司究竟干些什么,家用计算机中哪些特性起着重要的作用。第二天巴尔默打印了一封给IBM公司来访者的信函,感谢他们的来访,并且让盖茨在信上签了名。
IBM公司的代表来访后的一个月内什么事情也没有发生。8月底,IBM公司再次打来电话,想要安排第二次会议。“你们介绍的情况确实使我们很感兴趣。”IBM公司的代表对盖茨说。这次IBM公司将派5个人,包括一名律师,前来参加会议。为了不被对方压下去,盖茨和巴尔默决定自己公司也派5个人参见。他们让自己公司的律师(以前曾为微软公司提供法律服务的一位西雅图律师)与微软公司的另两位员工一道参加这次会议。艾伦像上次一样坐镇后台。“我们派5个人参加会议,”巴尔默说。“这很关键。”
会议开始时,IBM公司的企业关系业务部的负责人说明了为什么他也来参加会议的理由。因为“这是我们公司迄今为止从事的一项最不寻常的活动。”盖茨心想,这也是迄今为止微软公司经历过的最不可思议的事情。与上次会议一样,盖茨、巴尔默和微软公司的其他几位与会者必须签署一份法律协议,这个协议规定,对于他们在这次会议上看到的任何东西,他们必须严守秘密。然后他们看到了“国际象棋项目”(Projectchess)的实施计划。IBM公司准备要制造个人计算机了。
盖茨从桌子对面看了一下设计方案,并且向IBM公司人员提出了一些问题。他感到不解的是,这个设计方案根本没有提到使用16位处理器的问题。他指出,假如IBM公司想要使用微软公司的软件的话,如果使用16位处理器,他就能够为IBM公司提供最优秀的软件,盖茨说话的语气很强,而且表现出很大的热情,也许他不像IBM公司的人员那样说话时有所保留。不过IBM公司的人员在认真听他说话。
IBM公司确实想要微软的编程语言。在1980年8月的这一天,盖茨与IBM公司签署了一份咨询协议,以便写一篇报告,说明微软将如何与IBM公司展开合作。这篇报告还将提出使用何种硬件的建议,以及盖茨关于如何使用该硬件的建议。
IBM公司的代表又说,他们听说有一种非常流行的操作系统叫做CP/M。他们问盖茨能否向他们销售这种操作系统。盖茨耐心解释说,他并不拥有CP/M的所有权,不过他非常乐意打电话与加里·基尔多尔联系,帮助安排IBM公司的人员与基尔多尔会见。盖茨后来说,他打电话对基尔多尔说,IBM公司的代表是“非常重要的客户”,要善待他们。接着他把电话交给IBM公司的代表,IBM的代表与基尔多尔约定这一周去拜访数字研究公司。
接下来发生的事情成了个人计算机传闻故事的材料。盖茨讲到加里·基尔多尔没有与IBM公司达成协议,自己却坐飞机出去玩儿了,这成了计算机行业中众所周知的笑谈。基尔多尔指出盖茨的说法有误。他否认自己坐飞机去玩儿,却把IBM公司的代表晾在那里。“我是出去办事了。我常常喜欢飞行取乐,不过一会儿你就会厌倦在空中做钻孔游戏。”他说道。我按时赶了回来,以便参加预先约定的与IBM公司代表的会议。
但是,这天早晨,正当基尔多尔还在飞行途中的时候,IBM公司的人员会见了基尔多尔的妻子多萝西·麦克尤思。多萝西负责处理数字研究公司与硬件分销商之间的账务。IBM公司的来访者要她签署的保密协定使她感到不知所措,她感到这将会削弱数字研究公司对其软件的控制。据基尔多尔说,她与IBM公司人员之间的会谈一直处于僵持状态,直到她与公司的律师格里·戴维斯取得了联系。这天下午,基尔多尔按时回到了公司,他与多萝西、格里·戴维斯一道会见了IBM公司的代表。基尔多尔签署了保密协议,并且听取了IBM公司介绍的方案。不过,在谈到购买操作系统的问题时,他们陷入了僵局。IBM公司想用25万美元一次性买断CP/M操作系统的版权,而基尔多尔则希望按每个拷贝10美元的通常价格出售CP/M的使用许可证,IBM公司离开时答应作进一步洽谈,但是没有签署购买CP/M的协议。
IBM公司的代表立即转向微软公司。盖茨不需要再做什么劝说工作,一旦IBM同意使用16位处理器,盖茨就意识到对IBM的新型计算机来说,用不用CP/M就不重要了,因为给CP/M编写的应用程序并不能充分发挥16位处理器的处理能力。基尔多尔也见过英特尔公司的新型16位处理器,并且准备改进CP/M,使之能够充分利用16位处理器的功能。但是盖茨对IBM公司的代表说,使用另一种操作系统也同样可行。
可是,另一种操作系统究竟来自哪一家公司,却成了一个大问题,后来保罗·艾伦想起了西雅图计算机产品公司的蒂姆·佩特森。佩特森的公司已经为8086处理器开发了一个操作系统SCP-DOS,艾伦对他说微软想要这种操作系统。
9月底,盖茨、巴尔默和一位同事乘飞机前往IBM公司,以提交IBM使用微软软件的建议报告。他们认为这次行动将决定他们是否能够得到为IBM个人计算机开发软件的项目。他们在飞机上紧张地对报告文书进行整理、修改和校对。凯尼希是一位喜欢环球旅行的日本企业家和计算机杂志出版商,他也为微软公司工作,他用“日本关西英语”撰写了报告的部分内容,据巴尔默说,“这部分内容需要进行大量修改。”这份报告建议,微软对SCP-DOS操作系统进行修改,使之能在IBM计算机上运行。经过彻夜不眠的飞机行程,盖茨和巴尔默完全是靠雄心勃勃的抱负而强打起精神。当他们驱车从迈阿密机场前往博卡拉顿时,盖茨突然慌了起来,他忘记了系领带。时间已经晚了,他们迅速将租来的汽车开到百货公司的停车场,等到商场一开门,盖茨就冲了进去,买了一条领带。
当他们终于见到IBM公司的代表时,他们得知IBM公司希望在1年内迅速完成个人计算机项目的开发。该公司成立了一个由12人组成的开发小组,以避免出现企业瓶颈,这些瓶颈曾经使一些公司的计算机开发拖延好几年,比如施乐公司的明星计算机拖了3年半,HP-85拖了4年。IBM公司总裁弗兰克·卡里大致明确了可能导致个人计算机开发进程延误的所有内部因素。整个上午,盖茨回答了IBM个人计算机开发小组成员提出的几十个问题。“他们像连珠炮似地向我们发问,”巴尔默说。“盖茨应答如流。”
到午餐时,盖茨对微软获得这份合同有了相当大的把握。菲利普·埃斯特里奇是IBM公司的个人计算机开发项目主任,IBM公司的副总裁,并且拥有一台苹果Ⅱ计算机,他对盖茨说,当IBM公司的新董事会主席约翰·奥佩尔得知微软公司将会加入这个项目的开发时,他说:“噢,那是玛丽·盖茨的儿子开的那家公司吗?”奥佩尔曾经与比尔·盖茨的母亲在联合道路公司(United Way)的董事会中共事过。盖茨认为这一层关系帮助他获得了IBM公司的合同,最后于1980年11月签署了这份合同。
微软首先必须建立一个项目开发的工作室,这项工作比想像的更加困难。IBM不是个普通公司,它非常重视保密,并且提出了最严格的保密要求。盖茨和巴尔默决定在西雅图原先的国家银行大楼中他们的办公室中间选择一个小房间。IBM公司送来了它自己的文件锁,当盖茨在安装文件锁的过程中遇到困难时,IBM公司派来了自己的锁匠。工作室没有窗户,也没有通风设备,IBM公司要求房间始终必须关闭。有时室内温度超过100华氏度。IBM公司进行了若干次安全检查,以确保微软公司遵守有关的规定。有一次微软公司放松了保密要求,结果被IBM抓住了。IBM公司的人员发现保密工作室的门敞开着,计算机样机中的一块底板放在房间的外面。微软公司的人员根本不适应这种严格的保密要求。
不过微软慢慢学会了保密。为了加快微软与IBM公司之间的情况沟通,建立了一个(当时来说)复杂的电子邮件系统,运用该系统,可以将一台计算机放在博卡拉顿,另一台放在西雅图,然后在这两台计算机之间迅速地来回发送邮件。盖茨也经常前往博卡拉顿了解工作进展情况。
项目开发的日程安排非常紧迫,软件的开发必须在1981年3月完成。IBM公司的各个项目经理向盖茨出示了项目开发的时间表,所有时间表“基本上都表明在我们动手项目开发之前,就比原定计划晚了3个月。”盖茨说。
当务之急是完成操作系统的开发。帕特森的SCP-DOS操作系统是非常接近CP/M但又是一个非常粗糙的仿制系统。它必须进行大量修改才能符合IBM公司的个人计算机运行的需要。盖茨请来了帕特森,对他的操作系统进行修改。操作系统的应用程序接口(API)的开发尤其必须尽快完成。
应用程序接口用于规定应用程序(比如文字处理程序)如何与操作系统配合运行。尽管个人计算机通常是在严格的安全环境中运行的,但是,为IBM公司的个人计算机编写应用程序的开发人员仍然必须让应用程序接口来从事他们的开发工作。这就在安全问题上产生了一个漏洞,通过这个漏洞,在个人计算机推出之前,加里·基尔多尔就能设法了解微软公司的操作系统是个什么样子。
当基尔多尔看到应用程序接口时,他发现IBM/微软公司新开发的操作系统与他的CP/M竟是如此相似,为此他扬言要提出起诉。他说:“我对他们讲,如果他们知道他们的操作系统(IBM公司新开发的操作系统)与我的操作系统是如此相似,那么他们就不会继续这样干下去了。他们没有注意到CP/M是有人拥有其所有权的一个操作系统。”IBM公司派人会见了基尔多尔,同意为他们的PC提供16位CP/M版本,同时也提供微软的操作系统,而基尔多尔则同意不对IBM公司提起诉讼。不过IBM公司称,它无法给操作系统定价,因为这将会触犯反托拉斯法。
当盖茨听说IBM公司与数字研究公司私下达成交易时,大为恼火,但是IBM公司向他重申,微软公司的DOS是它的“战略性操作系统”。后来的情况表明,盖茨确实不必有任何担心,基尔多尔的操作系统永远没有机会与微软的产品相竞争。
与此同时,盖茨又负责对微软原先为Altair计算机编写的BASIC进行修改,使之适应IBM个人计算机运行的需要,他与保罗·艾伦以及微软的另一名员工尼尔·康曾共同从事这项工作。6年前,艾伦担任MITS公司软件部主任时曾经极力说服盖茨去编写Altair计算机的磁盘控制代码,当时还只是个十几岁孩子的盖茨把这件事情拖了下来。具有讽刺意味的是,这次盖茨将负责编写BASIC语言的监管工作,而艾伦却负责大部分具体工作。微软公司的其他编程员则从事不同语言转换的项目开发。
盖茨感到IBM公司给了他很大的压力,而他又把这种压力转嫁给了他的员工。有些员工通常在冬季的周末去兼职担任滑雪教练,但是这一年冬天却没有去。盖茨说:“这一年没有人去滑雪。”当有些员工想到佛罗里达去观看航天飞机的发射时,盖茨也毫不留情不予同意。但是,当员工坚持要去时,盖茨说,如果他们能预先完成规定的工作量,他们就可以去。于是这些编程员在微软公司度过了整整5天时间,甚至住在公司里,废寝忘食地工作,为的是达到盖茨提出的要求。艾伦记得他编程一直干到凌晨4点,这时,原来在施乐帕洛阿尔托研究中心工作过的查尔斯·西蒙尼走进他的办公室,宣布他们将在今天早晨乘飞机去佛罗里达观看航天飞机的发射。艾伦不同意,他想继续做自己的工作。西蒙尼想尽办法劝说精疲力竭的艾伦放下手里的工作,几个小时后他们终于坐上了前往佛罗里达的飞机。
盖茨不断与IBM公司的人员(通常是埃斯特里奇)讨论新型个人计算机的设计方案。他指出苹果计算机采用的开放式结构对它的成功起到了不可估量的作用。盖茨喜欢开放式结构是有原因的,因为微软制造的惟一的硬件产品“软卡”(Softcard)是公司的基础产品。由于埃斯特里奇拥有一台苹果Ⅱ计算机,因此他从一开始就倾向于采用开放式结构。在盖茨的促进下,IBM公司打破了它的保密设计规范的传统,将它的第一台个人计算机改为开放式系统。
对于IBM公司来说这是个非同寻常的举措,因为在所有计算机公司中,它是最喜欢标新立异独树一帜的公司。这是为了故意引来埃德·罗伯茨指责的那种“寄生虫”。IBM公司将使用车库公司中的小青年开发的标准零部件和设计思路,并且它将鼓励这些小青年开发更多的产品供它使用。它将脱去专门裁剪的夜礼服,改穿计算机业余爱好者和黑客的现成服装。
由于盖茨有过在MITS公司中工作的经历,因此他了解开放式系统存在的问题。埃德·罗伯茨于1974年将Altair计算机开发成一种采用总线的计算机,从而非常偶然地创建了一种开放式系统。这样,其他制造商就能够为Altair计算机生产电路板,并且形成了一个完整的S100总线的产业,这曾经使罗伯茨感到不快。当罗伯茨试图隐藏总线技术的细节时,计算机产业剥夺了他的总线所有权,将该总线重新定义为标准的总线技术规范。
盖茨打算将微软的操作系统(这时称为MS-DOS)搞成业界的标准操作系统。他放弃了他曾经拥有的与数字技术公司之间的共存关系,根据这种关系,数字技术公司负责操作系统的开发,微软则从事语言的开发。盖茨为IBM公司提供了一个很有说服力的开放式操作系统实例。IBM公司负责个人计算机开发的人员乐于接受盖茨提出的开放式系统方案,然而开放式并不是IBM的特色。开放式系统究竟有哪些好处,这需要进行一定的解释。如果人们了解操作系统的细节,那么他们就能更容易为之开发软件,VisiCalc软件表明,出色的第三方软件有助于计算机的销售。不过盖茨头脑中可能已经有了一些更加实际的开发思路。当他14岁的时候,他就偷偷进入大型计算机的操作系统了解到有关的情况,看到有人用盗窃的方法使他原先为Altair计算机编写的BASIC语言成为一种业界标准之后,盖茨认为最好放弃可以用别的办法攫取的东西。
从另一个方面来说,操作系统也是开放的系统。盖茨设法让IBM公司同意,让微软将它的操作系统卖给别的硬件制造商。IBM显然不了解这样一来他们给微软带来的经济上的好处。
虽然完成软件开发的压力很大,但是盖茨对他自己和公司的能力充满信心,他的公司闪烁着编程才华的光芒。但是他有一件事情放心不下,这件事情比软件开发的截止日期更使他坐卧不安,而且一直到IBM公司就要宣布推出它的个人计算机的时候,这件事情仍然困扰着他,这件事情就是IBM公司会不会取消这个开发项目。
毕竟他们不是真的为IBM公司从事软件开发,他们是为IBM的一个分部进行项目开发,这是个暂时的独立分部,说不定什么时候IBM会收紧它的控制范围。在许多项目的开发上,IBM公司就像希腊神话中的歌利亚,是开发许多项目的实力强大的巨型公司。IBM从事的研发工作中只有很小的比例是以已完成的开发项目的形式出现的。究竟IBM还有哪些其他的秘密个人计算机开发项目与国际象棋(Chess)项目并行展开,盖茨并不知道,而且永远不会知道。“直到最后一分钟,他们还在认真谈论要取消这个项目,”盖茨说,“可是我们已经将公司的那么多资源投入进去了。”
盖茨感到非常紧张,只要一说到取消两个字,他就会感到心惊肉跳。他害怕看到报纸上刊登关于IBM个人计算机开发的报道文章。有些报道切中要害,IBM公司会不会问他的公司是否遵守了它的保密规定呢?当1981年6月8日出版的一期《信息世界》杂志上的一篇文章提前4个月准确地介绍了IBM个人计算机的详细情况,包括开发新型操作系统的决定时,盖茨紧张极了。他打电话给该杂志的编辑,对它刊登“谣言”提出了抗议。
当IBM公司推出它的个人计算机时,结局不是成功就是失败。比尔·盖茨希望能够确保不会有什么因素来妨碍微软公司进入成功者之列。