Hacker News 中文摘要

RSS订阅

2026年回归Rails -- Returning to Rails in 2026

文章摘要

作者在2026年重返使用Rails框架,为乐队开发了一个管理演出曲目和笔记的应用程序,解决了之前使用电子表格和聊天群组的不便。这个项目体现了作者对技术探索的热情,享受纯粹为了乐趣而构建事物的过程。

文章总结

重返Rails:2026年的老派Web开发之乐

作者背景
作为一名热爱业余项目的技术极客,作者在解决乐队排练曲目管理问题时,决定抛弃电子表格等临时方案,转而开发专属应用setlist.rocks。这个决定让他重新发现了传统Rails开发的乐趣。

Ruby语言的独特魅力
尽管2025年Stack Overflow调查显示,Ruby语言仅位列Lua和汇编语言之间,Rails框架也跌出流行度前20,但作者仍坚持使用这一技术栈: - Ruby的链式方法调用和yield块让代码如英语般流畅 - 社区文化充满个性,如Why the Lucky Stiff的《Poignant指南》 - ActiveSupport库提供人性化语法(如3.days.from_now

Rails 8的革新
1. 前端优化
- 采用Hotwire技术栈(Stimulus+Turbo)实现SPA体验 - 引入importmap工具链,无需Webpack即可管理JS依赖 - 示例:bin/importmap pin @stimulus-components/dialog快速集成对话框组件

  1. 后端增强

    • Solid Cache/Queue组件用SQLite替代Redis,降低基础设施依赖
    • 片段缓存示例:<% cache ["band_dashboard", @band.cache_key] do %>
    • 后台任务配置简化:schedule: every day at 3am
  2. SQLite生产级支持

    • 默认启用WAL日志模式和NORMAL同步策略
    • 新增pragmas:配置块优化性能参数
    • 内存映射大小等关键参数已预设合理值

现代化部署方案
- Kamal部署工具实现容器化一键发布 - 支持多服务器角色定义(web/job等) - 秘密管理通过.kamal/secrets文件解耦 - 部署流程演示:Asciinema录屏

技术生态现状
- Rails版本迭代保持稳定(年均发布) - 但Gem生态活跃度下降(如Devise近年更新锐减) - 仍被Shopify/GitHub等大型平台使用

结语
在追求简历镀金的时代,作者倡导回归开发本心——享受创造过程本身。Rails 8通过降低认知负荷、简化工具链,重新点燃了全栈开发的纯粹乐趣。

"有时候,做一件事仅仅因为它该死的令人愉快。" —— 本文核心观点

(全文保留关键技术细节,删减了部分个人经历描述和重复观点,压缩比例约60%)

评论总结

以下是评论内容的总结,平衡呈现不同观点并保留关键引用:

对Rails的批评与担忧

  1. 反感新定位:有用户强烈反对Rails官网将框架定位为AI代理工具,认为这背离了Rails简洁优雅的初衷。

    • "If I read this the first time I would think this is some kind of tool to optimize your LLM agents."
    • "Now it seems like DHH is throwing all what made Rails special overboard."
  2. 学习曲线问题:新用户可能难以理解现代Rails(7+版本),尤其是对JS/TS开发者不够友好。

    • "If your first contact with rails is version 7+ and you’re only comfortable with JS/TS, then you’re not going to get it."

Rails的优势

  1. 开发体验与规范性:用户称赞Rails的MVC结构强制代码规范,且长期维护稳定。

    • "Rails enforces good code patterns early on... it is an MVC framework."
    • "Rails' deprecation-then-removal cycle is slower but way less disruptive."
  2. 生产力与稳定性:多人提到Rails适合长期项目,尤其对比现代JS框架的混乱和安全问题。

    • "Rails is just a lot of fun, and that’s especially important for side projects."
    • "Solid, proven, stable and scalable."

与其他技术的对比

  1. 替代框架选择:部分用户推荐Elixir/Phoenix或Go,认为它们更轻量或未来导向。

    • "I tried to look forward, and what I found was Elixir and the Phoenix framework."
    • "With Go, it’s so easy just to copy the binary over."
  2. 维护成本争议:有用户指出Rails/Django的旧项目升级依赖管理复杂,而Go更简单。

    • "Updating a project that was started 5-6 years ago takes a lot of time... managing dependencies."

社区与文化

  • 传统技术价值:部分开发者呼吁回归"无聊但可靠"的技术(如Rails/PHP),反对过度架构。
    • "I’m just tired hearing how great ideas will save our overblown pseudo-microservice architecture."
    • "They both are just problem solvers... write minimal code and proceed to next task."

关键数据支持:Stack Overflow调查显示Rails重回"最想使用的技术栈前五"(评论9),且Ruby的JIT改进提升了吸引力(评论8)。