从NodeJS切换到Ruby on Rails - nikodunk


JS看起来不错,很多公司默认使用它,社区很大。但是对于我的新的副项目,我决定尝试 Rails,因为尽管有人认为 Ruby on Rails 已经“结束”了,但 HN 评论中的人说它比基于 Node 的新堆栈更有趣。尝试过之后,我可以说哇——来自当前的 Javascript 生态系统会发现 Rails能成为一种启示。
 
在 Rails 中构建 Web 应用程序花了我 2 天——同样的事情在 Node 中需要 2 周。HN 评论中的人总是指责 Node 生态系统让你为每个项目重新发明轮子,现在我明白了他们的话的真相。
我感觉自己就像一个高效的创始人,以上帝般的速度开发出令人愉悦的产品,而不是一个冷酷的开发人员,他们走捷径迈向MVP。
事实证明,虽然外行不认为它是最新的技术,但企业家和团队的快乐亚文化使 Rails 保持最新状态。他们不断添加惊人的新功能,例如易于使用的 Websockets 实现。或者称为 Hotwire 的反应式应用程序技术。这就像发现了一个隐藏在人们视线中的秘密社团。
 
我在 Node 中用 Express、Postgres、EJS、Knex 等编写了两个小时的样板后,我决定尝试使用 Rails,并为它展示了一个简单的“hello world”。
我的背景,我学会了所有的基础知识——比如原始 SQL、ORM、身份验证、测试、Websockets、迁移、如何构建项目。我已经为我参与的每个新的绿地项目连接了 10 次 CRUD 和身份验证。如果一开始就从 Rails入手 可能没有给我这么多深入的理解。
 
但是 Rails 魔法正在处理我的新项目的管道。这会带来哪些机会?我觉得主要有两个:

  • 更好的计算机科学——我可以更专注于学习有用的模式来创建框架而不是如何设置它。计算机科学不是管道。
  • 更好的业务——Rails 允许我思考我正在开发的产品——并以思考的速度构建它——而不是像我经常在 Node 项目中所做的那样陷入困境。当我收到客户反馈时,我可以毫不费力地移动或无情地废弃它们。我什至可以在设计时像用户一样思考。到目前为止,这就是 Rails 对我来说真正的魔力:我可以同时使用我的左脑和右脑。高级框架释放了足够的空间来思考我正在构建的内容而不是我如何构建它。我可以轻松地构建东西,以至于我有空间去思考体验——所以东西看起来不再像“由工程师设计”了。