← 笔记

电脑科学教授解答编程问题:Vibe Coding没那么神?Rust到底有多香?

来源:GQ Taiwan 中文版https://youtu.be/OQEhCtNc2M · WIRED 英文原版https://www.youtube.com/watch?v=PZebxkNZmo 主讲:Sarah Chasins,UC Berkeley 计算机科学教授 数据:🌏 中文版 👀 22.9万 · 👍 6,624 · 💬 492条 | 🇺🇸 英文版 👀 111.4万 ·...

来源GQ Taiwan 中文版 · WIRED 英文原版
主讲:Sarah Chasins,UC Berkeley 计算机科学教授
数据:🌏 中文版 👀 22.9万 · 👍 6,624 · 💬 492条 | 🇺🇸 英文版 👀 111.4万 · 👍 39,554 · 💬 2,638条
类型:科普问答 / 网友提问


一句话概括

一位对编程充满热情的教授,用最简单的语言解释了编程世界里最常见的疑惑——从"第一段代码怎么写的"到"AI会不会取代程序员"。


为什么值得看

这期视频在繁体中文圈火了(23万播放),不只是因为内容好,更因为 Sarah Chasins 教授溢出屏幕的热情——评论区几乎人人都在说"这教授好可爱"。她用骑自行车比喻学编程、用调光器解释二进制、现场 live coding 画世界地图,把枯燥的计算机科学讲得像探险故事。

最值得关注的是她对 AI 编程 的冷静观察:研究显示用 AI 写代码的人觉得自己快了20%,但实际慢了20%。


核心内容

📖 计算机历史角

1. 第一个网站至今仍在运行 (0:16)

Tim Berners-Lee 在90年代初创建的第一个网站(info.cern.ch)至今可以访问。教授现场在 Safari 中打开它,还用模拟器展示了它在早期文本浏览器中的样子——内容一模一样,只是渲染方式不同。

2. 最早的电脑病毒叫 Creeper (2:09)

70年代初的 ARPANET 上出现了一个叫 "Creeper" 的病毒,屏幕上会显示:"我是 Creeper,有本事来抓我"。为了清除它,人们又写了个 "Reaper" 程序。很萌的早期攻防。

3. 第一段代码是"接电线" (2:40)

早期计算机(如 ENIAC)的编程方式是物理接线,后来发展到打孔卡片。真正改变游戏规则的是 Grace Hopper——她在50年代提出了"编译器"概念,开发了 A-0 工具,让人类可以用更接近自然语言的方式写程序。


🔤 编程语言大比拼

4. C / Python / Rust 的安全保障差异 (4:10)

教授用一个巧妙的框架来区分编程语言——"语言为你提供多少安全保障"

语言 安全保障 比喻
C 几乎没有 "让你自生自灭",你写什么它执行什么
Python 中等 帮你挡一些错误,但不过分干预
Rust 最高 "尽力保护你",提前捕获大量错误,但需要你提供更多信息

Rust 在性能上可与 C 媲美,但安全特性远超 C。这也是为什么它连续多年蝉联 StackOverflow 最受欢迎语言。

5. Python 真是万能第二名?(5:59)

"Python 是所有领域都排第二的语言"——这句话听着像贬义,但教授说这恰恰说明了它的极度灵活性。Python 确实什么都能干,而且写起来很愉快。

6. 2025年还值得学 C++ 吗?(6:28)

绝对值得——如果你要加入已有的 C++ 项目。但如果是新项目,Rust 是非常值得考虑的替代方案,它融合了过去20年编程语言研究的最佳成果。


🤖 AI 编程的真相

7. ChatGPT 到底是什么?(14:48)

教授用最简单的方式解释 LLM:本质上就是一个超大规模的**"填空游戏"**。喂给它海量文本,训练它预测下一个词。经过数百年计算时间的训练后,它变得非常擅长生成"看起来合理"的内容。

关键词:"看起来合理",而非"真正理解"。

8. AI 这么强,还有必要学编程吗?(17:31)

必须学。 教授的理由:

  • AI 工具擅长处理重复性任务
  • 但解决新问题时,你仍然需要传统编程技能——分解问题、逻辑推理、验证结果
  • 📊 研究数据:使用 AI 工具处理新任务的程序员实际慢了20%,尽管他们感觉自己快了20%

9. 用 AI 写程序的最佳方式 (19:10)

教授给出了一套实用方法:

  1. 分解问题:拆成约5行代码的小块
  2. 写伪代码:用自然语言描述逻辑,不纠结语法
  3. 喂给 AI:让它把伪代码变成真代码
  4. ⚠️ 关键步骤——验证:必须有具体计划验证 AI 生成的代码

💡 教授原话:"如果你没有验证代码的计划,就不要用 AI 工具。"

10. Vibe Coding 的真相 (20:20)

这是评论区讨论最激烈的部分:

  • ✅ 对重复性任务效果尚可
  • ❌ 对全新问题效果不佳,甚至可能降低生产力
  • 📊 研究发现:程序员感觉效率提高20%,实际完成时间慢了20%

🔧 程序员的真实生活

11. 程序员一天都在干嘛?(5:21)

实际写代码的时间比你想象的少得多。日常大量时间花在:

  • 跟同事讨论怎么整合代码
  • 调试团队协作中的问题
  • 跟客户/产品经理开会确认需求
  • 编码时间是"挤"出来的,但通常也是最开心的部分

12. 程序员怎么记住所有语法?(11:44)

不需要记。 不像学外语需要背单词才能跟人说话,编程时电脑就在那里——随时查文档、用编辑器提示。记不住就查,这很正常。

13. 为什么 debug 比写代码难?(10:47)

教授给了一个精辟的解释:

  • 写代码时:你的心理模型和代码行为是同步的
  • debug 时:说明你的心理模型和实际行为之间产生了偏差,你需要找到这个偏差在哪里
  • debug 别人的代码:更惨——你得从零开始建立心理模型

🧠 计算机底层原理

14. 为什么计算机只用 0 和 1?(9:13)

不是规定,而是物理上更可靠。区分"有电/没电"两种状态比区分十种不同的电流强度容易得多。教授用调光器来比喻——你把灯调到"3档"和"4档",能准确区分吗?但开/关你肯定能分清。

15. 编程语言是怎么被创造出来的?(8:15)

核心就是写一个编译器/解释器,把新语言翻译成已有的语言,层层翻译,最终变成机器能理解的 0 和 1。可以像搭积木一样"堆叠"编译器。

16. 计算机怎么理解代码?(29:23)

教授用 (1 + 2) + 4 这个例子,拆解了编译器的四个阶段:

源代码 → 词法分析(拆词元) → 语法分析(建语法树) → 代码生成(汇编) → 二进制(0和1)

她甚至在 x86-64 模拟器上现场演示了汇编代码的执行过程。


🌍 跨学科思维

17. 计算机科学家能为 CRISPR 做什么?(12:27)

教授的建议:直接嵌入到对方的实验室里去。她的一位博士生就在生物实验室学习移液等基本操作,与生物学家并肩工作,这样才能真正理解他们的需求,找到技术可以填补的空白。


关键收获

  1. 编程不是天赋,是技能 —— 跟骑自行车一样,练多了就会
  2. 选语言看"安全保障" —— C 放任你、Python 适度保护、Rust 全力守护
  3. AI 是工具,不是替代 —— 没有验证计划就不要用 AI 写代码
  4. Vibe Coding 有泡沫 —— 感觉快了20%,实际慢了20%
  5. debug 难在心理模型错位 —— 你以为程序在做 A,它其实在做 B
  6. 不用记语法 —— 电脑就在那里,随时查

📌 精选评论

以下评论分别来自 WIRED 英文原版(111万播放)和 GQ Taiwan 中文版(23万播放)评论区,按主题整理。


🇺🇸 WIRED 英文原版评论精选

🎓 教授的魅力

英文评论区的画风跟中文版高度一致——全在夸教授:

@Iloveyoursoul (👍6244):I love how Wired gets experts in their field who genuinely love talking about their field — that's half the fun of watching this series.
@Scriibble4 (👍83):I watch videos about topics I don't really care about just because it's cool to watch people talk about things they care about.

@AlexVoyd (👍2400):She rolled 20 in Charisma!
@nagyzoli (👍36):I forgo my wisdom check against her charm spell :D

@JayConverse (👍234,从1973年开始写代码):I've been writing computer programs since 1973, I speak dozens of languages, I still program daily in C++, and this was just a wonderful video to watch. I wish I could go back to school to take one of her courses.
@Norm7264:Before modems, we typed out the Hollerith cards and put a stack in a cubby-hole, then the mainframe operators would run the stack and we got a printout to pick up the next day.

@hunterpruett5455 (👍1335,她的学生):I am taking her class at Berkeley (CS164 right now) — awesome professor!

@dsmyify (👍199):She's no programmer; she's too happy. (That was a joke, okay.
@davidmccarthy6061 (👍23):Well, she's quite young and teaches, so the corporate world hasn't crushed her yet.


💡 最佳科普评价

@brianjuergensmeyer8809 (👍67,30年从业者):I've been a professional programmer for 30-ish years. Probably the first time I've seen a Q&A on software development where I didn't disagree with a single answer. And she did a remarkable job of explaining some concepts that are notorious for being difficult to explain.

@RedwoodGeorge (👍340):The real gem of knowledge casually hidden in the video is that the fundamental of coding, in any language, is breaking the tasks down into smaller and smaller steps until those steps are simple enough that you can write each one in code. I've written in well over 30 languages and no matter what, the process of abstracting the steps is always the same.

@mitchlindgren (👍176):I'm a professional software developer and this is an excellent video. She does a great job explaining the concepts in detail but without using overly technical language. She must be an excellent professor.


🔢 二进制与底层原理

调光器比喻在英文评论区同样大受好评:

@AdmiralNathanSchrödinger (👍273):Been a developer for many years and I love the light switch/rheostat example to explain base 10 in digital. My first programming prof used a trumpet/trombone analogy, but I like the light bulb one better.

@gunnarw97 (👍7,电气工程师视角):The actual reason is that we drive transistors at saturation using them as on/off switches, because it is much faster, more power efficient and way easier to design at scale.
(编注:教授的比喻从直觉切入,电气工程师补充了硬件层面的精确原因——两者并不矛盾)

@dchuhay (👍839):Computer graphics requires "some amount of math"... Boy if that isn't the understatement of the year.
@reybontje2375 (👍96):(写了一整篇回忆录,讲自己高中时如何从零做3D引擎——先用朴素的反比例算法模拟透视、再看大学讲座学针孔模型、最后用矩阵运算,用Python做到10帧/秒,多年后才知道GIL的存在😂)


🤖 AI 编程的理性讨论

@YuriSizov (👍322):It's lovely to see a person in the programming world not being all warm and fuzzy to LLM tools, and being able to articulate well why you shouldn't be either.
@YuriSizov (👍57,回复反驳者):LLMs will never be "reliable enough" for producing precise, logical, or well-reasoned text. Because that's not what they are. They are statistical models of word probability. They are just passable at producing human speech, without human sense behind it.
@desyncer (👍39):People in the programming world actually understand what "AI" is and know it isn't capable of creative thought. I see it as a tool to assist, not a replacement for knowledge.

@rad_cheed (👍213):The demeanor shift when answering the AI questions.
@bone-a-lisa (👍102):She was pretty not-so-subtly hinting that she doesn't like it for programming. Given she said "or you know, just don't use it." Which is based.
@yuris10101 (👍16):For very experienced devs in a familiar codebase, AI is a net slowdown even if they themselves think it is not.

@swankeepers (👍22):The one time I leaned on AI as a "starter" on some HTML code, I ended up double-checking every single line it suggested — so much for saving time.

@vogt.guilherme (👍197):Getting a vibe coding ad in the middle of this video was crazy.
@thesinghzingkid (👍3):Cause it hallucinates all the time and genuinely causes code bases to dissolve into unmaintainable spaghetti.


🧩 经典程序员梗

@maxherman8383 (👍2379):If this Q&A were legitimate, half her answers would be "NVM, figured it out myself" (thread locked 4 years ago)
@johanandaniel (👍308):Or [marked as duplicate] and then link to a vaguely related thread with outdated information.
@ValkyrieTiara (👍187):Who were you, DenverCoder9? WHAT DID YOU SEE?!
(编注:经典 xkcd 漫画梗——搜到唯一相关帖子,提问者自己解决了但没说怎么做)

@franktibbitts3117 (👍4592):Shout out to whomever said "Those books on coding don't look right... let's chuck a motherboard on top."
@NunSuperior (👍377):The books should be under a monitor, as is the tradition.

@HBStone (👍985):"New to coding. Is it always this difficult?" "No. It gets harder."
@gradycdenton (👍21):The day that software development gets easy is the day you stop developing yourself.

@MeTubesChannel (👍156):@5:40 — Honest answer, much of the day is actually spent debating how to name variables and functions. 😄
@LordHorst (👍5)://TODO: Clean this up later — Last commit: 4 years ago.

@tce345 (👍704):15:46 "the dog has four legs" — ChatGPT: "Wow what an insightful observation, you are so good at counting, the dog does have four legs, bravo."
@patricknelson (👍130):"You're on the right track! <insert excessive flattery>. You are correct, dogs do indeed have four legs! <insert 4 pages of droning about edge cases>..."

@blamechickenman7434 (👍345):Just converted the binary in the description to ASCII. Thanks for that, Wired.
@Semtx552 (👍66):haha nerd
(编注:WIRED 在视频描述里藏了一段二进制彩蛋,翻译过来是 "haha nerd")


🎓 跨学科与学习

@apdj94 (👍66,生物医学工程博士生):I love this! I'm a PhD student in biomedical engineering and I love our CS students. You have no idea how much easier they make my life.

@deagin3830 (👍2,Web开发主管):I loved the cross-domain CRISPR answer. Understanding the engineers, their taxonomy, calculations, perspective — it's a massive part of my job and I have interns I am always stressing cross-domain osmosis too.

@violent_rose (👍285):I honestly feel that most people don't actually hate doing math, just that they've hated the context they've done it in.
@BorfGobblesmitt (👍7):Or someone missed teaching something very basic to them and they coped through the missing steps and felt frustrated. Math is fun, feeling stupid is horrible.


🫡 Grace Hopper 致敬

@denicw2018 (👍3851):Today is Grace Hopper's birthday btw. Happy birthday to the late Grace Hopper!
@denicw2018 (👍68):Did you intentionally publish this during her birthday? Because brilliant.
@jonjohns8145 (👍34):"Don't play it safe... Ships are safe when they are sitting in the harbor, but that's not why we build ships." — One of her best quotes. I love GH!!
(编注:视频发布日12月9日正好是 Grace Hopper 生日,不知是否 WIRED 有意为之)


🇹🇼 GQ Taiwan 中文版评论精选

🔥 对教授本人的评价

评论区几乎一半的留言都在说教授的热情:

@TWRayJohnGaming (👍390):这才是真的有热情,都用兴奋的语气和表情在说明,而且语速越来越快,甚至她会差一点忘记她在教学不是 Coding。不像我的老师都是机器人音调😂

@HRWU:你会发现她说到激动处脸会变得微红,以及手指尖在挥舞悬空的时候抖动幅度不小。

@TheUirgochen:这名可爱的教授透过雀跃的语调跟动作,将热情透过屏幕传递了过来。一个人对于一件事有多热爱,就如同她描述对于写程式这般。


💻 关于 AI 编程最激烈的讨论

@kn2484 (👍391):真的有做产品的人,至少东西有在卖的,程式不是很单纯的。敢说程式只靠AI,那应该是等着出事。

@_Palatis (👍60):用 AI 你要足够懂,自己也能刻出来,只是刻比较慢。而不是什么都不会就叫 AI 刻,那就会刻出莫名其妙的东西。

@_r1939 (👍32):我公司就有全部用AI的,每支档案写出来风格都不一样,review 时有够烦的。

@lawlietnao_music(Amazon 五年软件工程师):我更愿意读实习生的代码。很多时候AI的代码看起来是对的,逻辑好像也说得通,但细看会发现有很多问题躲在细节里面。实习生的代码如果是他们自己写的,至少可以看得出来他们想干嘛。最可怕的是实习生用AI写的代码。


🎯 关于 Vibe Coding 的理性声音

@MaGameXXXX (👍323):AI coding 辅助没人会质疑它的强大,但考虑到细节、严谨程度、可维护性、SOLID 原则、高并发、多层架构、DDD架构、资安处理、数据库效能……很多时候需要真正的经验跟知识才能融合运用。如果你专案不用考虑以上东西,单纯只是个 MVP 或小工具,vibe coding 你肯定觉得玩得很开心。

@st_9453 (👍54):Andrew Ng 一直有在强调 vibe coding 也不能丢弃程式基础技能的本质,但台湾不少卖 vibe coding 课的就是不停渲染 vibe coding 有多强大,结果做出来都是一些 toy projects...

@LiHan0822 (👍37):当你对产出的东西产生质疑的时候,vibe coding 的人总是跟你说:「你下的提示词不够完美」XD

@AllenKuokwyshell (👍91):永远要记得人类的大脑也是仰赖不断的训练才能成长。当你放弃思考,把最重要、最有趣的工作丢给AI,你最后就只能完全依赖AI。永远不要放弃思考。 Vibe coding 很棒,但是需要你把它内化成你的工具,让它帮你成长而不是成为依赖!


🛠️ 实战经验分享

@LF58888 (👍90):专业写代码的,AI 这玩意我现在天天用,但是基本上都是辅助。主要是可以节省我写/抄代码的时间。你要是毛都不会的话,我的建议是直接去抄而不是用AI。被人抄了n年的代码绝对比AI写的要靠谱😂

@UUderGO (👍37):我觉得 AI 除了帮助我实现 code 以外,最大的优势就是能帮我这个英文烂到哭的人想英文命名了😂

@Madfater-TW (👍63):我自己工作就有使用 Claude Code 来协作。我觉得教授讲关于 LLM 的东西都没什么问题,原理也讲得浅显易懂。语言只是工具,要看它当初创造的初衷是什么。


📐 技术细节纠正

@jackwu-w5e (👍8):15:46 这边应该是 predict next token,不是 for encoder 的 mask training。

(编注:GPT 系列确实是 decoder-only 架构,用 next token prediction,教授的类比做了简化)


🫠 轻松一刻

@lumi-63 (👍154):不是在讲程式吗?怎么放一张 B550M Prime 主板?
@Ronuyjzfxamcfcsyzeaxrwkkzufyqg (👍47):放一只蟒蛇如何(Python梗

@user-abiko_cccc (👍290):看看教授的眼镜,我确实相信她是做IT的😂
@ミミッキュ-j8s (👍56):对,眼镜选了有最大视野宽度以方便多看几个屏幕。

@thomasluk4319 (👍22):想问一下她最爱的 color theme 和 font type。


🔄 三个月后的回头看:教授的观点过时了吗?

视频发布于2026年1月,三个月后评论区围绕"这些观点是否已经过时"展开了激烈讨论。以下按时间线梳理近期(2-4月)的新评论:

⚡ "已经过时了"

@傷風鼻塞真係討厭呀 (3月17日):2026/3/17 估計今天她應該已經/需要改口了。

@yujeeloo979 (3月16日):可是现在看来,Vibe Coding 已经开始变得可靠了

@kevinsun123 (3月12日):It surprises me how much has changed in 2 months' time. Her view on agentic coding seems conservative or even outdated now...

@caft777 回复另一位网友:前阵子 Claude 4.6 一出基本上就确定这是迟早要发生的事了,而且会很快,编程能力暴打现在市面上所有AI。

@howardzcy (2月5日):十年前围棋AI只是小游戏,三年前AI还笨得要死。Vibe code 才推出一年,再过两三年你觉得会成长到什么阶段?

🛡️ "并没有过时"(人数更多、论据更充分)

@FarmerLance (4月2日,最新长评):她对AI写程式的观点和我认识的一位资工教授全然不同……但以我的观点,我目前是比较倾向于这位教授。因为现代AI的底层运作逻辑问题,这一代AI会出现一些看起来很合理但可能很难发现的错误。这种错误在某些时刻会是灾难。

@lbjsuck9777 (3月28日):coding 有一点料的都知道 AI 写的程式根本就一坨,coding 又不是只是实现功能。

@HuangShengHong (3月14日,实战翻车案例):AI 对学习新知很有用,但实作完全不行。像我请AI用C写HTTP server收发图档,它教我用 OpenCV 把 jpg 转成 raw rgb 作为 response body 回传……我告诉它三次不能这样做后,它才终于答出正常的 fread。AI就是理论基础很行,实作莫名其妙。

@saforever107 (3月4日):Vibe coding 最大的问题是让普通人都产生幻觉,觉得自己是工程师……各行各业都涌现出一群透过AI就觉得自己是专家的人,实际上脱离了AI什么都不懂。

⚖️ 中间派——最诚实的声音

@幣咧 (4月2日):当商品卖当然不推荐。但如果只是自己用的小程式,受众很小且完全客制,用AI是很不错的方式。而且省钱。

@peihualo (2月4日):上个月用Vibe coding重写10年前的程式,很惊艳。AI没有全能,但是一个很好的协作伙伴。

@fenix20075 (2月17日,实战反例):不同意教授说vibe coding对写新东西帮不上忙。我之前完全没写过控制机器人移动的程式,全篇都用vibe coding写出来,也成功交货

@leonan7304 (1月5日,在职工程师):她的观点很多都没错。我自己接了很多小case直接叫Claude产出,真的改参数就好。但以上是建立在原本就工作多年、即使没有AI也可以开发的前提之下。 Vibe coding处理大专案还是很多问题。

📊 笔记作者的判断(2026年4月更新)

教授论点 是否过时 评论区验证
LLM 本质是"填空游戏" ⚠️ 简化但仍成立 有人觉得过于简化,但原理层面没错
AI写代码必须能验证 完全没过时 几乎所有在职工程师都同意
感觉快20%实际慢20% ⚠️ 对新手成立,对老手在变 老手+小项目已明显提速;新手仍易被误导
Vibe coding不靠谱 这条在快速过时 Claude 4.6等新模型出来后,小项目可靠性已有质变
不能放弃基础编程能力 反而更成立了 越多人用AI,越暴露出"不懂但以为自己懂"的问题

结论:她的底层逻辑没有过时(理解 > 工具),但对AI能力的估计确实偏保守了。即使支持教授观点的人,也开始承认"AI在特定场景下确实已经很能打了"。


笔记整理于 2026-04-04(含近期评论更新) | 视频发布于 2026-01-01