他说在折腾 AI 编程的过程中,碰到一个很烦人的问题。
Agent 写代码的时候,它会先把整个数据库层写完,再写整个应用层,最后写整个前端。每一层单独看还行,但拼到一起就出问题。因为数据库里的设计会影响前端展示,你得让这些层早一点对上才知道合不合理。可 Agent 总是最后才开始组装。
他觉得这样不行。然后他翻出了书架上一本一直没拆封的《程序员修炼之道》。
他说这本书他买了之后一直没看,还包着塑料膜。翻开以后,几乎每一页都觉得像是写给今天的。里面有一个概念叫 tracer bullet,追踪子弹。意思是做一个功能的时候,不要按层来,要纵向切一刀,从数据库到应用逻辑到前端,先把一条窄窄的路径跑通,确认可行之后再往两边扩展。
他把这个词写进了给 Agent 的提示词里。然后他发现了一件有意思的事:Agent 开始在自己的推理过程中主动使用这个词了。它会说「好的,我把这个做成一个 tracer bullet」。
他管这个叫 leading word,引导词。因为这些经典编程书籍几乎肯定在模型的训练数据里,当你在 prompt 里用了这些专业术语,就相当于激活了模型脑子里对应的那片知识。
他又从《软件设计哲学》里捞出了 deep modules 这个概念,从《领域驱动设计》里拿到了 ubiquitous language 的思路。他发现这些二三十年前的老概念,到了 AI 时代反而更好用了。
#科技先锋官# #How I AI#