当所有人都在喊"AI要取代程序员"的时候,一个人站在台上说了一句让81万人驻足的话:软件基本功在AI时代不是变得更不重要了,而是变得前所未有地重要。 这个人是 Matt Pocock——TypeScript 社区公认的顶级专家、totaltypescript.com 的创始人、前 Vercel 工程师。他在 AI Engineer 大会上的这场 18 分钟演讲,评论区最高赞总结得精辟:"这是 AI 编程的实际未来,不是那种'无人在环'的炒作。"如果你正在用 Claude Code、Cursor 或 Copilot 写代码,这篇文章会彻底改变你和 AI 协作的方式。
| 项目 | 内容 |
|---|---|
| 视频标题 | "Software Fundamentals Matter More Than Ever" |
| 频道 | AI Engineer × Matt Pocock |
| 时长 | 18分26秒 |
| 播放量 | 81.1万(持续增长中) |
| 发布日期 | 2026年4月23日 |
| 核心主题 | AI 时代为何软件基本功比以往更加关键 |
视频最核心的理念浓缩成一句话:"Design the interface, delegate the implementation"(设计接口,委托实现)。这不是一句空洞的口号,而是一个范式级别的转变。
Matt 认为,在 AI 出现之前,程序员同时扮演两个角色:架构师(决定系统怎么组织、模块怎么划分、接口怎么定义)和实现者(把设计翻译成可运行的代码)。AI 的崛起并没有让架构师这个角色消失——恰恰相反,它把架构师的职责提升到了前所未有的高度。
原因很简单:AI 是一个极度高效的实现者,但它是一个糟糕的架构师。如果你给它一个模糊的需求,它会生成一堆技术上能跑但架构上灾难性的代码——Matt 在另一个视频中把这叫做 "slop"(烂泥)。他甚至专门做了一期视频《How To De-Slop A Codebase Ruined By AI》,教你怎么清理被 AI 搞乱的代码库,播放量 13.5 万。
延伸分析:这个理念让我想到了 Frederick Brooks 在《The Mythical Man-Month》中的经典论断——"概念完整性是系统设计中最重要的原则"。一个人(或一个小团队)负责设计,多个实现者执行。AI 时代的区别在于:实现者不再是人类,而是 LLM,但设计者的角色非但不能削弱,反而需要更强的能力。
评论区一条高赞评论把这个道理说得透彻:
"代码其实是一种负债,不是资产,特别是对于大型系统。如果我们让 AI 以 10 倍速度生成代码,我们得到的不是 10 倍性能,而是 10 倍混乱,最终必然导向某种灾难。"
这个观点在视频中被反复强调。Matt 引用了 John Ousterhout 的《A Philosophy of Software Design》中的核心思想——"Deep Modules"(深模块)。好的设计是把复杂性藏起来,对外暴露简单干净的接口。坏的 design 则是把复杂性散布得到处都是。
当你让 AI "帮我加个功能"时,AI 的默认行为是在现有代码上堆叠新代码。它不会主动思考:"这个新功能是否应该用一个独立的模块来实现?现有的抽象层次是否需要调整?"这就是为什么 AI 生成的代码容易变成意大利面条——它解决的是局部问题,牺牲的是全局结构。
我的判断:这个洞察有一个关键的推论——在 AI 时代,代码审查的重要性不是降低了,而是呈指数级上升。你需要审查的不再是"这行代码有没有 bug",而是"这个设计决策是否保持了概念完整性"。审查的重点从实现层面上升到了架构层面。
视频在 18 分钟内密集引用了四本经典著作,构成了一套完整的思维框架:
《A Philosophy of Software Design》- John Ousterhout(02:35):教你如何设计"深模块"——接口简单,内部复杂。这是对抗代码腐烂的核心武器。
《The Pragmatic Programmer》- Hunt & Thomas(03:07):强调"不要重复自己"(DRY)和"曳光弹开发"——用最小代价验证架构假设。在 AI 时代,这些原则变成了给 AI 设定约束的"护栏"。
《The Design of Design》- Frederick Brooks(05:16):探讨设计过程的本质——设计不是从白纸开始画,而是在约束条件下做权衡。AI 改变了约束,但没有改变权衡的本质。
《Domain-Driven Design》- Eric Evans(08:14):这本书贡献了视频中最具操作性的一个概念——Ubiquitous Language(通用语言)。
这四本书的递进关系很有讲究:从模块设计(微观)到工程实践(中观)到设计思维(宏观)再到领域建模(跨界)。Matt 借这四本书构建了一个从底层到顶层的完整认知体系。
Ubiquitous Language 这个概念来自 Eric Evans 的领域驱动设计(DDD),原意是在软件团队和业务方之间建立一套无歧义的术语表。Matt 把这个概念移植到了人机协作场景中,效果惊人。
他的做法是:为你的项目创建一个严格的术语表(dictionary),规定每个概念的精确含义和命名规则。当 AI 写代码时,它必须严格遵守这个术语表。比如,如果你的系统里把"用户"定义为"Customer",那 AI 就不能在有些地方写"User",有些地方写"Client",有些地方写"Customer"——它必须统一使用"Customer"。
评论区有人精准地点评了这个方法的价值:
"人类程序员自己都很难保持一致的命名,所以我不惊讶给 AI 一个严格的术语表能大幅提升协作效果。"
为什么这特别重要? 因为 LLM 的一个核心缺陷是语义漂移——在长上下文中,它对同一个概念的用词会逐渐偏移。有了 Ubiquitous Language 作为"锚点",你就可以在每次 AI 生成代码后检查术语一致性,从而发现那些不容易察觉的逻辑错误。
Matt 提到了他的一个核心实践:在让 AI 写新功能之前,先让 AI 改善现有代码库的结构。他把这叫做"improve-codebase skill"。
评论区最高赞评论之一就是:"Improving the codebase skill is just a pure gem."
这个方法背后的逻辑非常深刻。大多数人在用 AI 时犯的第一个错误就是:代码库一团糟,然后期望 AI 能在这团乱麻中绣出花来。但现实是——AI 的输出质量上限取决于你代码库的输入质量下限。
具体操作步骤是: 1. 先让 AI 分析当前代码库的结构问题 2. 让 AI 提出改进建议(提取模块、统一命名、消除重复) 3. 人类审查并确认改进方案 4. 让 AI 执行结构改进 5. 在整洁的代码库上再开发新功能
这就像是在让厨师做菜之前,先把厨房打扫干净、把刀具磨好、把食材备齐。
Matt 还分享了一个他自己创造并广泛使用的技巧:/grill-me。这个技巧的做法是:在你开始实现之前,先让 AI 扮演一个严厉的评审者,对你的设计方案提出质疑。
为什么这有效?因为大多数开发者在做设计决策时有两种认知偏差:一是确认偏差——只找支持自己方案的证据;二是沉没成本谬误——一旦开始实现就不愿意推翻重来。/grill-me 强迫你在投入实现成本之前,面对最尖锐的反对意见。
这个技巧后来还进化成了 /grill-with-docs——让 AI 在质疑你时参考项目的文档和代码规范,使质疑更有针对性。Matt 为此专门拍了一期视频《I stopped using /grill-me for coding. Here's what I use instead》,播放量 18.9 万。
视频的另一个关键论点是:AI 应该基于第一性原理(first principles)来实现代码,而不是从训练数据中搬运模式。
这意味着当你给 AI 一个实现任务时,你的提示词不应该说"参考 XX 框架的做法",而应该说"基于以下原则实现:类型安全、最小 API 面积、清晰的错误处理"。让 AI 从原则出发思考,而不是从模式出发模仿。
评论区有人引用了 Matt 的提示词:"AI implement all code based on first principles. Make no mistakes." 这句话看似简单,实则是在给 AI 设定一个极高的标准——不要走捷径,不要因为"通常大家都这么写"就这么写,要回到问题的本质。
整个演讲的基调可以用评论区的一句话概括:"This is the actual future of programming and AI coding, not the no human in loop stuff."
Matt 并不否认 AI 的能力——他自己每天都在用 Claude Code 写代码,他的另一个 1 小时 36 分钟的完整工作流视频有 79.8 万播放量。但他的立场非常明确:AI 是杠杆,不是替代品。 杠杆的放大效果取决于使用者的基本功——一个不懂架构的人用 AI,只会以 10 倍速度制造混乱;一个精通设计的人用 AI,才能以 10 倍速度创造优雅。
这和 DHH(Rails 创始人)的 "Agent-First" 理念形成了有趣的对照——DHH 更激进地拥抱 AI 自主性,而 Matt 更强调人类在架构层面的控制权。两种观点代表了当前 AI 编程社区最重要的两条路线之争。
mindmap
root((软件基本功的<br/>AI时代价值))
核心理念
设计接口 委托实现
代码是负债不是资产
人类在环而非全自动
思维底座(四本书)
模块设计(Ousterhout)
深模块理论
降低复杂性
工程实践(Hunt & Thomas)
DRY原则
曳光弹开发
设计思维(Brooks)
约束下的权衡
概念完整性
领域建模(Evans)
Ubiquitous Language
领域驱动设计
实操技能
Codebase Improvement
先整理再开发
AI输出质量依赖输入质量
Grill-Me Skill
设计前先被质疑
克服确认偏差
Ubiquitous Language
严格术语表
防止语义漂移
第一性原理
从原则出发
不搬运模式
新角色定位
从编码者到架构师
从写代码到审代码
从实现到权衡
第一,建一个项目术语表。 花 30 分钟把你项目中的核心概念列出来,给每个概念一个唯一的、精确的英文名称。把这个术语表放在项目的根目录(比如 DICTIONARY.md),在你的 AI 工具的系统提示词中引用它。你会惊讶地发现,AI 生成的代码命名一致性和逻辑清晰度会有多大幅度的提升。
第二,下次让 AI 写功能前,先让它做一次 codebase review。 具体提示词可以这样写:"分析当前代码库的结构问题,提出 3 个最值得改进的地方,每个改进说明当前问题、期望状态和实现步骤。"审查完再开发,你会发现 AI 在干净代码上的输出质量是天壤之别。
第三,在做任何重要的设计决策前,先用 /grill-me。 把你的方案写成一段简洁的描述,然后让 AI 扮演最挑剔的评审者。提示词示例:"下面是我的设计方案,请从性能、可维护性、可扩展性三个角度提出最尖锐的质疑。"这 5 分钟的投入,能帮你省下 5 小时的返工。
如果你是初级开发者(1-3 年经验):不要急着用 AI 写代码,先花时间读 Matt 提到的四本书。AI 是放大器——它放大你的能力,也放大你的无知。
如果你是中级开发者(3-7 年经验):你的重点应该是从"写代码"转型到"设计接口"。练习把一个功能拆解成清晰的接口定义和实现细节,然后让 AI 负责后者。
如果你是高级开发者(7 年以上):Matt 的视频对你最大的价值是验证了你可能已经在做的事情——审查、重构、架构决策。在 AI 时代,这些"软技能"的价值正在被重新定价。
Matt Pocock 的完整 AI 编程工作流 — 1 小时 36 分钟的实操演示,展示了从需求到实现的完整流程,79.8 万播放量,是他的这场演讲的最佳配套材料。
Your codebase is NOT ready for AI — Matt 另一个关于如何让代码库为 AI 协作做好准备的视频,详细讲了代码结构优化的实操步骤。
How To De-Slop A Codebase Ruined By AI — 如果你已经让 AI 在项目里留下了大量技术债务,这个视频教你怎么一步到位地清理。
《A Philosophy of Software Design》- John Ousterhout — Matt 在视频中首推的书,关于"深模块"和复杂性管理的经典之作。篇幅不长但每一章都有实战价值。
5 Claude Code Skills I Use Every Single Day — Matt 分享了他日常使用的 5 个 Claude Code 技能,38.4 万播放量,是理解他工作流的具体入口。
AI 不会让软件基本功过时,它只是把程序员的角色从"编码实现者"重新定义为"接口设计师"——你设计得越清晰,AI 就实现得越好;你设计得越模糊,AI 就制造越多的混乱。
本文由「51学通信」技术团队出品。51学通信由通信行业18年老兵爱卫生(微信ID: gprshome201101)维护,聚焦5G/6G核心网、3GPP标准解读、通信前沿技术深度分析。 出版作品有《5G核心网原理与实践》《IMS原理与实践》等4本通信专业书籍。知识星球「51学通信」提供深度技术答疑和行业洞察。
[!tip] 51学通信知识星球 星主:爱卫生(微信:gprshome201101)——公众号「51学通信」创办者,19 年通信行业运维与讲师经验,著有《GPRS网络信令实例详解》《EPC原理与实践》《5G核心网原理与实践》三本纸质书(各大电商平台有售)。 星球定位:深耕 5G 核心网、IMS、NFV/AI、云原生等 ICT 领域,主打运维岗位与信令分析。 当前规模:5200 篇主题 / 990 个回答,198 元/年。 加入福利:加入星球后请加爱卫生微信,拉您进知识星球年度陪伴与答疑群——不限量回复您的各种问题,另有群内分享。 AI 加持:51学通信知识星球已作为 skill 接入 WorkBuddy,使用 deepseek-4-flash 在海量星球帖子中精准找贴、找视频、找 FAQ 和案例,做总结、找文档和 PPT 等场景全覆盖。
