尽管存在广泛的误解,但 “vibe coding” 这个词是 Andrej Karpathy 创造的,用来形容一种 AI 辅助编程的方式,在这种方式下,你“甚至忘了代码的存在”。
对于没人能看懂的代码,我们已经有了一个专门的词:祖传代码 (legacy code)。
祖传代码是人见人嫌的,而且理由很充分。但为什么呢?你不是有代码吗?看看不就懂了?
大错特错。没人能看懂的代码就是技术债。要想弄懂陌生的代码,以便进行调试,需要花费大量时间,更不用说在不引入新 bug 的情况下添加新功能了。
我们都知道,编程的本质是理论构建 (theory building),而不是生产一行行的代码。这就是为什么我们总是嘲笑那些试图用代码行数来衡量开发者生产力的商业人士。
当你进行 vibe coding 时,你正以大语言模型 (LLM) 能达到的最快速度,疯狂地累积技术债。这也正是为什么 vibe coding 非常适合原型开发和一次性项目:只要你不需要维护它,它就算不上是祖传代码!
我曾愉快地用 vibe coding 开发过一些应用,比如:
我不需要持续开发这些应用,所以我是否理解它们的代码,并没有成为问题。这些应用也非常小,这意味着即使我将来需要回头阅读代码,我所承担的技术债也不会太多。通过 vibe coding,我构建这些应用的速度远超传统方式,而且这个过程非常爽。
Vibe coding 存在于一个光谱之上,其程度取决于你对代码的理解程度。你理解得越多,你 vibe coding 的成分就越少。
仅仅因为你是一名工程师,在提出需求时说“我需要一个带持久化数据库的 Web 应用”,你的 vibe coding 程度就已经低于一个非程序员了。非程序员可能只会说想要一个“App”,却不了解 Web 应用和原生应用的 distinctions,也不懂持久化数据存储是如何工作的。
最糟糕的情况,莫过于让一个非程序员用 vibe coding 来构建一个他们打算长期维护的大型项目。这就像把信用卡交给一个孩子,却没有先向他解释什么是债务。
可以想象,第一阶段是欣喜若狂的。“我只要晃晃这张小塑料片,就能拿走店里任何我想要的东西!”
这很像现在的情形:“AI 现在什么都能做了!谁还需要学编程啊!快看它刚刚为我做的东西!”
但只要等上一个月,你就会收到信用卡账单。“我真的需要买那些东西吗?我该怎么填上这个窟窿?”
这和 vibe coder 很像。“我的代码坏了。这些文件和文件夹到底是干嘛的?我该怎么才能修好它?我为 vibe coding 花掉的 400 美元能退款吗?”
如果你看不懂代码,你唯一的办法就是让 AI 帮你修复,这就像用一张信用卡去还另一张信用卡的债,无异于拆东墙补西墙。
如果你正在构建一个严肃的、打算在 2025 年进行维护的项目,Andrej 的看法是正确的:
[要] 紧紧地拴住这个新来的、过度热情的实习生天才。他拥有百科全书般的软件知识,但同时也总是对你胡说八道,勇气过剩,却对优秀代码几乎毫无品味。重点是要放慢速度、保持防御姿态、小心谨慎、甚至有些偏执,并且总是抓住每一个即时学习的机会,而不是把任务甩手出去。
— Andrej Karpathy,twitter
在 Val Town,我们已经通过数十种方式将 AI 融入了我们的产品。Townie 是我们的 AI 助手,它可以主动地读取和编写代码、运行代码、查看日志,并不断迭代直到任务完成。
Townie 是一个很棒的 vibe coding 工具。我衷心向那些理解其中利弊的人推荐它。我自己有时也用它进行 vibe coding。其他时候,当它对一个我非常在意的项目进行精细修改时,我会对它严加看管。这两种方式都既有趣又有用。
用 AI 编程的变化如此之快,以至于很难预测明天会发生什么。但我相信,理论构建仍将是构建复杂软件活动的核心。我们的技术专长依然重要!而且我乐观地认为,AI 将继续以令人惊喜的方式改善编程。
但是,如果你认识哪个非程序员正花费数千美元,用 vibe coding 来实现他们价值十亿美元的应用创意,请把这篇文章发给他们。Vibe coding 无法带他们到达想去的地方。他们最终将不得不学会用他们自己的肉眼去读代码 😱,并明白一个道理:有时候,从头开始构建一个编写良好的代码库,比修复一个谁也看不懂的祖传系统要容易得多。
这篇随笔是我上个月一次演讲的精炼版本:《人脑在编程中的角色》。感谢我的未婚妻 Emily 数月来倾听我对此类话题的咆哮,并为我拍摄了演讲视频。感谢 Malte 和 Rippling 主办这次演讲。 感谢 Geoffrey Litt, Jimmy Koppel, Max McDonnell, Tom MacWright, Charmaine Lee, Brent Jackson, 和 Dan Shipper 对本文的反馈。感谢 Simon Willison 和 Andrej Karpathy 在 AI 的狂热吹捧和悲观否定声中,成为理性的声音。
这篇文章的核心观点非常明确且切中要害:作者将当前流行的、由 AI 辅助的 vibe coding 与软件工程中臭名昭著的“祖传代码”和“技术债”直接挂钩。他犀利地指出,在不理解代码的情况下,单纯依赖 AI 生成代码,本质上是在以惊人的速度制造未来难以维护的麻烦。
作者并非全盘否定 vibe coding。他将其描绘成一个“光谱”,并清晰地划分了适用场景:
文章通过“把信用卡给孩子”这个生动的比喻,形象地警示了非专业人士滥用 AI 编程工具的潜在危险:初期看似无所不能,后期则会陷入难以偿还的“技术债务”危机。
我的看法:
我完全赞同作者的观点。这篇文章是在当前 AI 浪潮中一剂清醒剂,它没有陷入“AI 将取代程序员”或“AI 毫无用处”的二元对立,而是提供了一个非常务实且富有建设性的视角。
总而言之,AI 是一个强大的赋能工具,它将编程的门槛降低了,也把生产力的上限提高了。但它并未改变软件工程的基本原则。对于想要构建严肃、持久软件的人来说,人类的智慧、经验和深刻理解,依然是不可或缺的基石。
I'll be honest—…
What is Black S…
View Comments
Because the admin of this web site is working, no hesitation very shortly it will be well-known, due to its quality contents.
Can you be more specific about the content of your article? After reading it, I still have some doubts. Hope you can help me. https://accounts.binance.com/el/register-person?ref=DB40ITMB
I must thank you for the efforts you have put in writing this website.
I am hoping to see the same high-grade blog posts by you later on as well.
In fact, your creative writing abilities has inspired me to
get my own blog now ;)
my webpage - over at this website
Great beat ! I would like to apprentice while you amend your site, how can i subscribe for a
blog website? The account aided me a acceptable deal. I had been a little bit acquainted
of this your broadcast provided bright clear concept
Feel free to surf to my homepage ... resources
Hi every one, here every one is sharing such experience,
thus it's pleasant to read this website, and I used to visit this weblog
everyday.
Take a look at my page; extra resources
Awesome article.
Also visit my website - learn more here
Do you have a spam issue on this blog; I also am a blogger, and I was
wondering your situation; we have developed some nice methods and we are looking to trade techniques with
other folks, please shoot me an e-mail if interested.
Feel free to surf to my page ... click here to investigate
Hi! I could have sworn I've been to your blog before but after going through
a few of the posts I realized it's new to me. Regardless,
I'm definitely happy I came across it and I'll be bookmarking it and checking back often!
Stop by my webpage click to read more
Greetings! Very useful advice in this particular article!
It is the little changes that make the most significant changes.
Many thanks for sharing!
my web blog ... his response
https://black-screen.cc
https://stratup.ai/zh/startup/D97tFgdN2OLyoTcutvso
https://aiforums.co/threads/black-screen-fullscreen-focus-oled-pixel-testing.5021/
https://www.inouts.com/services/black-screen
https://www.sitelike.org/similar/black-screen.cc/
https://askaianything.com/black-screen/
https://black-screen.weebly.com/
https://rentry.co/blackscreen
https://black-screen-2.jimdosite.com
https://chromewebstore.google.com/detail/black-screen-tool/gdmmkhkgpdlaichbgelnlgjlbiocmmol?hl=en-US&utm_source=ext_sidebar
https://black-screen-893160.webflow.io/
https://leonardduan.blogspot.com/2025/10/black-screen-tool.html
https://www.sitejabber.com/reviews/black-screen.cc
https://mergejpg.tinyblogging.com/welcome-to-black-screen-white-screen-the-ultimate-free-tool-for-display-testing-and-calibration-81996428
https://mergejpg.jiliblog.com/94434123/welcome-to-black-screen-white-screen-the-ultimate-free-tool-for-display-testing-and-calibration
https://www.manta.com/c/m1xs0pj/black-screen
https://news.ycombinator.com/item?id=45695530
https://land-book.com/black_screen
https://www.indiehackers.com/product/black-screen-2
https://peerlist.io/duanhjlt/project/black-screen
https://kyi.ai/ai/black-screen-cc
https://black-screen.cc/white-screen
https://stratup.ai/zh/startup/x3MqgSU0lPMTfVAJQM29
https://aiforums.co/threads/white-screen-for-fullscreen-testing-cleaning.5022/
https://white-screen.weebly.com
https://rentry.co/whitescreen
https://peerlist.io/duanhjlt/project/string-art-generator
https://peerlist.io/retroimage
https://peerlist.io/retroimage/project/retro-image-prompt