前两篇讲了怎么读进来和怎么进脑子。这一篇讲怎么练出来。
这篇是我读安德斯·艾利克森《刻意练习》(Peak)之后的整理,不是原文摘录。这本书的价值在于:它把"高手"这件事从玄学拉回了工程。
一、先打破一个信念:一万小时是误读
“一万小时定律"流传极广,但原研究里根本没有这条定律。
格拉德威尔在《异类》里转述时说走了样。艾利克森本人多次公开澄清:他从来没说过"一万小时就能成为专家”。
真实结论是:
成为专家需要大量练习,但"大量"不等于"一万",而且时间长短不是关键变量——练习的方式才是。
证据:很多领域里,有些人练了两万小时还是平庸,有些人几千小时就到了顶尖。差别不在时长,在练法。
这个纠正很重要,因为它把问题从"我有没有那么多时间"变成了"我的练法对不对"——后者是你能改的。
二、什么是"刻意练习"
不是所有练习都算。刻意练习(deliberate practice) 有明确特征,缺一条就退化成"普通重复"。
五个特征
| 特征 | 意思 | 反例 |
|---|---|---|
| 有明确目标 | 每次练一个具体的短板 | “今天练吉他” |
| 走出舒适区 | 难度要刚好超出当前能力 | 弹已经会的曲子 |
| 有即时反馈 | 做完立刻知道对不对、错在哪 | 练一周才找人看一次 |
| 高度专注 | 短时间全神贯注 | 边看剧边练 |
| 有心理表征 | 心里有一幅"正确长什么样"的图 | 不知道好的标准 |
最容易漏的是第四条和第五条。
为什么"高度专注"这么关键
刻意练习的时长上限,每天大约 3-5 小时——而且要分块,中间休息。
原因:这种练习极度消耗注意力。超过这个量,质量会断崖式下降,练了等于白练(甚至固化错误)。
这一条对"我要学十小时"的人很有用:十小时的练,效果不如三小时的练 + 七小时休息。
什么是"心理表征"
心理表征 = 你脑子里对"这件事做对了是什么样"的清晰图像。
- 棋手看棋盘,看到的不是棋子,是局面和可能的走法
- 医生看片子,看到的不是黑白影,是病变模式
- 程序员看报错,看到的不是文字,是哪一层出问题的线索
高手和新手的差距,很多时候不在知识量,在表征的清晰度。
这解释了一件事:为什么"看得多"有用——因为看多了,你脑子里才有一幅"对的样子"。没有这幅图,你练的时候根本不知道自己错在哪。
三、有反馈 vs 没反馈:差距有多大
这是全书最硬的一条结论。
没有反馈的练习,几乎不产生进步。
典型案例:开车。 很多人开了二十年车,技术并不比开了五年的人强。因为日常开车没有反馈——你没撞车,就默认自己开得对。
反过来:打字速度。 用了二十年的老手,速度可能还不如刻意练过三个月的人。因为打字有即时反馈(快慢、错字)。
结论:时间不自动带来进步。有反馈的时间才带来进步。
反馈从哪来
| 来源 | 强度 | 说明 |
|---|---|---|
| 教练/老师 | 最强 | 能指出你看不见的问题 |
| 同行评审 | 强 | 互相看,指出具体问题 |
| 客观指标 | 中 | 成绩、耗时、错误率 |
| 自我检查清单 | 中 | 有标准就能自查 |
| 录像/回放 | 强 | 看自己,往往"原来我这样" |
| AI / 工具 | 中 | 现在确实好用,前提是你会问 |
没有教练怎么办:先用"客观指标 + 自我检查清单“顶着。 比如学命令行:给自己出题,限时做,记录正确率和用时。有数字就有反馈。
四、怎么在没有老师的情况下练
大部分人没有教练。这时候怎么办?四个办法。
1. 找"标准答案”,建立心理表征
先大量地看"对的东西",让脑子里有一幅图。
学写代码 → 读优秀项目的源码 学写作 → 读好文章,拆结构 学设计 → 看优秀作品,分析为什么好
这一步不能省。没有表征,你练的时候不知道自己在往哪走。
2. 拆解成子技能,一个个攻
高手做的事,可以拆成很多小技能。
学 Linux 运维 = 文件操作 + 权限管理 + 服务管理 + 网络排查 + 日志分析 + 脚本编写……
别一起练。挑最弱的那一项,单独练。
怎么找最弱的:做一次综合任务,看哪一步最卡。
3. 制造反馈:记录 + 对比
最简单的反馈系统:
每次练习记录四样东西:
日期 / 练了什么 / 花费时间 / 正确率或错误点
一周后回看:
- 哪些错反复出现 → 这就是你的短板
- 哪些指标在变好 → 说明方法对
没有记录就没有反馈。 凭感觉"我好像进步了",八成是错觉。
4. 用"刻意失败"来练边界
故意做超出能力的事,看在哪一步崩。
比如学命令:不是反复敲会的,而是故意试没见过的参数组合,看它报什么错。
报错信息就是最好的老师——它精确告诉你"你哪里想错了"。
这条对技术学习特别有效。绝大多数人的问题不是不会,是不敢试、不敢让它报错。
五、三个常见误区
误区 1:「练够时间就行」
错。 时间是最不重要的变量。 同一段时间,怎么练差别巨大。 参见前面"开车二十年 vs 打字三个月"。
误区 2:「我天生不擅长这个」
这是最有害的一句。
研究里确实有天赋差异,但大部分人的"我不擅长",是因为从来没用对方法练过。
判断标准:如果你认真按刻意练习的方法练了 50 小时还是毫无进展,那可能是方向不对(不是天赋不行,是选错了领域或方法)。50 小时不到就说"我不行",是耍赖。
误区 3:「舒适地重复就是练习」
最普遍的错误。 做已经会的事,会让你感觉良好,但不产生进步。
检验方法:练的时候如果一直很顺、很舒服、没什么挫败感,那你演练的是"表演",不是"练习"。
真正的练习应该有点难受。 这个和上一篇《学习之道》说的完全一致。
六、把方法用在学 Linux 上
具体到咱们这个站的内容(这部分是我加的):
一个可执行的练习循环
【挑一个短板】比如:总是记不住权限数字
↓
【找标准】看 5 个真实场景的权限设置(755/644/600 各在什么情况用)
↓
【拆小】只练"看一个权限数字,说出谁能干什么"
↓
【限时练】10 道题,限时 5 分钟做 ← 走出舒适区
↓
【立刻对答案】错 3 道 → 记下错在哪类 ← 即时反馈
↓
【记录】正确率 7/10,用时 4 分 30 秒 ← 可追踪
↓
【第二天重测】不看书,再来 10 道 ← 间隔重复
关键在"限时"和"立刻对答案"这两步。 没有这两步,就退化成"看看资料"。
学命令行的刻意练习模板
| 要素 | 具体做法 |
|---|---|
| 明确目标 | 今天只练 find 的 3 个组合(按名、按大小、按时间) |
| 走出舒适区 | 故意用没试过的参数,让它报错 |
| 即时反馈 | 敲完立刻看结果对不对,报错就读懂它 |
| 高度专注 | 25 分钟一轮,手机放远 |
| 心理表征 | 先看 10 个真实运维场景里 find 怎么用,知道"好的用法长什么样" |
一个自查清单
每次练完问自己:
- 今天有没有具体的目标?(不是"学 Linux")
- 有没有超出我已经会的东西?
- 我立刻知道对错了吗?
- 这 25 分钟我全神贯注了吗?
- 我脑子里有"做对了是什么样“的图吗?
- 我记录了吗?
六项里少于四项打勾,这次练习基本白练。
七、三句实话
第一,“刻意练习"不轻松,也不浪漫。 它是短时间、高强度的难受。任何把它包装成"快乐学习"的说法,都在骗你。能坚持下来的原因不是它舒服,是它有效。
第二,反馈比努力重要。 没有反馈的十年,不如有反馈的一年。 这一条如果要记,就记这一条。
第三,能不能练出来,取决于你敢不敢让自己难看。 不敢让代码报错、不敢让人指出问题、不敢做超出能力的题——那就只能停在"会用一点"这个位置。
这是我的读书笔记和理解,不是《刻意练习》原文摘录。原书作者:安德斯·艾利克森(Anders Ericsson)、罗伯特·普尔(Robert Pool)。
这个系列的其他两篇
- 《如何阅读一本书》:把一本书读成自己的 —— 怎么把书读进来
- 《学习之道》:大脑其实是这样工作的 —— 东西怎么才真的进脑子