译文 ·
如何在AI时代避免能力退化
人工智能助手在编程领域的崛起带来了一个有趣的现象:我们虽然提高了生产力,但如果不加警惕,却有可能面临因技能退化而失去自身优势的风险。技能退化指的是长期不使用或缺乏练习导致技能随着时间衰减或丧失。
AI助手在编程领域的崛起带来了一个有趣的现象:我们虽然提高了生产力,但如果不加警惕,却有可能面临因技能退化而失去自身优势的风险。技能退化指的是长期不使用或缺乏练习导致技能随着时间衰减或丧失。

如果离开了AI,你会变得完全束手无策吗?
每个开发者都深知将繁琐任务交给自动化机器的诱人之处。当人工智能可以随时提供答案时,何必去背诵文档或费劲地翻阅教程呢?这种认知卸载,即依赖外部工具来处理脑力工作的方式并非新鲜事物,早有先例。想想GPS导航是如何削弱我们辨别方向的能力的:一位工程师曾说,多年来盲目跟着谷歌地图走,他的认路技能“已经退化了”。同样,AI驱动的自动补全和代码生成器也可能诱使我们在日常编码任务中“停止思考”。(顺便提一下 Dmitry Mazin,就是那位忘记如何导航的工程师,他的博客文章也探讨了如何在不丧失技能的情况下使用大型语言模型)
将重复性工作自动化并非全然是坏事。事实上,许多人正因此迎来新的机遇,得以尝试原本不会轻易触碰的项目。正如资深开发者 Simon Willison曾说:“在当下这个奇妙的人工智能时代,最让我兴奋的是它让我可以对自己的项目抱有更大的野心。”有了人工智能编写样板代码和快速demo,过去需要好几天才能实现的构想,现在似乎一个下午就能搞定。这种速度和生产力的提升是真实存在的——但这取决于你具体想构建什么。危险在于如何界定健康的自动化流程与有害的核心技能退化之间的界线。
批判性思维正在成为牺牲品吗?
最近的研究敲响了警钟,表明我们的批判性思维和解决问题的能力可能正在悄然退化。微软和卡内基梅隆大学研究人员在2025年的一项研究中发现,人们越依赖人工智能工具,投入的批判性思考就越少,这使得他们在需要时更难运用这些技能。
本质上是因为对AI能力的过度信任导致人们在脑力上变得懈怠——仿佛“松开了方向盘”——尤其是在处理简单任务时。任务感觉简单时放松下来是人之常情,但长此以往,这种“长期依赖”可能导致“独立解决问题能力的削弱”。研究甚至指出,使用AI助手的开发者为同一个问题产生的解决方案趋于同质化,因为AI倾向于基于其训练数据提供相似的答案。研究人员认为,这种缺乏多样性本身就可以视为“批判性思维的衰退”。
削弱批判性思维的因素有几个:
- 认知层面的障碍:例如对AI的过度依赖,尤其是在处理常规任务时
- 动机层面的障碍:如时间压力与工作职责的限制
- 能力层面的障碍:难以验证或优化AI生成的回复
这在日常编程开发中是如何体现的呢?它起初并不明显。一位工程师坦白说,在编程12年后,AI的即时帮助使他“自己的技艺变差了”。他描述了一种逐渐衰退的过程:首先,他不再阅读文档——当大型语言模型可以瞬间解释一切时,何必费那劲呢?

接着,调试技能也开始退化——面对堆栈跟踪和错误消息感到棘手时,他干脆将它们复制粘贴到AI中寻求修复的方案。“我成了一个人形剪贴板,”他感叹道,只是机械地将错误发送给人工智能,再将解决方案复制回代码。以前,每一个错误都能教会他一些新东西;现在,解决方案凭空出现,他却一无所获。即时解决问题的快感取代了辛苦攻克难题带来的满足感。
随着时间推移,这个循环愈发深入。他注意到,深度理解是下一个失去的能力——他不再花数小时去真正理解问题,而是直接使用AI建议的东西。如果不起作用,他就调整提示词再次提问,进入一个“越来越依赖AI的循环”。甚至开发过程中的情感感受也改变了:过去解决一个棘手bug的满足感,变成了现在如果人工智能5分钟内没有给出解决方案的沮丧。
简而言之,通过将思考外包给大型语言模型,他正在用长期的能力成长换取短期的便利。“我借助AI并没有成为10倍厉害的开发者——但我变得10倍依赖于AI,”他观察到。“每次我们让人工智能解决一个我们本可以自己解决的问题时,我们都在用长期的学习理解换取短期的生产力。”
你技能正在悄悄退化的微妙迹象
这并仅仅是假设——已经有明显的迹象表明,过度依赖AI可能正在削弱你在软件开发中的技艺:
-
调试时的无助感:您是否跳过调试器,遇到异常就直接求助AI?如果现在阅读堆栈跟踪或单步调试代码让你感到吃力,请务必重新重视这项基础技能。在没有AI的时代,与bug搏斗是开发者磨练技能的磨刀石;现在,将这份努力“外包”出去变得非常诱人。一位开发者承认,他甚至不再完整阅读错误消息,只是直接发给AI。结果是:当AI无法提供有效帮助或断网情况下,他发现自己竟然不知道如何用传统方法诊断问题。
-
盲目复制粘贴代码:让AI编写样板代码是可以的,但你是否理解它给你的代码为什么有效?如果您发现自己粘贴的代码是自己无法独立实现或解释的,请务必小心。年轻开发者尤其表示使用AI比以往更快地交付代码,但当被问及为什么选择某个解决方案或它如何处理特殊情况时,他们的大脑却一片空白。通过努力摸索和实验不同方案积累的基础知识,就这样彻底消失了。
-
架构和全局观思维:复杂的系统设计不是靠一个提示就能解决的。如果你已经习惯于用AI解决零散的问题,你可能会发现,没有它,你就不会愿意去处理更高级别的架构规划问题。AI可以建议设计模式或方案,但它无法理解你独特个人系统的完整框架和所有细节。过度依赖意味着你没有练习思考过将所有模块拼成一个完整整体的过程。例如,你可能会接受AI建议的模块,但没有考虑如何在更广泛,安全,可维护的的应用场景下集成模块——这是经验丰富的工程师通过辛苦积累的直觉来完成的。如果这些系统层面的思考能力没有得到锻炼,它们就会退化。
-
记忆和回忆能力下降:基本的API调用或语言惯用法是否正在从您的记忆中溜走?忘记很少使用的细节是正常的,但如果因为人工智能自动补全总是帮你填上,导致日常语法或概念现在也记不住了,那你的技能可能正在退化。你不会想成为那种“离开计算器就不会算数“的学生吧。
不过,随着时间的推移,某些技能的丧失是自然的,这也是可以接受的。
我们都放弃了过时的技能(你上次手动管理汇编内存,或不用计算器做长除法是什么时候?)。有人认为,担心“技能退化”只是在抵制进步,毕竟,我们曾欣然接受像手写信件或阅读地图这样的传统技能逐渐淡出历史舞台,从而为新的、更有价值的技能腾出空间。
关键在于区分哪些技能可以放心交给AI,哪些是必须保持敏锐的。失去手动内存管理的能力是一回事;而在紧急情况下,因为你一直只跟着AI的指引而失去独立调试实时系统的能力,则是另一回事。
速度与知识的权衡:人工智能提供快速答案(高速度,低学习),而旧方法(Stack Overflow,文档)较慢,但能建立更深的理解。
在追求即时解决方案的匆忙中,我们面临着浅尝辄止,错过构建真正专业知识所需的深层背景的风险。
过度依赖的长期风险
如果这种趋势继续下去,会发生什么?首先,你的职业生涯可能会遭遇“批判性思维危机”。如果AI一直在代你思考,那么当工具失效时,你可能会发现自己缺乏应对新问题或紧急情况的能力。
正如一个评论直白地指出:“你使用AI能越多,动脑就越少……因此,当你遇到AI解决不了的问题时,你自己还有能力解决吗?”这是一个令人警醒的问题。我们已经看到了一些小危机:开发者在AI编码助手服务中断时陷入恐慌,因为他们发现无法推进他们的工作。
过度依赖也可能成为一个自我实现的预言。微软研究的作者警告说,如果你担心人工智能取代你的工作,然而你却“不加批判地使用它”,你可能反而会让自己技能退化,变得无关紧要。在团队环境中,这会产生连锁反应。如今跳过“困难方式”的初级开发者未来可能会早早遭遇职业瓶颈,缺乏成长为高级工程师所需的深度。
如果整整一代程序员“从未体会过独立解决问题的满足感”,也“从未经历过与bug长时间搏斗带来的深刻理解”,我们最终可能会培养出一批只会按按钮的“操作员”,他们只能在人工智能的指导下工作。他们会很擅长向人工智能提出正确的问题,但不会真正理解答案。当人工智能出错时(它常常以微妙的方式出错),这些开发者可能无法察觉——这为bug和安全漏洞悄悄溜入代码埋下了隐患。
此外,还有团队动态和文化影响需要考虑。如果每个人都埋头于他们的AI结助手,导师指导和耳濡目染的学习便会减少。如果初级开发者习惯于询问人工智能而非同事,高级工程师会发现知识更难传承。
而且,如果这些初级开发者没有打下坚实基础,高级工程师将花费更多时间去修复AI生成的错误,而这些错误一个训练有素的人类本可以轻松发现。从长远来看,团队的整体能力可能反而小于其成员独立工作时的总和——每个成员都悄悄依赖着他们的AI拐杖,而缺乏稳健的集体代码评审和知识共享。团队的“公共汽车因子”(即项目在多少关键成员离开后会陷入瘫痪)或许也该重新定义:如果 AI 服务宕机,我们的开发是否会立刻停滞?
所有这些并非主张我们退回到没有AI的时代。相反,它呼吁我们明智地使用这些强大的工具,以免我们“不仅外包工作本身,还外包我们对其的批判性思考”。目标是既享受AI带来的便利,又不在此过程中掏空自己的技能库。
将AI用作协作者,而非拐杖
如何在享受AI编码助手带来的生产力提升的同时,又能保持头脑敏锐?关键在于有意识地工作。将人工智能视为协作者——一个初级结对程序员或一个随叫随到的倾听者——而不是一个万无一失的神或无脑倾倒问题的地方。以下是一些可以考虑的具体策略:
-
实践“AI卫生”——始终验证并理解。不要仅仅因为AI的输出看起来合理就全盘接受。养成审视人工智能建议的习惯:主动在其生成的代码中寻找错误或特殊情况。如果它生成一个函数,用各种棘手的输入测试它。问问自己,“为什么这个解决方案有效?它的局限性是什么?”通过要求AI逐行解释代码或提供其他方法,将人工智能用作学习工具。通过质疑人工智能的输出,你将一个被动获取答案的过程变成了一个主动的学习过程。
-
对于基础知识,不使用AI——有时,挣扎是好的。有意识地为“手动模式”编码保留一部分时间。一位经验丰富的开发者实行了“无AI日”:每周有一天,他从头开始编写代码,完整阅读错误信息,并使用实际文档而不是AI。起初这让他感到沮丧(他说,“我感觉更慢,更笨了”),但就像一场困难的锻炼一样,它重建了他的信心并加深了他的理解。你不必完全抛弃AI,但定期在没有AI的情况下编程可以防止你的基础技能生疏。将其视为对你的程序员大脑进行交叉训练。
-
在向AI提问之前,总是先自己尝试解决问题。这遵循经典的“开卷考试”原则——先自己努力一下,你会学到更多。在让AI填补空白之前,先制定一个解决方案思路,即使它只是伪代码或一个初步猜想。例如你在解决一个bug时卡住了,花15-30分钟自己调查(使用打印调试、日志输出,或者只是通过代码逻辑推理)。这确保了你锻炼解决问题的能力。之后,寻求AI的帮助没什么问题,但现在你可以将它的答案与自己的思考进行比较,并真正从差异中学习。
-
用 AI 辅助代码评审,而不是取代它。当你收到一段 AI 生成的代码片段时,要像对待一位同事编写的代码那样认真审查。更好的做法是,对 AI 产生的代码也进行正式的人工代码评审。这有助于让团队知识持续流转,并发现那些单靠开发者信任 AI 而可能忽略的问题。在团队文化上,应鼓励一种态度:“AI 可以起草代码,但我们才是最终负责人。”
这意味着,无论代码最初是由谁(或什么)编写的,团队始终对代码库中的每一行代码负有理解和维护的责任。
-
主动学习:持续跟进与迭代。当一个人工智能解决方案有效时,不要只是草草跳过,直接使用结果。花点时间去理解和巩固背后的知识。例如,如果你借助 AI 实现了一个复杂的正则表达式或算法,不妨在事后尝试用简单明了的语言(对自己或同事)解释它的原理。你也可以反过来问 AI:“为什么这个正则表达式需要这些特定的组成部分?”通过这种对话式的学习方式,你可以更深入地理解其背后的逻辑,而不仅仅是复制粘贴答案。一位开发者分享了他的做法:他使用 ChatGPT 生成代码后,会继续追问后续问题,比如“为什么不用另一种实现方式?”这就像拥有了一位无限耐心的私人导师。在这种模式下,AI 不再只是一个代码生成工具,而是一位真正的技术导师。
-
保留一份学习笔记或“AI 协助”记录表。把你经常向人工智能求助的内容记下来——这往往暴露出你希望弥补的知识盲点。如果你发现自己多次询问如何在 CSS 中居中元素,或是如何优化 SQL 查询,别只是依赖 AI 的答案,而是停下来真正去学习这个主题。你可以将 AI 提供的解决方案整理成抽认卡,或者设计成练习题,利用我们熟知的、对记忆非常有效的 “提取练习法(retrieval practice) :下次遇到类似问题时,先不要急着问 AI,试着自己解决,看看是否还记得之前学过的内容。把人工智能当作备用工具 ,而不是首选方案,特别是在面对那些本应掌握的重复性任务时。
-
与人工智能结对编程。不要把人工智能当作一个“你输入问题、它返回答案”的API,而应尝试以结对编程的心态 来使用它。例如,你可以先写一个函数,再让 AI 提出改进建议或发现潜在错误;或者反过来,让 AI 先写一个草稿,你再进行审阅和完善。保持一种持续的互动对话方式,比如:“这个函数确实能运行,但你能帮我重构得更清晰一些吗?”——这种方式让你始终掌握主动权。在这个过程中,你不再是被动地接受答案,而是在实时评估、筛选并引导 AI 的输出,使其真正为你所用。有些开发者形容,使用 AI 就像身边多了一位擅长处理重复性工作的初级程序员——虽然他能帮你分担任务,但仍需要你监督和指导。而你,正是那个在环中的高级工程师,对最终代码质量负全责。
通过养成这些习惯,你可以确保对人工智能的使用始终是正向的 :在享受效率提升和便利的同时,不会悄然丧失独立编码的能力。事实上,许多这样的实践甚至可以让 AI 成为你磨炼技能的工具 。例如,借助 AI 解释你不熟悉的代码,可以帮助你加深理解;而有意用一些复杂场景“刁难”AI,则能锻炼你的测试思维和边界探索能力。关键在于主动参与,而非被动依赖 。当你把 AI 当作一个可以交流、挑战和学习的伙伴时,它就不再是削弱你能力的诱因,而是推动你成长的助力。
结论:保持敏锐,别让工具取代思考
软件行业正随着人工智能在代码生成领域的突破而飞速演进,这一趋势已然不可逆转。拥抱这些工具不仅是必然的选择,很多时候也是极具价值的助力。然而,在我们将 AI 融入日常开发流程的过程中,每个人都必须如过独木桥般谨慎,慎重思考我们愿意将哪些任务交给机器,又有哪些能力我们必须始终牢牢掌握。
如果你热爱编程,那么它不仅仅意味着更快地交付功能——它更关乎那份最初吸引你进入这个领域的技艺与解决问题的乐趣。
使用 AI 来增强你的能力,而不是替代它们。让它帮你从重复繁重的任务中解脱出来,让你专注于更有创造性、更具挑战性的部分。但请不要让那些基础技能因长期闲置而逐渐退化。始终保持对“事物如何运作”的好奇心。即使 AI 提供了捷径,也请继续磨炼你的调试直觉、系统思维和问题建模能力。
未来的优秀开发者,将是那些能够将人类的直觉、经验与 AI 的强大能力相结合的人。他们既能借助 AI 高效工作,也能在没有 AI 时自如地驾驭代码库。就像驾驶一辆拥有自动驾驶功能的汽车,他们仍然懂得如何手动操控方向盘。
通过有意识的练习和持续的自我挑战,你可以确保当高级工具失效,或者面对真正全新的问题时,你依然头脑清醒、思路清晰、行动有力。与其担心 AI 会取代你,不如更警惕自己是否正在放弃那些让你无可替代的核心能力。正如一句老话稍作改编所说:“AI 可以给予答案,但工程师的大脑必须理解其背后的逻辑。”保持思维活跃,你就能乘着 AI 的浪潮前行,而不是被它甩在身后。
额外提示:
下一次当你想让 AI 替你写完整个功能时,不妨把它当作一个提醒:是时候卷起袖子,亲自动手写一点代码了。你可能会惊讶于自己还记得多少,也会重新感受到锻炼“脑力肌肉”的那种满足感。
不要让 AI 辅助开发的未来让你在智力上变得懒惰。
使用 AI 提升效率,但永远不要停止积极地练习你的技艺。
因为说到底,真正的未来属于那些没有让 AI 让他们忘记如何思考的开发者。
嗨呦嘿喂汉化组译制
感谢主要译者 gemini-2.5flash Qwen3-235B-A22B,校对 嗨呦嘿喂
原文:Avoiding Skill Atrophy in the Age of AI
作者:ADDY OSMANI