正在加载文章内容,请稍候。
正在加载文章内容,请稍候。
AI 带来的省力常伴随成本与责任缺失,工程价值来自理解与协作而非外包判断。

精准输入
✍️ 写下你的想法,自由记录即可。如果没有灵感,试着回答上方的费曼输出问题。
登录后可保存笔记、高亮、划线和批注。
作者以个人经验为线索,从成本、经验、复杂性认知、摩擦力的价值和责任感五个维度,解释为什么他拒绝使用 LLM 驱动的“凭感觉编程”。核心论点不是 AI 没用,而是当我们把判断、理解和责任外包给一个“不在乎”的系统时,真正的工程价值就已经丢失。
作者回到 Fred Brooks 的经典论文《没有银弹》:软件开发的复杂性分两种——偶然复杂性(写代码本身的繁琐)和本质复杂性(设计正确、优雅、可维护的抽象架构)。从机器码到高级语言,从手写排序到调用标准库,行业在偶然复杂性上已取得巨大进步。AI 只是这一进程的最新迭代,解决的仍是偶然复杂性,而本质复杂性哪儿也去不了。LLM 的“高级自动补全”面对没有标准答案的复杂问题时,能发挥多大作用,仍是个问号。
引用詹姆斯·斯科特的《国家的视角》,作者指出每一次抽象同时也是一次遮蔽。程序员在建模时必须决定反映现实的哪些方面、丢弃哪些方面。LLM 永远无法做到这种元认知——对它们来说,模型本身就是现实。Robin Sloan 的比喻很精准:LLM 在一个纯粹由字母构成的世界里运转,要求它认识到现实的局限性,就像问金鱼水温怎么样。
DOGE 在社会保障局的案例是绝佳反面教材:他们发现数据库中超过 900 万条记录的出生日期在 120 年前且无死亡记录,就直接断定数百万人在欺诈领取福利。他们拒绝考虑数据字面意思之外的任何解释,拒绝与专家交流——这正是 LLM 走偏的同款逻辑。
作者认为“摩擦”不是障碍,而是重要信号。当写代码变得困难时,说明当前架构有问题,需要重新设计。他会强制自己写架构决策记录(ADR),这个过程常常暴露最初直觉的盲点。LLM 对待摩擦的方式是闭着眼睛写过去——它感受不到摩擦,也无法解释为什么选择了某条路径。
更深层的问题是:LLM 营销将“摩擦”定义为敵人,但在实际工作中,摩擦往往来自那些防止缺陷流入生产环境的流程——其他工程师、测试人员、设计师、产品经理。当这些角色被视为“摩擦”而被砍掉时,团队可能跑得更快,但交付的产品绝不会更好。
作为前数据记者和公共科技领域工作者,作者深知代码错误的代价——可能是令人难堪的更正,可能是服务崩溃影响弱势群体。LLM 不可能“在乎”:它不会因犯错懊悄,不会努力改进,没有内在意识更没有道德良知,因此道德责任永远不能外包给它。
LLM 供应商正在重演特斯拉的套路:在没有安全测试的情况下推送新功能,出了问题则责怪用户“提示词写得不够好”。这种极端的资本主义正在被标准化:让消费者承担更多风险,因为企业和政府放弃了监管责任。
作者坦言编程是他表达创造力的方式,也是艰难时期的慰藉。他花了一年时间构建追踪 DOGE 行动的系统,这个过程本身就是将绝望转化为行动的途径。同时他也指出,硅谷很多人把工作外包给 AI 后,反而用省下的时间去接更多的工作,拥抱了 996 和高度量化的工作环境。
Vibe Coding 的问题不在于 AI 本身,而在于它所传递的价值观:用速度替代理解,用产出替代责任,用自动化替代协作。当我们把判断权交给一个不在乎后果的系统时,丢掉的不只是代码质量,还有工程师的职业尊严和对用户的责任。
文章以个人叙事为驱动,每一节以一个个人特质(吐槽、忧伤、敬畴、注意力)作为入口,逐步将论证从个人偏好拉升到行业结构性问题。先用 Brooks 的复杂性理论奠基,再通过抽象与摩擦的辩证展开,最后落在“责任感”这个不可外包的核心上。
费曼输出