刚过完69岁生日不久,“Java之父” James Gosling(詹姆斯·高斯林)在LinkedIn上正式宣布了退休的决定。他表示:“我终于退休了。在做了这么多年软件工程师之后,是时候让我好好玩玩了。尽管受到了 COVID-19 和行业环境的影响,但在亚马逊的过去 7 年还是非常美好的。我有一长串的副业要做,会很有趣的。”

这番言论,不禁让人想起Python之父Guido van Rossum也曾宣布退休,但不久后便因“退休生活太无聊”而复出。高斯林这句“有一长串副业”,也为他能否真正“退休成功”留下了一丝悬念。回顾他近半个世纪的职业生涯,闲下来的日子似乎并不多。
学生时期:初露锋芒,开发编辑器与窗口系统
1955年出生于加拿大的高斯林,从小就对技术抱有浓厚兴趣。12岁时,他已经能设计电子游戏机,并帮助邻居修理收割机。14岁那年,他在一次中学组织的大学参观活动中首次接触到编程,从此埋下了兴趣的种子。
一年后,他曾参观的卡尔加里大学聘用他为临时编程员,他成功编写了用于ISIS II卫星遥测地面分析的软件。这段经历也促使他进入卡尔加里大学,并于1977年获得计算机科学学士学位。
1983年,高斯林获得卡内基梅隆大学计算机科学博士学位。在读博期间,他开发了Gosling Emacs编辑器,这是第一个在Unix上运行的类Emacs编辑器,用C语言编写,并采用类似Lisp语法的Mocklisp作为扩展语言。
此外,在卡内基梅隆大学期间,他的一项重要工作是将UCSD Pascal p-code从PERQ工作站移植到DEC VAX计算机系统,为此他编写了一个VAX仿真器。这段早期经验,后来成为他在Sun公司提出Java虚拟机(JVM)概念的灵感来源之一。虚拟机允许代码一次编写,多平台运行,让程序员始终针对同一个虚拟环境编程。
毕业后,高斯林加入IBM,设计并实现了Andrew窗口系统(第一个分布式窗口系统)和Andrew用户界面工具包。然而,据称他这一时期的工作未得到公司高层的充分重视。对于这段经历,高斯林在领英上不无遗憾地写道:“要是IBM听了我的意见就好了!!”

在IBM工作不到两年后,高斯林跳槽到了虽为初创但已成立十年的Sun Microsystems,由此开启了属于他的辉煌时代。
Sun时代:从“Oak”到“Java”,一战成名
高斯林加入Sun仅5个月后的1991年6月,他带领一支小团队启动了名为“绿色计划”(Green)的项目。目标是为消费电子设备(如智能电视、机顶盒)开发一种简单、强大、可移植且安全的编程语言。
起初,团队将语言命名为“Greentalk”,文件扩展名为 .gt。后来更名为“Oak”,以纪念高斯林办公室外的一棵橡树。Oak的设计深受C、C++、Smalltalk、Lisp和Ada等语言的影响。
然而,Oak最初并非为Web设计。1993年,团队向时代华纳展示了他们的技术,试图用于互动电视,但交易未能达成。于是,他们转向了正在兴起的Web时代。
团队意识到,Oak可用于创建动态、互动的网页,并在任何支持JVM的浏览器中运行。他们创建了名为WebRunner(后更名为HotJava)的原型浏览器,可以执行嵌入在HTML页面中的Oak小程序。由于已有另一种语言名为Oak,团队决定将其更名为“Java”。这个名字简单、独特,并且让人联想到团队在漫长工作中消耗的大量咖啡。
1994年底,高斯林在硅谷的“技术、教育和设计大会”上首次公开演示了Java。同年,网景公司(Netscape Communications)同意在其流行的Netscape Navigator浏览器中加入对Java的支持,这极大地提升了Java的知名度和用户基础。时代杂志将Java评为1995年十大最佳产品之一。
自1995年发布以来,Java 不断演进。Sun于1998年成立了Java社区进程(JCP),允许其他组织参与Java的开发与标准化。近30年来,Java已成为全球最主流的编程语言之一,而高斯林作为其共同创始人,被公认为“Java之父”。
甲骨文时期:理念不合,分道扬镳
与Java的成功形成对比的是,Sun公司自2007年起经营陷入困境。2009年4月,Sun宣布同意被甲骨文(Oracle)以约56亿美元收购。交易于2010年1月完成,Sun公司27年的历史就此终结。高斯林等核心工程师随之加入甲骨文。
然而,仅仅几个月后,2010年4月,高斯林便从甲骨文离职。他在后来接受采访时透露了多个原因:薪资待遇与在Sun时相比大幅降低,职级被下调,以及在甲骨文极度微观管理的环境下,他和他的Java同事几乎失去了所有决策权。
“我的工作似乎就是上台为Oracle的Java做公开展示。我完全不适合这种工作,” 高斯林说。最终,这位编程语言的创造者与他所创造的语言的运营公司分道扬镳。
后甲骨文时代:从谷歌、创业公司到亚马逊
2011年3月,高斯林短暂加入了Google,但同年8月即离开。对于这段经历,他在领英上的描述非常简短,仅用“Free-floating curmudgeon”(随时随地脾气暴躁的人)三个词概括。

随后,他加入了一家从事海洋机器人研究的创业公司Liquid Robotics,担任首席软件架构师长达五年,编写自主海洋机器人控制软件,甚至参与海上调试工作。
2017年5月,62岁的高斯林宣布加入亚马逊AWS,继续其工程师生涯,主要从事物联网项目,并发起推出了AWS Greengrass产品。
凭借在编程领域的杰出贡献,高斯林于2015年被授予IEEE约翰·冯·诺依曼奖章,并于2018年入选计算机历史博物馆荣誉墙。
祝福与展望
高斯林宣布退休的消息,在开发者社区中引发了广泛的祝福。许多受益于Java的工程师纷纷留言致敬:
- 作为一名软件工程师,我们为你感到骄傲。你对编程世界的贡献将被铭记为编程的黄金时代。你创造的Java语言改变了世界,它可能是有史以来使用最广泛的语言之一。退休快乐!
- 享受退休生活吧,詹姆斯!我第一次接触Java是在1997年的一门计算机科学课上,用它创建了一个汉诺塔程序。谁知道今天全世界仍在广泛使用Java。
- Java对我职业生涯的启发和塑造产生了深远影响。能在Java推出时身处Sun公司,真是不可思议——从未有一种编程语言/平台受到如此多的关注!
恭喜James Gosling开启人生新篇章。尽管他声称要享受退休生活,但那份长长的“副业”清单,或许预示着这位编程传奇人物未来仍会给我们带来惊喜。对于这样一位持续推动技术进步的大师,无论选择何种生活方式,他的贡献都已深深烙印在数字时代的基石之中。想了解更多顶尖开发者的动向与技术思考,欢迎来 云栈社区 的开发者广场交流。
参考资料: