AI 只会加快烂代码的生成速度
深度剖析:AI 工具会放大低质工程实践,而非解决根本问题,强调工程基础的重要性。
深度剖析:AI 工具会放大低质工程实践,而非解决根本问题,强调工程基础的重要性。
我的朋友在他的客户群体中看到了这个模式。在 AI 出现之前就在架构决策上苦恼的公司找不到捷径。他们只是找到了一个方式,把同样的差距压缩到更短的时间窗口里。那些已经在交付不一致的模式、权属边界不清,且技术债默默累积的团队……现在用更快的速度做所有这些事。
我已经看到这个模式足够多次,能够识别它。团队采纳工具,看到初始速度提升,然后把速度误认为是健康的信号。指标在一两个冲刺周期里看起来很好。然后未经审查的决策累积的重量开始显现。本应在代码审查中被发现的重构。整个代码库中分散的模式。因为每个人都在快速移动而没有注意到形成的技术债。
工具没有制造问题。它只是揭露了一开始就缺少多少结构。
分开与 AI 一起繁荣的团队和苦恼的团队的,不是 AI。是判断力。
具有强判断力的团队可以评估模型生产的东西。他们知道他们的模式。他们理解他们的权衡。他们可以看生成的代码并识别何时合适以及何时不匹配。AI 对已经知道好的样子是什么的人来说成为力量倍增器。
没有那种判断力的团队无法评估他们得到的东西。他们在外包他们从未学过自己做的决策。结果不是更好的工程。而是对不确定选择的更快执行。
这是关于工程中 AI 工具的不舒服的真相。它不会平衡竞争场地。它会加陡曲线。有强技术判断力的团队和没有的团队之间的差距变得更大,而不是更小。强团队移动更快并构建得更好。弱团队移动更快并构建更多他们已经有的东西。
我曾经是团队里的甲骨文。
决策都通过我。有效果的项目是我靠近的。我把那读作我在增加价值的信号。实际上那是我建立了依赖而不是能力的证明。工程师们不是因为我的判断更好而听我的。他们听是因为我从未建立过一个测试他们判断的文化。当我退出,决策不是变得更容易。而是变得更慢和更不确定。
这个同样的模式是让我担心的——关于弱工程文化中 AI 工具的问题。当你停止自己做决策,你就停止了建立判断力,那种判断力让你能评估由他人做的决策。包括由模型做的决策。
一个资深工程师给我讲了一个至今还在我脑子里的故事。他花了多年时间构建系统,转向主要指挥 AI agents,然后后来在生产环境碰到一个内存问题并意识到调试的直觉消失了。不是退化了。消失了。
当 ChatGPT 到来时,像我之前运营的那样的团队有一个明显的替代品。不同的界面。底下同样的问题。
与 AI 一起蓬勃发展的团队在工具到来之前就做了工作。他们不需要 AI 来告诉他们好的样子是什么。他们已经知道。
他们有明确的标准。不只是 lint 规则和风格指南……真实的标准,描述决策如何做出、什么权衡重要、何时遵循模式以及何时破坏模式。标准存在于文档和实践中。同一个人可以解释为什么某些东西是这样构建的,为什么不应该那样。那是健康标准的标志。
他们有在批准前进行审问的审查文化。审查提出"为什么"而不是仅仅勾选框。为反驳创造空间而不让人个人化。在那里初级工程师可以质疑资深决策,资深工程师可以承认何时遗漏了什么。权威不在职位。在推理中。
他们有能用自己的话为决策辩护的工程师。不是引用推荐。不是引用别人运行的基准。构造论证。权衡权衡。说"这是我考虑的,这是我选择的,这是我监看来知道我是否错了。"那个能力是让 AI 输出有用而不是危险的。
如果你正领导一支采纳 AI 工具的团队,要问的问题不是关于使用率或生产率指标。是关于判断力。
你的工程师能评估模型生产的东西吗?他们有框架来区分好的推荐和坏的推荐吗?他们能解释为什么接受或拒绝 AI 建议,或者他们只是接受看起来合理的?
重要的工作发生在任何人打开工具之前。是你设置的标准。你建立的审查文化。你花在教工程师思考而不仅仅执行上的时间。AI 不会替代所有这些。它需要所有这些。
我自己用 Cursor 有过那个时刻。打开它,用了十分钟,关闭它。建议到达的速度比我能评估它们快。每一次按键生成了新的选项要考虑,新的模式要质疑,新的决策要做。它不是帮助。是淹没。
后来我认识到那是什么。不是 AI 不好。是我需要在能好好使用它之前更清楚我在找什么。在这个转变中将蓬勃发展的团队是那些识别这个同样信号的。
我电话里的朋友没有担心公司是否在使用 AI。他担心的是他们期望它修复什么。几十年的协调问题不会因为工具变得更好而消失。
AI 不修复弱工程。它只是加快它。
每支团队的问题是那是否是你想要的。你的基础能否承受加速。你的工程师能否评估得更快而不失去什么真正重要的线索。
如果他们能,AI 是倍增器。如果他们不能,它只是你已经有的相同问题的更快输出。
这是值得有的对话。不是是否使用 AI。是你是否准备好它将放大什么。