
最近我把一个问题丢给了 6 个大模型“古法编程决定你的下限AI 编程决定你的上限。”“古法编程决定你的上限AI 编程决定你的下限。”如果必须二选一你相信哪一句结果很有意思。豆包、千问选择了第一句古法编程决定下限AI 编程决定上限。ChatGPT、DeepSeek、Gemini、Claude Opus 选择了第二句古法编程决定上限AI 编程决定下限。这个结果乍一看很反直觉。因为我们现在每天都能看到 AI 编程有多猛。以前一个登录页、一个后台管理页面、一个接口联调可能要写半天。现在你把需求说清楚AI 几分钟就能给你搭出一个大概。以前不会写 Python 脚本不会写 Dockerfile不会调 SQL也许要查半天资料现在你问 AI它马上给你一套能跑的方案。所以很多人会自然觉得古法编程只是基础AI 才是未来古法保下限AI 拉上限。这句话不是完全错。但如果放到长期来看我更相信第二句AI 编程决定你的下限古法编程决定你的上限。一、AI 确实正在把“下限”抬高我们先承认一个事实AI 编程不是玩具它真的改变了软件开发。GitHub 早期关于 Copilot 的研究显示在一个 JavaScript HTTP server 的实验任务里使用 Copilot 的开发者完成任务的速度显著更快平均快了 55% 左右。GitHub 也提到开发者普遍认为 Copilot 能减少重复劳动、节省精力、让他们更专注于更有意义的工作。(The GitHub Blog)Google CEO Sundar Pichai 在 Alphabet 2024 年第三季度财报电话会上也提到Google 内部已经有超过四分之一的新代码由 AI 生成然后由工程师审查和接受。注意这句话里有两个关键词AI 生成以及工程师审查。(blog.google)NVIDIA CEO 黄仁勋也说过类似的话。他在 2024 年世界政府峰会上表示未来的“编程语言”会越来越接近人类语言因为 AI 让普通人也能用自然语言指挥计算机。(NVIDIA Blog)这些都说明一件事AI 正在降低编程的入门门槛。以前你想做一个东西第一步是学语言、装环境、查文档、看报错、改配置。很多人还没进入真正的业务逻辑就已经被这些杂活劝退了。现在不一样了。你可以直接说“帮我写一个待办事项应用。”“帮我加一个导入 Excel 的功能。”“帮我写一个 Docker Compose。”“帮我分析一下这个慢 SQL。”“帮我把这个接口封装成前端请求函数。”AI 可能不能一次写对但它至少能给你一个起点。这就是 AI 抬高下限的地方。它让新手不至于从 0 开始摸黑。它让普通开发者不必把大量时间浪费在样板代码上。它让一个人可以更快做出原型更快验证想法更快跨过陌生技术栈的门槛。所以AI 编程决定下限这句话非常现实。过去一个不会写代码的人可能什么都做不出来。现在一个表达能力不错、会拆需求的人至少可以借助 AI 做出一个 60 分、70 分的东西。但问题也正在这里。从 0 分到 70 分AI 很强。从 70 分到 95 分靠的就不只是 AI 了。二、AI 写得出来不代表你能用得好很多人对 AI 编程的误解是把“生成代码”当成“完成软件”。这两件事差得很远。AI 可以帮你生成一个功能但它不一定真正理解你的业务边界。AI 可以帮你写一个接口但它不一定知道线上并发量有多大。AI 可以帮你写一个 SQL但它不一定知道这张表有几千万数据。AI 可以帮你写一段看起来很优雅的代码但它不一定知道这段代码半年后谁来维护。更麻烦的是AI 写出来的代码经常是“差一点就对”。它不是完全错。它是大方向对细节错。它是能跑但边界不稳。它是 Demo 很漂亮上生产很危险。Stack Overflow 2025 年开发者调查里有一个很值得注意的数据使用或计划使用 AI 工具的开发者比例很高但对 AI 输出准确性的信任却下降了。调查显示46% 的开发者不信任 AI 工具输出的准确性只有 33% 表示信任。(Stack Overflow)这其实很符合一线开发者的体感。AI 越常用大家越知道它好用AI 越常用大家也越知道它不可靠。这不是矛盾。这就像你有了一个非常勤快的实习生。他速度很快不怕加班知道很多知识态度也很好。但他最大的问题是他不知道自己什么时候错了。他会非常自信地给你一段代码。他会非常认真地解释为什么这样写。但如果你没有判断力你很可能就信了。而软件开发最危险的地方从来不是“代码完全不能运行”。最危险的是它能运行但在错误的条件下运行。它能上线但在真实压力下崩溃。它能通过测试但漏掉了关键边界。这时候决定你水平的不是会不会让 AI 写代码而是你能不能看出 AI 写错了什么。三、古法编程真正决定的是“判断力”很多人一听“古法编程”脑子里想到的是手写冒泡排序、背八股文、刷算法题、死记语法。如果只是这些那确实没必要神化。真正的古法编程不是拒绝工具也不是回到纯手写时代。它指的是那些慢慢长在你身体里的工程能力你知道一个变量为什么不能随便命名。你知道一个函数为什么不能越写越长。你知道什么时候该抽象什么时候不该抽象。你知道数据库索引为什么会失效。你知道接口为什么要做幂等。你知道异步任务为什么要考虑重试。你知道缓存为什么会带来一致性问题。你知道线上 Bug 为什么不能只看表面报错。你知道一个系统不是“能跑”就叫完成。这些能力不是 AI 一次回答就能塞进你脑子里的。它来自你写过烂代码。来自你改过祖传项目。来自你半夜查过线上日志。来自你被一个边界条件坑过三天。来自你亲手把一个混乱系统拆开又重新装回去。这就是古法编程决定上限的原因。因为越往上走开发越不是“写代码”而是“做判断”。需求要不要接这个功能该不该做成配置这段逻辑应该放前端还是后端这个模块要不要拆服务这个方案是短期快还是长期稳这次重构是必要的还是技术洁癖AI 给了三个方案哪个更适合现在的团队这些问题AI 都能给建议。但最后拍板的人还是你。如果你没有底层判断力你就会被 AI 的流畅表达牵着走。如果你有底层判断力AI 才会变成你的放大器。四、为什么越强的模型越强调人的基本功这次 6 个模型的回答里最有意思的不是它们站哪边而是它们为什么站那边。选择第一句的豆包、千问强调的是生产力AI 让人跨越边界一人顶一个小团队快速完成复杂项目。这个判断没错。但选择第二句的 ChatGPT、DeepSeek、Gemini、Claude更强调另一个东西AI 会让平均能力变得便宜但不会让高阶判断变得便宜。这才是关键。当所有人都有 AI 的时候AI 本身就不再是稀缺能力。今天你会用 AI 写代码很厉害。明天所有人都会用 AI 写代码这件事就不再稀奇。就像当年搜索引擎刚出来时会搜索是一种能力。后来所有人都会搜索真正拉开差距的就不是“会不会搜”而是你知不知道搜什么你能不能判断结果真假你能不能把信息组织成方案你能不能把方案落地成系统AI 编程也是一样。未来真正的差距不是“谁会让 AI 写代码”而是谁能把需求说清楚。谁能把边界想完整。谁能审查 AI 的输出。谁能设计系统结构。谁能在复杂约束里做取舍。谁能在 AI 犯错时兜住底。这就是为什么我认为AI 时代的开发者更需要古法编程而不是更不需要。不是因为我们要和 AI 比手速。而是因为我们要站在 AI 上面做判断。五、Karpathy 的提醒AI 代码仍然需要人的审美和监督Andrej Karpathy 是 OpenAI 的联合创始人之一也曾是 Tesla 的 AI 负责人。他提出过 “vibe coding” 这个说法用来描述一种越来越流行的开发方式人主要用自然语言描述需求代码大部分交给 AI 生成。但很有意思的是Karpathy 并没有无脑鼓吹这种方式。Business Insider 2026 年报道提到Karpathy 在一次谈话中批评过当前 AI 生成代码的质量认为它有时会显得笨拙、臃肿甚至带着脆弱的抽象。他同时强调AI 代码仍然需要人的监督、审美和质量判断。(Business Insider)这个观点非常重要。因为它说明哪怕是最懂 AI 的人也不会把 AI 编程理解成“人类不用懂代码了”。更准确地说AI 改变的是开发方式不是取消开发者的责任。过去你一行一行写代码。现在你可能一段一段审代码。过去你亲手搭积木。现在 AI 帮你搬来一堆积木。但房子怎么设计地基稳不稳承重墙能不能拆最后还是要人负责。AI 可以生成。但你要验收。AI 可以加速。但你要控制方向。AI 可以给答案。但你要知道什么时候不该信。六、真正危险的不是不会 AI而是只会 AI我并不赞成一种老派观点程序员应该少用 AI坚持纯手写。这不现实也没有必要。AI 已经成了开发工具链的一部分。未来不会用 AI 的开发者效率一定会吃亏。就像不会用搜索引擎、不会用 Git、不会用 IDE 一样不是不能写代码但会很慢。但另一个极端更危险只学 AI不学编程。只学提示词不学系统。只会让 AI 改不知道为什么改。这种人短期看起来进步很快。因为 AI 会帮他补齐很多表面能力。他能做页面能写接口能跑项目甚至能快速上线一个 Demo。但一旦进入复杂项目他的问题就会暴露需求稍微模糊就不知道怎么拆。AI 写错了也不知道错在哪里。代码跑不通只会继续复制报错问 AI。项目越来越乱却不知道应该重构哪一层。上线出了问题只能在日志里迷路。团队问他为什么这样设计他只能说“AI 是这么写的。”这就是“AI 编程决定下限”的另一面。AI 可以托住你让你不至于太差。但如果你没有自己的基本功它也会把你困在一个看起来不错、其实很薄的水平里。你以为自己在飞。其实只是坐在 AI 的滑板车上。七、AI 时代程序员应该练什么如果第二句成立古法编程决定上限AI 编程决定下限。那我们就要重新理解“学习编程”这件事。不是说你要回到完全不用 AI 的时代。而是你要把 AI 当成训练器而不是代替大脑的拐杖。我觉得至少要练 5 件事。1. 练需求拆解能力AI 最怕的不是复杂需求而是模糊需求。你说“帮我做一个淘宝”AI 只能给你一堆通用模板。你说清楚购物、促销、商家、活动、推荐、边界它才能接近真实可用。未来程序员的第一能力不是写代码而是把一句话需求拆成清晰结构。2. 练代码审查能力AI 写完代码后你不能只问“能不能跑”。你要看有没有边界条件有没有安全风险有没有性能问题有没有重复逻辑有没有隐藏状态有没有异常处理有没有测试覆盖会写代码重要会审代码更重要。3. 练调试能力AI 很会给答案但它不一定知道真实环境发生了什么。线上问题通常不是一句报错能解释的。它可能和数据、缓存、网络、并发、配置、时间、权限都有关系。调试能力本质上是顺藤摸瓜的能力。这件事只能靠真实项目训练。4. 练系统设计能力小功能可以靠 AI 快速生成。但系统越大越需要设计模块边界怎么划数据流怎么走失败后怎么恢复服务之间怎么解耦接口怎么兼容未来变化日志、监控、告警怎么设计这些决定系统能走多远。5. 练技术品味技术品味听起来很玄其实很具体。你知道什么代码是“刚刚好”。你知道什么抽象是过度设计。你知道什么方案虽然快但以后会还债。你知道什么时候要慢一点把地基打好。AI 可以给你很多方案。但品味决定你选哪一个。八、最准确的版本古法给你天花板AI 缩短抵达天花板的时间所以回到最开始那两句话。“古法编程决定你的下限AI 编程决定你的上限。”这句话适合描述 AI 刚出现时的兴奋感。它强调 AI 的杠杆作用提醒我们不要低估工具带来的能力放大。但它的问题在于容易让人误以为只要会用 AI上限就会自动提高。现实不是这样。AI 能帮你跑得更快但它不知道你该往哪里跑。AI 能帮你写得更多但它不知道哪些代码不该写。AI 能帮你生成方案但它不知道你的团队能不能维护。AI 能给你一个看似高级的架构但它不承担上线后的后果。所以我更相信第二句古法编程决定你的上限AI 编程决定你的下限。不过我还想再改得更准确一点AI 抬高你的起点古法决定你的终点。AI 提高你的速度古法决定你的方向。AI 缩短你抵达上限的时间但古法决定你有没有那个上限。这不是让我们怀旧也不是让我们排斥 AI。恰恰相反越是 AI 时代越应该拥抱 AI。但拥抱 AI 的最好方式不是放弃基本功而是用基本功驾驭 AI。未来最强的程序员不一定是手写代码最多的人。也不一定是提示词写得最花的人。而是这样一种人他能用 AI 快速生成。也能用经验快速判断。他能让 AI 做重复劳动。也能自己承担关键决策。他知道什么时候听 AI。也知道什么时候关掉 AI自己想清楚。这才是 AI 时代真正稀缺的开发者。