导航

图灵奖-面向对象之父-阿伦·凯 之一

Posted on 2010-01-15 14:11  wanderer  阅读(440)  评论(0编辑  收藏  举报

Alan 是Smalltalk 面向对象编程环境语言的发明人之一,也是面向对象编程思想的创始人之一,他还是笔记本电脑最早的构想者和现代Windows GUI的建筑师(architect)。

  一、大师级的天才

  近年来,国内有一句话挺流行:“预测未来的最好办法,就是把它创造出来。”不少人张冠李戴,误以为此言出自尼葛洛庞帝之口。实际上,这句话是阿伦·凯的名言。有很多人说布兰德是第一个使用PC一词的人,但布兰德说自己也是顺手牵羊,最早提出“PC”概念的是阿伦·凯。90年代程序员设计的基本范式就是“面向对象”,发明这一术语的也是阿伦·凯。在70年代的一份备忘录上,阿伦·凯还正确预言到,90年代将有成百万的个人计算机,而且都将连接到全球公用的信息设施上(类似今天的互联网)。

  阿伦·凯究竟是什么传奇人物?他不是一位公众人物,但在计算机界,尤其是技术圈内,他是能让大家都心服口服屈指可数的大师之一。成为硅谷的又一位亿万富翁或授予他MIT主席职务,都无法激起他的兴奋。但他会有足够的耐性与一群八岁左右的孩子一起玩电脑。他最大的乐趣就是发明他喜欢但还不存在的东西。

  过去二十多年,他的目光主要集中在具有立体音乐、人工智能和信息演示的便携玩具。而且不是一个两个,他希望能有成万上亿个这样的玩具。因为他对现有的计算机会成为“某种大众鸦片”这一潜在的问题感到忧虑。“如果你生产出计算机却没有价值体系——这就象生产出钢琴却没有作曲一样——你获得的只是一种筷子文化。你应该让孩子们有自己的传播媒介。”

  凯是PC革命最重要的预言家,但他更是一位技术天才,终身都在实践中摸索。近几年,他的目标是创造一种“梦幻放大器”(Fantasy Amplifier),这是一个创造性思想的动态工具,功能强大,体积轻巧,真正易于使用,而且价格廉宜,使世界上每一位学生都能拥有一个。

  凯的形象既不符合傲慢自大、反社会的黑客,也不同于一夜暴富的计算机富翁,甚至不象象牙塔里的计算机科学家。他时常穿着跑鞋和灯心绒裤子。一小撮小心翼翼的胡子,短短的、略微零乱的头发,使他看上去极为普通。即使他是你的老板,可能也留不下多深的印象。但这也不是说他很谦逊,他喜欢引用自己的话,经常以这样的词作为发言的开端:“凯的第一法则指出……”

  二、“艺术”和“科学”不分开

  1940年,阿伦出生在麻省的Sprinfield。1岁时,全家到了他父亲的出生地——澳大利亚,他在那里度过了早年生活。他很喜欢这个新环境,屋子里有6000本书和大量的绘画和图片。由于二次大战日本入侵的威胁,全家又迁回到了美国。1945年至1949年,他们住在麻省海德莱城外的约翰逊农舍。他天资聪颖,三岁时在澳大利亚就学会了阅读,而且不断开拓视野,增加知识。这也注定了他不会是一个安分守纪的“好”学生。

  “ 到我上学时,我已经读过几百本书。那时我已经有了许多自己的观点,我知道一年级所教的许多东西都很幼稚和虚假,老师在撒谎。但学校只能有一种观点――那就是老师的观点或者课本的观点。他们不喜欢与他们相左的观点,因此那就象是一场战争。当然我已经可以用五岁的声音维护自己的观点”。

  凯很早就受音乐熏陶,他母亲是音乐家和艺术家。凯在学校唱诗班是童声高音独唱,小时候他还是一名十分出色的吉他手。实际上,他曾经萌生念头,要成为一名职业音乐家。但同时,他父亲又是一位设计假肢的生理学家,因此他的早年生活氛围中充满了各种各样的想法和表达它的方式。他从未把“艺术”和“科学”区分开过,这一点一生没变。

  凯的外祖母是一名教师、学者和女权运动者,外祖父则是一位相当有名气的书籍配图师、摄影师和作家,还是一名音乐家。凯正是在外祖父去世的那一年出生,大家都认为凯是最像外祖父的后代,不仅在兴趣上而且表现在性格上。

  凯从音乐家母亲那学来的音乐使他在十几岁就可以靠弹吉他为生了,并且他看到了音乐与计算之间的直接联系。在凯看来,一个计算机程序中同一段指令序列重复了许多遍,这很象一段格列高里圣歌中包含着主旋律的多个变奏。

  1949 年凯的父亲到纽约的一家医院工作后,全家又迁往长岛。凯在布鲁克林技术中学学习,却由于有不服从学校的行为,被暂时停学。不久又得了风湿病,他以为得重读毕业班了,但其实已拿到了足够的学分,足以毕业了。而此后,在1961年他因抗议学校犹太人限额问题,而被维吉尼亚的Bethany 大学驱逐。他凭借自己的音乐天才,在丹佛讲解吉他课程,以此维生。当他加入志愿兵服务时,又发现了自己另一大潜在的天份。在一次计算机的能力倾向测验中表现出众,他被美国空军派遣到 IBM K101 工作。

  三

  “当时程序员设计是一种地位很低的工作,大多数程序员都是女的。我的老板就是女的……这的确是一个有趣的群体。”

  凯离开空军后,被科罗拉多大学录取,学习数学和分子生物学,虽然他曾认真考虑过是否从事音乐工作。1966年毕业后,他又一次面对择业问题,他说:“我考虑过从医,但我觉得自己责任心不够。直到现在我仍这样认为。”他还考虑过哲学,但也放弃了。最后他还是进入了犹他大学学习电气工程。

  “关于犹他大学我只知道它在海拔4000英尺以上,有一个博士点。我喜欢高山的气候。……因此,我只带了一毛钱硬币就来到了犹他。”

  在上学期间,他开始使用由Ivan Sutherland 开发的Sketchpad 程序,并开始用Simua仿真语言编写程序。“在犹他大学,开始工作以前你先得读一大堆手稿,是关于Sketchpad系统的。你得先明白这些,然后才能成为一名真正的犹他人。他们还有一个传统,就是由新研究生干最近最烦的活。我的任务就在我桌子上——一堆磁带和一张纸条,上写:‘这是UNIVAC108 机的Algol语言,如果它不能运行,把它弄好。’这就是后来的第一个Simula语言。”受这些程序思想的启发,再加上自己生物学的背景,他提出了“生物学类比”理论。凯假定理想的计算机将象生物体一样工作,为完成某个任务,每个“细胞”都要与其它“细胞”协同完成,而每个“细胞”又有自己的功能。为了解决另外的难题或试验另外的功能,“细胞”们可以实现重组。1967年,他为Flex 机设计界面,由于过于复杂而没有成功。他开始用图标编程。

  1968年秋,凯在MIT人工智能实验室第一次见到Seymour Papert ,开始对Logo语言产生兴趣。当他观看了 Papert和他的同事教孩子们如何用 Logo时,凯有关计算机社会作用的整套观念受到极大冲击。

  “1968年,我目睹了两三件事,它们彻底改变了我对计算机的全部观念。我过去的观念就象Doug Englebart 所言:大型机就象铁路,由专门机构所拥有,他们决定了你能做什么以及什么时候做。Englebart 想努力成为享利·福特这样的人。而个人计算机正如六十年代所想的,是一辆汽车。1968年,我首次看到Seymour Papert为孩子开发的产品以及 Logo,我看到了第一个真正的手写体识别系统。这是一套今人难以置信的系统。它对我产生了巨大影响,因为我有种心有灵犀的感觉。当我将这些观念综合起来,计算机的概念就象是一种超级媒体,一种超级纸张。”

  写完一篇有关图形面向对象方面的论文。凯获得犹他大学的博士学位,接着在斯坦福人工智能实验室担任教学工作。这两年工作期间,他开始构想一本象书本大小的计算机,用户(尤其是儿童)可以用它来代替纸张。他将这个项目称之为 “Kiddie Komp”。这期间,他也开始着手Smalltalk 语言的研究工作。Smalltalk所使用的就是“鼠标驱动”的“多窗口环境”。

  Smalltalk就是按照凯的单独个体(即“细胞”)生物学模型来设计的,个体之间可通过“信息”相互交流。后来,他的Smalltalk成了面向对象语言的鼻祖之一。

  四、

  1970 年,施乐建立了一个长期的研究中心,聘请了曾是ARPA的空想家鲍勃·泰勒负责,简称PARC研究中心,凯成了他的第一个雇员。泰勒给凯提供了“按照自己直觉工作”的机会。凯组建了学习研究工作组(LRC),自己勉强出任经理。他在教学研究中使用Smalltalk,让小孩坐在计算机前,分析他们的反应。凯发现,声音和图像要比单纯的文本,更能让孩子们学到东西。他和PARC的同事一起,开发了一种简单的计算机补充,大量使用图形和动画,许多小孩都能熟练地使用。凯也参与Alto计算机的开发,许多人认为Alto是第一代现代计算机。凯为Alto开发了一个画板程序,用字母识别来改变画图方式。如果用户用鼠标写“D”,他们就可直接徒手来画;如果画“L”,他们就能画直线。Alto也是最早实现字处理中文本在屏幕上的图标可拖动功能。Alto 对苹果电脑和Mac的开发有很大影响。

  在领导PARC研究小组期间,凯也做出了一个笔记本电脑的模型名为Pynabook。凯的Dynabook是现代笔记本电脑的先驱。当时个人计算机技术尚处于襁褓期,但凯的设计中却已包含了许多未来的技术,比如平板显示器和无线通讯系统。1993年,凯的Dynabook理念终于成为现实,化为了苹果公司的 Newton,但是这个产品距离凯的梦想还是太遥远了。Newton成了一件缺陷百出的产品,并且成了苹果公司的恶梦。虽然Newton是世界上第一个商品化的PDA,然而1993年苹果总共只售出了8万台。如今PDA产品正在全球市场开花,作为先驱者,凯应该感到欣慰。凯还在以太网现代工作站、激光打印机以及客户机服务器网络的开发中起到了重要作用。但由于技术所限,当时Dynabook笔记本原型还不能付诸现实。凯极力促使施乐投入资金,开发新技术。但施乐的管理层却对凯的远见不太感冒,不愿投入过多人力、物力进行开发。

  1979年,在凯的邀请下,乔布斯、Teff Raskin以及其它苹果公司的元老们来到PARC参观。他们一下子被凯的理念所吸引,认为这就是未来之路。他们对视窗图形用户界面印象深刻,对Smalltalk 语言的灵活性也大为惊奇。凯在PARC的工作就是苹果 Macintosh的种子,甚至今天最流行的操作系统——微软Windows ——也是凯理念的孙子。

  五、努力接近梦想

  进入80年代,作为技术圣地的PARC中心分崩离析。1983年,凯离开施乐,担任Atari公司首席科学家兼副总裁。在美国任何一个在八十年代成长起来的儿童,都会对 Atari的游戏十分熟悉,但他们并不知道这些游戏后面有凯的功劳。在Atari,凯与他领导的小组在极其隐秘的状态下工作,有传言说该项目投入达 5000万至1亿美元。连大多数公司内部人员也不知道在开发什么产品。但可以肯定凯是在造梦,将他多年的梦想变成现实。但不久,Atari陷入困境。

  1984 年,凯加盟苹果,这使凯有时间和金钱开始研究他那长期以来的梦想。同一年,一台以图形界面为中心并为市场广泛接受的计算机——Macintosh诞生。接下来几年中,凯住在洛杉矶,但在全国各地四处奔波。在MIT担任过一段时间的教学工作,也间或为苹果工作。而大多数时间则在加州西好莱坞的自办的学校中教学,教孩子们使用计算机。

  1991 年,在接受《Byte》杂志的采访中,凯透露他在研究“基于代理的系统”,且在编写一种新的计算机语言,可在计算机中构建仿真智能,使机器能够自己告诉自己,下一步要干什么。一个“代理”就是计算机的智能内核。在这篇文章中,凯预言基于“代理”的商用系统将在2000年出现。他预想了计算机能够通过用户来学习,并且适应用户的需求。同时他也迫切希望他的“Dynabook”最终能够得到大规模的推广。

  凯是现代计算机业的先驱,而且在这个瞬息万变的行业中总是永立潮头。他改变了产业的发展方向和人们对计算机的认识。在凯之前,计算机只是一台人性化的盒子,只向你提供文本。如果你想与计算机交流,你必须首先学会计算机的语言。而凯由于对儿童的关注,以及对专利证书的热爱,加上他广泛的知识面、多样化的兴趣,以及他的天才,彻底突破了这一束缚。无疑他是现代PC的缔造者之一。

  考虑到整个社会对计算机潜在的能量茫然无知,凯也十分担忧,因为计算机有可能对社会产生负面影响,并且论为第二台电视。凯希望计算机能扮演更有益的角色。凯曾为计算机技术的潜在影响而欣喜,但他对专利证书更感兴趣,他希望这项技术能够创造更多“好怀疑的人”,而不是成为计算机的奴仆。他把个人计算机比如现代的书籍,他相信如果每个人都能用上计算机,人们很可能会用信息来玩“What-if”的游戏。他说:“未来的信息检索系统不仅仅是检索观点。数据库的弱点就是只能让你检索事实。而我们千百年文化的力量就在于我们具有吸取各种观点的能力。”“苏格拉底抱怨书写。他觉得书写强迫人接受意见,而不是参与它。计算机远比书本更生机勃勃。世界各地每一个孩子都要检测他所获得东西究竟是来自与别人论争的结果还是计算机仿真的结果。问题在于:社会将鼓励这种能力这是压制这种能力?”