Loading... # 打破 Vibe Coding 的迷思:当 AI 编程遇上"黑暗心流" # 一、概述 ## 1. 文章背景 Vibe Coding(氛围编程)是 2025 年以来技术行业出现的一种新现象,指开发者大量使用 AI 生成复杂代码,且往往不打算仔细阅读这些代码。这种现象已对科技行业产生深远影响。 ## 2. 核心观点 Vibe Coding 类似于赌博中的"黑暗心流",给开发者虚假的成就感和效率提升错觉,但实际可能导致生产效率下降和技能退化。 ## 3. 关键数据 - METR 研究显示:开发者认为 AI 让他们提速 20%,但实际速度降低了 19% - 感知与实际效率差距高达 40% - 多位知名 AI 专家的预测已落空 # 二、什么是 Vibe Coding ## 1. 定义 Vibe Coding 是指使用 AI 编程助手生成大量复杂代码,开发者通常不会仔细阅读这些代码。这种做法已成为某些公司的强制要求。 ## 2. 行业现状 - 企业高管以 AI 能处理工作为由进行裁员 - 管理层给员工设定 AI 生成代码的配额指标 - 软件开发者担心自己落后于所谓的"10 倍开发者" - 大学生质疑是否还需要学习计算机科学 ## 3. AI 编程代理的问题 知名开发者 Armin Ronacher 在其"代理精神病"一文中描述了亲身经历: > "当我第一次迷上 Claude 时,我没有睡觉。我花了两个月时间过度提示它,浪费了大量 token。我最终构建了很多工具,但后来并没有真正使用……我构建的相当多工具让我感觉很好,但后来意识到我实际上并没有使用它们,或者它们并没有像我想象的那样工作。" 他将这种现象称为"代理精神病"。 # 三、心流与黑暗心流 ## 1. 真正的心流状态 心理学家 Mihaly Csikszentmihalyi 在 1970 年代首次正式定义了"心流"概念: > "心流是一种人的技能足以应对所面临挑战的感觉,存在于一个目标导向、规则约束的行动系统中,该系统提供了关于表现如何的清晰线索。" 心流状态的两个关键特征: - 挑战水平与技能水平相匹配 - 提供关于表现如何的清晰线索 ## 2. 赌博与黑暗心流 赌博成瘾研究人员创造了"黑暗心流"(dark flow)一词,描述一种与真正心流相似但有害的状态。 ### A. 挑战与技能的不匹配 轮盘赌玩家会发展出复杂的系统来预测轮盘的转动,尽管结果完全由随机性决定。Csikszentmihalyi 指出,赌徒往往相信自己的技能在起重要作用。 ### B. 损失伪装成胜利 现代老虎机创造了"损失伪装成胜利"(Loss Disguised as a Win,LDW)的机制: - 传统老虎机:要么赢要么输 - 多线老虎机:同时运行 20 行,奖励部分"积分" - 示例:赌 20 美分,获得 15 美分"积分"(实际亏损 5 美分) - 机器播放庆祝声音,触发积极的多巴胺反应 研究表明,这些游戏引起的生理反应与实际获胜相似,玩家更容易进入高度专注、类似心流的状态。 ### C. 垃圾心流 Csikszentmihalyi 在 2014 年的采访中定义了"垃圾心流": > "垃圾心流是指你实际上对一种肤浅体验上瘾,这种体验在开始时可能是心流,但一段时间后变成了让你上瘾而不是让你成长的东西。问题在于,在那些不产生成长但具有吸引力和诱惑力的事物中寻找快乐或享受要容易得多。" ```mermaid graph LR A[心流状态] --> B{特征分析} B --> C[真正心流] B --> D[黑暗/垃圾心流] C --> E[挑战与技能匹配] C --> F[清晰的表现反馈] C --> G[个人成长] D --> H[虚假的掌控感] D --> I[误导性反馈] D --> J[成瘾与退化] ```   # 四、Vibe Coding 与赌博的相似性 ## 1. 损失伪装成胜利 Armin 的经历体现了这一点: > "我构建的相当多工具让我感觉很好,但后来意识到我实际上并没有使用它们,或者它们并没有像我想象的那样工作。" 这就像老虎机的 LDW 机制: - 生成了数百行代码 - 创建了许多应用程序 - 部分确实有用,但大部分代码过于复杂,难以维护或修改 - 代码中包含隐藏的 bug ## 2. 违反心流的特征 Vibe Coding 违反了真正心流的两个关键特征: ### A. 缺乏清晰的表现线索 使用 Vibe Coding 时,人们往往要几小时、几周甚至几个月后才知道生成的代码是否优秀: - 发现新的 bug - 无法进行简单的修改 - 程序以意外方式崩溃 - AI 编码代理的工作量和生成的代码量似乎是短期生产力的指标 ### B. 挑战与技能水平不清晰 Vibe Coding 提供了一种虚假的掌控感: - 编码者指定想要构建的内容 - LLM 提供如何进行的选择 - 但这些选项与程序员自己会做的架构选择截然不同 - 将他们引导到原本不会走的路径 ## 3. 心理工程设计 老虎机和 LLM 都经过专门设计以最大化你的心理反应: | 特征 | 老虎机 | LLM 编码代理 | |------|--------|--------------| | 目标 | 最大化游戏时间和投注金额 | 让用户持续使用 | | 方法 | 庆祝声音、视觉刺激 | 迎合人类的回答 | | 结果 | 赌博成瘾 | 过度依赖、虚假效率感 | AI 可以过于擅长优化指标,往往导致有害结果。 ```mermaid graph TD A[用户使用 AI 编码] --> B[生成大量代码] B --> C[即时成就感] C --> D[多巴胺奖励] D --> E[继续使用] E --> B B --> F[代码质量未知] F --> G[数周后发现问题] G --> H[需要重写] H --> I[实际效率降低] I --> J[却感觉更高效] ```   # 五、不可靠的叙述者 ## 1. 效率错觉 METR 的一项研究发现,当开发者使用 AI 工具时: - 他们估计自己工作速度快了 20% - 但实际上他们的速度慢了 19% - 感知与实际之间的差距接近 40% ```mermaid graph LR A[使用 AI 工具] --> B[自我评估] A --> C[实际测量] B --> D[感觉快 20%] C --> E[实际慢 19%] D --> F[感知效率] E --> G[真实效率] F -.差距 40%.-> G ```   ## 2. 主观评估的不可靠性 很难评估那些热衷于 Vibe Coding 生产力说法的人: - 虽然软件工程的专业知识和提供有效上下文的知识很有用 - 但它们对 Vibe Coding 结果的影响是非线性和不透明的 ### 案例研究 作者订阅了一位领先 AI 研究人员的博客 10 年,一直很享受。但最新两篇文章无法阅读,后来发现作者使用 AI 生成了这些文章: - 作者声称以同样的质量更快地生产内容 - 这些文章读起来与他早期作品截然不同 - 至少对作者而言,这些文章的可读性不如以前的文章 ## 3. 社交媒体的扭曲 社交媒体上充斥着声称通过 AI 完成更多工作的账户。人们可能真诚地相信他们所说的话,但个人对自己生产力的判断往往是糟糕的。 # 六、失败的预测 ## 1. 历史上的失败预测 AI 领域的许多预测并未实现: | 预测者 | 预测内容 | 预测时间 | 实际情况 | |--------|----------|----------|----------| | Geoffrey Hinton | AI 将取代放射科医生 | 2021 年 | 未实现 | | Sundar Pichai & Jeff Dean | 所有数据科学家使用神经网架构搜索 | 2023 年 | 未实现 | | Dario Amodei | AI 编写 90% 的代码 | 2025 年底 | 待验证 | 甚至有一个专门的维基百科页面记录埃隆·马斯克关于自动驾驶汽车预测的失败。 ## 2. 预测的不可靠性 Vibe Coding 的部分吸引力在于声称它在 6 或 12 个月后会有多有效。这些预测纯属猜测,往往基于希望而非现实。 ```mermaid graph TD A[AI 技术突破] --> B[过度乐观的预测] B --> C[媒体报道放大] C --> D[公众期待升高] D --> E[技术发展未达预期] E --> F[现实与期待的差距] F --> G[失望与调整] ```   # 七、职业发展的赌注 ## 1. 风险评估 考虑这种情况: - 你没有发展软件工程或解决问题的技能 - AI 编码代理能够处理日益复杂的预测没有实现 - 这会把你置于何处? ## 2. AI 工具的现实 虽然 AI 工具确实令人印象深刻并持续改进,但主要基础实验室的预测一直高估了它们的开发速度。这并不新鲜,科技公司几十年来一直在过度宣传他们的产品。 ## 3. 技能投资的重要性 Jeremy Howard 在 Nvidia 开发者采访中指出: > "现在全力投入 AI 代理的人是在保证自己的过时。如果你将所有思考都外包给计算机,你就会停止提升技能、学习和变得更加胜任。" AI 是一个有用的工具,但它不能替代核心的人类能力。 # 八、人类创造力和思维的重要性 ## 1. AI 的局限性 AI 编码代理可以生成语法正确的代码,但它们: - 不产生有用的抽象层 - 不产生有意义的模块化 - 不重视简洁性 - 不改善大型代码库中的组织 我们已经实现了编码的自动化,但还没有实现软件工程的自动化。 ## 2. 思维的价值 同样,AI 可以生成语法正确、听起来合理的文本,但它: - 不能直接磨炼你的想法 - 不能生成最精确的表述 - 不能识别问题的核心 # 九、总结与建议 ## 1. 核心洞察 Vibe Coding 是"黑暗心流"的一种表现形式,它提供虚假的成就感和效率错觉。虽然 AI 工具确实有用,但需要谨慎使用。 ## 2. 关键建议 - 值得尝试 AI 编码代理,看看它们能做什么 - 但不要因此放弃当前技能的发展 - 对关于 AI 未来能力的预测持怀疑态度 - 继续投资于自己的核心技能和思维能力 ## 3. 平衡之道 AI 是工具,不是替代品。真正的生产力来自于: - 深刻理解问题本质 - 设计合理的架构 - 有效使用 AI 工具辅助开发 - 保持对代码质量的理解和控制 *** ## 参考资料 1. [Breaking the Spell of Vibe Coding – fast.ai](https://www.fast.ai/posts/2026-01-28-dark-flow/) 2. [Agent Psychosis – Armin Ronacher](https://lucumr.pocoo.org/2026/1/18/agent-psychosis/) 3. [METR Early 2025 AI Experienced OS Dev Study](https://metr.org/blog/2025-07-10-early-2025-ai-experienced-os-dev-study/) 最后修改:2026 年 02 月 16 日 © 允许规范转载 赞 如果觉得我的文章对你有用,请随意赞赏