今年 RubyConf 最大的悬念之一,是目前 Ruby 社区最为炙手可热的两位程序员 Ryan Davis 和 Eric Hodel 的去向。就在上周,Ryan 终于为大家揭开了谜底:他和 Eric 已经以全职身份正式加入 Engine Yard 公司,全力从事下一代 Ruby 运行时 Rubinius 的开发。(了解更多InfoQ 中关于Rubinius 的内容)
Engine Yard 是一家总部位于旧金山的 Ruby on Rails 主机提供商。目前,Engine Yard 在全球的雇员已经增加到 21 名,成长迅速。上周,Engine Yard 还宣布 Rubinius 项目的两位活跃贡献者, Brian Ford 和 Wilson Bilkovic ,将在明年一月份加入该公司。
Engine Yard 举公司之力全力支持 Rubinius 的战略实际上早已开始。早在今年五月,他们就已经将Rubinius 的项目领导者Evan Phoenix 招至麾下。在Engine Yard 的创立者之一, Ezra Zygmuntovich 看来,社区的推崇和认同是形成此决策的一大驱动力。顺应已有趋势当然会带来收益,尤其是对于 Engine Yard 这样的小公司来说,采用这种方式所带来的收益可能是非常显著的。相比较来说,那些为 Ruby 社区创造各种新关注点的公司则要费劲得多。比如 Sun Microsystems 为 JRuby 提供了慷慨支持,并在 NetBeans 中加入了世界级的 Ruby 支持。
然而很明显,EngineYard 的决策并不仅仅是为了顺应社区趋势。更好的 Ruby 性能同时也是对该公司自身业务来说具有决定性的因素。Ezra 指出:“大家都知道目前的 Ruby 的解释器需要增强……我们在使用目前解释器的过程中遇到过大量问题,我想 Rubinius 可以使其中很多得到改观。”
如果您还没有置身于开发 Ruby 运行时的火热大潮中,这里为您简要的介绍一些相关的背景知识。Rubinius 是一个 Squeak(Smalltalk)方式的开源 Ruby 实现。它的内核虚拟机全部用 C 语言编写,包括编译器在内的其他部分则用 Ruby 语言本身编写。此外,Rubinius 项目进展迅速并得到了众多开发人员的大力支持。在其迄今一年半的发展历程中,Rubinius 已经拥有了 67 位贡献者。根据 Evan 的估计,其中大约有 25 人为活跃贡献者。
尽管 Rubinius 的性能尚未达到令人侧目的地步,但其确实已经取得了一些成果。项目成员的卓越才智正在推动项目快速发展。作为 Ruby 效率方面的专家, Antonio Cangiano 定期在其 blog 上发布各种 Ruby 运行时的实际评测结果,而上周他称赞了 Rubinius :
对照新旧评测结果表格,很难相信 Rubinius 实现可以在如此短的时间有这样巨大的改进。在 16 组测试中,Rubinius 都比 Ruby 1.8.6 更快。那么一年之后,Rubinius 在一年之内将会变得有多快?我个人认为 Rubinius 完全可以跻身最有前途的 Ruby 实现之列。
下一个 Rubinius 的里程碑版本致力于能够令人满意地运行 Rails,而这个版本会作为 1.0 发布版。这其中很大一部分工作是支持 RubyGems。据报道,这是 Eric Hodel 现在最关心的(考虑到他和 RubyGems 项目的联系,这也合情合理)。Evan 估计最早在 2008 年 2 月 RubyGems 的支持就可以到位,而后 Rubinius on Rails 会有条不紊地发展下去。
Ezra 目前还只是边缘性的参与 Rubinius,但他计划在明年一月转为全职开发。Ezra 最近在做的工作是为 Mongrel web 服务器在 Rubinius 的运行提供支持。而 Ezra 自己还设计了一个相比于 Rails 更为简单的 web 开发框架 Merb,该框架的 Rubinius 支持将会在 Mongrel 相关工作完成后进行。
至于知识产权问题,根据 Evan 的说法,Rubinius 将遵循 Asterisk 开源模型。如果是这样,Engine Yard 将同时成为 Rubinius 的著作权所有者和项目管理者。
最后顺便说一下,Engine Yard 的雇员并不是 Rubinius 项目中唯一的公司开发人员。据称,Powerset 公司的 Kevin Clark 也将他个人 20% 的时间贡献给了 Rubinius 项目。
评论