ARTICLE DETAIL

资讯详情

深耕郑州网站建设与运营推广的一线实战洞察。

Havenlon | 杂谈:当亲手写代码开始被叫作“古法编程“

Havenlon | 杂谈:当亲手写代码开始被叫作“古法编程“ 最近程序员圈子里流行起一个颇有意思的词古法编程。它没有严格定义大致用来形容不开 Cursor、不用 Copilot、不调 Claude Code也不把任务丢给 Coding Agent而是自己打开编辑器查文档、找接口、写函数、改 Bug一行一行把代码敲出来。放在几年前这就是再普通不过的写代码今天却突然多了古法两个字。这个词当然带着调侃和古法酿造柴火灶炒菜是同一种修辞强调的是一种曾经理所当然、如今开始显得费时费力的生产方式。但一个行业真正重要的变化往往先出现在语言里。当昨天还被称为正常工作的方式今天开始被冠以传统、手工甚至古法变的通常已经不只是工具而是人们对于什么才算正常生产方式的默认认知。这种转变的官方版本写得比玩笑更直白。Google 开发者博客在 2026 年 8 月 11 日的一篇文章里描述了它眼中的行业现状过去大部分代码由人亲手写如今则是 AI 助手和 Agent 批量生成人的工作转向阅读、清理和验证这些代码并且因为 AI 对系统全局缺乏视野定义架构、划分服务边界、保证安全与可靠性的责任仍然留在人这一侧。这篇文章本意是为 Go 语言辩护落点却指向一个更普遍的判断软件工程的瓶颈正在从生成转向验证。换句话说AI Coding 真正改变的可能并不是程序员写代码的速度而是程序员在整个软件生产体系中的位置。代码曾经是一种昂贵的商品要理解这个位置的移动先要理解它过去为什么如此重要。过去几十年软件昂贵的原因很多——需求复杂、项目管理困难、维护周期漫长、基础设施成本高——但其中有一个长期存在的基本事实把人的意图翻译成机器能够执行的代码本身就是一项昂贵的劳动。一个业务部门想增加一个功能说出来往往只是一句话希望系统能根据客户等级自动调整审批流程。而从这句话变成一个可以稳定运行的系统中间要经过需求分析、数据建模、接口设计、前后端开发、测试、部署、安全检查和大量调试。软件产业相当一部分成本长期就沉积在业务意图、技术设计、程序代码、可运行系统这条翻译链路上而程序员恰好站在链路的核心位置。这也是为什么过去一家企业哪怕只想做一套内部管理系统也可能需要一个完整的软件团队。代码不会凭空出现每一个页面、接口、条件判断和数据结构都需要有人把它写出来。编码能力因此本身就是一种稀缺生产资料。生成式 AI 正在快速改变这个前提。过去一个开发者需要半天完成的接口现在几分钟就能得到第一版过去必须反复查文档才能搞定的陌生框架配置Agent 可以读完整个项目后直接修改过去需要大量初级工程师承担的模板代码、测试代码和重复重构也越来越容易交给机器。这并不意味着这些代码天然正确但它意味着另一件更要紧的事代码开始变得廉价。而当一种长期稀缺的生产资料突然大量供应受到冲击的从来不只是生产它的人。围绕它建立起来的组织结构、定价体系和产业分工都会跟着松动。代码越便宜判断反而越昂贵松动的第一处是一种相当普遍的直觉既然机器能快速写出代码软件开发这件事应该会越来越简单。现实可能恰恰相反。因为 AI 降低的是产生一个答案的成本却没有同比降低判断这个答案是否正确的成本。一个 Agent 可以很快写出一个支付接口但它不会替企业回答这笔支付在什么条件下才应该被允许失败之后能不能自动重试重试会不会造成重复扣款谁有权修改金额审批通过之后如果账户状态发生变化原来的授权是否仍然有效依赖服务异常时系统应该降级、停止还是继续执行。这些问题不会因为代码容易生成而消失恰恰相反当代码产能骤然放大它们的重量还会增加。过去一个程序员一天写三百行代码他最多只需要面对这三百行带来的复杂性。未来一个人同时指挥多个 Agent一天可以让系统产生几千甚至几万行代码。这时候限制生产力的东西已经不再是键盘速度而是这个人究竟能理解多少、能判断多少、能为多少东西承担责任。于是 AI Coding 可能带来一个相当反直觉的结果代码生产能力越强人类判断力反而越稀缺。过去软件工程讨论最多的问题是怎么写得更快未来越来越重要的问题可能变成这么多代码谁来证明它们值得存在。程序员的位置正在从生产者移向判断者如果承认瓶颈已经从写转向证明那么把 AI Coding 理解成更高级的代码补全就会严重低估这轮变化。假如 AI 只是让一个人从一天写五百行变成一天写一千行企业要做的事情确实很简单给每人配一个工具效率自然提升。但如果代码本身不再是主要瓶颈组织方式就必须跟着改变。过去的软件团队建立在一个基本假设之上——人的编码时间是有限的。因此需求增加就增加开发开发增加就增加测试系统变大就增加更多维护人员。很多大型 IT 服务企业甚至长期把工程师数量、项目人天和投入规模当作商业模式的地基。这块地基已经开始移动。路透社 8 月 21 日报道印度 IT 服务业时提到塔塔咨询、Infosys、Wipro、HCLTech 和 Cognizant 等外包巨头正在调整商业模式把收费越来越多地绑定在结果而不是工时上客户一边要求大幅降价一边用 AI 把部分工作收回内部而过去我们有庞大的人员规模这一竞争优势正随着自动化程度提高而不断贬值。这比程序员会不会失业更值得注意因为真正被改写的是一套运行了几十年的组织逻辑很多执行者加上少数判断者。未来的软件团队有可能逐渐转向另一种结构——少量高判断力的人加上大量机器执行者。人的任务不再主要是亲自完成每一项编码劳动而是定义目标、划分边界、设计架构、设定约束、审查结果并对最终系统承担责任。一个优秀工程师最重要的能力也会随之改变。过去一个年轻工程师最直接的竞争力是这个功能我能不能写出来未来更要紧的问题可能是这个功能到底应该以什么形式存在于整个系统里。前者考验实现后者考验抽象、判断与责任。工业革命淘汰的从来不是手这样的位移在技术史上并非第一次发生。纺织机出现之后人类没有失去双手汽车出现之后人类也没有失去双腿电子表格普及之后会做加减乘除同样没有突然失去意义。真正变化的是另一件事社会不再愿意为一种已经可以被机器规模化完成的劳动继续支付过去那么高的溢价。所以工业革命淘汰的从来不是手而是把手当作核心生产力的组织方式。AI Coding 对程序员正在做类似的事。会不会写代码依然重要在操作系统、数据库、嵌入式、安全、分布式和实时系统这些领域深入理解代码甚至比过去更重要但能够把代码写出来本身正在快速失去稀缺性。摄影提供了一个更近的参照。曾经摄影需要昂贵设备、胶卷、曝光知识和暗房技术因此能拍出一张照片本身就是能力。智能手机出现之后几十亿人都能按下快门摄影并没有消失消失的是按下快门这个动作的专业溢价。专业摄影师依然存在只是市场要求他提供的东西已经从能拍到变成了构图、叙事、审美、判断和独特视角。编程大概正在进入类似的阶段。未来人人都可能让 AI 写出一个应用但这并不意味着人人都能设计一个可靠的系统。当软件越来越容易制造可信的软件可能反而越来越贵这种稀缺性的转移最终会传导到整个软件产业的定价逻辑上。过去企业购买软件一个很重要的理由是自己开发太贵。如果一套 CRM、审批系统或内部运营工具需要几十名工程师长期投入购买成熟 SaaS 显然更划算。当 AI 把开发成本压缩到原来的一小部分一个问题自然会浮上来为什么我不能自己做路透 Breakingviews 在 8 月的一篇专栏中已经把这个疑问摆到了商业层面其判断相当克制——Vibe Coding 的压力主要落在那些本身只是薄薄一层工作流封装的产品上而真正守得住的产品护城河在于分发、数据、信任或运营复杂度。这句话的另一面同样重要。企业很快会发现做出一个能跑的软件越来越容易做出一个能够长期运行、能够审计、能够扩展、能够维护、出了问题有人负责的软件却并没有同步变容易。于是市场可能出现一种新的分化实现越来越便宜可信越来越昂贵。大量一次性应用、内部工具和简单业务系统会因为 AI 而迅速商品化而那些真正涉及资金、生产、医疗、基础设施、核心数据和现实执行的系统价值会越来越集中在另一组能力上——架构、验证、安全、证据、可靠性、责任与边界。软件产业最昂贵的部分正在缓慢移动过去人们购买的是帮我把软件写出来未来人们更可能购买的是帮我确保这个系统值得被运行。真正的程序员也许才刚刚出现顺着这条线看下去把今天的变化概括为AI 要取代程序员反而低估了它。更准确的说法也许是AI 正在重新定义什么东西才配被称为程序员的核心能力。过去几十年大量优秀工程师其实把相当多时间消耗在机械劳动上写重复接口、搬数据结构、处理模板代码、查 SDK 文档、改配置文件、补测试、调格式、修复大量并不复杂的 Bug。而最能体现软件工程能力的部分——架构、抽象、边界、可靠性、安全、对复杂系统的整体判断——往往只占工作的一小块。如果 AI 最终把前一类劳动大量吸收掉这个职业未必会变得更廉价反而可能重新变得更专业。未来一个优秀工程师的价值会越来越少体现在今天写了多少代码而越来越多体现在他知道什么东西应该被构建也知道什么东西不应该被构建知道系统哪里可以灵活哪里绝不能妥协知道什么时候可以相信机器什么时候必须拒绝机器。这里的拒绝并不是对机器的不信任而是承认一个更朴素的事实——机器会在完全善意、完全正确的推理下写出一段不该存在的逻辑就像人也会。因此可靠性不能只依赖某一个环节足够可信而要依赖一套即使某个环节出错、也仍然能够拦住结果的结构。当一切看起来都能运行的时候仍然有人能问出那句它真的正确吗这句话才有分量。这或许才是古法编程这个玩笑背后真正值得注意的地方。今天我们说一个人还在亲手一行行敲代码是古法编程几年后回头看这个词记录下来的可能并不是某个编辑器、某个模型或某种开发习惯的兴衰而是软件产业跨过的一条边界软件第一次从代码稀缺的时代进入代码过剩的时代。在一个代码越来越廉价、近乎无限供应的世界里真正昂贵的东西将不再是代码本身而是判断、责任、边界以及知道什么东西即使能够被写出来也不应该被执行。
返回列表