2004年12月31日 星期五

逃离 Java,但未逃离其思维

发布者:admin

经过四年的遗留代码泥潭和恐惧驱动的技术选择,Kevin Dangoor 正在退出 J2EE 开发。他选择用 Python 这门动态语言来启动他的新业务。不幸的是,他在学习新动态语言或框架的困难方面,仍然受困于 Java 偏颇的思维模式。

Ruby 看上去很不错,Rails 也因此吸引了大量关注,这并非没有道理。Seaside on Squeak 也应该吸引关注,因为它看起来是一种非常高效的应用程序构建方式。这两者都有两个问题:1)我都不了解它们,2)它们比 Python 或 Java 成熟度低,社区也更小。

(1)我当然可以克服,但这会拖慢我最初的进度。时间紧迫,因为我需要赚钱来支付抵押贷款等等…… 第二点也意味着速度会变慢:可以寻求帮助的地方更少。预打包的模块更少,而且这些模块可能经过的测试也更少。

我想,当逃离当今技术界最深沉、最活跃的领域之一时,自然会认为自己必须留在能力陷阱中。但这并非必然。与 Java 截然不同,当你开始使用 Rails(或者 Seaside+Persistance)时,不必花费数月时间来积累应用程序服务器的宝贵经验,或者攀登高耸的框架栈。你可以在一两天内尝试一下,就能对其中的奥妙有相当不错的了解。因此,逃离能力陷阱的成本处于历史最低点。

所以,让我们来解决“成熟度低、社区规模小”的指控。我发现,虽然语言社区整体是个不错的后备,但对于生产力而言,真正重要的是围绕你选择的框架拥有一个强大的社区。当人们在使用 Ruby on Rails 时遇到问题,他们很少会向一般的 ruby-talk 邮件列表求助。他们会转向 Rails 专用的渠道。

说起这些,Rails 邮件列表非常活跃,12 月份平均每天有 26 封邮件。Rails 的 IRC 频道更是热闹非凡,每天有 100 到 120 名开发者 在线。这是一股独特而充满活力的力量,能够提供端到端的帮助和建议。这与当你尝试将来自不同社区的模板、Web 流程和持久化框架组合在一起时,不得不分散精力寻找援助的情况截然不同。

这并非是对 Python 没有完整的“Rails 式”解决方案的指责,而是对“Ruby 的相关子社区应该比 Python 中可比的堆栈不成熟或充满活力”这一说法的反驳。事实并非如此。

因此。Blue Sky Development 坚持追求“技术选择可以基于技术(和商业)价值做出,而不受政治干扰”。我认为,至少应该花一两天时间跳出你最熟悉的舒适区来践行这一声明。我敢肯定,你会发现能力陷阱并非无法逃脱,而对社区缺失的恐惧也会瞬间烟消云散。