認知學習法 - 自學篇 by xdite

我覺得大概是從去年開始,我變成職業教師之後,很多人就開始誤以為我為了「自身利益」變成了一個「反自學派」。事實上,我從來不是一個「反自學派」。事實上,我人生到現在幾乎所有的學習過程,幾乎都是「自學」「開始」的。

我識字是自學的,我速讀是自學的,我管機器是自學的,我學編程是自學的,我學敏捷管理是自學的,我學 GrowthHack 是自學的。許多是我浸淫到變成行業專家的技能,全部都是自學開始的。

正是這樣我才意識到一件事,我非常的擅長自學,但是別人未必。甚至對方的希望進入這個行業變成生力軍,我最不應該做的就是推薦他自學。

是,人人都應該學習自學乃至於自教的技能,建立起可遷移的技能。但不應該人人都應該是從自學開始,而錯誤的自學法,輕則學習過程痛苦萬分,重則直接失去興趣,永世不再接觸。

(我在認知學習法的教學篇,用了 git 教程作為 example。事實上沒有進修過教學法的程序員寫的教程,都是長這樣的,包括我以前寫的可能都是。而程序世界的自學教程 90% 以上都長得像這樣。甚至還會因為「政治正確」的因素,逼得在新手教程裡面寫高級技巧,以免被其他同行說不負責任。)

我開始變成職業教師,僅僅是因為我認知到了,我也許具備了能夠將自學能力剝離出來複製的高效技巧,其他人也許在這件事情沒有我行才做的(要知道,不是許多程序員都喜歡教書,很多人認為教書,能力是會退化的)。

扯遠了。我還是進入正題,談談如何自學。基於上篇的認知學習法,以及陽志平老師寫的一篇「笨方法學語言」http://www.yangzhiping.com/psy/Learn-Language.html。

陽至平的笨方法學語言分成七個步驟:

  • 明白目標
  • 熟悉國際音標
  • 挑選高頻詞彙
  • 使用Anki對高頻詞彙進行間隔重複記憶
  • 利用高頻詞彙在社交日記網站寫日記等
  • 閱讀感興趣的文本,聽感興趣的音頻材料
  • 沉浸

看完這些你也可以瞭解大概了。方法就是:

  • 挑選一個公認的小目標。
  • 大致上知道一些相關的事實性知識
  • 找出高頻使用的小套路
  • 重複的練習這些小套路
  • 利用這些小套路兜出中套路
  • 做自己有興趣的主題,瞭解自己有興趣的進階知識
  • 去找份工作,沈浸在這個職業裡

而我在 我是如何學一門新技術的 這篇文章也提到了,我是如何全新的入門一套新的知識。其實也是用了這樣的方法:

  • 我想找一個公認的小目標
  • 大致上知道一些相關的事實性知識
  • 在網上找到一些常見的高頻出現的功能
  • 重複的練習這些小套路
  • 利用這些小套路兜出中套路
  • 做自己有興趣的主題,瞭解自己有興趣的進階知識
  • (當然,我短時間沒有想要成為 mobile 開發者)

而我早已體悟到自學會有「工作記憶區」不夠用(甚至是長期記憶區也不夠用),還有「自信心打擊」的問題。所以我還利用了其他技巧

  • 利用外部筆記作為資訊儲存體
  • 正確的也記,錯誤的也記,Git 也記一份。保證到時候再回想時有足夠多的記憶面積。
  • 然後燒到我的長期記憶裡。
  • 之後我再寫出一份教程。發表在博客上

你看。我是一個編程超過十年以上且自學無數次的人,才可以在短短的一兩天之內,在低心理壓力下,搞定學起這套技術(後端程序改寫 iOS )。那麼,初級程序員呢?沒有寫過程序的一般人呢?

一般人學編程其實是萬分痛苦的,多數人會遇到這樣的問題

  • 老師在一開始教了太瑣碎的事實性知識,導致失去耐心
  • 程序其實是教一個人理清腦子,教機器做「自己想表達的邏輯」(而正常人甚至是很少做得好這件事的)
  • 程序一天到晚在報錯,一般人一天不會面對這麼多紅字,紅字多成那樣他就會自己認知是自己人生失敗了
  • 教程上的事實性知識,甚至是在過往的人生中,從來沒有可供參考的記憶點的。

就如同我在上一篇文章提到的,人其實是避免一直去存取大腦的。我甚至相信,每個人的意志力,在面對陌生的環境,都是同樣薄弱的。

就算是你理解了,自學要從套路做起。一個陌生入門的人,甚至無法辨清哪些是高頻套路,更別提網路上還有一群「反套路黨」。

自學與找人教的差別

當然,我相信看到這裡,你還是會認為我還是一個反自學黨。說真的我實在不是。但我在這裡想要講一個更貼近的譬喻。

假設今天你跟朋友約吃一間新的餐廳,是在你從沒去過的某某鬧區的 XXX 路 XXX 巷 XXX 弄的 XXXX 號的 J 座 9-1 號 。你會怎麼做?

自學

我想大多數人是這樣做的:

  • 利用網路地圖找大概的點
  • 想辦法在地圖上開街景找到大致上的記憶點
  • 但到了現場,發現事實上現場的巷弄複雜超乎想像
  • 時間快到了,著急得開手機地圖確認是否正確
  • 實在沒辦法了,最後打電話請朋友來接

又或是甚至是不熟的朋友,你就乾脆不找了,直接推說有事 byebye ….

找人教

  • 到了當地大路口,請朋友出來帶你走一遍
  • 去了該餐廳,你覺得好吃,下次自己也來吃兩次,熟熟路
  • 後來發現其實不用按照地圖上的指示,甚至可以抄捷徑
  • 跟朋友下次分享不需按照地圖指示,而且在走來的路上,可能還有厲害的店

除非空間記憶夠好的人,或者是常常在外面跑的人,要他找一個點,絕大多數會是上述我說的「自學」情形。。。。

不是走不到。而是值不值得。你到底是想要享受美食呢,還是想要享受路上風景呢?你的意志力是否又能夠強到去忍受「遲到 + 未知」。

不明白大腦運作,自學是低效的

在這一篇裡面,其實我想講的道理其實有幾個:

  • 不明白自己的大腦如何運作,自學是低效的
  • 如果你不明白自己的大腦運作,那麼我會建議入門任何學問,務必找人教會你,甚至司機都要請很好的。好的老司機可以帶你直接吃到美食,愛上美食。
  • 如果你沒有預算老是請老司機,那麼再用過第一個老司機後,務必將老司機的路數拆出來,內化成自己的導航系統
  • 時時打磨自己的自學技巧,弄明白自己的大腦運作,有助於打開通往更多世界的大門