2026年5月25日,一篇名为”Using AI to write better code more slowly”的文章登上了Hacker News首页,获得947分和350条评论——这是当天HN上最热的文章。作者Nolan Lawson用自己的实际开发经验,揭示了一个违反直觉的现象:用AI写代码,代码质量确实提高了,但速度反而变慢了。
核心发现
Nolan Lawson是一名资深前端开发者,在日常开发中深度使用了AI编程助手(Copilot、Cursor等)。经过一段时间的对比后,他发现:
代码质量确实提高了
- AI生成的代码结构更规范,命名更清晰
- 重复性的样板代码减少了
- 文档和注释写得更完整
- 边界情况的处理更全面
但整体开发速度变慢了
- 需要花大量时间审查AI生成的代码
- 经常要反复修改prompt才能得到满意的代码
- AI生成的代码虽然”看起来对”,但有时逻辑有问题,需要仔细验证
- 过度依赖AI导致开发者对自己写的代码反而更不自信
为什么会变慢?
1. 审查成本被低估
AI生成代码的速度很快(几秒钟就能出几十行),但审查这些代码的时间可能比自己写还长。你需要理解每一行在做什么、是否有潜在问题、是否符合项目规范。这个过程比”从头写”更费脑力。
2. Prompt工程的时间成本
为了让AI生成你真正想要的代码,你需要花时间写详细的prompt、提供上下文、指定约束条件。有时候改了好几版prompt,生成的代码还是不对,最后还不如自己写。
3. 调试AI代码更难
自己写的代码,出bug了你知道去哪里找。AI生成的代码,你可能不太熟悉它的逻辑,调试时需要额外花时间理解代码结构。特别是AI”自信地”写出的错误代码,更容易让你误以为是对的。
4. 上下文切换增加
频繁地在”写prompt”和”审查代码”之间切换,打断了开发者的思路。这种上下文切换的成本,比持续专注写代码要高得多。
HN社区的讨论
350条评论中,开发者们的观点大致分为几派:
认同派
“我也有同样的感觉。AI让我写的代码更干净了,但我花在审查和修改上的时间比写代码还多。”
“最大的问题是我开始不信任自己写的代码了。每次写完都要让AI检查一遍,反而降低了信心。”
反对派
“这取决于你做什么。如果是写新功能,AI确实帮大忙。如果是修bug,AI反而添乱。”
“用对场景的话AI确实能加速。写样板代码、写测试、写文档这些,AI比人快多了。”
中间派
“AI编程就像有了一个能力很强但不太靠谱的初级程序员。你不能完全信任他,但他的产出确实能减轻你的负担。关键是怎么用。”
对站长和开发者的启示
1. 选对场景使用AI
AI擅长的场景:
- 写重复性高的样板代码(CRUD、API接口、配置文件)
- 写测试用例
- 写文档和注释
- 代码格式化和重构
- 学习新的编程语言或框架
AI不擅长的场景:
- 复杂的业务逻辑
- 性能优化
- 架构设计
- 安全相关的代码
- 调试复杂的bug
2. 建立审查流程
不要盲目接受AI生成的代码。建立固定的审查流程:
- 先理解AI生成的代码逻辑
- 检查边界情况和错误处理
- 运行测试验证
- 对照需求检查是否满足
3. 保持手动编程能力
不要让AI成为你的拐杖。定期不使用AI写代码,保持对代码的感觉和调试能力。过度依赖AI会让你的编程能力退化。
4. 衡量实际效率
不要只看”写了多少行代码”或”花了多少时间写代码”。要看整体指标:从需求到上线的总时间、bug率、代码可维护性。有时候”慢一点”反而是”快”。
我的看法
这篇文章最大的价值不是”AI编程没用”,而是提醒我们:AI编程不是银弹,它有自己的成本和适用场景。盲目追求”用AI写所有代码”和盲目拒绝AI一样,都不是最优策略。
对于站长来说,最好的方式是把AI当作一个需要管理的团队成员——给它分配合适的任务,审查它的产出,但不要完全依赖它。代码质量最终还是靠人来保证的。
本文参考来源:Nolan Lawson: Using AI to write better code more slowly | Hacker News讨论(947分,350评论)
















暂无评论内容