故事的主角是 Ron Avitzur,时间是 1993 年 8 月,地点在 Palo Alto苹果旧总部。
他面临一个抉择,是继续自己原来的项目,还是为一个新项目工作?若为一个新项目工作,这意味着之前一年的辛苦完全白费;但若继续自己原来的项目,意味着自己将面临失业,因为项目已经被取消了。
潜伏在苹果总部 6 个月,只为继续自己的项目
作出继续自己的项目这个决定,对于他而言并不困难。从 1985 年始,他就已经开始了开发可视化的数学软件的计划,它能够自动将数学方程式转换为图像。在当时这是一个创举,Avtizur 曾经将这个名为 Graphing Calculator 软件展示给他的同事们,对方说:“希望我在学校的时候,就能够拥有它。”Avtizur 当时 27 岁,他希望学校们的老师们能够拥有一个简单易用的数学软件进行教学,当时没有网络,因此要让一个软件大规模的扩散开来就只有一个办法,那就是争取成为系统 内置的软件。
在当时来说,Avtizur 拥有几个有利的条件:
他女朋友在另外一个城市,在很长一段时间内,他只要保证自己一个人的生活的基本要求,便可以继续自己的项目,所幸的是他的生活简朴;
他曾将这个软件的 Demo 展示给苹果的其它工程师看,他们对这个软件抱有好感,他们告诉 Avitzur,他的工作非常酷,而对他的个人遭遇,则持同情态度;
当时苹果公司内部流行一种文化“Skunkworks”,当工程师的项目被取消之后,这个工程师会若不愿意放弃自己的项目,会继续自己的项目,希望这个项目转化为实际的产品,因此公司其它工程师们很理解 Avitzur 的行为;
当时苹果下一代机器将基于 PowerPC 架构,一些工程师认为Avtizur 开发的软件,能够展现出该机器的性能。
最重要的是,当时 Avtizur 的工卡仍然能够打开苹果公司的大门,因此当他第一天不再作为苹果的员工来到公司的时候,没有受到任何阻拦,直接钻进原来的办公室,继续开发 Graphing Calculator。
当时他遇到了一个难题,那就是他不知道如何让软件运行在 PowerPC 架构上。在 8 月份某天晚上,吃饭的时间,两个家伙突然出现出现在 Avtizur 的办公室,他们宣布要在办公室里住下来,除非这个软件完成了修改,可在 PowerPC 的机器上正常运行。接下来的三个人修改了 5 万行代码,直到第二天凌晨 1 点,他们终于完成了修改,得到一个可运行在 PowerPC 上的软件原型。三个人相互看了看然后深吸一口气,开始第一次启动这个原型,却没有想到显示器闪了一闪之后,开始冒出火花。难道是 Graphing Calculator 的原因,让显示器坏了?三个人静悄悄地将机器搬出去,避开烟雾探测器,然后插上另外一台显示器,这一次软件原型完美运行,速度是过去的 50 倍。在把玩了一会后,三个人都认为这个软件“不糟糕”,在苹果内部,这已经是一个相当高的评价。
虽然评价不错,但要成为一个正式产品,Graphing Calculator 还有很多工作要做。于是 Avtizur 让他的朋友 Greg Robbins 来帮忙。这也是一个有趣的故事,当时正好 Robbin 苹果其它部门的合同到期,他跟经理说他以后将向 Avtizur 汇报,而这位经理什么也没问,仅仅是要求 Robbin 留下他的办公室钥匙和工卡。
两个好朋友开始没日没夜工作。Robbin 是一个完美主义者,对每一个细节都十分挑剔,通常一坐下就开始编程,一直到晚上。而 Avtizur 则会出去跟其它工程师聊天,告诉他们自己正在做的事情。回忆当年,Avtizur 说,自打让 Robbin 来帮忙后,他就不得不跟上对方的步伐。他总是比 Robbin 早十分钟到办公室,因此 Robbin 总是以为他已经工作了一个小时或更长的时间,于是自觉要求自己工作晚一些,以保持同步。出于同样的理由,Avtizur 会工作到和 Robbin 一样晚。两个人之间形成了一种相互激励的机制,因此工作效率非常高。
可惜好景不长,9 月份苹果的生产部门要将他们的人转移到 Avitzur 和 Robbin 所在的办公室,然后一个经理闯进办公室,得知他们项目已经改变,而且没有向新的部门报告,她说:“你们要马上离开这里。我明天就去取消你们的工卡。”他们 乖乖地离开办公室,但没有离开,因为苹果当时空置的办公室很多,他们很快找到另一个办公室并安置下来。
现在的问题是,在工卡取消后,两个人要如何进入公司呢?他们通常在门口等待其它苹果员工的到来,然后混进去,大摇大摆的通过门口。虽然由于基本上其他员工 知道 Avtizur 和 Robbin 已经不是苹果的员工,但他们都保持了缄默。Avtizur 之前的社交活动起到了作用,他将自己的故事一遍又一遍地告诉了别人,获得了其他人的同情与支持。
让一个软件从原型变为产品,依然还有拦路虎需要解决。Avtizur 和 Robbin 是工程师,能够完成软件的核心部分,但如何让这个软件变得优美易用,却不是他们两个所擅长的。后来,Avitzur 雇佣了苹果内部的 Paula Brown 来设计软件的界面。
此外,软件的品质保证(QA)也需要其他人帮忙。再一次,Avtizur 的社交活动起了作用。两个 QA 部门的人在听说了这个项目之后,自愿帮助他们测试软件的运行,他们两个只有一个要求,“不要让我的老板知道,OK?”他们两个来测试Graphing Calculator 真是再好不过了,因为他们一个是数学博士,一个之前自己写过和数学有关的软件。
当所有问题都解决了之后,如何将 Graphing Calculator 变成系统内置的软件呢?Avtizur 又遇到难题,这个问题让他和 Robbin 坐立不安,他们害怕自己所有的投入都是竹篮打水一场空,更甚于自己可能因为不断潜入公司而遭到起诉。
很幸运,又有陌生人自愿帮助 Avtizur 和 Robbin。在某天凌晨 2 点,一个工程师来到他的办公室,告诉他有办法将 Graphing Calculator 变成系统内置的软件。因为当时操作系统都基于一份母盘而复制出来,这位工程师偏偏正好负责操作系统母盘的制作。然后,别人没注意到的情况下,30000 份内置了 Graphing Calculator的操作系统复制件被制作了出来。
后来一个工程师,将 Graphing Calculator 展示给他的经理看,Avtizur 和 Robbin 终于曝光。正好是当时在苹果负责 PowerPC 软件的主管是曾是达特茅斯学院的一名学者,负责市场推广的主管是一个数学老师的儿子,他们看到了这个软件价值,于是打算在每台 Mac 上都内置 Graphing Calculator。然后,整家苹果公司发动了起来,QA 部门测试它,负责用户界面小组开始为绘制界面。1994 年Graphing Calculator 完工,而且正式成为系统内置的软件,与 Mac 一起卖给大家。
Avtizur 没有再回到苹果,他成立了一家软件公司 Pacifict,继续开发 Graphing Calculator,而 Mac OS 至今依然保留着一个名为 Grapher 的可视化数学软件。谈及自己当年所做过的事情,Avtizur 依然感到骄傲。他的故事,成为传奇。