找回密码
立即注册
搜索
热搜: Java Python Linux Go
发回帖 发新帖

1023

积分

0

好友

128

主题
发表于 14 小时前 | 查看: 0| 回复: 0

前几天我在调试一个异步爬虫的时候,习惯性地把报错甩给了 Claude。它秒回了一段看起来挺完美的修复代码,我啪一下就粘进去了。结果呢?报错确实没了,但程序运行速度慢得像蜗牛。我盯着那段代码看了半天,愣是没发现它偷偷给我加了个全局锁。

那一刻我突然有点心虚:如果 AI 不在身边,我还能修好这个 bug 吗?

这种“技能焦虑”其实不只我一个人有。最近,Anthropic 专门做了一项研究,他们找了 52 名资深工程师,任务是学习一个叫 Trio 的 Python 异步库。结果非常扎心:AI 组的测验平均分只有 50%,而全靠手写的对照组却拿到了 67%。

这 17% 的差距,在学术上相当于差了整整两个等级。说白了,AI 确实能帮你把活干完,但它也可能在不知不觉中把你“养废”了。

人类与AI协作编程对比插画

那个 17% 的鸿沟到底是怎么来的?

Anthropic 的这个实验设计得挺有意思。他们把工程师随机分成两组:一组可以自由使用 AI 助手,另一组只能老老实实查文档。所有人的任务都一样,就是学习 Trio 库并完成一系列编程挑战。

实验结束后,所有人参加了一个“闭卷考试”。结果发现,AI 组在写代码的速度上确实快了一点点,但在对知识点的理解深度上,被手写组甩开了几条街。

最明显的短板是调试能力。手写组在遇到 bug 时,能很快定位到问题出在哪个协程没有对齐;而 AI 组的很多人,盯着报错信息却是一脸茫然。我猜,这是因为他们在编写代码的过程中,大脑处于一种“半离线”状态——只负责搬运 AI 的产出,根本没去思考底层的运行逻辑。

研究员发现,这种差距主要源于 “认知努力”(Cognitive Effort) 的缺失。手写组在被 bug 反复折磨的过程中,大脑其实在疯狂地建立知识索引和逻辑连接。而 AI 组因为过程太顺利了,大脑觉得“这题我会(或者说,AI 会)”,于是便自动停止了深度思考。

AI组与手工编码组表现对比环形图

6 种交互模式:你是哪一种?

研究人员通过仔细观察还发现,同样是“调教” AI,不同人的使用姿势完全不同,这直接决定了你的技能是进步还是退步。他们总结了 6 种典型模式:

先说那些容易让人“变废”的低分模式(使用这些模式的人平均分 < 40%):

  1. AI 委托(AI Delegation):这是最偷懒的一种。直接把完整需求扔给 AI,代码生成后就直接运行,自己完全不过问。这种人分数最低,因为他们连自己跑起来的代码在干嘛都不知道。
  2. 渐进式依赖(Progressive Reliance):刚开始还想自己动动手,写着写着遇到个坎,心态就崩了,从此彻底躺平,把所有工作都交给 AI。
  3. 迭代式调试(Iterative Debugging):这种模式最坑。代码跑不通?直接把报错信息喂给 AI。AI 改完再跑,跑不通再喂。整个过程就像在玩“开盲盒”,效率极低,而且最后啥核心知识也没学到。

再看那些真正“学会了”的高分模式(平均分 ≥ 65%):

  1. 生成后理解(Post-generation Understanding):让 AI 生成代码,但生成后必须自己逐行看懂,甚至还会反问 AI:“为什么要用这个方法而不是另一个?”
  2. 混合解释(Mixed Explanation):在向 AI 索要代码的同时,明确要求它给出详细的逻辑解释和步骤说明。
  3. 概念询问(Conceptual Inquiry):这是最高级的用法。不让 AI 直接写代码,而是问它:“Trio 里的 nursery 这个概念到底该怎么理解?” 等自己搞明白概念后,再动手实现。这种人的分数最高,而且有意思的是,他们最终写代码的速度往往也是最快的。

高低分AI使用模式对比图表

为什么调试能力成了重灾区?

说实话,我以前也觉得 AI 找 bug 挺准的。但这份研究报告指出了一个关键问题:AI 组在调试时,特别容易陷入一种“局部最优解”的陷阱。

举个例子,AI 可能会建议你改个变量名来修复当前的报错,但它不会告诉你,这个改动可能会在无意中破坏整个系统的并发逻辑。手写组因为代码是一行行自己抠出来的,他们脑子里有一张完整的“逻辑地图”;而过度依赖 AI 的组,脑子里可能只有一堆互不关联的代码碎片。

这就好比你一直跟着导航开车,虽然每次都能到达目的地,但一旦导航失灵,你连最基本的方向都找不到。

认知努力与技能发展路径流程图

别让 AI 成了你的“智力拐杖”

话又说回来,我们不可能、也没必要退回到没有 AI 的时代。关键在于,你如何把 AI 从“代笔”变成“助教”。

我现在的做法是,遇到新的技术点或库,先强迫自己手写 15 分钟。等到真的卡在某个概念或逻辑上时,再去问 AI 这个概念本身,而不是直接伸手要代码。即使非要用 AI 生成代码,我也会在心里默念:这段代码现在是我的了,我必须对它的每一行逻辑负责。

核心其实就是那句话:Cognitive effort is important. 那些让你感到痛苦、让你抓耳挠腮、反复尝试却失败的时刻,恰恰是你大脑神经连接被强化、真正变强的时刻。

如果你发现自己最近写代码越来越“顺”,顺到几乎不需要思考,那可能正是需要警惕的信号——这或许是技能开始退化的前兆。

如何平衡效率与深度,是每个现代开发者都要面对的课题。欢迎来 云栈社区 的开发者广场分享你的看法,或者聊聊你最近一次不靠 AI,独立解决复杂 Bug 的“硬核”经历。




上一篇:KazakhRAT 木马分析与接管过程:因过期C2域名导致的漏洞
下一篇:Python程序员必读:AI编程助手如何影响调试与概念理解等技能形成
您需要登录后才可以回帖 登录 | 立即注册

手机版|小黑屋|网站地图|云栈社区 ( 苏ICP备2022046150号-2 )

GMT+8, 2026-2-2 21:43 , Processed in 0.351303 second(s), 42 queries , Gzip On.

Powered by Discuz! X3.5

© 2025-2026 云栈社区.

快速回复 返回顶部 返回列表