编程应该是一种氛围!

7 阅读3分钟

编码不应是负担,而应是乐趣

编程体验的困境

"氛围式编程"(vibe coding)的吸引力源于何处?就是那种程序员悠闲地靠着椅背,通过AI提示完成整个项目的景象。这种吸引力部分来自一个现实:太多的开发环境使用起来实在令人不快

那些被繁琐语言和复杂框架困住的程序员们,迫不及待地想要摆脱软件开发中的编码部分,这也就不足为奇了。如果我也觉得写代码是种苦差事,恐怕我同样会想着早日退休。

但事实并非如此。


从工具到乐趣的转变

当然,我曾经是这么想的!在我刚开始编程时,纯粹是因为我需要程序。学习编码只是一个必要但不便的过程,目的仅仅是为了让系统能够运转起来。

然而,这一切在我接触Ruby并构建Rails后彻底改变了。

Ruby:以程序员幸福感为核心

Ruby的核心理念是"程序员的幸福感"(programmer happiness):编写代码本应是一种乐趣。从历史角度看,这门语言愿意牺牲运行时性能、内存使用效率和其他机器友好的特性,来追求所谓的程序员幸福感。

而如今,这两方面似乎可以兼得。经过三十年的不断改进,Ruby现在不仅速度极快、效率很高,而且仍然保持着让人愉悦的使用体验。

AI与编程的关系

这种精神如今愈发闪耀。那些不满现状的程序员们终于意识到:摆脱晦涩的语法、冗长的模板代码和生态系统的频繁变动是可能的。这正是AI的吸引力所在——它能隐藏所有这些令人不快的东西。

但这就像把杂物塞到床底来"清理"房间——本质上并没有真正解决问题!

编程的本质

但这种本能是正确的:编程应该是种氛围(vibe)!它应该是有趣的!它应该:

  • 足够接近人类语言,不让代码噪音掩盖底层的思想和决策
  • 提供丰富的表达方式,服务于人类读者
  • 不是一味迎合计算机偏好的严格性

Ruby正是做到了这一点。


我为何不放弃编码

正因如此,我对放弃编写代码毫无兴趣。这并非我想让AI替我分担的部分。

如果放弃编码,我能做什么?变成一群AI乌鸦的项目经理吗?

在我的职业生涯中,我一直有机会走上管理层的阶梯,但我始终婉拒,因为我真的热爱编写Ruby代码!这是工作中最令人愉悦的部分!

AI作为辅助而非替代

这并不意味着AI在Ruby编程中没有一席之地。实际上,我每天都在与各种大语言模型(LLM)交流协作:

  • 查询API
  • 澄清概念
  • 提问各种问题

AI确实是出色的配对程序员,但我宁愿选择退休,也不愿永久地将键盘控制权交给AI。

未来展望

或许有一天,想要亲自编写代码会成为一种古怪的念头。就像在现代社会中为了交通目的而饲养马匹——仅作为一种爱好,没有任何实际经济价值。

我想没有人能确切知道我们能将这些贪婪的token消耗者(指AI模型)的智能和创造力发展到何种程度。我不会断言它们不会继续进步,但有一点对我来说很明显:

它们对程序员的吸引力很大程度上来源于Ruby创立时的智慧:编程应该以人为本,为人类服务

原文:world.hey.com/dhh/coding-…