AI 没有智慧,你也不会有

工程师们在争论,AI 生成的代码是否注定会变成一团不可维护的乱麻,还是只是反映了人类长期以来在糟糕架构和技术债上的老问题。许多人认为,只要有清晰的规格、测试和“agent 脚手架”引导,大语言模型已经可以匹配甚至超过普通开发者,但他们也担心,过度依赖会侵蚀组织知识、削弱初级开发者技能,并让团队越来越难在多年尺度上做出明智的架构权衡。另一些人则反驳说,编码正在变成一种廉价、可替代的商品,真正的差异化将取决于团队如何设计系统、定义约束,并在 AI 浓度极高的工作流中平衡短期速度与长期代码健康。

AI 生成代码的质量与“氛围编程”

  • 许多人认为由 LLM/agent 编写的代码过度复杂、不一致,而且容易出现隐藏 bug,尤其是在使用模糊的“做 X”提示时。
  • 另一些人则认为,这与平庸的人类代码本质上并无不同;AI 只是同时加快了功能交付和代码腐化。
  • 还有几条评论指出,AI 质量在很大程度上取决于约束、示例和审查;没有指导的 agent 产出“垃圾”几乎是必然的。

可维护性、指标与架构

  • 讨论普遍同意,长期可维护性很难衡量;常见指标(圈复杂度/认知复杂度、SonarQube)噪声很大,也很容易被钻空子。
  • 有人建议为增量修改建立 RL 环境和基准测试,以训练模型更关注可维护性,但这仍处于早期阶段。
  • 更高层的架构和边界设计是 agent 目前最容易失败的地方;工具可以强制低层规则,却无法保证良好的系统设计。

学习、智慧与组织知识

  • 一个反复出现的担忧是:那些“从 2025 年起就没写过代码”的开发者可能永远无法建立深层直觉,从而变得依赖 AI。
  • 有人把这与制造业外包、失去工业诀窍作比较;AI 也可能同样削弱软件工艺和领域理解。
  • 也有人反驳说,人类本来就很少达到精通,而关于代码的“智慧”往往是隐性的,即使教人也很难形式化。

人们实际上如何使用 AI

  • 有些人报告了显著的生产力提升:让 agent 负责大部分实现,然后自己把重点放在规格、架构和测试上;在几个小时内完成大型重构;生成更全面的测试和验证。
  • 另一些人则发现自己花了太多时间“催促”模型并修正奇怪的设计,因此更愿意手写关键路径。
  • 提到的技巧包括:AGENTS.md 约定、将丰富的代码注释作为“无基础设施记忆”、多 agent 交叉审查,以及显式的重构阶段来减少不断累积的垃圾代码。

激励、劳动与文化

  • 许多人把容忍 AI 垃圾代码的原因归咎于管理层对速度和上市时间的关注,以及对那些为了提升质量而放慢节奏的工程师的惩罚。
  • 当求职者可以借助 AI 掩盖薄弱基础时,招聘和评估也会变得更困难。
  • 有人认为,关心代码质量主要是文化和激励问题,而不是工具问题。

关于未来的预测

  • 一派预计 AI 会无处不在,甚至可能出现完全 agent 化的流水线;“NO-AI” 政策被视为小众或不可持续。
  • 另一派则预测,“NO-AI”(或尽量少用 AI)的团队会成为高端或出于安全考虑的利基市场,尤其是在高风险领域。
  • 对发展轨迹尚无明确共识:有人认为 AI 编码质量正在快速提升;也有人认为在可维护性和上下文限制等核心问题上几乎停滞。