·布鲁克斯领导了被称为人类从原子能时代进入信息时代标志的IBM 360系列计算机的开发,为计算机操作系统的通用性奠定基础,并撰写了软件工程圣经《人月神话》。
·无论是设计一个新的计算机家族,还是帮助生物学家探索分子开发新药,布鲁克斯都将计算机科学家的角色视为“工具匠”。他认为:“计算机科学家是帮助他人更好完成工作的工具建设者。”
(资料图片仅供参考)
图灵奖得主、美国国家科学院院士、资深计算机科学家小弗雷德里克·布鲁克斯(Frederick P.Brooks Jr.)11月17日在美国北卡罗来纳州的家中去世,享年91岁。
作为科学家和教育家的布鲁克斯,一生在两种身份上都取得了足以改变历史的成就。20世纪60年代初,他领导了被称为人类从原子能时代进入信息时代标志的IBM 360系列计算机的开发,为计算机操作系统的通用性奠定基础。而后他作为硬件和软件的双重专家和出色的教育家始终活跃在计算机舞台上,对计算机体系结构、操作系统和软件工程做出里程碑式贡献,是软件工程圣经《人月神话》的作者。
图灵奖得主弗雷德里克·布鲁克斯(Frederick P.Brooks Jr.)。
开发出微软、苹果和谷歌操作系统的先驱
布鲁克斯的职业生涯涉足许多领域,包括在美国北卡罗来纳大学创建计算机科学系,并在计算机图形和虚拟现实领域进行了许多有影响力的研究。
但最为人所熟知的是,他是20世纪60年代IBM 360计算机项目的技术领导者之一。在IBM 360之前,每种型号的计算机都有自己定制的硬件设计,这就要求工程师们全面修改他们的软件程序,以便在每台新推出的机器上运行。
但布鲁克斯和一些同事倡导的方法消除了这种昂贵的重复劳动。1964年4月,IBM宣布IBM 360是一个由六台兼容计算机组成的系列。当客户从小型计算机转向大型计算机时,为一个360型号编写的程序可以在其他型号上运行,不需要重新编写软件。
布鲁克斯和同事吉恩·阿姆达尔(Gene Amdahl)和杰里特·布劳(Gerrit Blaauw)在一篇题为《IBM System/360的体系结构》的论文中描述了多种机器的共享设计。“这是在布鲁克斯领导下计算机架构的突破。”曾在布鲁克斯手下学习的计算机设计师理查德·塞茨(Richard Sites)在一次采访中说。
但在开发初始,为实现跨机器兼容性和同时运行多个程序所需的软件还没有准备好,这是一个比预期更艰巨的挑战。布鲁克斯1964年正式推出了IBM System/360操作系统,这类操作系统软件通常被描述为计算机的命令和控制系统。IBM System/360操作系统是微软Windows、苹果iOS和谷歌Android的先驱。他一直倡导为单个360型号编写的程序可以在其他型号电脑上运行的方式,在当时并不常见。
在IBM宣布研发IBM 360时,布鲁克斯只有33岁,正准备前往学术界。他已经同意回到他长大的北卡罗来纳州,在教堂山开办一个计算机科学系。但IBM总裁小托马斯·沃森(Thomas Watson Jr.)要求他再留任一年,以解决公司的软件问题。
布鲁克斯最终同意留下,在研制期间,他率领2000名程序员夜以继日地工作,单单IBM 360操作系统的开发就耗时全体研发人员总计5000年工时。因此,当1964年4月7日,在IBM公司纪念成立50周年的庆祝大会上发布360系列计算机时,沃森称“这是公司历史上宣布的最重要产品”。确实,IBM/360以其通用化、系列化和标准化的特点,对全世界计算机产业的发展产生了如此深远的影响,被认为是划时代的杰作。
最终IBM 360项目取得了巨大成功,巩固了IBM公司在20世纪80年代电脑市场的主导地位。IBM也成为了在苹果大举进军前电脑领域的最强“霸主”。
“弗雷德·布鲁克斯是一位改变了计算机历史的杰出科学家。”IBM首席执行官阿文德·克里希纳(Arvind Krishna)在一份声明中表示,“我们感谢他对该行业的开创性贡献。”
2014年,布鲁克斯与第一代苹果Macintosh电脑在一起。布鲁克斯很欣赏Macintosh电脑的设计,他说“在许多方面都是正确的”。
创建北卡计算机科学系、创作软件工程圣经《人月神话》
IBM 360成功以后,布鲁克斯离开IBM公司回到其故乡,为北卡罗来纳大学教堂山分校创建了计算机科学系,担任该系系主任长达20年(1964—1984年),卸任以后仍在该系任教,“桃李满天下”。
除了教学以外,布鲁克斯还致力于发展美国的计算机技术和计算机在国防等方面的应用,有许多社会兼职。他的研究领域除了计算机体系结构、机器语言设计、软件工程和大型项目管理以外,还包括动态体系结构的可视化、人机接口、交互计算机图形学等,涉猎十分广泛。
布鲁克斯将在IBM 360软件开发中获得的来之不易的经验教训,写成了著作《人月神话:软件工程论文集》(the Mythical Man Month:Essentials on software Engineering)。该书于1975年首次出版,很快就被公认为一部软件工程圣经,年年畅销,并经常被计算机科学家引用。其语气诙谐而自嘲,引用了莎士比亚和索福克勒斯的精辟名言,还不乏实用的提示。例如,书中提及的将大型软件项目的工程师组织成小组的方式,布鲁克斯称之为“外科手术团队”。
其中最广为人知的是他所说的布鲁克斯定律:“为一个迟来的软件项目增加人力会使其更晚(完成)。”不过布鲁克斯有时也承认自己“过于简单化”,他在书中夸大了自己的观点。
布鲁克斯建议,重新思考事情往往比增加更多的人更明智。在软件工程这个具有艺术性和创造性的职业中,程序员不是可替换的劳动单位。
在互联网时代,一些软件开发商表示布鲁克斯定律不再适用。大型开源软件项目之所以命名为“开源”,就是因为其底层的“源代码”是开放的,所有人都可以上网看到它,大批工程师可以一起来发现代码中的缺陷并提出修复建议。
弗雷德里克·布鲁克斯著作《人月神话:软件工程论文集》。
研究生物学分子应用和虚拟现实
弗雷德里克·布鲁克斯1931年4月19日出生于北卡罗来纳州达勒姆(Durham),是3个男孩中的老大。他的父亲是一名医生,母亲是一名家庭主妇。
布鲁克斯在杜克大学主修物理,之后在哈佛大学攻读研究生。当时并没有计算机科学系,但计算机正在成为物理、数学和工程系的研究工具。
布鲁克斯1956年获得应用数学博士学位;他的导师是物理学家和计算机先驱霍华德·艾肯(Howard Aiken)。他曾担任是肯尼斯·艾弗森(Kenneth Iverson)的助教,艾弗森是早期的编程语言设计师,教授“自动数据处理”课程。
当时工业界和学术界都越来越多地采用计算机,布鲁克斯曾在北美航空公司以及贝尔实验室和IBM做暑期工。
布鲁克斯还在哈佛大学结识了他未来的妻子南希·格林伍德(Nancy Greenwood),她在那里获得了物理学硕士学位。他们在哈佛毕业典礼两天后结婚。布鲁克斯在接受计算机历史博物馆的采访时回忆道,当时他们准备一起去IBM工作。
布鲁克斯因其成就获得了许多奖项,包括1985年的国家技术与创新奖章和1999年的图灵奖,图灵奖通常被称为计算机科学的诺贝尔奖。
这些奖项主要来自他在计算机设计和软件工程方面的工作。但在北卡罗来纳州的那几年里,布鲁克斯也转向了计算机图形和虚拟现实,并将其视为新兴的重要领域。专家评价,他领导的研究工作包括快速、真实地呈现图像的技术,以及研究生物学分子的应用。
斯坦福大学教授、图灵奖获得者帕特里克·汉拉汉(Patrick Hanrahan)说:“他在计算机图形学方面的工作产生了巨大的影响。布鲁克斯是一位思想领袖,远远领先于他的时代。”
北卡罗来纳大学教授、布鲁克斯的长期同事亨利·福斯(Henry Fuchs)在接受采访时表示,尽管他的职业生涯涉及一系列不同领域,但有一个共同的主题——开发工具。福斯说,无论是设计一个新的计算机家族,还是帮助生物学家探索分子开发新药,布鲁克斯都将计算机科学家的角色视为“工具匠”。他表示:“弗雷德的观点是,计算机科学家是帮助他人更好完成工作的工具建设者。”