高品质的音视频能力是怎样的? | Qcon 全球软件开发大会·上海站邀请函 了解详情
写点什么

IronPython 之父 Jim Hugunin 离开微软加入谷歌

  • 2010-10-22
  • 本文字数:1524 字

    阅读完需:约 5 分钟

Jim Hugunin 于近日在博客及邮件列表中表示,他已经从微软离职,并加入谷歌。文章回顾了他在微软的工作经历及于IronPython、DLR 的点点滴滴。Jim 最令人瞩目的成就在于开发了JVM 上的Python 语言Jython,以及CLR 上的Python 语言IronPython。之后他加入了微软,为动态语言在CLR 上的表现做出了不懈努力。

Jim 在文章中表示,在他六年微软职业生涯的起初,他花了 8 个月的时间,努力将微软支持下的 IronPython 发布为一个开源项目。他写到:

……最后通过的那个时候,正好是我在年度 Python 大会上发言的前一天晚上——一点准备都没有。我很高兴地看到 Python 社区很乐意接受 IronPython……

IronPython 的第一个版本明显有很多问题。它使用微软单方面的“开源”协议(译注:即 MS-PL ),但没有得到社区的信任。在接下里的几年里这个协议通过了 OSI 认证,最后 IronPython 转向了更著名的 Apache 开源协议。第一个版本同样也有许多重大的技术漏洞,例如垃圾回收机制无法处理动态生成的代码,这会引起严重的内存泄漏。这个问题通过.NET 2.0 中强大的 DynamicMethod 得以解决。几年来,我们一直在稳步地解决技术及社区接受程度方面的问题。

同时,Jim 认为他最为得意的作品是“动态语言运行时(Dynamic Language Runtime,DLR)”:

对我来说,工作的巅峰则是创建出了动态语言运行时,它包含了大量我们在.NET 平台上开发 IronPython 时所得到的深度思考。最酷的是,我们通过引入了一个兼容层,让不同的语言能够在.NET 平台上进行互操作。我喜欢能够在 IronRuby 里调用我钟爱的 Python 类库的感觉。而最令人高兴的事情则是为 C#语言添加了 dynamic 关键字。我对动态和静态类型长期以来的争论持中立态度,而在 C#丰富的静态系统中有机会使用动态类型的功能实在是太棒了。至少,我想我永远不会忘记在讨论叫做“动态”的静态类型时所获得的震撼。

不过,微软决定终止对 IronPython 的投资还是成为了 Jim 离开微软的导火索:

……可能你们大都知道,我已经有段时间没有将主要精力放在 IronPython 上了,不过这一决定还是让我对工作进行了反思,我认为是时候探索新的职业道路了……我对这里大量优秀的人员及产品表示尊敬。我已经爱上 C#语言的优雅,可能需要承受一些编写 Java 代码时的痛苦,从微软 Office 精心雕琢的 UI 切换到 Google Docs 时可能也会遭受些挫折。不管怎么说,我会珍惜从优秀的人们那里所学到的东西。

Jim 表示他即将加入谷歌,并谈了一些未来的工作:

能够加入谷歌我感到很兴奋。我喜欢与一些天才的小团队一起工作,并不断地受到用户的反馈与驱动。我喜欢和开源代码及社区保持良好的关系,我也认为未来是属于云和 Web 的。虽然在微软也能做到这些,IronPython 便是个良好的证明,但对此我总是感觉格格不入,需要花费更多代价。我很高兴能够加入一个与我的直觉合拍的地方,并展现出这些做法的力量。我相信在不断地反馈与改进之后 Google Docs 会有成长,我也会爱上它。

由于新雇主的关系,我会在 Java 方面的虚拟机世界里投入更多精力。我确信 C#已经成长为一门比 Java 更好的语言,.NET 也有一些很酷的特性是 JVM 所不存在的,但我也在 Java 世界里发现了一些伟大的事物,如 HotSpot 的适应性编译技术,以及强大的社区给这一平台带来的良好价值。我认为双方都有和明显的优势。同时,我也喜欢 Google 设置的“主流语言”标准:Python、JavaScript,Java 和 C++,我找不到反对它的理由——至少我可以考虑将 Python 当作主要的语言!

最后,Jim 表示他将退出 IronPython 项目。目前 IronPython 已经有了新的组织者,他们是 Miguel de Icaza Michael Foord Jeff Hardy Jimmy Schementi ,其中 Miguel de Icaza 和 Jimmy Schement 同时也会负责 IronRuby 项目的协调工作。

2010-10-22 01:364005
用户头像

发布了 157 篇内容, 共 48.5 次阅读, 收获喜欢 4 次。

关注

评论

发布
暂无评论
发现更多内容

2023第十五届上海国际智慧工地展览会

AIOTE智博会

上海智博会 智慧工地展会 智慧工地博览会 智慧工地展

低学历并不是阻碍职业发展的绊脚石

测吧(北京)科技有限公司

软件测试

遭MQ连连干翻后的醒悟!含恨码出5本MQ学习手册助力秋招之旅

小二,上酒上酒

面试 RocketMQ 大厂 大厂面试

爆肝了!阿里出版的这份Spring Security源码手册,狂揽GitHub榜首

小二,上酒上酒

Java 面试 spring security 大厂 大厂面试

阿里P8偷偷把内网分享的SpringCloud微服务架构精髓手册开源了

小二,上酒上酒

架构 面试 微服务 Spring Cloud

最新出炉!开源 API 网关的性能对比:APISIX 3.0 和 Kong 3.0

Apache APISIX 中文社区

kong api 网关 APISIX

为什么晶闸管能在大电流下工作?

元器件秋姐

元器件采购 元器件电商 元器件知识 华秋商城 晶闸管

PCB设计必须考虑的8种安全距离,搞错1种都出大问题!

攻城狮华哥

PCB PCB设计

Meta Force 原力元宇宙公排系统开发详情

开发微hkkf5566

大数据培训和自学哪种方式更好

小谷哥

自学前端技术怎么样,有必要去吗

小谷哥

灵雀云ACP 斩获“2022金边奖-最佳云原生边缘云平台”

York

容器 云原生 5G 边缘计算 边缘云

【web 开发基础】PHP 自定义函数之函数的返回值-PHP 快速入门 (27)

迷彩

web开发基础 PHP基础 11月月更 return

Meta Force 原力元宇宙dapp系统开发(智能合约部署)

开发微hkkf5566

终于有人把这份10 万字节详细面试笔记(带完整目录) 整理出来了

钟奕礼

Java java程序员 java面试 java编程 Java 面试题

前端培训班中如何学习前端开发技术

小谷哥

3年测试经验跳槽成功拿下30W+年薪

测吧(北京)科技有限公司

软件测试

腾讯T4带你玩转Spring全家桶

钟奕礼

Java java程序员 java面试 java编程

低门槛上手快!火山引擎VeDI这样满足数据分析新需求

字节跳动数据平台

大数据 BI

消息队列 RocketMQ 5.0:从消息服务到云原生事件流平台

阿里巴巴云原生

阿里云 RocketMQ 云原生

这些小技巧,让你的前端编程更优雅

好程序员IT教育

前端

PolarDB-X 开源分布式数据库进阶营免费报名中!

阿里云数据库开源

MySQL 数据库 阿里云 开源 PolarDB-X

RocketMQ 重试机制详解及最佳实践

阿里巴巴云原生

阿里云 RocketMQ 云原生

极客时间架构训练营模块六作业

李晨

架构

大数据培训学习需要什么基础

小谷哥

为什么面试官狂问八股文?我已经被三家公司问到哑口无言……

程序知音

Java java面试 java架构 后端技术 Java面试八股文

java培训学习该怎么做?

小谷哥

蚌住了!这份阿里P8写的Java多线程编程实战指南就这么容易开源?

小二,上酒上酒

Java 面试 多线程 阿里 大厂面试

好家伙!阿里P8撰写的Java微服务架构全栈笔记GitHub一夜飞到榜首

小二,上酒上酒

Java 架构 面试 微服务

神了!阿里P8纯手写出了这份10W字的MyBatis技术原理实战开发手册

小二,上酒上酒

学习 编程 面试 mybatis

redhat运维-远程日志记录

阿柠xn

运维 日志 linux 文件权限控制 11月月更

IronPython之父Jim Hugunin离开微软加入谷歌_.NET_赵劼_InfoQ精选文章