专栏首页华章科技地球程序员之神:没上过大学,曾拒盖茨的Offer,4代码农靠他吃饭

地球程序员之神:没上过大学,曾拒盖茨的Offer,4代码农靠他吃饭

导读:很多人认为程序员应该供的神里面排名第一的应该是Linus Torvalds,因为他是Linux和Git之父。

然而我要试图反驳这个观点,因为地球上有另外一位伟大的程序员,有超过四代码农用他的开发工具吃饭。

Linus只用C编程而且不到30年,而这位神级程序员在近40年中一直创造引领潮流的开发工具(Turbo Pascal/Delphi/C#/TypeScript),他就是Anders Hejlsberg。

作者 / 来源:金捷幡(ID:jin-jiefan)

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。

本文分享自微信公众号 - 大数据(hzdashuju),作者:金捷幡

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-06-01

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 实至名归!计算机科学领域的重磅大奖,被他们摘走……

    中国计算机大会由中国计算机学会(CCF)创办于2003年。中国计算机大会是中国计算机领域级别最高、规模最大的学术盛会。旨在探讨计算机及相关领域最新进展和宏观发展...

    华章科技
  • 2017新浪微整形年度大数据报告

    导语:中国医疗美容行业连续几年保持着大幅度的增长,不仅关注医美的人群日趋壮大,人们对于医美的消费投入也在稳步增加,并保持着强劲的增长势头!

    华章科技
  • 从基础概念到数学公式,这是一份520页的机器学习笔记(图文并茂)

    图解机器学习 正是对机器学习的过程中的痛苦有切身体会,我希望能做一份教程,以浅显易懂的方式去讲解它,降低大家的学习门槛。我为此花费了数月时间,经常做到...

    华章科技
  • Android事件分发机制完全解析,带你从源码的角度彻底理解(下)

    记得在前面的文章中,我带大家一起从源码的角度分析了Android中View的事件分发机制,相信阅读过的朋友对View的事件分发已经有比较深刻的理解了。 还未阅读...

    用户1158055
  • 我的大学–C语言

    技巅
  • 《深入RabbitMQ》笔记

    当消息与任一绑定的队列符合匹配标准时,RabbitMQ服务器将以FIFO的顺序将消息放入队列中。放入队列数据结构中的并不是实际消息,而是消息的引用

    槽痞
  • 谁能用人话给我说说希尔伯特空间??

    版权声明:本文为CSDN博主「ChangHengyi」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。 原文链接:http...

    beyondGuo
  • 全网最全RabbitMQ总结,别再说你不会RabbitMQ

    当初我学RabbitMQ的时候,第一时间就上GitHub找相应的教程,但是令我很失望的是没有找到,Spring,Mybatis之类的教程很多,而RabbitMQ...

    Java识堂
  • 苹果计划在3年内推出自研5G芯片

    近日,市场研究数据和报告机构Fast Company发布了一份报告,称苹果计划在3年内发布自研的5G基带芯片,但这只是在乐观的情况下才可能实现。而仅就目前来看,...

    镁客网
  • RabbitMQ 面试要点

    原文链接:https://chaser520.iteye.com/blog/2428253

    业余草

扫码关注云+社区

领取腾讯云代金券