为什么我不“凭感觉编程”:一位资深开发者对 LLM 编程的深度反思
文章翻译并分享了 Jacob Harris 关于拒绝使用“凭感觉编程”(即过度依赖 LLM 辅助编程)的观点。作者从经济成本、经验主义、抽象本质、摩擦的价值以及责任感五个维度展开论述。他认为,编程是在复杂现实中建立抽象的过程,需要深度理解架构决策和承担后果,而 LLM 只能解决偶然复杂性,无法处理本质复杂性,更无法替代人类的思考与责任。
文章翻译并分享了 Jacob Harris 关于拒绝使用“凭感觉编程”(即过度依赖 LLM 辅助编程)的观点。作者从经济成本、经验主义、抽象本质、摩擦的价值以及责任感五个维度展开论述。他认为,编程是在复杂现实中建立抽象的过程,需要深度理解架构决策和承担后果,而 LLM 只能解决偶然复杂性,无法处理本质复杂性,更无法替代人类的思考与责任。
文章深入剖析了反对“凭感觉编程”的多重原因(如本质复杂性、摩擦的价值、责任感),旁征博引且极具洞察力,但对直接指导落地的实操性较弱。
作者探讨了在AI能大量生成代码的时代,哪些软件工程书籍反而变得更加重要。文章推荐了八本书,覆盖从产品决策到交付的核心领域:《Escaping the Build Trap》强调构建正确的产品、《Specification by Example》统一需求理解、《Learning Domain-Driven Design》明确业务含义、《Software Architecture: The Hard Parts》权衡架构取舍、《Designing Data-Intensive Applications》理解数据保证、《Threat Modeling》识别安全威胁、《Release It!》应对生产故障、《Accelerate》改进交付流程。核心观点是:委派给编码Agent的实现越多,识别其决策是否合理的能力就越有价值。
文章指出了当前 AI 辅助编程中“Vibe Coding”的痛点,即单一 AI 会话承担过多角色导致错误累积。作者提出了“软件工厂”的解决方案,通过构建包含代码库研究员、需求撰写者、规格撰写者、后端/前端构建者及测试验证者的 7 个专业化 Agent,将任务拆解并隔离。这种结构化流程利用 Claude Code 实现了自动化且高质量的功能交付,彻底改变了单人监督 AI 的低效模式。
文章探讨了“AI First”战略的误区,指出单纯引入 AI 工具并不等于 AI 优先。真正的 AI 优先需要基于“AI 是主力构建者”的假设,彻底重构流程、架构和组织,即“软件工程 First”。文章详细介绍了 CREAO 团队如何利用脚手架工程、统一代码库、CI/CD 流水线和自愈反馈循环,实现 99% 代码由 AI 编写且一天部署多次的高效模式,同时也指出了该模式适用的场景与局限性。
作者分享了借鉴开源项目OpenClaw创始人Peter的工作流,在27天内利用AI Coding Agent独立完成并上线商用产品AgentWay的实战经验。文章详细阐述了原子化提交、CLAUDE.md作为基础设施、Agent的ROI分界线等六个核心方法论,并指出AI工具只是放大器,真正的瓶颈在于开发者的经验判断力和定义问题的能力。
作者以程序员视角深入分析了数字生命卡兹克零编程基础、纯靠 AI 构建的开源项目 AIHot(AI 热点新闻聚合网站)。文章详细解读了项目的技术选型与架构:TypeScript 全栈 monorepo、React Router SSR 前端、Fastify API、pg-boss 任务队列,以及 RSS、网页爬虫、JSON 接口、推特、微信公众号等六种信源采集方式。重点剖析了其基于大模型的文章处理流程:预筛、五维度加权打分、摘要生成、向量聚簇归组。作者由此引申讨论 AI 时代软件工程可维护性标准的转变:程序员注意力从代码实现转向架构设计与约束,类比铝从贵金属到飞机材料的价值观变迁。
文章以面包店从街角小店成长到全国连锁的故事为比喻,系统讲解网站如何应对用户增长与稳定性挑战。从单体架构(一台烤箱)讲到垂直扩展、数据库索引、N+1 查询优化、缓存与缓存失效、水平扩展、负载均衡与自动扩缩容,再延伸到 Docker 容器化、CI/CD、可观测性、读写分离、微服务拆分、CDN 内容分发,以及限流、队列与异步处理等高并发应对手段。用通俗类比帮助零基础读者理解前后端、数据库、缓存等核心概念,掌握系统扩容与稳定性的基本方法论。
文章探讨 AI 编程工具对专业能力形成的负面影响。作者提出“专家级新手”悖论:有效使用 AI 编程工具需要深厚专业经验,而这些工具又绕过了培养专业能力所需的摩擦。多项研究(JetBrains、宾夕法尼亚大学、Anthropic)表明,依赖 AI 辅助的新手开发者容易产生“能力幻觉”,跳过关键规划步骤,学习效果反而更差。作者建议将 LLM 用作苏格拉底式导师而非答案生成器,区分“认知债务”与“认知卸载”,并提供了 AI 辅助使用检查清单,强调摩擦是形成专业直觉的必要过程。
文章深入解析了DeepSeek Harness(DSH)的架构与工程价值,指出其通过细粒度可替换性和执行历史记录解决了Agent维护难题。作者对比了Cordis论文与自我进化研究,强调DSH目前仅实现了Runtime实验原语,尚未达到工程闭环。要从临时挂载走向生产系统,仍需构建可信评测、发布链路、强隔离及责任归属四大基础设施。
本文探讨了2026年以来关于Agent运行位置的争论,指出行业趋势是将Agent运行在沙箱之外。作者详细解释了沙箱内运行的三个主要问题:爆炸半径、信任边界和沙箱的间歇性运行,并提出了将沙箱作为工具暴露的正确架构,最后提供了基于Vercel AI SDK的实现示例和生产环境中的挑战。
作者记录了利用 Claude Code 和 AI 辅助工具,从零开始开发 AI 阅读插件 ReadCue 的全过程。文章探讨了 HTML 在 AI 时代的复兴、全新的设计开发范式,以及程序员如何从手写代码转向架构决策和产品定义。
作者因 Codex 更新导致会话丢失,利用 AI 编程开发了一个迁移工具。文章分享了 AI 编程的分阶段执行方法,强调了备份、预览、数据校验和回滚等工程约束的重要性。作者认为 AI 编程的核心在于将模糊需求转化为可验证的工程流程,并提供了工具的开源链接和详细使用步骤。