🎯 什麼情境該想到我
當你要讀一本技術書學新東西,卻發現讀完就忘、或者讀了很多卻抓不到重點的時候。
出處:Andy Hunt《程式設計師的思維修煉》(Pragmatic Thinking and Learning,站內為簡體譯本,引文保留原書字形)。對應第 6 章 6.7 節。SQ3R 原出自 Robinson 的《Effective Study》。
⚙️ 怎麼用
前提:閱讀是效率最低的學習方式
原書說:「书面的指令通常被认为是最无效的」;「相比于任何由经验式的学习方法,阅读是一种效率最低的学习方法」。要讓閱讀有效,就要讓它更主動。
五個步驟
| 步驟 | 原書的說法 | 做法 |
|---|---|---|
| 調查 Survey | 「扫描目录和每章总结,得出总体看法。」 | 看目錄、各章的介紹與總結,在深入細節前得到整體印象 |
| 問題 Question | 「记录所有问题。」 | 寫下你想弄明白的所有問題;「把各章节的标题改写成问题」 |
| 閱讀 Read | 「阅读全部内容。」 | 可以隨身帶著,空檔時讀;「在困难的部分放慢速度,如果内容不是很清楚就重新阅读」 |
| 復述 Recite | 「总结,做笔记,用自己的话来描述。」 | 邊讀邊用自己的話復述、回想;原書也建議用圖像:「这个主题作为一部电影看起来像什么?卡通吗?」 |
| 回顧 Review | 「重读,扩展笔记,与同事讨论。」 | 必要時重讀、擴展筆記,可以用心智圖 |
原書的例子:讀一本新程式語言的書
- 調查:翻目錄,看到語法介紹、幾個簡單的專案,還有目前不感興趣的進階特性。
- 提問:它是單繼承、多繼承還是混合?迭代器怎麼用?模組怎麼建立與管理?執行效能如何?
- 閱讀:時間多就多讀,時間緊就少讀。
- 復述:「自欺欺人并不难,你可以认为”是的,我能记住全部”。但是这并不容易。」
- 回顧:做筆記、在關鍵表格上註解、在白板上塗鴉,然後跟朋友或郵件列表討論。
側欄:測試驅動學習
「重复阅读同样的材料或者重复学习相同的笔记,不会有助于你记住材料。尝试测试吧。」做法包括:
- 用新語言寫一個程式——原書特別強調要「与书中的简单例子和练习不同」。
- 向同事解釋新方法的關鍵部分。
- 間隔測試:2-2-2-6——兩小時、兩天、兩週、六個月後各測一次自己。原因是遺忘大致呈指數曲線,間隔測試能顯著增強記憶。
結合心智圖
讀書時用心智圖做筆記;進入回顧階段時,依你的理解重畫與修改——「这种方法比其他笔记形式或者重新看书要有效得多」。
在工作中的樣子:讀一份新框架的官方文件
- S:看文件的側邊欄目錄與「Getting Started」。
- Q:這個框架怎麼處理錯誤?怎麼測試?效能瓶頸通常在哪?
- R:先讀跟你的問題有關的章節。
- R:讀完一節,關掉文件,用自己的話寫三行摘要。
- R:用它寫一個跟教學範例不一樣的小工具;一週後再回來看筆記。
🧪 我實際套用的紀錄
- (待填)
⚠️ 注意 / 什麼時候不適用
- SQ3R 只是其中一種方法:「广为使用的好方法为数不少……与其功效类似的方法还有很多。」「没有放之四海而皆准的办法。」
- 2-2-2-6 不是最有效的:原書自己說它「不是使用时间的最有效方法,特别是当有大量的材料时」——每個事實的遺忘曲線不同,手動追蹤太困難,建議用 SuperMemo 這類間隔重複軟體(依每個項目的遺忘情況安排複習)。
- 閱讀本身仍然是效率最低的:最有效的是觀察與模仿,以及實際去做。
🔗 相關工具
- 工具-心智圖 —— 同一本書:SQ3R 的筆記工具
- 工具-檢視閱讀 —— 《如何閱讀一本書》:SQ3R 的「調查」就是略讀
- 工具-務實學習投資計畫 —— 同一本書:讀什麼、何時讀的計畫
- 工具-投資自己持續學習 —— 持續學習的習慣