01
Anders 并没有大学文凭,但这丝毫不重要。
当年
微软 Server 部门负责人
Bob Muglia认为,地球上只有几个人可以做出伟大的开发工具架构,Anders 还是其中那个最棒的,顶尖中的顶尖。
当时,Anders 在微软的竞争对手 Borland 工作。微软试图挖了他一年,但都被婉拒。
比尔盖茨打电话给 Anders,说我可以做什么才能让你来。Anders 后来回忆说,那是他人生特别尴尬的一个时刻。
他已经财务自由,只想做自己热爱的事。
1996 年,Anders 和 Borland 高层有些意见分歧,微软趁机开出每年 300 万美元的高额待遇,更重要的是许诺他可以享有充分的协作资源,终于把这位英雄招至麾下。从后来的贡献看,也许 3000 万请到 Anders ,也不会亏。
02
Anders 是 1960 年出生在丹麦,父亲是摩托罗拉的工程师,典型的科技家庭。Anders 在上中学时就开始编程,他回忆说那时用的 HP2100 还是纸带编程。上大学时有个高年级学生喜欢玩 Mousehole 纸牌游戏,但是老输钱给 Anders ,觉得他很牛,就请他合伙一个小公司叫 Polydata 。
Anders 有台 Z80,这电脑只有 4Mhz CPU 和 32K 内存,上面有微软 Basic 。结果Anders玩了一天就玩腻了,随后开始玩汇编。
大神在 20 岁就显露了神迹,他两三个星期就写出了 Pascal 编译器,并卖给了一个英国公司。
然后大神就辍学了,并在多个平台包括 DOS 上重写了 Pascal 编译器。
1983 年,当时 Borland 还是个丹麦公司,自己做编译器做得很烂,找到 Anders 买了他的编译器并整合成 Turbo Pascal。微软CTO在一次节目中说,这应该是 PC 上面第一个真正的集成开发环境(IDE),但 Anders 很谦虚地说他不知道。
▲Turbo Pascal截图,好喜欢这个begin...end
当时 Anders 并未加入 Borland,因为 Borland 后来搬到硅谷去了。Anders 选择远程服务,因为当时并没有互联网也没有 email,当时寄代码都是靠联邦快递。
1989 年,Anders 自己的公司 Polydata 经营不太好,加上女友很向往去美国,他就决定去美国加入 Borland 。
03
Borland 当然喜出望外,任命 Anders为首席程序员。在 Turbo Pascal 成功后,Borland 又发布了 Turbo C,从而扬名天下。
中国第一代程序员好像都是用 Turbo C 的
,包括伟大的王小波同志。
而 Anders 的主要任务,是秘密开发可视化环境的超级IDE:Delphi。当时微软已经推出自己的 Visual Basic 大获好评,但一碰到直接编译二进制 EXE 的 Delphi 立刻被秒成渣渣。
Delphi 使用 Object Pascal,语言设计极其优雅,完美面向对象,完美结合数据库,而且可以直接操控操作系统(硬件和网络等),应该说开发 Windows 原生程序堪称完美。有意思的是,Delphi 上面的 VCL 和 RTL 库都是用 Delphi 自己开发自己的,自带的源代码可以让程序员学习真正高手是怎么编程的。
▲Delphi 2截图
当年国内大量著名程序都使用了 Delphi,包括张小龙的 Foxmail 和雷军的 WPS 。
后来著名的 Borland C++ 也被直接移植架在 Delphi 上,这就是 C++ Builder。
这时我似乎听到盖茨在叹息,
我非得此人不可。
04
Anders 加入微软时,正是互联网风起云涌之时。Sun 刚发布了跨平台可以到处运行的Java,微软感觉生态受到严重威胁,抓紧开发 Visual J++ 和 WFC,Anders 成了主导人物。VJ++ 很快成为世界上最快的Java编译器,并支持 ActiveX 等微软生态产品。
Sun 发现微软不用自己的 Java 虚拟机,搞出个更快的东西。他们深深忧虑被微软分裂了 Java,所以果断起诉了微软。结果微软败诉,被迫在 VJ++ 页面承认和 Sun Java 不兼容,导致了 VJ++ 的最终失败。
Anders 第一次碰到自己的产品不是因为性能问题而失败,他承认自己有点天真了。短暂沮丧之后立刻恢复了大神本色:
我们微软要自己搞一套和 Java 竞争的平台。
这就是 2000 年发布的 C# 和 .net平台。Anders 设计的 C# 也是优美的面向对象速度也经常快于 Java。十几年过去,C# 依旧是互联网开发的主力语言之一。
▲
Logo版权:微软
05
近年来开源软件风起云涌,PHP/Python/Ruby/Swift等热度高升,年轻人都不记得Anders 这个大叔了。
结果在大家最意想不到的地方
,大神再次亮剑。
JavaScript(JS) 是互联网使用最多的脚本语言,而这个原本不该是 Anders 的强项,因为他是搞高大上的机器码编译器而不是低级的脚本的。然而,Anders再次推出 TypeScript 震撼了程序圈。
TypeScript 是编译输出 JavaScript 的工具,也是 JS 的超集。它不仅可以输出客户端的JS,还可以输出服务端大热的 Node.js 。TypeScript 大大提高了程序员写 JS 的效率和降低了差错的概率。
更难能可贵的是,作为顶级 Geek,
Anders 积极拥抱开源社区,推动微软从封闭走向开放。
TypeScript 就是微软最早的开源产品之一。纳德拉上台后,Anders 更是促成Visual Studio 免费的重要推手,这个开发套件了包括了 C# 和 TypeScript 。
06
在很多新兴语言变得越来越臃肿复杂的当下,
程序员们怎么评价 Anders 的作品呢:有品味,优雅,简洁。Anders 说,这是因为他对编程充满了热情。
年近 60 的 Anders 今天仍旧在写程序,他说一旦停止写代码后,就会膨胀飞起来,忘了程序员真正需要什么。
我们现在还能看到他每个月在 Github 提交的代码。
▲
github截图
我自己在 90 年代用过 Delphi,排第一肯定有偏心的成分。特以此文致敬我心目中最伟大的程序员:Anders Hejlsberg。