RailsConf 2007

2007 年 5 月 22 日

我不像以前那样参加那么多会议了,但这样做的优势在于我有时间去参加那些让我感兴趣的会议。我一直很喜欢 Ruby 社区,所以今年我作为参会者参加了 RailsConf。

对于一项年轻的技术来说,有很多新的重要的部分出现,但对我来说,其中最重要的部分是 JRuby。JRuby 现在处于最终的发布候选版本周期,它在 Java JVM 上提供了 Ruby 平台的完整实现,并为 JVM 提供了脚本语言。对于我们在 Thoughtworks 所做的事情,以及对于许多 Ruby/Rails 开发人员来说,即使你从未“包含 java”,这也很重要。

我们 Ruby 团队遇到的最大问题之一是部署。将 ruby 应用程序部署到生产环境涉及大量新技术,而数据中心往往对这类事情持保守态度。我们的 RubyWorks 堆栈试图简化这一点,但 JRuby 提供了将应用程序部署到 Java 容器的选择,将 Rails 应用程序转换为易于部署的 war 文件。我认为这将使 Ruby on Rails 在许多企业环境中成为更可行的选择。

JRuby 在 JDK 上的成熟度引发了一个显而易见的问题,即另一个流行的托管运行时会发生什么。来自微软的信号微弱且不明确。很高兴看到著名的微软导向的极客 Scott HanselmanChris Sells 出现在展会上,即使当我看到 Chris Sells 时,感觉就像身处竞技场。我喜欢的是,Ruby 社区确实希望与微软合作,而不是像往常一样竞争和抨击 Redmond。

事实上,我在 RailsConf 上得到的压倒性印象是一种改变行业的使命感。在去年的会议上,我的感觉是,这是一个对自己的成功感到高兴和震惊的社区。我的标志性形象是 DHH 作为黑客帝国中的 Neo,打破了企业软件的规则,并沉浸在成功的喜悦中。

今年,我的感觉是,这演变成了更重要的东西。成功不仅仅是 IT 世界中的一股理智之风,而是真正领导这个世界。Ruby 和 Rails 似乎很有可能在未来几年成为 IT 开发的重要平台。我们已经在 Thoughtworks 看到这种迹象——今年在美国,我们 40% 的新业务是 Ruby 工作。

与之前的平台不同,这个平台不受供应商控制,甚至不受供应商支配。Ruby 是一个社区的努力。我一直希望 LAMP 技术中的一种能够突破进入企业 IT,而 Ruby 看起来很有可能做到这一点。

企业 IT 被臃肿软件所支配。我们一次又一次地不得不处理在高尔夫球场上购买的昂贵软件,这些软件只会阻碍我们的工作,同时吞噬资金和开发时间。这些技术让程序员更难做他们最擅长的事情——为他们支持的企业做出贡献。(本周令人难忘的故事是一个大型公司花费 800 万美元购买了一个企业级版本控制系统,但该系统无法正确分支。)

我希望,通过一个由社区控制的平台,我们将看到一个专注于简单性的平台——找到需要做的事情,并以一种能够让程序员发挥最佳水平的方式来完成这些事情。

这得益于 Ruby 社区围绕着 OO 和极限编程社区的最佳理念而形成。在听完 Jamis Buck 和 Michael Koziarski 的主题演讲后,我欣喜地反思了他们与 Ward、Kent 以及所有其他倡导干净代码、良好分解的面向对象设计和可测试性的理念的人们保持一致。这些理念对许多其他技术社区产生了重大影响,但在 Ruby 世界中,它们是正统的。

在整个会议期间,有一种感觉,我们正处于行业的一个拐点,一个关键的技术转变,它推动了一个新的主要平台。在听取和阅读有关 JavaOne 的信息时,我感觉到那里发生了重大转变,人们不再关注 Java 语言,而是关注 Java JVM,用一种语言替换多种紧密协作的语言。

Ruby 社区的一个特别迷人的地方是参与者年龄的多样性。你不仅有像 DHH 和核心团队这样的年轻范式破坏者,还有像 PragDave 和 RubyCentral 三巨头这样的,嗯,更资深的活动家。重要的是,在代沟之间存在着大量的尊重和合作。你通常不会看到老顽固和大声的青少年之间的隔阂,而是真正地欣赏两组人所能提供的价值。

然而,并非一切都好。Ruby 社区中女性明显缺乏,除了我们错过了很多优秀人才之外,这可能也反映了社区内部的其他问题。 DevChix 小组非常积极地寻找方法来纠正这种情况,我很高兴看到在会议期间出现了关于如何改善我们 多样性 问题的讨论。

几年前,我写过人们对 RubyPeople 比大多数软件社区更友好的印象。在 RailsConf 上与人们交谈时,我得到的信息是,这种情况已经变得更糟。Ruby 列表,尤其是 Rails 列表,已经变得更加倾向于悲伤的互联网刻薄。Chad Fowler 在他的开场主题演讲中说,Rails 社区有“一群傲慢的混蛋”的名声,我作为一个,承认很小的一部分人,欢呼雀跃,感到很尴尬。

让我高兴的是,从 Chad 开始,Ruby 领导层强烈推动改变这种情况。从几个演讲中得出的主题是,我们的社区有机会尝试引导软件行业摆脱 网络刻薄 和缺乏多样性的泥潭,创建一个真正欢迎各种类型的人进入一个培育和愉快的环境的社区。多年来,我一直对极客讨论的语气感到厌烦,如果 Ruby 社区能够真正展示一个方向,让我们摆脱这种泥潭,这将比我们面前闪耀的所有其他奖品更让我高兴。

(照片由 James Duncan Davidson 提供。)