AI让我们更加成为自己
AI并没有让糟糕的工程师变好,只是让他们更快了。它不改变我们的本质,而是放大我们的特质。对于懒惰或草率的程序员,AI加速了他们输出低质量代码的速度,并且由于AI自身倾向于复制现有模式而不质疑,导致技术债务被固化并大规模扩散。
AI并没有让糟糕的工程师变得优秀,它只是让他们变得更快。它不改变我们的本质,而是让我们更加成为自己。这是一个力量倍增器,但并非褒义。
过去,懒惰或草率的程序员会受到自身限制:他们进展缓慢。由于本性懒惰,他们缺乏动力去做出巨大改动。他们的代码和架构可能很糟糕,但他们的生产力同样低下。他们糟糕决策的爆炸半径很小。现在,有了AI助手(再加上管理层催促我们使用它们),同样的工程师在拥有同样判断力和同样盲点的情况下,输出了10倍的代码——只是问题累积得更快了。
这是最糟糕意义上的平等化:它不管你产出是否有价值,只管提升产出。
我在工作中看到了这一点,尤其是在一些大型共享仓库中——比如一个管理Kubernetes工作负载IAM角色的中央仓库,另一个管理可观测性服务监控代码的仓库。这些仓库和流水线是中央拥有的,但代码所有权是分散的;通过目录结构划分。当一个团队需要添加他们的服务时,常见的方法是找到现成服务的代码,复制它,然后做最小的改动使其运行。没有人停下来问那个模块一开始设计得是否良好——他们只是看到一个模式就复制。这种情况持续了多年。时间越长,大家就越相信这一定是正确的方法——毕竟,每个人都这么做。没有人意识到他们正在使用的是复制品的复制品,而最初的源头可能根本没有经过深思熟虑。
AI正好融入这种工作流程。让它指向一个混乱的共享仓库,并请求添加一项服务,它就会完全按照懒惰工程师的做法:模式匹配到最近似的现有示例并复制。它不会问“这个模块真的好吗?”——它只会问“这里已经有什么了?”就像人类走阻力最小的路径一样,它默认选择阻力最小的路径而非熵最小的路径。区别在于,人类可能会因此感到一丝内疚,而AI只是自信地输出复制品。因此,AI不仅加速了懒惰的工程师,它本身的行为也像懒惰的工程师——它会像工程师一样避免打破糟糕的模式。它延续了技术债务。
所以,你得到了双重打击:糟糕的工程师在不变得更好的情况下更快了,而本应解决问题的工具却倾向于固化任何已有的混乱——规模更大、信心十足,且缺乏人类可能会有的犹豫。
(Ricky撰写本文。LLM用于编辑。)