AI写代码别只靠vibe:资深程序员的10条戒律

两种极端都不可取

AI 时代,学生和研究者该如何使用 AI 写程序?一种极端是假装 AI 不存在,坚持纯手写——这不利于为遍布 AI 的世界做准备。另一种极端是把活儿全交给 AI(即所谓 vibe coding):只盯着测试是否通过,不再细读每一行代码。后者会带来「自我欺骗」——以为自己掌握了,其实没学到任何有价值的技能。作者打了个比方:认知技能像肌肉,练起来难,丢起来快。

中间路线:手写,AI 审查

折中方案被称为「匠心编程」(craft coding)。它的价值取向是围绕产品本身的质量,细到每个细节;开发者承诺理解代码库的每一处,AI 可以用,但只在有助于这一理想时才用。最凝练的实践口号是「手写,AI 审查」:以当下模型的能力,不要让 AI 去做任何事,只让它审查你写好的东西,你认同才采纳。最好的比喻,是把 AI 当成一位资深程序员的代码评审。

匠心编程的十条戒律

  1. 不在 IDE 里用 AI,包括 LLM 自动补全;每一行字符都亲手敲。
  2. 最好不把代码库交给 AI;需要时在网页界面里粘贴片段,若必须授权,也只用只读权限。
  3. 不让 AI 运行任何东西;它给建议,你来执行。
  4. 不把 AI 对话框里的代码直接复制粘贴,要自己敲一遍。
  5. 能用普通搜索解决的事,不麻烦 AI。
  6. 问 AI 之前,先读文档。
  7. 只有自己实在解不出时才向 AI 求方案,并先给自己思考的时间。
  8. 请 AI 审查前,自己先检查一遍。
  9. 先运行代码排查问题,再让 AI 审查补漏。
  10. 没看懂的建议,绝不采纳。

为什么值得这么做

作者以科研代码为例:论文里的实验代码一旦出错,整篇结论都可能失效,因此科学是匠心编程的典型场景。安全关键软件同样如此——在 AI 时代,纯手写的代码反而不够安全,开发者必须把 AI 审查纳入流程,否则攻防会变得极不对称。

当然,适度使用也无可厚非。作者坦言自己偷懒时也会写潦草代码、让 Claude 直接调试,但他提醒这有「技能退化」的风险。GitHub Copilot 近期从包月改为按量计费,一些重度 vibe coding 用户月费从 30 美元涨到 750 美元,也算一种侧面注脚。

结论很朴素:手写与 AI 审查之间,藏着一片明智的中间地带。只要保持思考、不把大脑闲置,答案就在那里。

来源:Peter Bloem(peterbloem.nl)