夜雨聆风学习资料网

ARTICLE · 1083263

AI Coding,正在产生更多负债

AI Coding,正在产生更多负债

“代码不是资产,代码是负债”,这是软件工程里一个很早就有的观点。

道理也简单。代码写出来不是就完事了,以后要有人看、有人改、有人维护,出了问题还得查,最后不用了,还得有人敢删。

所以代码这东西,从来不是越多越好。

到了 AI Coding 时代,这个问题变得凸显出来。

代码一直都是负债。以前制造负债速度慢,现在开始“量大管饱”了。

而且我说的不是 AI 写的代码质量差。

恰恰相反。

现在 AI 写出来的代码质量已经相当不错。测试、静态检查、Code Review、质量扫描再跟上,很多问题都能被发现。

真正麻烦的是:

我们拥有了源源不断生产“质量不错的代码”的能力。

以前做一个功能很贵。

一个需求提出来,研发一评估:三天。那就再想想。一周?那就先别做了。

很多需求最后消失了,不一定是我们多有智慧,纯粹是因为做不起。

现在好了。

“这个功能能不能加一下?”——能。“这里是不是再做一个配置?”——可以。“顺便再做个管理页面?”——没问题。

接口、页面、测试、文档,一套带走。

量大管饱。

代码多了,负债也增加了。

更麻烦的是:

感觉AI可以“包治百病”。

客户说需要一个功能,我们就做一个功能。业务说流程这里卡住了,我们就加一个流程。两个系统配合不好,再做一个中间系统。数据不一致,再做一个同步服务。

每一个问题都有答案,而且 AI 很快就能把答案写出来。

于是,我们反而少问了一句:

为什么会有这个问题?

我们看到的需求、故障、流程卡点,很多时候只是露出水面的那一小块。

真正需要做的,也许不是马上解决它,而是:

看清问题背后的运行方式

这个问题是怎么产生的?

为什么以前没有,现在有了?

是缺一个功能,还是流程本身就不合理?

是系统能力不够,还是原来的边界就划错了?

一层一层往回找,有时候会发现:

真正需要改变的,根本不是代码。

改一下流程,问题没了。

重新划一下边界,问题没了。

把已有能力重新组合一下,也解决了。

甚至把问题重新想一遍,会发现:

原来的问题根本就不成立。

所以我现在越来越觉得,AI Coding 的第一层,是写得更快。

再高一点,是写得更少。

最高一层,一行都不写就解决问题。

《孙子兵法》讲“不战而屈人之兵”。

Coding其实也一样。

以前我们最骄傲的是:

这么难的问题,我终于把它写出来了。

AI 时代,也许更值得骄傲的是:

解决这个问题,我一行代码都没写。

不是为了少写代码而少写代码。

而是看清了问题背后的运行方式以后,发现有些代码从一开始就不需要存在。

AI 已经很会写代码了。

接下来,可能轮到我们学习怎么让AI写得更少。


延伸阅读

Eric Lee — Source Code Is A Liability, Not An Asset(2009)https://saintgimp.org/2009/03/11/source-code-is-a-liability-not-an-asset/

Marcel Weiher — Code is not an asset(2008)https://blog.metaobject.com/2008/08/code-is-not-asset.html

相关学习资料