首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >代码界的“瘟疫”?卡帕西“Vibe Coding”兴起,YC披露:1/4新创公司,95%代码全由AI生成

代码界的“瘟疫”?卡帕西“Vibe Coding”兴起,YC披露:1/4新创公司,95%代码全由AI生成

作者头像
深度学习与Python
发布于 2025-03-10 03:07:56
发布于 2025-03-10 03:07:56
4070
举报
编辑 | 燕珊

“有一种全新的编码方式,我称之为“vibe coding”(氛围编码)。你完全沉浸在氛围里,拥抱指数式增长,甚至忘记代码本身的存在。这之所以可行,是因为大模型(比如 Cursor Composer 搭配 Sonnet)已经强大到离谱了。” ——Andrej Karpathy

这个由前 OpenAI 研究员 Andrej Karpathy 在今年 2 月提出的概念——“Vibe Coding”,如今正在硅谷乃至更广泛的技术圈中持续走红。

据硅谷知名创业孵化器 Y Combinator (YC) 的最新消息显示,在 2025 年冬季(W25)这一批 YC 创业公司中,有四分之一的初创团队表示其 95% 的代码都是 AI 生成的。YC 管理合伙人 Jared Friedman 昨天在一档讨论 Vibe Coding 的播客节目中公开了这个数字。

值得一提的是,这些创始人并不缺乏技术背景,过去也能从零开始编写产品,“但如今,他们更愿意直接把绝大部分编码都交给 AI。”

YC CEO Garry Tan 在播客中更是直接指出:“Vibe Coding 不是一阵风潮,也不会消失;它是编码的主流方式,如果你不这么做,就可能被落在后面。”

过去一年里,许多专注 AI 辅助编程的初创公司(如 Bolt.new、Codeium、Cursor、Lovable、Magic)纷纷获得大额融资,也反映了市场对这一领域的强烈兴趣。

1 用“vibe coding”来创作

“我只是在看到什么就说什么,运行,复制粘贴,然后基本能跑起来。如果发生错误,就把错误信息再塞给 AI,接受它的改动,试试看能不能行,然后反复这个流程。”这是 Karpathy 此前在帖子中对 vibe coding 过程的描述。

显然,vibe coding 与传统软件开发的最佳实践——如严格规划、测试和深入理解实现细节——截然不同。Karpathy 当时在帖子中也带着幽默的口吻承认,这种方式适合追求极致“懒人体验”的程序员——“我会提一些很简单的需求,比如‘把侧边栏的内边距缩小一半’,因为我懒得去找那段代码了。我只管点 ‘全部接受’,都不再看 diff。”

vibe coding 的方式对于那些有创意但编程能力不强的人帮助很大,对于有较强编程能力的人来说也是有效的。”正马软件 CTO 沈凎近日在 InfoQ 的一场直播上提到,他最近在做一个研究项目,涉及到一个复杂的前端界面模拟。虽然他并非前端工程师,但通过 AI 工具,他只需简单描述,工具就能快速生成前端界面,如此一来,验证其他部分想法时就能更加高效。

“对于有一定工程素养的人来说,描述清楚后,AI 可以在半小时到一小时内完成整个界面的生成,这种方式对探索新事物和创意实现非常方便。”沈凎说道。

微软工程师 Peter Yang 最近也在一条 X 帖子中演示了 vibe coding 的应用。通过一系列对话式提示输入给 Cursor 和 Claude 3.7 Sonnet,做出了一个简单的 3D 第一人称射击丧尸游戏。Yang 还用了语音转文字应用,以便他能直接用口述来描述需求,并在不断迭代中完善原型。

图片
图片

无论如何,从本质上说,vibe coding 能让只具备基本沟通能力的人,至少在做一些小项目时,变成“用自然语言编程”的开发者。

不过,在当前的大模型里,能够一次性处理多少代码(即上下文大小)仍是限制之一,意味着使用 vibe coding 创作的项目规模有一定上限。如果项目太复杂,用户就需要主动扮演更高层的项目管理角色,将 AI 生成的代码片段拼装到更大的架构中。随着每一代 AI 大模型的技术限制逐渐放宽,这种束缚或许终有一天会消失。

2 vibe coding 的隐忧:调试与理解

在 vibe coding 所带来的高效与随性背后,也暗藏了调试和维护难度的坑。

当初创公司仅有数十或数百用户时,Vibe Coding 效率惊人。但如果产品迅速积累数百万乃至上亿用户,如何保证系统的稳定性就成了严峻挑战。

YC 的 Garry Tan 认为,到了那时候,如果 AI 不能很好地帮你调试,你还是要下到底层去看。你需要知道那些代码到底在干什么。他表示,创始人如果希望产品能走得更远,就需要具备传统的编码训练背景。

YC 合伙人 Diana Hu 亦指出,目前很多大模型在系统调试能力上仍显不足。即使开发者或产品创造者高度依赖 AI,他们仍需具备一项重要技能:阅读代码并发现 bug。“你必须有足够的训练和对代码质量的判断力,知道大模型吐出来的是好东西还是坏东西。要想做好 ‘vibe coding’,你依旧需要能分辨好坏的‘品味’与知识。”

图片
图片

开发者 Ben South 在 X 上调侃 vibe coding 很有趣,可一旦需要“vibe debug“就是另一回事了

独立开发者兼 AI 研究者 Willison 最近在其博客中提到,如果 AI 编程工具出现“幻觉”并生成不存在的东西倒也没那么可怕,因为代码工具带有“内置事实核对”:如果有虚构的代码,运行就会报错。

但是,vibe coding 在专业环境中的风险回报比要复杂得多。个人或小规模项目可以容忍,然而对于企业来说,代码的可维护性与可靠性会有更高要求,而 vibe coding 生成的代码往往难以满足这些标准。如果代码无法如预期般工作,要想修复就必须了解它在做什么——这正是 vibe coding 通常跳过的环节

谈到如何划定什么是真正的 vibe coding,Willison 做了一个重要区分:

如果你让 LLM 写了所有代码,但你还是对它进行了审阅、测试并理解了其原理,那并不算 vibe coding——那其实只是把 LLM 当成一个打字助手。相反,vibe coding 是在没有充分理解代码如何工作的情况下就直接接受。”

尽管最初可能只是 Karpathy 的半开玩笑提法,vibe coding 却可能反映了一部分开发者思路的转变——他们更看重速度与实验,而不再执着于深入的技术理解。

Willison 还强调说,开发者还是必须为自己产出的代码承担责任:“我一直坚信,作为开发者,你得为自己编出的代码负责——如果你要署上自己的名字,那就得对它如何运行、为什么这样运行有把握,最好到能讲解给他人的程度。”

3 编程工作的未来是否会被 Vibe Coding 颠覆

那么,vibe coding 会不会让人类程序员面临失业?从本质上说,编程始终是告诉计算机如何运行。具体的方法虽然一直在演变,但总有人在“精确指令”这件事上比别人更擅长——即便是借助自然语言。某种意义上,这些擅长与 AI 沟通的人,可能会成为新时代的“程序员”。

回顾历史,在 20 世纪 70 年代末到 80 年代初,很多专家曾预测,要想有效使用计算机,每个人都需要编程技能,因为当时几乎没有现成的软件可用。于是世界各地的教育体系都开始普及“计算机编码”课程。可没过多久,人们开发了足够多的应用软件,让非程序员也能轻松使用电脑——无需编程。即便如此,程序员也依然没有消失,他们反而借助这些应用去编写更庞大、更复杂的软件。或许, AI 编程工具也会经历同样的过程。

类似地,就像自动驾驶仪使超音速飞行更安全、更高效,AI 在编程领域也让人类可以“抽象掉”一些繁琐的手动编码环节,进而探索更复杂或更创新的软件体验。

可是,到那个时候,人类还能理解并调试那些由 AI 生成的大规模代码吗?也许不能。到时候,我们也许会对 AI 工具产生全面依赖。

至于 “vibe coding” 能否长期在编程领域占据一席之地,抑或只会停留在原型开发阶段,更多取决于组织在代码质量、可维护性和技术债上愿意承担多大风险,而不仅仅由 AI 模型的技术能力来决定。就目前来看,vibe coding 更像是 AI 与人类开发者之间又一次“既合作、又实验”的互动——或许还谈不上全自动,但的确逐渐模糊了“谁才是真正程序员”的界限。

参考链接:

https://techcrunch.com/2025/03/06/a-quarter-of-startups-in-ycs-current-cohort-have-codebases-that-are-almost-entirely-ai-generated/

https://www.youtube.com/watch?v=IACHfKmZMr8

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2025-03-09,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 InfoQ 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
Linux进程间通信--管道(pipe和fifo)
       通过管道来实现进程间的通信的方法很经典,因为多个进程共享3-4G中的内核,所以在内核中存在一个管道(缓冲区),然后进程通过连接管道的两端从而实现通信。假如说我们现在有一根管道,我们从左端放入一个小球,那么它会从右端滚出来,那么如果我们同时向两端都放入一个小球,那么就不可能实现交叉传递了,所以管道是半双工通信(即双方都可以发送信息,但是双方不能同时发送信息),因此管道的两端一端是读端,一端是写端。那么要实现两个进程的同时读写操作,就需要用两个管道。
Ch_Zaqdt
2020/03/03
4K0
Linux系统编程-进程间通信(管道)
标准流管道像文件操作有标准io流一样,管道也支持文件流模式。用来创建连接到另一进程的管道popen和pclose。 函数原型:
DS小龙哥
2022/04/08
1.3K0
Linux系统编程-进程间通信(管道)
【Linux】进程间通信:匿名管道与进程池
进程之间需要某种协同,所以如何协同的前提条件就是进程直接需要进行通信,传递有效数据
用户11029103
2025/03/13
1990
【Linux】进程间通信:匿名管道与进程池
Linux进程间通信【匿名管道】
进程间通信简称为 IPC(Interprocess communication),是两个不同进程间进行任务协同的必要基础。进行通信时,首先需要确保不同进程之间构建联系,其次再根据不同的使用场景选择不同的通信解决方案,本文主要介绍的通信解决方案为 匿名管道
北 海
2023/07/01
4330
Linux进程间通信【匿名管道】
进程间的通信--管道
进程之间需要协同。 例如,学校里面的各个管理层之间都是互相联系的,不能只是纵向管理。正是因为进程之间需要协同,协同的前提条件是进程之间需要通信,数据是有类别的,有的数据是通知就绪的,有些数据是单纯所传递数据,有的是控制相关的数据。
南桥
2024/07/28
2370
进程间的通信--管道
Linux进程间通信之管道
进程间通信简称IPC(Interprocess communication),进程间通信就是在不同进程之间传播或交换信息。
咬咬
2024/06/12
1540
Linux进程间通信之管道
详解管道
若没有进程间通信,那么也就无法使用并发能力,无法实现进程间协同。传输数据,消息通知等。
用户10786285
2023/10/30
4040
详解管道
Linux:进程间通信(一.初识进程间通信、匿名管道与命名管道、共享内存)
这种双重性使得管道既具有机制的灵活性,又具有文件的可操作性。它可以在不同的进程之间建立连接,实现数据的传递和共享,同时也可以通过标准的文件操作接口进行访问和控制。
是Nero哦
2024/07/09
6930
Linux:进程间通信(一.初识进程间通信、匿名管道与命名管道、共享内存)
【Linux】进程间通信上 (1.5万字详解)
hello,大家好呀。今天我们来学习关于进程间通信的内容,我们知道操作系统中会同时存在多个进程,这些进程有可能会共同完成一个任务,所以就需要通信。本文将讲解几种常见的进程间通信的方式。相信大家已经迫不及待的想要学习了,那我们就开始啦!
破晓的历程
2024/06/24
2980
【Linux】进程间通信上 (1.5万字详解)
【Linux】进程间通信之匿名管道
我们知道多个进程之间是互相独立的,但是有时候我们需要将一个进程的数据传递到另一个进程,实现数据传输的效果,有的时候多个进程之间要共享同样的资源,有的时候一个进程要对其他进程发送消息,实现通知事件,还有的时候一个进程要完全控制另一个进程的执行,实现进程控制
s-little-monster
2025/02/28
1401
【Linux】进程间通信之匿名管道
【Linux】进程间通信——管道
而我们所说的不同通信种类本质就是:上面所说的资源,是OS中的哪一个模块提供的。如文件系统提供的叫管道通信;OS对应的System V模块提供的…
平凡的人1
2023/10/15
4610
【Linux】进程间通信——管道
Linux系统-进程间通信
Linux进程间通信 零、前言 一、进程间通信介绍 二、管道 1、匿名管道 2、命名管道 三、system V 1、共享内存概念及原理 2、共享内存使用接口介绍 1、共享内存资源的查看 2、共享内存的创建和释放 3、共享内存的链接与去连接 4、接口使用示例 3、共享内存与管道对比 4、消息队列/信号量 零、前言 本章主要讲解学习Linux中本系统下的进程间通信 一、进程间通信介绍 概念: 进程间通信简称IPC(Inter process communication),进程间通信就是在不同进程之间传播
用户9645905
2022/11/15
3.1K0
Linux系统-进程间通信
Linux 的进程间通信:管道
本文介绍了管道(pipe)在Linux系统中的实现方式,从三个方面进行了详细阐述:管道的原理,命名管道,以及通过匿名管道进行的进程间通信。同时,文章还探讨了管道在Linux系统中的实际应用,包括shell脚本、cron任务以及Linux中的各种守护进程等。
邹立巍
2017/07/31
8.7K3
Linux 的进程间通信:管道
Linux进程通信之管道解析
管道是 UNIX系统 IPC的最古老的形式,所有的UNIX系统都提供此种通信。所谓的管道,也就是内核里面的一串缓存,从管道的一段写入的数据,实际上是缓存在内核中的,令一端读取,也就是从内核中读取这段数据。对于管道传输的数据是无格式的流且大小受限。对于管道来说,也分为匿名管道和命名管道,其中命名管道也被叫做 FIFO,下面则分别阐述这两种管道。
wenzid
2021/07/20
1.5K0
Linux进程通信之管道解析
【Linux】进程间通信详解
进程间通信(Interprocess communication,简称IPC)就是让程序员能够协调不同的进程,使之能在一个操作系统里同时运行,并相互传递、交换信息。
诺诺的包包
2023/10/15
6960
【Linux】进程间通信详解
进程间通信Linux
首先自己要用用户层缓冲区,还得把用户层缓冲区拷贝到管道里,(从键盘里输入数据到用户层缓冲区里面),然后用户层缓冲区通过系统调用(write)写到管道里,然后再通过read系统调用,被对方(读端)读取,就要从管道拷贝到读端,然后再显示到显示器上。
ljw695
2024/11/15
5110
进程间通信Linux
进程间通信(一)/管道
有时候需要多进程协同,让每一个进程专注于自己的事,然后把结果交给另外一个进程去处理。比如使用管道,让多进程协同,简单的有:
二肥是只大懒蓝猫
2023/03/30
5600
进程间通信(一)/管道
【Linux课程学习】第十九弹---深入理解进程间通信---匿名管道,命名管道,多匿名管道的BUG
https://blog.csdn.net/djdjiejsn/category_12669243.html
用户11396661
2024/12/09
1780
【Linux课程学习】第十九弹---深入理解进程间通信---匿名管道,命名管道,多匿名管道的BUG
【Linux】基于管道进行进程间通信
进程间通信是两个或者多个进程实现数据层面的交换。但是由于进程间存在独立性,所以导致进程间通信的成本比较高。
YoungMLet
2024/03/01
3030
【Linux】基于管道进行进程间通信
进程间通信(27000字超详解)
匿名管道通信 认识管道 匿名管道 匿名管道测试 管道的四种情况 管道的五种特性 管道的读写规则
用户11029129
2024/06/04
4990
推荐阅读
相关推荐
Linux进程间通信--管道(pipe和fifo)
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档