引言:一个被忽视的致命陷阱
2024年,AI编程工具以前所未有的速度席卷整个软件行业。GitHub Copilot、Cursor、Claude等工具让编写代码变得前所未有的简单。产品经理们兴奋地发现,自己用几句提示词就能生成一个完整的功能模块;创业公司老板们开始重新计算人力成本,思考是否还需要那么多“昂贵”的程序员;投资人们则在畅想一个“十个人干一百人活”的极致效率未来。
这场狂欢的背后,有一个声音正在被淹没:“AI写代码越快,软件行业越要警惕一件事,叫能力断层。”
这不是危言耸听。这不是对技术进步的抵触。这是一个从历史深处传来的警钟。而这个警钟,西方国防工业已经用数十亿美元的代价敲响过了。
第一章:历史的镜子——当美国发现自己不会造导弹了
毒刺导弹的四年等待
2022年,美国国防部接到了一个看似简单的任务:重启毒刺导弹生产线。
毒刺导弹,这款在阿富汗战场上击落过无数苏联直升机的传奇武器,技术并不算特别复杂。生产线在过去运转了几十年,美国拥有完整的知识产权和设计图纸。按理说,重新投产应该是一件按部就班的事。
但现实给了所有人一记响亮的耳光。
这条生产线已经停了二十年。二十年间,当年的电子元件早已停产,原供应商不是倒闭就是转型。更糟糕的是,图纸是四十年前的纸质版本,很多标注用的还是手写符号。测试设备在仓库里尘封多年,没有人知道怎么校准。
最大的问题出在人身上。当年那批经验丰富的工程师,退休的退休,离世的离世。新一代工程师看着老图纸,如同看天书。有些公差标注,他们不明白为什么是这个数值;有些工艺流程,他们不理解为什么非得这么做。
最后,美国军方不得不想出一个让人心酸的办法:把一批七十多岁的老工程师请回来,让他们手把手教年轻人怎么造导弹。
结果呢?2022年下的订单,预计要到2026年才能交付。整整四年时间,去重启一条曾经正常运转的生产线。
这不是钱的问题。五角大楼不缺钱。这是能力断档了。
一百万发炮弹的承诺
同样的故事在欧洲上演。
当某个国家在冲突中急需弹药支援时,欧洲各国慷慨承诺:提供100万发炮弹。
这个承诺后来被发现根本无法兑现。
不是欧洲不想给,也不是没有生产线。问题是,发射药没人会造了。TNT产能严重不足。相关的化工厂在过去几十年里陆续关闭,供应链断裂得一干二净。那些曾经生产弹药的工厂,有的变成了博物馆,有的改建成了商业中心,有的干脆被拆掉了。
欧洲人这才意识到,过去几十年,为了所谓的“效率和低成本”,太多关键冗余被砍掉了。平时看起来省了很多钱,可危机一来,才发现最贵的东西不是工厂,不是设备,而是那些多年积累下来的生产能力和技术知识。
那个故意不写进文档的杂质
最让人震撼的故事,发生在核武器领域。
美国核弹头里有一种特殊材料,代号“Fogbank”。这种材料的生产线关停多年后,当美国决定重新制造时,遇到了一个诡异的问题。
他们拿到了当年的全部图纸、工艺流程文档、配方记录,原原本本地按照这些资料重新生产。材料做出来了,检测指标也合格,但就是不行。用这批新材料组装的核弹头,性能达不到要求。
后来经过无数次排查,才发现原因:当年的老工艺中,无意中引入了一种杂质。正是这种杂质,让材料具备了关键特性。但当年的工程师们不知道这个杂质的存在——他们以为只是按照标准流程操作而已。后来的工程师更不知道,因为任何文档里都没有记录这个“错误”。
这是一种藏在反复试错、反复踩坑经验里的知识。它不是被故意隐藏的,而是根本没人意识到那是知识。
这就是隐性知识断层最可怕的地方:你不知道你不知道什么。
第二章:软件行业的“和平红利”幻觉
当“AI省人”成为新的信条
把这些故事平移到软件行业,你会惊恐地发现,我们正在重演同样的剧本。
国防工业过去几十年有一种幻觉,叫“和平红利”——既然不打仗,为什么要维持庞大的军工产能?于是生产线关了,供应链砍了,工程师团队解散了。
今天,软件行业出现了一种新的幻觉,叫“AI能省人”。既然AI会写代码了,初级工程师是不是可以少招?基础编码训练是不是可以跳过?调试、踩坑、重构、读老代码这些“笨功夫”,是不是都可以交给AI?
很多企业已经开始这么做了。招聘名额缩减,初级岗位砍掉,新人培训预算削减。账面上确实好看了。但五年后、十年后呢?
代码可以生成,工程能力生成不了
一个程序员真正的能力,不在于能敲多少行代码,而在于知道为什么这么写、哪里可能出错、系统崩溃后从哪里查起。
这些能力不是看AI答案看出来的。
它是一个人无数次写错代码导致线上故障,凌晨三点被电话叫起来紧急修复,在生产环境日志里大海捞针般地排查,对一个诡异bug茶不思饭不想地追踪一个星期,最后发现只是一个字符写错了……这些痛苦经历堆积出来的。
如果一个年轻工程师一上来就只会复制粘贴AI给出的答案,只会在提示词里反复调整需求,短期看效率很高,长期看他的工程直觉和debug能力可能根本没长出来。
更致命的是,他用惯了AI,却看不出AI哪里错了。
这才是最可怕的场景:一个对AI言听计从的程序员,把AI生成的代码直接部署到生产环境,代码里藏着一个深层的逻辑错误。这个错误不会马上触发,而是在某个特定条件下才会爆发。等到系统真的崩了,他面对满屏的报错信息,连从哪里查起都不知道。
因为他从来没有真正理解过这段代码。他只是把问题描述输进去,把答案复制出来。
AI是放大器,不是替代品
经常有人说,AI就像计算器。有了计算器,我们就不用学算术了。
这个类比大错特错。
计算器解决的是确定性问题。加减乘除有唯一正确答案,计算器不会骗你。但软件工程面对的是不确定性问题。同一个需求,有无数种实现方式。每一种都有不同的权衡、不同的边界条件、不同的潜在风险。
AI给出的是一个概率性的答案——训练数据里最常见的、最像正确答案的那一个。它不保证正确,它不对后果负责,它不知道你的系统有什么特殊约束,它不承担任何责任。
所以AI的本质是什么?是一个放大器。你有判断力,它放大你的能力。你没有判断力,它就放大你的错误。
现在已经有研究证实了这个观点。一项针对经验丰富的开发者使用AI工具完成真实开源任务的研究发现,他们的效率反而降低了19%。为什么?因为他们花了更多时间去看懂AI生成的代码,去判断这个方案到底靠不靠谱,去修改那些看似正确其实有问题的实现。
AI可以一秒生成一堆代码。但出了问题,责任还是人的。
第三章:隐性知识——那些永远无法被文档化的智慧
为什么不能把所有经验都写下来?
有人会说,把老工程师的经验全部文档化不就行了?为什么非得让人重新踩坑?
这个问题触及了人类知识传承的核心困境:隐性知识。
物理学家迈克尔·波兰尼提出过一个著名论断:“我们知道的,远比我们能说出来的多。”
骑自行车时要如何保持平衡?你可以写出物理方程式,但那对学骑车毫无帮助。真正让你学会的,是一次次摔倒后身体自己找到的感觉。这种感觉无法用语言完整描述。
软件工程中充满了这样的隐性知识。
那个看起来丑陋无比却运行了十年的老系统,为什么没人敢重构?因为当年写它的工程师早走了,没人知道那几百行看似多余的判断条件,其实是在规避一个极其罕见的并发bug。这个bug的触发条件极其苛刻,可能一年才出现一次。文档里没写,代码注释里没有,只有当年经历过那次线上事故的人才记得。
一个资深架构师在看到某个设计方案时,直觉告诉他“这里有问题”。你要他立刻说出精确的理由,他可能说不上来。但这个直觉来自他过去二十年看过无数系统崩溃后形成的模式识别能力。AI能学会这种直觉吗?至少在可预见的未来里,不能。
Fogbank的幽灵
还记得前面讲的Fogbank材料的故事吗?软件行业中,Fogbank无处不在。
一个团队维护了一套遗留系统很多年,各种奇怪的补丁和workaround层层叠加。新来的工程师看着这些代码直摇头:“太烂了,重写吧。”他说得对,从代码规范的角度看确实烂。但他不知道的是,每一个看似不合理的实现背后,都可能有一个血淋淋的教训。
那个看似多余的数据库索引,是在一次大促宕机后紧急加上的。那个诡异的缓存刷新逻辑,是因为第三方接口不稳定导致大量订单丢失后的补救措施。那个明明可以用现成框架却偏偏要自己实现的功能,是当初框架版本有严重漏洞被攻击后的无奈之举。
如果这一代工程师全靠AI写代码,从不接触这些“烂代码”,从不理解历史决策的背景,那么所有Fogbank都会在无声无息中消失。直到某一天,系统在同样的坑前再次倒下,而这一次,没有人知道为什么。
第四章:能力断层的未来代价
你以为省下的钱,未来会加倍偿还
企业短视是一件非常诱人的事。
砍掉初级岗位,一季度能省下几十万。用AI替代基础开发工作,项目周期缩短一半。把新人培养计划停掉,省下的时间可以用来赶更多需求。账面上的数字确实变好看了,KPI完成了,年终奖保住了。
但隐性债务正在悄然累积。
一个在AI帮助下“无所不能”的中级工程师,工作了五年却从没真正从头设计过一个系统,从没独立排查过复杂线上故障,从没体验过凌晨四点被P0级事故惊醒的压力。他的简历看起来很漂亮,参与的项目很多,代码产出很高。但当他成为团队的技术负责人,当真正的危机来临时——系统大面积瘫痪、数据大量丢失、安全漏洞被利用——他能扛得住吗?
到那个时候,企业会发现自己陷入了一个荒谬的困境:公司里全是会用工具的人,却没有一个能真正解决问题的人。
这个困境,和当年美国发现没人会造毒刺导弹,有什么区别?
谁为失控的AI代码负责?
把场景推到极致。
你愿意让一个只会问AI、不会debug的人来维护银行核心交易系统吗?你愿意把医院的重症监护系统交给一个看到AI代码就照单全收的工程师吗?你敢坐在一辆由“AI生成、人类照搬”的代码控制的自动驾驶汽车里吗?
当AI写了90%的代码,而掌控剩下的10%的人,能力却在持续退化。这就是软件行业正在面临的真实的系统性风险。
不是AI本身危险,而是人类在主动放弃自己理解系统、掌控系统的能力。
第五章:未来的答案——重新定义“驾驭AI”
从“被AI替代”到“指挥AI”
说了这么多让人焦虑的,该谈谈解决方案了。
未来的价值锚点,不是“会用AI”,而是“能驾驭AI”。
什么叫驾驭AI?
不是把需求丢给AI然后复制粘贴答案。而是让AI帮你干活,但脑子始终保持在自己脖子上。
AI给你一个方案,你要知道问:这个算法的时间复杂度是多少?在极端数据量下会不会崩?如果出异常怎么办?有没有考虑并发场景?安全上有哪些潜在风险?
AI给你一段代码,你能一眼看出哪里不对。你能说:“这里有个坑,不能这样写。”
这种能力从哪来?不是读《AI使用指南》能读出来的,而是从你过去无数次亲手写代码、亲手debug、亲手排查线上故障的经历里长出来的。
这就是为什么基础训练不能跳过。就像医生不能跳过解剖实验直接用AI诊断,律师不能跳过案例研读直接用AI写诉状,程序员也不能跳过那些“笨功夫”直接成为AI指挥家。
刻意练习的回归
音乐家不管有多少技术辅助,依然要从音阶练起。运动员不管有多少科技装备,依然要从基本功开始。为什么到了编程这里,就有人觉得可以跳过十年积累,直接靠AI一步登天?
如果你想成为未来那个不可替代的人,有些路必须一步一步走:
亲手写基础代码,哪怕AI能帮你一秒生成。理解每一个循环为什么这么写,每一个数据结构为什么这么选。
主动去排查线上故障,哪怕很痛苦。钻进日志系统里,追踪一个分布式调用链,体验那种“全公司都在等你的压力”,在那种压力下找到问题根源。AI不会替你承受这种压力,也不会从中获得成长。
去读别人写的烂代码,去重构老系统。在每一个丑陋的实现背后,试图理解当年那个工程师面临的约束和做出的妥协。这些阅读量,会内化成你未来的架构直觉。
故意不用AI一段时间,让自己保持“裸写”的能力。AI是你的外骨骼装甲,但你不能让自己在没有装甲的时候变成一个废人。
成为超级个体
我坚持一个观点:AI时代,人更需要不断学习。
但这个学习,不是为了追赶AI的步伐——你永远追不上。而是借助AI这个杠杆,把自己打造成一个超级个体。
超级个体不是“AI的工具人”。超级个体是那个给AI下命令、判断AI产出、纠正AI错误的人。
想象一下:
一个经验丰富的架构师,用AI快速生成80%的基础代码,然后用自己深厚的工程经验去雕琢剩下20%的核心逻辑、边界处理和风险控制。他的产出可能是纯人工的十倍,但质量并不打折扣。
一个资深的debug专家,借助AI快速分析海量日志,但最终的诊断和决策依然来自他多年积累的第六感。
这才是AI时代真正的竞争力:不是比谁更会用AI,而是比谁在AI的加持下能做出更好的判断。
结语:我们这代人的责任
美国花了整整四年时间和天价预算,才勉强重新学会制造一款几十年前的老导弹。而那些消失在时间长河里的Fogbank配方,可能永远也找不回来了。
软件行业站在一个历史的分岔口。
一条路上,企业追逐短期效率,砍掉新人培养,用AI替代基础开发,让一代工程师在“复制粘贴”中丧失核心能力。十年后,当复杂系统频繁崩溃却无人能修,当老一代工程师全部退休,这个行业将陷入比国防工业更深的黑洞——因为软件系统的复杂度是指数级增长的,而人的能力却在退化。
另一条路上,我们重新审视AI的角色,承认它是效率工具而非能力替代,坚持基础训练的不可跨越性,刻意培养那些“跳出AI答案”的判断力。让AI成为我们的翅膀,而不是我们的轮椅。
选择权在我们这一代人手里。
但时间的窗口正在关闭。当越来越多的企业开始裁撤初级岗位,当越来越多的计算机专业学生开始依赖AI完成所有作业,当“不懂就问AI”成为一种思维惯性,能力断层的雪崩可能已经悄然开始。
那些藏在几十年工程实践里的隐性知识,那些无法被文档化、只能靠人与人之间传帮带才能传承的“Fogbank”,一旦失去,可能就永远找不回来了。
所以最后,我想再问一次那个让人脊背发凉的问题:
如果未来AI能写90%的代码,你还愿意让一个只会问AI、不会debug的人来维护你的银行系统、医院系统、自动驾驶系统吗?
如果你的答案是否定的,那么从现在开始,我们每个人都应该问自己:
我是在成为驾驭AI的人,还是在成为被AI淘汰的人?
我把判断力交给了AI,还是借助AI放大了我的判断力?
这个答案,可能决定了整个软件行业的未来。
---
能力不会凭空产生,它只能从痛苦中生长出来。在这个AI可以一秒生成答案的时代,那些愿意主动选择“困难模式”的人,终将成为最不可替代的人。
424



被折叠的 条评论
为什么被折叠?



