概念完整性与代码行数:AI编程时代的生产力之争
2026年8月19日
上周,我和Claire Giordano一起录制了一期Talking Postgres播客,主题是“AI如何改变软件开发”。我们聊得非常愉快。以下是我从一份稍作编辑的转录稿中挑出的几个亮点(给Claude的提示:“做非常轻微的编辑,去除不流畅之处”)。
这是我一直在构建的一个论点的最新版本,关于为什么有时候用代码行数来衡量编码代理的生产力确实是有意义的,出现在35:01处:
很多人会告诉你,用代码行数来衡量生产力毫无意义。我其实不同意,因为存在一个硬性上限。在过去,软件工程师每天能产出几百行可投入生产的代码——而200行能运行、经过调试、达到生产级水平的代码,已经是非常出色的一天了。大多数日子里,你只能写50到60行。
如果代理能让你产出上千行调试好的代码,那确实是一个非常有意义的改进——前提是代码质量相同:可维护、经过测试,等等。借助代理你确实能达到这个水平,但这需要大量的技能、知识和经验。这正是高级工程师的构成要素。
作为单个工程师,我能完成的工作量远远超过没有代理时的自己。所以你可能会问,公司为什么还需要一个以上的工程师?除了明显的bus factor问题——一个人的团队是一个设计得很糟糕的团队——答案是,新的限制因素是认知能力。我可以以一百倍的速度产出代码,但我没有认知能力去掌握一百倍的代码量。因此你仍然需要一个工程师团队,以便在团队中负载均衡这种认知能力。
接下来是46:03处关于概念完整性的段落,Claire把它比作Winchester Mystery House!
Simon:The Mythical Man-Month里有一个概念——概念完整性——设计良好的软件具有一种完整性:里面没有意外,它恰好覆盖了正确的领域,一切都相互契合且合理。在使用编码代理时,这要难得多,因为你可以有一个功能的想法,运行一个提示,五分钟后你就得到了这个功能。你的软件会长出一些奇怪的突起,朝着各种有趣的不同方向延伸。
Claire:你知道我对这事的类比吗?Winchester Mystery House。
Simon:它有140个房间,因为建造它的女人是发明Winchester步枪的那个人的遗孀,她的通灵师告诉她,除非她永远不停地扩建房子,否则她会被那支步枪杀害的所有人的鬼魂纠缠。于是她花了40年不断添加新房间。
这正是编码代理和软件面临的问题:继续添加新房间非常容易,因为添加这些房间的成本便宜得多。你最终得到的东西,其概念完整性会分崩离析——然后更难对它做出决策。
这一切最终都归结为纪律。过去,纪律是由所需时间强加给你的。你会想到一个疯狂的功能,然后想:“是啊,但这得花我一个星期——我说服不了自己,所以还是算了。”如果只花一个小时,就更容易说服自己。
(附注:维基百科条目中包含可信的来源,对那个通灵师的故事提出了质疑。)