AI 助手在编码领域的兴起引发了一个悖论:我们可能正在提高生产力,但如果我们不小心,就有可能因技能萎缩而失去优势。技能萎缩是指由于缺乏使用或练习而随着时间的推移而技能下降或丧失。

如果没有 AI,您会完全陷入困境吗?
每个开发人员都知道将繁琐的任务卸载到机器上的吸引力。当 AI 可以按需提供答案时,为什么要记住文档或筛选教程呢?这种认知卸载 - 依靠外部工具来处理脑力任务 - 有很多先例。想想 GPS 导航是如何侵蚀我们的寻路诀窍的:一位工程师承认,在多年盲目地遵循 Google 地图之后,他的道路导航技能“已经萎缩”。同样,AI 驱动的自动完成和代码生成器可以诱使我们“关闭大脑”来完成日常编码任务。(向 Dmitry Mazin 大喊大叫,那个忘记了如何导航的工程师,他的 博客文章还谈到了在不失去技能的情况下使用 LLM 的方法)
卸载死记硬背的工作本身并不是坏事。事实上,我们中的许多人正在经历一场复兴,这让我们能够尝试我们可能不会处理的项目。正如资深开发人员 Simon Willison 打趣的那样,“在我们奇怪的新 AI 增强现实中,我最兴奋的事情是它让我对我的项目更有雄心的方式”。借助 AI 处理样板和快速原型设计,过去需要几天时间的想法 现在似乎在一个下午就可以实现。速度和生产力的提升是实实在在的 - 取决于您要构建的内容。危险在于在健康的自动化和核心 技能的有害萎缩之间划清界限。
批判性思维正在成为牺牲品吗?
最近的研究敲响了警钟,我们的批判性思维和解决问题的能力可能正在悄然恶化。 Microsoft 和卡内基梅隆大学研究人员在 2025 年进行的一项研究发现,人们依赖 AI 工具的人越多,他们参与的批判性思维就越少,从而更难在需要时调用这些技能。
从本质上讲,对 AI 能力的高度信心导致人们在心理上退居二线——“让他们的手离开方向盘”——尤其是在简单的任务上。当任务感觉简单时,放松是人类的天性,但随着时间的推移,这种“长期依赖”会导致“独立解决问题的能力减弱”。该研究甚至指出,在 AI 协助下,工作人员为同一问题产生的解决方案较少,因为 AI 倾向于根据其训练数据提供同质化的答案。用研究人员的话来说,这种一致性可以被视为“批判性思维的恶化”本身。
批判性思维存在一些障碍:
-
认知障碍(过度依赖 AI,尤其是日常任务)
-
动机障碍(时间压力、工作范围限制)
-
能力障碍(难以验证或改进 AI 响应)
这在日常编码中是什么样的?它开始很微妙。一位工程师承认,在编程 12 年后,AI 的即时帮助使他“在自己的手艺上变得更糟”。他描述了一种悄悄的衰退:首先,他停止阅读文档——当 LLM 可以立即解释它时,为什么还要费心呢?

然后调试技能减弱了 – 堆栈跟踪和错误消息感觉令人生畏,因此他只是将它们复制粘贴到 AI 中进行修复。“我已经变成了一个人类剪贴板,”他哀叹道,盲目地将错误转移到 AI 和解决方案回到代码中。每一个错误都教会了他一些新的东西;现在解决方案神奇地出现了,他什么也没学到。即时回答的多巴胺冲动取代了来之不易的理解的满足感。
随着时间的推移,这个循环会加深。他指出,深度理解是下一步要做的事情——他现在不需要花费数小时真正理解问题,而是实施 AI 建议的任何内容。如果不起作用,他会调整提示并再次询问,进入“日益依赖的循环”。甚至开发的情感回路也发生了变化:过去解决棘手错误的乐趣现在变成了如果 AI 没有在 5 分钟内咳出解决方案的挫败感。
简而言之,通过将思维外包给 LLM,他正在用长期的掌握来换取短期的便利。 “我们不是成为 10× 的 AI 开发人员——我们正在成为 10× 的开发人员,”他观察到。 “每次我们让 AI 解决我们自己本可以解决的问题时,我们都是在用长期理解换取短期生产力。”
您的技能正在萎缩的微妙迹象
这不仅仅是假设 - 有迹象表明,对 AI 的依赖可能会削弱您在软件开发中的技能:
-
调试绝望:您是否跳过了调试器,直接使用 AI 来处理每个异常?如果现在阅读 stacktrace 或单步执行代码感觉很费劲,请密切关注这项技能。在 AI 出现之前,与 bug 搏斗是一个学习的熔炉;现在,人们很想放弃这种努力。一位开发人员承认,他甚至不再完整地阅读错误消息 - 他只是将它们发送给 AI。结果:当 AI 不可用或遇到困难时,他不知道如何以老式的方式诊断问题。
-
盲目复制粘贴编码:让 AI 编写样板很好,但您明白它给您的代码为什么有效吗?如果您发现自己粘贴的代码无法自行实现或解释,请小心。尤其是年轻的开发人员报告说,使用 AI 交付代码的速度比以往任何时候都快,但当被问及为什么选择某种解决方案或它如何处理边缘情况时,他们却一无所获。通过各种选择进行斗争所获得的基础知识就是...... 缺失。
-
架构和全局思维:复杂的系统设计不能用单一的提示来解决。如果您已经习惯了使用 AI 解决小问题,您可能会注意到,在没有 AI 的情况下,人们不愿意处理更高级别的架构规划。AI 可以建议设计模式或架构,但它无法掌握您独特系统的完整上下文。过度依赖可能意味着您没有在脑海中练习将组件拼接在一起。例如,您可能会接受 AI 建议的组件,而不考虑它如何适应更广泛的性能、安全性或可维护性 - 这是经验丰富的工程师通过来之不易的直觉来实现的。如果这些系统级的思维肌肉没有弯曲,它们就会变弱。
-
记忆力减弱和回忆力:基本的API调用或语言习语是否从你的记忆中消失了?忘记很少使用的细节是正常的,但如果日常语法或概念现在因为 AI 自动完成总是填充而逃脱了你,那么你可能正在经历技能褪色。你不想成为一个等同于一个忘记如何手工算术的依赖计算器的学生。
值得注意的是,随着时间的推移,一些技能损失是自然的,有时是可以接受的。
我们都放弃了过时的技能(您上一次在汇编中手动管理内存,或者在没有计算器的情况下进行长除法是什么时候?有些人认为,担心“技能萎缩”只是在抵制进步——毕竟,我们很乐意让手写信或读地图等老前辈的技能消失,以便为新技能腾出空间。
关键是区分哪些技能可以安全地卸载,哪些技能对于保持敏锐至关重要。失去手动内存管理的诀窍是一回事;因为您只跟随 AI 的领导而失去在紧急情况下调试实时系统的能力是另一回事。
速度与知识的权衡:AI 提供快速答案(高速、低学习),而旧方法(Stack Overflow、文档)速度较慢,但可以更深入地理解
在急于寻求即时解决方案的过程中,我们冒着撇开表面并错过构建真正专业知识的背景的风险。
过度依赖的长期风险
如果这种趋势继续不受控制,会发生什么情况?首先,您可能会在职业生涯中遇到“批判性思维危机”。如果 AI 一直在为您思考,那么当工具不足时,您可能会发现自己没有能力处理新问题或紧急问题。
正如一位评论员直言不讳地指出的那样:“你使用 AI 的次数越多,你用脑子的次数就越少......那么,当你遇到 AI 无法解决的问题时,你自己是否有能力解决呢?。这是一个发人深省的问题。我们已经看到了一些小危机:开发人员在 AI 编码助手停机期间感到恐慌,因为他们的工作流程陷入停顿。
过度依赖也可以成为一个自我实现的预言。Microsoft 研究作者警告说,如果你担心 AI 会抢走你的工作,但你又 “不加批判地使用它”,你可能会有效地使自己的技能变得无关紧要。在团队环境中,这可能会产生连锁反应。今天跳过“困难之路”的初级开发人员可能会很早就停滞不前,缺乏明天成长为高级工程师的深度。
如果整整一代程序员 “永远不知道真正靠自己解决问题的满足感”,并且 “从来没有体验过深刻的理解”,那么我们最终可能会得到一群只能在 AI 的指导下运作的按钮按下者。他们擅长向 AI 提出正确的问题,但不会真正掌握答案。当 AI 出错时(通常以微妙的方式出错),这些开发人员可能无法发现它 - 这是错误和安全漏洞溜进代码的秘诀。
还需要考虑团队活力和文化影响。如果每个人都埋头研究他们的 AI 配对程序员,那么指导和渗透式学习可能会受到影响。如果初级工程师习惯于询问 AI 而不是他们的同事,那么高级工程师可能会发现更难传递知识。
如果这些大三学生没有打下坚实的基础,大四学生将花费更多时间修复 AI 生成的错误,而训练有素的人本来会发现这些错误。从长远来看,团队可能会变得不如他们各部分的总和——一群人,每个人都悄悄地依赖他们的 AI 拐杖,缺乏强大的批判性审查共享实践。公交因素(在项目崩溃之前需要有多少人被公交车撞到)可能有效地包括“如果 AI 服务宕机,我们的开发是否会停滞不前?
这并不是说我们应该回到烛光编码。相反,它呼吁我们明智地使用这些强大的工具,以免我们“不仅外包工作本身,而且外包 [我们] 与它的关键互动”。目标是获得 AI 的好处,而不会在此过程中掏空您的技能。
将 AI 用作协作者,而不是拐杖
我们如何享受 AI 编码助手带来的生产力提升,同时仍然保持头脑敏锐?关键是用心参与。将 AI 视为协作者 - 初级结对程序员或随时可用的橡皮鸭 - 而不是万无一失的预言机或问题的倾倒场。以下是一些需要考虑的具体策略:
-
践行“AI 卫生”——始终验证和理解。 不要仅仅因为 AI 输出看起来合理就认为它是正确的。养成对 AI 的建议进行红队处理的习惯:积极寻找代码中的错误或边缘情况。如果它生成了一个函数,请使用棘手的 inputs 对其进行测试。问问自己,“为什么这个解决方案有效?它的局限性是什么?将 AI 用作学习工具,要求 AI 逐行解释代码或提供替代方法。通过询问 AI 的输出,您可以将被动答案变成主动课程。
-
没有 AI 作为基本面 – 有时,斗争是好的。 有意识地将一周的一部分时间留给 “手动模式” 编码。一位经验丰富的开发人员制定了“No-AI Days”:每周有一天,他从头开始编写代码,完整阅读错误,并使用实际文档而不是 AI。起初这很令人沮丧(“我感觉更慢,更笨”,他承认),但就像一次艰难的锻炼一样,它重建了他的信心并加深了他的理解。您不必对 AI 感到冷淡,但经常在没有 AI 的情况下编码会使您的基本技能免受熵的影响。将其视为您的编码员大脑的交叉训练。
-
在询问 AI 之前,请务必自己尝试问题。 这是经典的“开卷考试”规则——你会先努力学习更多。制定一种方法,即使它只是伪代码或猜测,在你让 AI 填补空白之前。如果您遇到错误,请花 15-30 分钟自己调查(使用打印调试、控制台日志或只是通过代码进行推理)。这可确保您锻炼解决问题的能力。在那之后,咨询 AI 并不可耻——但现在你可以将它的答案与你自己的想法进行比较,并真正从任何差异中学习。
-
使用 AI 来增强而不是替换代码审查。 当您获得 AI 生成的代码段时,请像人类同事编写的代码段一样对其进行审查。更好的是,还可以对 AI 贡献进行人工代码审查。这使团队知识保持循环,并捕捉到单个开发人员在信任 AI 时可能会错过的问题。从文化上讲,鼓励一种“AI 可以起草它,但我们拥有它”的态度——这意味着团队负责理解和维护存储库中的所有代码,无论它最初是谁(或什么)编写的。
-
参与主动学习:跟进和迭代。 如果 AI 解决方案有效,请不要只是继续前进。花点时间巩固这些知识。例如,如果您使用 AI 实现复杂的正则表达式或算法,然后尝试用简单的英语(对您自己或队友)进行解释。或者询问 AI 为什么该正则表达式需要这些特定的令牌。以对话方式使用 AI 来加深您的理解,而不仅仅是复制粘贴答案。一位开发人员描述了使用 ChatGPT 生成代码,然后用后续问题和“为什么不换一种方式呢”——类似于拥有一个无限的耐心导师。这使 AI 成为导师,而不仅仅是代码分配器。
-
保留学习日记或“AI 辅助”列表。 跟踪您经常向 AI 寻求帮助的事情 – 这可能是您想要缩小知识差距的迹象。如果您注意到您已要求 AI 在 CSS 中将 div 居中或多次优化 SQL 查询,请记下以真正了解该主题。您甚至可以根据 AI 解决方案为自己制作抽认卡或练习(采用我们知道对保留非常有用的检索练习)。下次您遇到类似问题时,挑战自己在没有 AI 的情况下解决它,看看您是否记得如何解决。使用 AI 作为重复性任务的后盾,而不是第一站。
-
将程序与 AI 配对。 与其将 AI 视为您向其提供查询的 API,不如尝试结对编程思维。例如,您编写一个函数并让 AI 提出改进建议或捕获错误。反之亦然:让 AI 写草稿,然后你对其进行优化。保持持续的对话:“好吧,这个函数可以工作,但你能帮我重构它以使其清晰吗? – 这让您始终处于主导地位。你不仅仅是在消费答案;您正在实时策划和指导 AI 的贡献。一些开发人员发现,使用 AI 感觉就像有一个擅长繁重工作但需要监督的初级开发人员 - 你是循环中的高级开发人员,对最终结果负责。
通过整合这样的习惯,您可以确保使用 AI 仍然是一个净积极因素:您可以获得加速和便利,而不会慢慢失去独立编码的能力。事实上,其中许多做法可以将 AI 变成提高技能的工具。例如,使用 AI 解释不熟悉的代码可以加深您的知识,而尝试用棘手的案例难倒 AI 可以增强您的测试心态。区别在于保持积极参与而不是被动依赖。
结论:保持敏锐
随着 AI 掌舵代码生成,软件行业正在飞速发展,而且没有办法把这个精灵放回瓶子里。采用这些工具不仅是不可避免的;这通常是有益的。但是,当我们将 AI 集成到我们的工作流程中时,我们每个人都必须在 我们愿意让给机器的东西上“小心翼翼”。
如果您喜欢编码,这不仅仅是为了更快地输出功能 - 它还是为了保留最初让您进入这个领域的技巧和解决问题的乐趣。
使用 AI it 来放大您的能力,而不是取代它们。让它让你从苦差事中解脱出来,这样你就可以专注于创造性和复杂的方面 - 但不要让这些基础技能因废弃而萎缩。对事情的运作方式和原因保持好奇心。不断磨练你的调试直觉和系统思维,即使 AI 给你一条捷径。简而言之,让 AI 成为您的合作者,而不是您的拐杖。
那些将人类直觉和经验与 AI 的超能力相结合的开发人员将蓬勃发展——他们可以在有和没有自动驾驶仪的情况下浏览代码库。通过有意识地练习和挑战自己,您可以确保当花哨的工具不足或出现真正新颖的问题时,您仍然会坐在方向盘后面,敏锐地准备解决。不用担心 AI 会取代你;担心没有培养出让你不可替代的技能。正如俗话所说(带有现代风格):“AI 提供什么,工程师的头脑仍然必须理解。 保持这种头脑的参与,您将驾驭 AI 浪潮而不会被消灭。
奖励:下次你想让 AI 在观看时编写整个功能时,请考虑将此作为你卷起袖子自己编写一点的推动。您可能会惊讶于自己记得这么多——以及再次展示这些心理肌肉的感觉是多么美好。不要让 AI 辅助开发的未来让您在智力上无所事事。使用 AI 来提高 您的工作效率,但永远不要停止积极练习您的手艺。
明天最好的开发人员将是那些没有让今天的 AI 让他们忘记如何思考的人。
内容中包含的图片若涉及版权问题,请及时与我们联系删除
评论
沙发等你来抢