前言

  • 在最近两个周末我尝试进行了两天的 vibecoding, 高强度的 vibecoding,超过 2亿 token 消耗, 确实有了挺过感受和思考
  • 现在互联网上到处都是 ai 要替代程序员的说法, 但是我去真正调研和观察我的同事和相关从业人员的时候, 却发现 ai 的渗透率比我想象的要低, 至少在我们真正工作上 coding, 起作用的大多时候还是 类似 copilot 这类的工具而非是 cursor/cluade-code 这种 vibecoding的工具
    • 实际上我发现一件事, 那些开源项目或者说小公司的项目,他们通常会觉得 AI 是一个非常有帮助的工具,甚至可以说能完全替代程序员, 但是实际上针对于大厂,类似字节、腾讯这种的员工来说,当他们真正使用这 AI 的时候,他们会发实际上 AI 能发挥的功能是非常有限的(从我的角度观察到的, 比较主观)
    • 但我其实比较幸运,我首先本身是大厂的员工,因此我能接触到那些动辄十万乃至百万行的代码。以及我同时在维护着很多开源项目,包括在改写一些自己的小项目之类的,因此我也有需求是去写小项目的。这就给我非常好的机会去体验不同的场景
  • 实话实讲,我确实被震惊到了,AI 发展的速度确实是指数级的。现在的 ai 和 22年出 gpt3.5 简直不能同日而语, 现在给我的震撼能和 3年前带给我的相媲美

Vibecoding

  • 我用 ai coding 尝试主要是在这几方面

    1. 小型开源项目的修改
    2. 大型开源项目的修改
    3. 大型工程项目的修改(公司项目)
    4. 产品 MVP 版本实现
  • 使用的工具主要是

    • qwen-cli
    • vscode+cline
    • gemini-code
    • claude-cli

    没用 cursor 是因为这玩意太过分了, 现在居然自定义模型都得加钱, 吃相难看, 也没见多大的不可替代性

  • 使用的模型主要是

    • qwen
    • gemini2.5
    • claude
    • glm4.5
  • 我的模式基本都是非必要情况完全不读代码, 基本完全不写代码, 只负责提出要求,和验收成果

感受

AI 目前能做的

  • AI 使得成为独立开发者的成本触底了, 你只需要懂得任何一门语言, 你就可以免费让 ai 去给你将脑海里的idea 实现出来, 基本上成本为 0, 当然除非你 idea 太复杂, 否则都是一件非常简单事, 你可以用一张产品图让 ai 做一个满足功能的 app, 前端就更加简单了, 以前你需要找程序员来进行开发, 如果你有了个 idea, 涉及多个方向的你还得找全栈程序员, 现在你只需要上点技巧说出你的梦想, 当然如果你本身是个程序员懂点代码, 这个会更加简单
    • 我周末就用 ai 写了非常多的我的项目的前端网页官网, 基本每个几分钟就行, 因为我不是前端工程师, 我虽然也能写, 但是很麻烦, 现在完全没有这些考虑, 现在基本上就是这部分完全 ai 生成. 在4年前我做这些的时候基本上都是找个模板抄下来然后自己去改里面的文字和链接, 现在我截个图复制个链接给 ai , ai 也能搞出一模一样的出来
    • 绝大多数的大学生作业之类的都是这类小型的玩具系统, 这种 ai 表现非常好
  • 小型项目的修改基本上ai 可以完全解决, 我用 ai 给 GitHub - chenxuan520/MKOnlineMusicPlayer: 这个项目加上了收藏列表和评论详情这些功能, 项目是 php 写的, 我不懂 php, 但是实际上加这些功能我基本看都没看过代码, 全都是 ai 自己加上去的, 这样的 case 很多, 现在很多小型开源项目我们想加一些功能的时候基本上都完全可以自闭环所有修改, 不用等着作者大大去实现 GitHub - chenxuan520/newsnow 包括这个项目也是, 现在修改一个项目的成本非常低了

AI 效果还很差的

  • 当单个项目大于 10w 行时候(当然这个估计并不准确,我只能够根据经验来进行一个初步的预估), 当项目存在非常多的历史业务逻辑 , 当项目存在非常多上下游的未知依赖的时候(上面这几个条件实际上就是企业级大规模项目) , ai 的表现是非常灾难的表现
    • 整体代码理解力变弱非常多, 可能本质是没办法直接使用 lsp 的原因, 重构基本上每次都会漏改一些代码, 以及经常是 AI 会陷入一些不停的自循环搜索,或者说一些其他的一个问题,经常会把你的代码给改崩。
    • 业务逻辑基本上不会改, 基本上属于你让他改一个地方他改了之后并不能发现其他地方会因为这部分导致崩溃, 基本上改着改着问题越改越多了, 代码质量非常差, 基本上是史山
    • 上下游依赖接口的时候也不会自己去拉上下游的接口文档来看, 基本上属于自己猜测来进行修改的
  • 目前AI 的上下文长度还是不足以支撑编写大型项目。我当时编码时候用的是100万上下文的。Gemini 2.5模型,但是实际上还是不够用,还是会有超越100万上下文的情况。

AI 发展的方向

模型

当年互联网之所以能够突发猛进发展起来,有一个很重要的原因就是网络从2G 变成4G 了,更大的带宽承载了更多的流量,这是整个互联网能够蓬勃发展的基石和底座, 使得流量可以承载视频流的出现。而现在 AI 的时代,模型的质量就是曾经的网络的速度

更大

  • 更大的上下文, 没有更长的记忆力, 更长的上下文或者缓存, 基本上大型项目就是痴人说梦, 很简单, 超过 10w 的代码库理解难度是真的比任何一本书大的
  • 更加聪明的模型, 现在基本上几乎每家大模型都在往这个方向发展, 让自己变得更加聪明, 让自己能够承载更多的业务, 让自己的模型标准成为行业的标准

更小

  • 参数轻量化, 我们现在日常生活中反而见到一些场景的机器人比较少的一个重要原因是, 目前 本地跑大模型成本太高了, 没办法压缩到一个 1w的诊疗台机器人能够跑的起的程度, 跑不了必然需要联网, 但是联网涉及到的问题就会非常多, 隐私以及断网情况下解决, 所以目前让模型变小+二次训练成某个方向的机器人也是一个非常热门方向
  • api 价格便宜化, 三年前我觉得 200w 的token 非常多, 基本用不完, 毕竟每天不停聊天也用不了多少, 现在 vibecoding 10分钟吃了 一千万, 两天吃了一个亿的 token, token 怎么都不够用(现在在项目里面用 cli说个 '你好' 都吃10w的token), 这种情况下太高的 token 价格意味着性价比会非常低

应用

10年叫做 互联网+万物, 20年就是 AI+万物

  • 现在 'ai+' 的产业全面铺开但是还没全面见效, 就和当年互联网刚开始一样, 但是现在已经出现无数的 ai+ 的创业公司, 无论是 ai+机器人, ai+化妆镜 , ai+衣服试穿, 没有人知道某条路能否走通, 但是毫无疑问的是 'ai+' 这个产业确实会极大程度地影响我们的生活, 几年前 gpt 刚出现时候鲜有人会想到我们现在听的歌是 ai的, 看的视频是 ai生成的,图片是 ai生成的, 评论是 ai写的, 小说也是 ai 生成的, 代码也是 ai 写的, ai 在大家没注意到的角落已经占领了非常多的领域, 养活了非常多的人. 十年前有句话叫做 知先觉经营者;后知后觉跟随者 ;不知不觉消费者 , ai 毫无疑问是目前这几年最大的风口, 只是绝大多数没意识到这件事的人都不知不觉成为了消费者
  • 但是现在不得不承认, 最好的模型依旧在美国, 无论是 gpt5 , claude, gork ,gemini 对国内模型都是断崖式领先, 但是 qwen 和 deepseek 很大程度上拉高了模型的下限, 所有不如这两款的模型的闭源模型都死了, 因为人家比你好用还开源, 但是上限很明显能感觉到差距, 目前国内 ai 使用覆盖率最高的 doubao 连生成个 crontab 都能做错, gpt5 已经开始揣测用户心思并询问用户是不是需要更多的信息了

对行业的冲击

  • 十年前滴滴的出现使得不会用滴滴的出租车司机几乎绝迹, 十年后 ai 的出现使得程序员和十年前的滴滴司机一样的处境, 如果不会用 ai 就不可避免出现落后乃至淘汰的风险
    • 当然我不去卖课我也不希望任何人去买 ai 的课程, 纯粹智商税
  • 滴滴不会淘汰所有司机, 只会淘汰不用滴滴的司机, ai 也是一样, ai在可见的范围内无法完全或者大规模替代程序员, 原因主要以下几点
    1. 实际上做程序员的都知道, coding 是整个工作最轻松的部分, 更多的是去了解业务逻辑, 历史逻辑, 和产品测试扯皮, 出问题了背锅, 但是现在及时是这俩面最简单的 coding 的部分 ai 依旧做的还不够, 正像我上面提到的 ai面对大规模代码时候的无力感, 如果你现在做的东西 ai 能提供非常非常大的 coding帮助, 甚至替代你的位置 , 这只能说明你现在做的系统还不够复杂. 当然这部分是 ai 最容易实现的部分
    2. 其他的方面目前 ai 渗透率更加低了, 比如 ai 还不会遇到不懂的代码上 git blame 查谁写的然后一个电话打过去问当时怎么堆出来的, ai 也不会主动去搜索两年前的业务文档看下这玩意是什么意义, 这种情况下写业务代码几乎是不可用的, 本质上还是因为 ai 没有长期学习的记忆能力, 上下文再长还是不够, 毕竟现实世界的上下文几乎是无限的
    3. ai 现在还不会拒绝 , 也还不会从高内聚低耦合的角度去思考代码, 也就是不会考虑代码的维护性, 一个产品, 做个 MVP版本出来 ai 能做的很快, 但是你用ai迭代 1年之后会变得痛不欲生, 什么需求都能做,不在乎是否合适, 什么代码都能加, 先跑再说, 到最后的结果是,某一天加功能的时候发现怎么加都加不上了, 出现上面代码复杂度过高的情况了
    4. 还有一点, ai 不能背锅的, 问题代码是使用方承担后果, 这就意味着 ai 必然是程序员的助手而不是替代

程序员该做的

  1. 关注最新的 ai 进展, 但突破性 ai 应用出来时候第一时间考虑自己能不能用得上并且去尝试, 时刻保持对世界 ai 的敏感性
  2. 主动去思考自己的工作流程中那些是可以用 ai 进行提效的, 当然这一步几乎所有的互联网产品都在考虑. 但是作为一个程序员, 几乎所有的 ai 产品的最前线都是 coding, 如果长时间不在生活中去主动尝试 ai 在目前的应用, 最后的结果必然是渐渐不用 ai, 最后时落后于这个 ai 的时代