AI 辅助如何影响编程技能的形成¶
原文发布于 2026 年 1 月 29 日,作者 Judy Hanwen Shen 和 Alex Tamkin (Anthropic)
论文:arXiv:2601.20245

概述¶
使用 AI 编码辅助的开发者在理解力测试中表现更差,但关键在于与 AI 交互的方式。 本研究通过随机对照实验,考察 AI 编码辅助是否会削弱软件工程师的技能发展。结果显示,使用 AI 的开发者在理解力评估中得分显著低于手动编码者,但与 AI 交互的方式至关重要。
背景研究表明,AI 可将任务速度提升 80%,但 AI 用户"对工作的投入度降低"且"减少了付出的努力"。核心问题是:认知外包是否会阻碍人们在工作中提升技能?
作者指出的关键张力:随着编码日益自动化,人类仍需具备发现错误、引导输出和进行监督的技能。
实验设计¶
52 名初级工程师被随机分配使用或不使用 AI 辅助完成编程任务,随后接受理解力测试。
| 参数 | 详情 |
|---|---|
| 参与者 | 52 名(主要为初级)软件工程师,每周使用 Python |
| 任务 | 使用 Trio Python 库编写两个功能(异步编程概念) |
| 流程 | 热身 → 主要编码任务 → 测验 |
| AI 能力 | AI 可访问参与者代码,随时可在被要求时生成正确代码 |

图:实验使用的研究界面
评估维度¶
基于计算机科学教育研究,使用四种题型:
| 题型 | 考察内容 |
|---|---|
| 调试(Debugging) | 识别和诊断代码错误 |
| 代码阅读(Code reading) | 理解代码的功能 |
| 代码编写(Code writing) | 选择正确的实现方法 |
| 概念题(Conceptual) | 理解工具/库背后的核心原理 |
结果¶
AI 组平均得分 50%,手动编码组 67%——相当于差了近两个字母等级。

图:AI 辅助组 vs 手动编码组的测验得分对比
| 指标 | AI 组 | 手动编码组 |
|---|---|---|
| 完成速度 | 快约 2 分钟(不显著) | - |
| 测验平均分 | 50% | 67% |
| 效应量 | Cohen's d = 0.738, p = 0.01 | - |
| 最大差距 | 调试题 | - |
定性分析:AI 交互模式¶
部分参与者花费高达 11 分钟(占总时间 30%)与 AI 进行多达 15 轮交互。
低分模式(平均测验分 < 40%):
| 模式 | 人数 | 描述 |
|---|---|---|
| AI 委派 | 4 | 完全依赖 AI;完成最快;错误最少 |
| 渐进式 AI 依赖 | 4 | 先独立开始,后将所有编码委派给 AI |
| 迭代式 AI 调试 | 4 | 依赖 AI 调试/验证;提问但未建立理解 |
高分模式(平均测验分 >= 65%):
| 模式 | 人数 | 描述 |
|---|---|---|
| 先生成后理解 | 2 | 生成代码后提出跟进问题以建立理解 |
| 混合代码-解释 | 3 | 要求生成代码的同时要求解释 |
| 概念性提问 | 7 | 仅提出概念问题;独立编码;高分组中完成最快 |
结论¶
并非所有 AI 依赖都相同:在追求效率的过程中如何与 AI 交互,决定了我们能学到多少。
| 要点 | 说明 |
|---|---|
| 生产力与技能的权衡 | 生产力提升可能以验证 AI 代码所需技能为代价 |
| 认知努力的价值 | 认知努力——甚至痛苦的卡壳——对掌握技能很可能很重要 |
| 管理者的责任 | 应考虑确保工程师在工作中持续学习的系统或设计选择 |
| 与先前研究的区别 | 先前观察性研究衡量的是已有技能的生产力,本研究考察的是学习新事物时的情况 |
局限性¶
- 样本量较小(52 人)
- 评估衡量的是编码后短期理解力
- 无法确定即时测验表现是否能预测长期技能发展
关于 Agent 编码的注释¶
本研究的设置与 Claude Code 等 Agent 编码产品不同;我们预计此类程序对技能发展的影响可能更为显著。
引用¶
@misc{aiskillformation2026,
author = {Shen, Judy Hanwen and Tamkin, Alex},
title = {How AI Impacts Skill Formation},
year = {2026},
eprint = {2601.20245},
archivePrefix = {arXiv},
primaryClass = {cs.LG},
eprinttype = {arxiv}
}