jixiaxue 知识库
blog / simon-willison-blog · writing-code-is-cheap-now

Writing Code is Cheap Now — 内容总结

5 个章节 · 0 条产出 · 0 条证据
2026-04-16

Writing Code is Cheap Now — 内容总结

原文:Simon Willison · Agentic Engineering Patterns 系列

一句话总结

编码智能体让”写代码”的成本趋近于零,但”好代码”仍然昂贵——我们需要重建基于新现实的工程直觉和习惯。

核心论证结构

1. 旧范式:代码一直很昂贵

层面影响
宏观大量时间用于设计、估算、规划,确保编码时间高效利用;功能评估基于”值不值得开发成本”
微观每天做几百个基于”时间有限”的权衡:要不要重构、写文档、加测试、建调试工具

2. 新现实:写代码几乎免费

  • 编码智能体大幅降低”把代码敲进电脑”的成本
  • 可并行运行多个智能体,一人同时做实现、重构、测试、文档
  • 颠覆了所有基于”代码昂贵”建立的个人和组织直觉

3. 但”好代码”仍然昂贵

Simon 定义的好代码 9 条标准:

  1. 能用 — 没有 bug
  2. 确认能用 — 有证据证明代码适合用途
  3. 解决正确的问题 — 不是写了不该写的东西
  4. 错误处理优雅 — 不只考虑正常路径
  5. 简洁最小化 — 只做需要的事,人和机器都能理解
  6. 有测试保护 — 防止未来悄悄坏掉
  7. 有适当文档 — 且随代码同步更新
  8. 允许未来变更 — 保持 YAGNI,但不封死扩展路
  9. 其他 “ilities” — 安全性、可维护性、可观测性、可扩展性等

4. 行动建议:建立新习惯

每当直觉说”不值得花时间”时,不妨先发个 prompt 给智能体试试——最坏也就浪费一些 token。

关键洞察

  1. 成本转移,而非消失:代码的”打字成本”消失了,但”判断成本”和”质量成本”依然在人类这边
  2. 所有工程直觉都需要重新校准:从项目规划到日常微决策,“值不值得做”的阈值已经根本性改变
  3. 并行智能体是乘数效应:不只是一个人+一个助手,而是一个人同时驱动多条工作流
  4. 默认态度应从”不做”变为”试试”:异步的智能体会话让试错成本极低

Writing Code is Cheap Now — 中文逐字稿

Writing Code is Cheap Now — 中文逐字稿

原文来源:Simon Willison’s Weblog 原文链接:https://simonwillison.net/guides/agentic-engineering-patterns/code-is-cheap/ 系列:Agentic Engineering Patterns(智能体工程模式)


写代码现在很便宜了

采用智能体工程实践时,最大的挑战是让自己适应一个事实带来的后果:写代码现在很便宜了

代码一直以来都很昂贵。对大多数软件开发者来说,产出几百行干净的、经过测试的代码需要一整天甚至更多。我们在宏观和微观层面的许多工程习惯,都建立在这个核心约束之上。

宏观层面,我们花大量时间来设计、估算和规划项目,以确保我们昂贵的编码时间被尽可能高效地利用。产品功能创意的评估标准是:它能提供多少价值来换取那些时间——一个功能需要多倍地赚回它的开发成本才值得做!

微观层面,我们每天基于可用时间和预期权衡做出几百个决策。我应该重构那个函数让它更优雅一点吗,如果这会额外多花一小时的编码时间?写文档呢?为这个边界情况加一个测试值不值得?我有理由为这个东西构建一个调试界面吗?

编码智能体大幅降低了把代码敲进电脑的成本,这颠覆了太多我们现有的个人和组织层面关于哪些权衡是合理的直觉。

并行运行多个智能体的能力让这变得更难评估,因为一个人类工程师现在可以同时在多个地方实现代码、重构、测试和编写文档。

好代码仍然有成本

交付新代码的价格已经降到几乎免费……但交付好的代码仍然比那要昂贵得多。

以下是我所说的”好代码”的含义:

  • 代码能用。它做了它应该做的事情,没有 bug。
  • 我们知道代码能用。我们已经采取措施向自己和他人确认代码适合其用途。
  • 它解决了正确的问题。
  • 它优雅且可预测地处理错误情况:它不只考虑正常路径。错误应该提供足够的信息来帮助未来的维护者理解出了什么问题。
  • 它简洁且最小化——只做需要做的事情,并且以人类和机器现在都能理解、未来也能维护的方式来做。
  • 它有测试保护。测试证明它现在能用,并且作为回归测试套件防止它在未来悄悄坏掉。
  • 它在适当的层面有文档,并且文档反映了系统的当前状态——如果代码改变了已有的行为,已有的文档需要更新以匹配。
  • 设计上允许未来的变更。保持 YAGNI(你不会需要它)很重要——为了预测可能永远不会到来的未来变更而增加复杂度的代码往往是坏代码——但同样重要的是不要写出让未来变更变得比应有难度大得多的代码。
  • 所有其他相关的”ilities”——可访问性(accessibility)、可测试性(testability)、可靠性(reliability)、安全性(security)、可维护性(maintainability)、可观测性(observability)、可扩展性(scalability)、可用性(usability)——那些适合当前开发的特定软件类别的非功能性质量指标。

编码智能体工具可以帮助完成其中大部分,但开发者在驱动这些工具时仍然有重大责任,确保产出的代码对当前项目所需的”好”的子集来说是好代码。

我们需要建立新的习惯

挑战在于发展新的个人和组织习惯,来回应智能体工程所提供的能力和机会。

这些最佳实践仍在被我们整个行业摸索中。我自己也仍然在摸索。

目前我认为我们能做的最好的事情就是质疑自己的直觉:每当你的本能说”别做那个,不值得花时间”的时候,不妨发一个提示词出去,在一个异步的智能体会话中——最坏的结果不过是你过十分钟回来看看,发现那些 token 花得不值得。

Content Analysis

Content Analysis

Topic

“写代码现在很便宜了” — Simon Willison 关于 AI 编码智能体时代工程成本重构的论述

Data Type

概念论述型:从”旧范式→新现实→好代码标准→行动建议”的渐进式论证结构

Complexity

中等 — 4 个逻辑层级,9 条标准列表,4 条洞察

Tone

专业、务实、启发性 — 面向专业软件工程师的认知重构

Audience

专业软件工程师、技术团队管理者、对 AI 编码感兴趣的技术人员

Source Language

中文 (zh)

User Language

中文 (zh)

Key Visual Elements

  • 对比结构:旧范式(代码昂贵)vs 新现实(代码便宜)
  • 列表:9 条好代码标准
  • 层级:4 层论证递进
  • 引语:行动建议的金句

Design Instructions

  • 用户要求输出到 /Users/eamanc/Documents/pe/jixiaxuegong/blog/writing-code-is-cheap-now/summary.png
  • 语言:中文
  • 需要清晰展示对比关系和 9 条标准

Writing Code is Cheap Now — 内容总结

Writing Code is Cheap Now — 内容总结

原文:Simon Willison · Agentic Engineering Patterns 系列

一句话总结

编码智能体让”写代码”的成本趋近于零,但”好代码”仍然昂贵——我们需要重建基于新现实的工程直觉和习惯。

核心论证结构

1. 旧范式:代码一直很昂贵

层面影响
宏观大量时间用于设计、估算、规划,确保编码时间高效利用;功能评估基于”值不值得开发成本”
微观每天做几百个基于”时间有限”的权衡:要不要重构、写文档、加测试、建调试工具

2. 新现实:写代码几乎免费

  • 编码智能体大幅降低”把代码敲进电脑”的成本
  • 可并行运行多个智能体,一人同时做实现、重构、测试、文档
  • 颠覆了所有基于”代码昂贵”建立的个人和组织直觉

3. 但”好代码”仍然昂贵

Simon 定义的好代码 9 条标准:

  1. 能用 — 没有 bug
  2. 确认能用 — 有证据证明代码适合用途
  3. 解决正确的问题 — 不是写了不该写的东西
  4. 错误处理优雅 — 不只考虑正常路径
  5. 简洁最小化 — 只做需要的事,人和机器都能理解
  6. 有测试保护 — 防止未来悄悄坏掉
  7. 有适当文档 — 且随代码同步更新
  8. 允许未来变更 — 保持 YAGNI,但不封死扩展路
  9. 其他 “ilities” — 安全性、可维护性、可观测性、可扩展性等

4. 行动建议:建立新习惯

每当直觉说”不值得花时间”时,不妨先发个 prompt 给智能体试试——最坏也就浪费一些 token。

关键洞察

  1. 成本转移,而非消失:代码的”打字成本”消失了,但”判断成本”和”质量成本”依然在人类这边
  2. 所有工程直觉都需要重新校准:从项目规划到日常微决策,“值不值得做”的阈值已经根本性改变
  3. 并行智能体是乘数效应:不只是一个人+一个助手,而是一个人同时驱动多条工作流
  4. 默认态度应从”不做”变为”试试”:异步的智能体会话让试错成本极低

infographic

Create a professional infographic following these specifications:

Image Specifications

  • Type: Infographic
  • Layout: iceberg
  • Style: technical-schematic
  • Aspect Ratio: landscape (16:9)
  • Language: zh (Chinese)

Core Principles

  • Follow the layout structure precisely for information architecture
  • Apply style aesthetics consistently throughout
  • Keep information concise, highlight keywords and core concepts
  • Use ample whitespace for visual clarity
  • Maintain clear visual hierarchy

Text Requirements

  • All text must match the specified style treatment
  • Main titles should be prominent and readable
  • Key concepts should be visually emphasized
  • Labels should be clear and appropriately sized
  • Use Chinese for all text content

Layout Guidelines (Iceberg)

  • Waterline dividing visible/hidden
  • Tip above water (obvious/surface) — smaller, brighter
  • Larger mass below (hidden/deep) — larger, darker/deeper
  • Proportional to emphasize hidden depth
  • Multiple layers within underwater section
  • Clear water/surface line with wave texture
  • Gradient showing depth
  • Title at top, surface items above waterline, hidden items below

Style Guidelines (Technical Schematic)

  • Primary: Blues (#2563EB), teals, grays, white lines
  • Background: Deep blue (#1E3A5F) with subtle grid pattern
  • Accents: Amber highlights (#F59E0B), cyan callouts
  • Geometric precision throughout
  • Technical stencil or clean sans-serif typography
  • All-caps for labels, dimension lines and annotations
  • Clean vector shapes, consistent stroke weights

Generate the infographic based on the content below:

ABOVE WATERLINE — 水面之上 (The Obvious)

Title: 写代码现在很便宜了

The visible, easy part:

  • 编码智能体大幅降低”把代码敲进电脑”的成本
  • 可并行运行多个智能体,一人同时做实现、重构、测试、文档
  • 颠覆了所有基于”代码昂贵”建立的个人和组织直觉

Waterline Label: 代码成本 ≈ 0 … 但好代码仍然昂贵

BELOW WATERLINE — 水面之下 (The Hidden Depth)

Layer 1: 好代码 9 条标准

  1. 能用 — 没有 bug
  2. 确认能用 — 有证据证明
  3. 解决正确的问题
  4. 错误处理优雅
  5. 简洁最小化
  6. 有测试保护
  7. 有适当文档
  8. 允许未来变更 (YAGNI)
  9. 其他 “ilities” — 安全性、可维护性、可观测性、可扩展性

Layer 2: 需要重建的工程直觉

  • 宏观:设计、估算、规划的方式需要改变
  • 微观:日常权衡决策的阈值需要重新校准
  • 默认态度从”不做”变为”试试”

Layer 3: 关键洞察 (最深处)

  • 成本转移,而非消失:打字成本→判断成本、质量成本
  • 并行智能体是乘数效应
  • 异步智能体会话让试错成本极低

Bottom quote:

“每当直觉说’不值得花时间’时,不妨先发个 prompt 试试——最坏也就浪费一些 token。” — Simon Willison

Text labels (in Chinese):

  • 主标题: 写代码现在很便宜了
  • 副标题: Writing Code is Cheap Now — Simon Willison
  • 水面标签: 代码成本 ≈ 0
  • 水下标签: 好代码仍然昂贵
  • 层级1标签: 好代码 9 条标准
  • 层级2标签: 重建工程直觉
  • 层级3标签: 深层洞察
  • 底部引用: “不值得花时间?先发个 prompt 试试”

Structured Content: 写代码现在很便宜了

Structured Content: 写代码现在很便宜了

Title

写代码现在很便宜了 (Writing Code is Cheap Now)

Subtitle

Simon Willison · Agentic Engineering Patterns 系列

Learning Objectives

  1. 理解编码智能体如何改变代码成本结构
  2. 掌握”好代码”的 9 条标准
  3. 学会在新现实下重建工程直觉

Section 1: 旧范式 — 代码一直很昂贵

Key Concept: 代码昂贵 Visual Element: 标记为”旧范式”的区域 Content:

  • 宏观:大量时间用于设计、估算、规划;功能评估基于”值不值得开发成本”
  • 微观:每天几百个基于”时间有限”的权衡 — 重构?文档?测试?调试工具? Label: 旧范式

Section 2: 新现实 — 写代码几乎免费

Key Concept: 成本剧降 Visual Element: 标记为”新现实”的区域,与旧范式形成对比 Content:

  • 编码智能体大幅降低”把代码敲进电脑”的成本
  • 可并行运行多个智能体,一人同时做实现、重构、测试、文档
  • 颠覆了所有基于”代码昂贵”建立的个人和组织直觉 Label: 新现实

Section 3: 但”好代码”仍然昂贵 — 9 条标准

Key Concept: 好代码的定义 Visual Element: 编号列表 / 网格 Content:

  1. 能用 — 没有 bug
  2. 确认能用 — 有证据证明代码适合用途
  3. 解决正确的问题 — 不是写了不该写的东西
  4. 错误处理优雅 — 不只考虑正常路径
  5. 简洁最小化 — 只做需要的事
  6. 有测试保护 — 防止未来悄悄坏掉
  7. 有适当文档 — 且随代码同步更新
  8. 允许未来变更 — 保持 YAGNI,但不封死扩展路
  9. 其他 “ilities” — 安全性、可维护性、可观测性、可扩展性等 Label: 好代码 9 条标准

Section 4: 行动建议 — 建立新习惯

Key Concept: 行动转变 Visual Element: 引用框 / 行动召唤 Content:

  • 每当直觉说”不值得花时间”时,不妨先发个 prompt 给智能体试试——最坏也就浪费一些 token Label: 行动建议

Section 5: 关键洞察

Key Concept: 深层启示 Visual Element: 编号洞察卡片 Content:

  1. 成本转移,而非消失:代码的”打字成本”消失了,但”判断成本”和”质量成本”依然在人类这边
  2. 所有工程直觉都需要重新校准:从项目规划到日常微决策,阈值已根本性改变
  3. 并行智能体是乘数效应:一个人同时驱动多条工作流
  4. 默认态度应从”不做”变为”试试”:异步智能体会话让试错成本极低 Label: 关键洞察