
今天下班后坐地铁车厢里的人不算多。我靠在门边看着一个又一个站点从窗外掠过突然意识到AI 这两年的发展实在太快了。三年前大家提到程序员第一反应还是门槛高、学习周期长。想做一款软件至少要懂编程语言、数据库、服务器、前后端还要经历需求分析、系统设计、编码、测试和部署。但现在一个从来没有写过代码的人也可以打开 AI 编程工具用几句话描述自己的想法然后一点点“聊”出一个能运行的应用。这就是最近几年被反复提到的一个词Vibe Coding。关于它外界有两种截然不同的声音。有人觉得它正在彻底降低软件开发的门槛让每个人都有机会把自己的想法变成产品。也有人觉得当 AI 可以完成设计、编码甚至测试时程序员这个职业迟早会失去价值。我自己是一名 Agent 开发工程师同时也是一位深度的 Vibe Coding 使用者。现在平均每天消耗的 Token 量接近一亿工作里的很多代码、方案梳理、问题排查都会让 AI 参与进来。所以这篇文章我不想站在旁观者的角度讨论 Vibe Coding。我更想从一个每天都在使用它的人出发聊聊它到底改变了什么以及在 AI 可以快速写代码的时代程序员真正值钱的能力是什么。做出一个软件确实正在变得越来越容易我不否认 Vibe Coding 带来的效率提升。有些过去需要一周才能完成的工作现在可能半天就能做完。以前开发一个功能我需要先查资料、找类似实现、搭基础结构再一点点补充业务逻辑。中间遇到陌生的框架或者报错还要在搜索引擎、官方文档和各种技术文章之间来回切换。现在很多事情都变了。我可以先把需求背景、现有代码结构和目标效果告诉 AI让它分析应该修改哪些模块让它先给出方案再根据方案生成代码遇到异常时把日志、调用链和相关代码一起交给它让它帮我定位问题。很多过去消耗大量时间的重复劳动正在被压缩。从这个角度来说我认为 Vibe Coding 的趋势是好的。它让软件开发从少数人的专业能力逐渐变成了一种普通人也能接触的创造工具。过去一个人有产品想法第一反应可能是“我不会写代码做不了。”现在他至少可以先做出一个原型。这件事的意义其实很大。因为很多有价值的产品并不是程序员最先想到的而是那些真正处在业务现场、最了解问题的人想到的。只是过去他们没有能力把想法变成软件。Vibe Coding 正在缩短“想到”与“做到”之间的距离。但这里有一个容易被忽略的区别做出一个可以运行的软件和做出一个可以长期使用的软件是两件完全不同的事情。做出 Demo 的门槛确实越来越低但要让一个系统真正进入生产环境能够承载真实用户、真实数据和真实业务依然需要大量专业判断。AI 可以帮你把房子快速搭起来但这栋房子的地基是否稳固、线路是否安全、下雨会不会漏水最终还是需要有人负责。AI 没有让程序员失去价值只是改变了价值所在以前接到一个需求我的主要精力通常放在两件事情上一是思考方案怎么设计二是把方案转换成代码。我要考虑数据结构怎么定义、接口怎么拆分、不同模块之间怎么调用还要自己完成大量编码工作。但在今天这两件事情都可以让 AI 深度参与。它可以帮我们分析方案可以生成代码可以补充单元测试也可以阅读日志、排查异常甚至可以根据整个项目的结构完成跨文件修改。于是很多人开始产生一种焦虑既然方案和代码都可以由 AI 完成那么程序员还有什么价值我认为这个问题的前提就不完全正确。AI 并没有让程序员变得毫无价值只是让程序员的工作重心发生了变化。以前程序员更像一个亲自砌墙的人。现在程序员越来越像设计者、指挥者、验收者以及最终对系统负责的人。代码仍然重要但“亲手敲出每一行代码”不再是最核心的价值。真正重要的是你能不能把一个模糊的问题说清楚能不能判断 AI 给出的方案是否合理能不能理解它写出来的代码能不能发现其中隐藏的风险。换句话说程序员的门槛并没有消失。它只是从“会不会写代码”逐渐移动到了“能不能定义问题、判断结果并承担责任”。Prompt 不是一句命令而是一份任务设计很多人使用 Vibe Coding 的方式是想到什么就告诉 AI 什么。“帮我做一个登录功能。”“这里报错了帮我修一下。”“帮我优化这段代码。”如果只是做一个简单的个人项目这样使用可能也能得到结果。但在真实的企业开发中这些描述往往远远不够。因为 AI 不知道你的业务背景不知道项目为什么这样设计也不知道哪些东西可以改、哪些东西绝对不能动。它更像一个能力很强但刚刚加入项目的临时同事。你不能只扔给他一句“把这个功能做了”然后期待他自动理解所有上下文。他需要知道这个需求解决什么问题、当前系统是什么结构、需要修改哪些模块、有哪些历史限制、哪些行为必须保持兼容以及最后满足什么条件才算完成。所以我理解的 Prompt 工程并不是研究几个所谓的“神奇提示词”。它更像是需求分析、任务拆解和上下文管理的结合。一个好的 Prompt应该尽量减少信息差。我自己使用 Vibe Coding 时宁愿在开始之前多花一点时间把背景和目标说清楚也不愿意想到一句说一句让 AI 在不断猜测中修改代码。例如我不会只说帮我增加一个文件下载功能。我会告诉它当前文件是怎么生成的后端通过什么接口返回前端使用什么技术栈希望以什么形式展示同时说明需要支持哪些文件类型、是否要保留中文文件名、重复文件应该怎么处理以及哪些现有接口不能改变。有时我还会让 AI 先不要写代码而是先复述它对需求的理解列出准备修改的文件、可能存在的风险和验收方式。确认理解没有偏差后再进入编码阶段。看起来前面多花了几分钟实际上却能减少后面大量返工。很多时候AI 产出的质量不高并不是因为模型能力不够而是因为我们自己都没有把问题想清楚。当一个需求在人的脑子里还是模糊的它很难通过一句话传递给 AI然后突然变得准确。所以我越来越觉得Vibe Coding 时代的 Prompt本质上是一种新的工程表达能力。你越清楚自己要什么AI 越容易给你想要的结果。代码生成得越快理解代码反而越重要Vibe Coding 还有一个很容易被忽视的问题AI 生成代码的速度已经远远超过了人阅读代码的速度。以前我们一天写几百行代码基本知道每一段逻辑为什么存在。现在 AI 可能在几分钟内修改十几个文件生成上千行代码。表面上看功能很快完成了但新的问题也随之出现这些代码你真的理解了吗为什么这里要增加这一层抽象为什么这个接口需要做幂等处理为什么事务边界放在这里异常发生后会不会回滚并发情况下有没有数据问题原有功能会不会受到影响如果我们只是看到项目能够启动、页面能够打开、接口能够返回就直接认为任务完成了那么这种开发方式其实非常危险。尤其是在企业项目中真正麻烦的问题通常不会在开发阶段立刻暴露。它可能出现在数据量增加之后出现在高并发场景里出现在某个边界输入下也可能出现在系统上线几个月之后的一次紧急故障中。到了那个时候你不可能再对 AI 说“这是你当时写的代码你自己负责。”最后需要排查事故、恢复服务、解释原因的人依然是你。如果你从来没有认真理解过 AI 生成的代码那么这套系统虽然经过了你的手却从来没有真正进入你的脑子。你只是暂时让它跑起来了却没有真正掌握它。这也是我对 Vibe Coding 最大的警惕之一。AI 可以帮我们生成代码但代码的所有权不能一起外包出去。只要最终提交代码的人是你最终上线的人是你那么理解它、验证它、维护它就是你的责任。今天能够运行不代表明天敢于修改。真正可靠的开发不只是让 AI 把代码写出来而是让这些代码逐渐变成你对整个系统认知的一部分。Vibe Coding 最危险的地方是它太容易让人产生“已经完成”的错觉传统开发的过程比较慢。正因为慢我们通常会在每一个环节停下来思考。需求是否合理方案是否可行代码是否存在问题测试是否覆盖完整。但 Vibe Coding 的反馈速度太快了。你输入一句话AI 马上开始修改几分钟后页面出现了再过一会儿接口也跑通了。这种即时反馈很容易让人产生一种满足感功能已经完成了。可事实上“跑通”只是最基础的一步。一个功能真正完成还应该考虑异常流程、权限边界、数据安全、性能影响、日志记录、可观测性、回滚方案以及对现有功能的兼容性。AI 很擅长完成那些被明确说出来的事情。真正危险的往往是那些没有被说出来的事情。你没有告诉它考虑权限它可能默认所有用户都能访问。你没有告诉它考虑并发它可能写出只在单线程环境下成立的逻辑。你没有告诉它保持接口兼容它可能为了完成当前任务直接修改已有数据结构。所以在 Vibe Coding 时代验收能力会变得越来越重要。不能只问“功能有没有实现”还要继续追问它在什么情况下会失败它改动了哪些原有逻辑有没有更简单的实现方式上线后出了问题怎么回退这段代码半年后其他人还能不能看懂AI 给出的答案通常看起来很完整但“看起来合理”和“实际上正确”之间仍然存在距离。这个距离需要人来判断。未来真正拉开差距的不是写代码的速度当所有人都可以借助 AI 快速生成代码之后单纯比较谁写得快意义会越来越小。未来真正拉开差距的可能是另外几种能力。首先是定义问题的能力。很多时候业务方给出的只是一个表面需求。优秀的开发者不会立即开始写代码而是会继续追问真正的问题是什么这个需求有没有更合适的解决方式哪些是必须做的哪些只是想当然其次是系统判断能力。AI 可以提供十种实现方案但它不知道你的团队规模、历史系统、上线周期和维护成本。什么方案在当前环境下最合适仍然需要人做选择。然后是业务理解能力。越了解业务就越知道哪些规则不能被破坏哪些数据尤其敏感哪些看似简单的修改可能影响整条业务链路。最后是责任意识。AI 可以生成建议却不会承担生产事故的责任。最终点击合并、发布系统、面对用户的人依然是我们。所以我并不认为 Vibe Coding 会简单地淘汰程序员。它更可能淘汰的是那种只会机械接收需求、机械编写代码却不理解业务、不关心系统也不愿意对结果负责的工作方式。相反那些能够把问题说清楚、能够利用 AI 放大自身能力、同时又能保持判断和责任感的人价值反而会更高。我仍然看好 Vibe Coding但不会盲目乐观我非常看好 Vibe Coding。它正在让软件开发变得更快也让更多普通人有机会创造自己的产品。过去需要一个团队才能验证的想法现在一个人可能用一个周末就能做出原型。这种生产力的提升是真实的也很难逆转。但我不会因此认为未来的软件开发会变成“只要会聊天就够了”。会和 AI 对话只是开始。在 AI 可以快速生成代码之后我们反而更需要清晰地表达需求更需要理解系统更需要判断输出质量也更需要对最终结果负责。以前程序员的价值更多体现在“我能不能把代码写出来”。未来程序员的价值可能更多体现在我知不知道应该做什么能不能让 AI 正确地完成能不能判断它做得对不对以及出了问题之后能不能接得住。Vibe Coding 并没有终结程序员。它只是把程序员从大量重复的编码工作中推了出来让我们不得不面对那些更难、也更有价值的事情。代码会越来越便宜。但判断、理解、经验和责任不会。而这些或许才是 AI 时代真正的技术壁垒。