理解债:人工智能生成代码的隐性成本

以下文章最初出现在 Addy Osmani 的博客网站上,经作者许可在此转载。理解债是由于过度依赖人工智能和自动化而对人类智力和记忆造成的隐性成本。对于工程师来说,它最适用于代理工程。有一项成本未显示在您的 [...]

来源:O'Reilly Media _AI & ML

以下文章最初出现在 Addy Osmani 的博客网站上,经作者许可在此转载。

理解债是由于过度依赖人工智能和自动化而对人类智力和记忆造成的隐性成本。对于工程师来说,它最适用于代理工程。

当团队深入使用 AI 编码工具时,速度指标中不会显示出成本。尤其是当审查人工智能生成的所有代码很乏味时。这种成本不断积累,最终必须连同利息一起支付。这被称为理解债或认知债。

理解债是指系统中存在的代码量与人类真正理解的代码量之间不断扩大的差距。

与技术债务不同的是,技术债务通过不断增加的摩擦(缓慢的构建、纠结的依赖关系、每次接触某个模块时令人毛骨悚然的恐惧)来显现出来,理解债务会滋生虚假的信心。代码库看起来很干净。测试是绿色的。清算悄然到来,通常是在最糟糕的时刻。

Margaret-Anne Storey 描述了一个在第七周遇到困难的学生团队:他们无法再在不破坏意外情况的情况下进行简单的更改。真正的问题不是混乱的代码。团队中没有人能够解释为什么做出设计决策,或者系统的不同部分应该如何协同工作。该系统的理论已经消失。

这就是理解债务的实时复利。

我读过 Hacker News 的帖子,这些帖子捕捉到了工程师真正在与这个问题的结构版本进行斗争的情况——不是熟悉的乐观与怀疑的二元对立,而是一个试图弄清楚当瓶颈发生变化时实际的严格性的领域。

这里存在速度不对称问题

人工智能生成代码的速度远远快于人类评估代码的速度。这听起来很明显,但其含义很容易被低估。

我喜欢测试,但它们并不是完整的答案

从历史中学习