见到Anders的时候,他正专注的倾听国内开发者的提问,一副远视眼镜斜歪着架在头顶,宽松的深蓝色休闲毛衫随意套在白色圆领T恤外。

如果不是他那专注的神情,以及现场见证开发者对他的狂热崇拜,很难想象这位外表并不出众、甚至非常普通的老外就是从美国专程赶来中国参加10月27日举行的微软技术大会的编程巨匠、C#之父——安德斯·海尔斯伯格。

“Fantastic!”在被问及第一次来中国的感受时,Anders带着夸张的表情这样回答CNET。

图正中为安德斯·海尔斯伯格

Anders促成微软与谷歌首次合作

Anders是一个传奇式的人物,关于他的故事很多,比如微软和谷歌这两个死敌,竟然能在某一件事情上达成合作,此事就是因Anders而起。

Anders创造了新语言TypeScript,这是兼容JavaScript的语言。今年3月,谷歌的Angular团队宣布了它与微软TypeScript团队在Angular 2上紧密合作。

“谁会想到Google用它来写Angular 2的东西呢?”Anders用反问句来表达出乎意料的感受。

实际上,如果不是因为TypeScript确实非常好用,微软确实拥有最好的技术解决方案,Google怎么会使用来自劲敌开发的语言?

喜欢挑战的Anders

了解TypeScript的人们都知道,它是为了解决JavaScript的一些问题而产生,被业内称为JavaScript的替代语言。

Anders带领团队创造了这种语言,他说:“因为我喜欢挑战。”

“我愿意努力推出好的编程语言,使每一个程序员更富有效率地工作。如果一个语言已经是让编程员非常有效率了,再进一步改进它的机会就不多了。我认为JavaScript代表了一种趋势,而且现在有很多人在用它,它以后也会变成企业级的编程语言,但它中间同时又有那么多的问题,所以我们就想一定要把这个问题解决好,让它变成一个更好的编程语言。”

“我们添加了很多的东西,使TypeScript能更好的支持大型应用的开发,我觉得这个过程非常有意思。”

和国内开发者积累多年开发经验后会选择转向管理工作不一样,Anders在过去的四十年来一直从事编程工作,因为这是他的兴趣、也是他最大的爱好。

正在改变的微软

微软有着显著的工程师文化,Anders自然是微软技术领域最核心的成员之一,来自这样地位的他向我们讲述了微软这些年在开放和开源上的变化。

“两年前我们开始支持‘开放’。开放是萨提亚的业务战略,这两年你可以看到微软有更多开放的东西,我们把Office放到了苹果上,我们有安卓的东西,包括我们的Azure平台,你可以在这个平台上放Linux、Windows操作系统。我们的开发工具对iOS、安卓、WindowsPhone可以有跨平台的支持,我们甚至做了速度更快的安卓手机模拟器。”

“开源方面,我们有很大的进展,我们开发平台的团队,包括微软最核心.NET框架已经开源了,所有的核心代码都已经放到开源社区,我们核心中间件,基础的核心的开发都在GitHub上,我们开发平台上关于开源的事情一直在往前做,但开源不是这么容易的事情,不是说今天把代码写出来放到开源社区就是开源了。今天开源社区有一定的标准和规范,所以我们要为了把.net开源就花很大的工夫,包括重写部分代码和注解,这是很多程序员都不愿意做的。我们还在逐步改进。”

“微软这些年在不断地变化,我们一点点变,尤其是现在我们有了新的掌门人,我们也在学习做一些以前没有尝试、没有做的事情。”Anders说。

结束语

来到中国的日子,Anders只要亮相就会被拉住拍照,他说:“我从来没有拍过如此多的合影。”

他并不知道开发者对他有多么崇拜!因为,他可以坚持40年从事开发工作;他在微软开源工作上起到了有史以来最大的推动作用;他创造的C#多年来一直是十大编程语言之一;他开发的TypeScript令谷歌也忍不住要用;以及他被盖茨在96年亲自以数百万美元的高薪挖到微软!

他是传奇,更是榜样。

最后,小编还有一个呼吁:

立即访问http://market.azure.cn

《IT老外在中国》第11期:首次访华的编程巨匠、C#之父Anders的更多相关文章

  1. python 全栈开发,Day43(python全栈11期月考题)

    python全栈11期月考题 1.常用字符串格式化有哪些?并说明他们的区别 2.请手写一个单例模式(面试题) 3.利用 python 打印前一天的本地时间,格式为‘2018-01-30’(面试题) 4 ...

  2. 《HelloGitHub月刊》第11期

    <HelloGitHub>第11期 兴趣是最好的老师,<HelloGitHub>就是帮你找到兴趣! 简介 最开始我只是想把自己在浏览 GitHub 过程中,发现的有意思.高质量 ...

  3. 《HelloGitHub月刊》第 11 期

    <HelloGitHub>第 11 期 兴趣是最好的老师,<HelloGitHub>就是帮你找到兴趣! 简介 最开始我只是想把自己在浏览 GitHub 过程中,发现的有意思.高 ...

  4. Delphi/C#之父首次访华:55岁了 每天都写代码

    Delphi.C#之父Anders Hejlsberg 近日首次访华,并在10月24日和27日参加了两场见面会,分享了他目前领导开发的TypeScript项目,并与国内前端开发者近距离交流.本文就为读 ...

  5. C++11新特性之六——元编程

    C++11新特性之六——元编程

  6. 第11组 团队Git现场编程实战

    第11组 团队Git现场编程实战 组员职责分工: 前端部分: 陈郑铧:构架的搭建,前端模块开发 陈益:前端模块开发 李镇平:前端模块开发 后端部分: 沈国煜:后端模块开发 王泽鸿:后端模块开发 林铮威 ...

  7. Facebook不相信所谓的员工能力等级。《长效商业英雄》(《哈佛商业评论》2016年11期),4星。

    老牌管理杂志.本期我给4星.以下是书中一些信息的摘抄: 1:爱因斯坦曾说:“任何傻瓜都能让事情更复杂,只有天才能让事情变简单.”单就这一点来看,乔布斯无疑是天才中的天才.#137 2:通过让苹果聚焦于 ...

  8. F#周报2019年第11期

    新闻 Bolero:WebAssembly中的F# 尝试WebAssembly里的F# JetBrains的fsharp-support 2019.1 ML.NET 0.11发布 Outreachy内 ...

  9. 【进阶1-1期】理解JavaScript 中的执行上下文和执行栈(转)

    这是我在公众号(高级前端进阶)看到的文章,现在做笔记 https://mp.weixin.qq.com/s/tNl5B4uGdMkJ2bNdbbo82g 阅读笔记 执行上下文是当前 JavaScrip ...

随机推荐

  1. 终于解决了贴吧手机版的一个重大BUG

    终于解决了贴吧手机版的一个重大BUG 别诧异虽然同一个域名,但是,PC 和手机打开完全不一样的体验 http://tieba.yunxunmi.com/ 吃点夜校准备做梦去!! 发现 我云贴吧 一个  ...

  2. sql中COUNT(*)、COUNT(字段名)的区别

    数据表:其中IT002的Fname是null. 执行sql: ) FROM T_Employee 结果: 结论:COUNT(*)统计的是结果集的总条数,而COUNT(FName)统计的则是除了结果集中 ...

  3. 趣说Java:我是一个线程

    第一回 初生牛犊 我是一个线程,我一出生就被编了个号:0x3704,然后被领到一个昏暗的屋子里,在这里我发现了很多和我一模一样的同伴. 我身边的同伴0x6900 待的时间比较长,他带着沧桑的口气对我说 ...

  4. Java数组和各种List的性能比较

    以下程序分别对Java数组.ArrayList.LinkedList和Vector进行随机访问和迭代等操作,并比较这种集合的性能. package cn.lion.test; public class ...

  5. orcale 之游标的属性

    无论是显式游标还是隐式游标都会有四个属性分别是:%ISOPEN.%FOUND.%NOTFOUND.%ROWCOUNT 下面我们分别对着几种属性进行分析. %FOUND 该属性表示当前游标是否指向有效的 ...

  6. 深度学习(十六) ReLU为什么比Sigmoid效果好

    sigmoid: Relu: 为什么通常Relu比sigmoid和tanh强,有什么不同?主要是因为它们gradient特性不同. 1.sigmoid和tanh的gradient在饱和区域非常平缓,接 ...

  7. Java接口的简单理解和总结

    1.抽象层次:普通类 -> 抽象类 -> 接口 普通类:就是我们常用的类: 抽象类:专门用来被子类继承的,主要是为了符合现实世界的规律 如: Animal类:(每个现实的对象都有类与它相对 ...

  8. Tomcat开发Comet要点

    Comet技术的悄然流行,Jetty在比较早地支持了Comet,提供了Comet 的Servlet,同样从Tomcat6开始,Comet已经在Tomcat的标准Servlet中开始支持了,这是个好事情 ...

  9. R语言中apply函数

    前言 刚开始接触R语言时,会听到各种的R语言使用技巧,其中最重要的一条就是不要用循环,效率特别低,要用向量计算代替循环计算. 那么,这是为什么呢?原因在于R的循环操作for和while,都是基于R语言 ...

  10. 【转】合理的布局,绚丽的样式,谈谈Winform程序的界面设计

    从事Winform开发很多年了,由于项目的需要,设计过各种各样的界面效果.一般来说,运用传统的界面控件元素,合理设计布局,能够设计出比较中规中矩的标准界面:利用一些换肤的控件或者部分界面组件,能够设计 ...