聊聊 vibe coding
vibe coding,中文翻译为氛围编程,初次听这个词一头雾水。这个词由Andrej Karpathy ( OpenAI 联合创始人、前特斯拉 AI 负责人)最早提出:
我最近创造了一种新的编码方式,叫做“氛围编码”。在这种编码中,我完全沉浸在氛围中,接受代码指数级别的变化,甚至忘记代码本身的存在。这是因为大型语言模型(比如结合了 Cursor Composer 和 Sonnet 的工具)越来越强大。此外,我几乎不需要碰键盘,只要通过 SuperWhisper 和 Composer 进行对话。我问一些非常简单的问题,比如“将侧边栏的内边距减少一半”,因为我懒得找相关的代码。我总是选择“接受全部”,也不再查看差异了。当出现错误信息时,我只是简单地复制粘贴这些信息,通常这样就能解决问题。代码的发展超出了我平常的理解,假如想彻底理解它,我得花比较长的时间认真阅读。有时候,LLM(大型语言模型)无法修复某个错误,我就通过变更一些随机的内容或请求其他修改来绕过问题。虽然这样做对随便的周末项目来说还不错,但也非常有趣。我正在构建一个项目或网页应用,但这已经不算真正的编码了——我只是看看、说说、运行和复制粘贴,最后大多数情况下都能正常工作。
也可以这么说,vibe coding 是一种完全依赖 AI 的一种编程方式,这种编程方式下人本身只是用语言输出需求,而 AI 生成实际代码。和之前完全由人编写代码截然不同。因为完全由 AI 生成代码,这就导致代码数量和代码质量其实并不可控。当 AI 生成的代码越来越多时,就会越来越不可控,人已经完全无法理解代码,只能通过观察运行结果不段的让 AI 去修改来达到最终的效果。由此在编码过程中,人只是享受这种编码的氛围而不是在实际的编码。所以叫做氛围编程。
(这样讲,产品经理是不是早就走在氛围编程的前列了😂)
vibe coding 得到了许多人的关注和讨论,信奉 AI 编程的人终于找到了归宿,而对 AI 编程不那么执着的人也终于找到一个适合嘲讽的词汇。现在这个阶段,我们既能看到 AI 编程带来的便利:
- 类似 Cursor 这样优秀的工具层出不穷,一直 Tab 和 Apply 就能获得不错的代码反馈;
- 编码门槛进一步降低,总能听到没有编程经验的人的产品获得巨大成功;
- AI 模型质量的不段提高,比如 Claude 3.7,创新变的简单,模型能给你意想不到的效果。
也能看到 AI 编程带来的隐患:
- 由于现阶段 AI 能力的不可控,可能更适合一次性的产品,多次迭代可能就意味着引入未知的 bug;
- 对于真实且特定的线上业务,AI 的或许并不能很好的给出解决方案;
- 越来越少的人关注代码质量、交付质量,软件工程开始陨落。
虽然各方对 vibe coding 的讨论各执一词,但现阶段的 AI 编程说到底还是 Copilot 的角色,还是需要一个掌舵人的角色,所以我们要保持清醒,可以享受 AI 编程带来的美妙的 vibe,但切不可沉迷其中无法自拔。
欢迎关注我的公众号:前端生存指南,一起聊聊前端、AI 和生活。
