我是 Ben,我是一名 Rails 开发人员
好了,我说了。虽然我的大部分专业经验都是在 Ruby on Rails 环境中工作的,但我很少愿意承认这一点。虽然不是刻意为之,但潜意识里,我受到了行业观念的影响:Rails 是给菜鸟用的框架,Ruby 不能用于任何严肃的事情。虽然我并没有这种经历,但 Hacker News 对 Rails 的这种思维模式确实让我感到不安。
然而,在 Railsconf 上,我将发表关于“我们如何让我们的应用程序如此快速地在日本流行起来”的演讲,我对这个我每天使用的 15 年历史的框架感到非常兴奋。
我是一位非常有能力的软件开发人员,在 Rails 之外也能很好地编写代码。但 Ruby on Rails 让我保持高效。它让我能够将脑海中的想法转化为图像,避免思路中断。Rails 做了很多权衡——他们称之为“魔法”。这些权衡指的是框架在文件中没有明确说明其功能的情况下执行的操作。但所有技术都有其权衡之处,而 Rails 对于那些善于使用它的人来说仍然如此美好。
我不是 Rails 的绝对主义者或辩护者——我喜欢承认它的许多缺陷。也许这就是为什么我不把自己介绍为 Rails 开发人员。我一直认为我们的 Rails 应用程序dev.to最终不会成为Rails 应用程序。也许不是今年或明年,但我觉得最终它会成为dev.to代码库,其中一部分基于 Rails。但我不明白为什么更多的人不从 Rails 开始项目,不管他们对于完美完成的应用程序是什么样子的概念。它是终极的启动项目软件,它可以扩展到您想要的程度。在初创领域,我觉得硅谷已经放弃了 Rails,因为它不再流行——并且这样做会损失很多生产力。
我记得一篇博客文章讲的是一家新公司,他们原本有一些非技术方面的动力,但因为把一个简单的想法用 Go 语言编写成微服务,导致项目完全偏离了正轨。我不记得在哪里找到的这篇文章,但这个故事很有说服力。他们放弃了之前的计划,花了一两周时间学习 Rails,才弥补了几个月因为过度思考这个问题而损失的生产力。
初创公司应该拥抱 Rails 提供的快速生产力,而不是因为对未来的不明确担忧或时尚而拒绝它。
我为了创建dev.to而回归 Rails,是因为一个复杂的应用程序让我焦头烂额,我需要回到一个能让我全神贯注于整个项目的环境。起初只是一种安慰,后来却变成了动力,因为事情进展迅速,而且网站符合更大的项目需求,因为小的改动可以及时实施。但速度并不意味着马虎,而是在于使用一个有主见的框架,力求在你需要的时候,所有你需要的工具都触手可及。如果项目初期无法突破少数人需要快速高效工作的阶段,那么你将面临无法扩展的问题,而最终会面临无法上线的问题。
而且,受益于 Rails 环境的不仅仅是像我这样的小项目。任何一家大公司都充满了小项目——或者至少应该如此。Rails 仍然是大多数 Web 开发环境中的生产力标准。
Rails 并非唯一一个“简单”的框架。虽然出现了许多受人启发的新项目,但它仍然是最成熟的简单框架。它发展良好,始终紧跟Web 开发的前沿,并不断推出优秀的新功能。Rails 5.2 看起来很不错,我对它的状态很满意。
我是 Ben,我是一名自豪的 Rails 开发人员。
文章来源:https://dev.to/ben/im-ben-and-i-am-a-rails-developer-1j67