我覺得大概是從去年開始,我變成職業教師之後,很多人就開始誤以為我為了「自身利益」變成了一個「反自學派」。事實上,我從來不是一個「反自學派」。事實上,我人生到現在幾乎所有的學習過程,幾乎都是「自學」「開始」的。
我識字是自學的,我速讀是自學的,我管機器是自學的,我學編程是自學的,我學敏捷管理是自學的,我學 GrowthHack 是自學的。許多是我浸淫到變成行業專家的技能,全部都是自學開始的。
正是這樣我才意識到一件事,我非常的擅長自學,但是別人未必。甚至對方的希望進入這個行業變成生力軍,我最不應該做的就是推薦他自學。
是,人人都應該學習自學乃至於自教的技能,建立起可遷移的技能。但不應該人人都應該是從自學開始,而錯誤的自學法,輕則學習過程痛苦萬分,重則直接失去興趣,永世不再接觸。
(我在認知學習法的教學篇,用了 git 教程作為 example。事實上沒有進修過教學法的程序員寫的教程,都是長這樣的,包括我以前寫的可能都是。而程序世界的自學教程 90% 以上都長得像這樣。甚至還會因為「政治正確」的因素,逼得在新手教程裡面寫高級技巧,以免被其他同行說不負責任。)
我開始變成職業教師,僅僅是因為我認知到了,我也許具備了能夠將自學能力剝離出來複製的高效技巧,其他人也許在這件事情沒有我行才做的(要知道,不是許多程序員都喜歡教書,很多人認為教書,能力是會退化的)。
扯遠了。我還是進入正題,談談如何自學。基於上篇的認知學習法,以及陽志平老師寫的一篇「笨方法學語言」http://www.yangzhiping.com/psy/Learn-Language.html。
陽至平的笨方法學語言分成七個步驟:
看完這些你也可以瞭解大概了。方法就是:
而我在 我是如何學一門新技術的 這篇文章也提到了,我是如何全新的入門一套新的知識。其實也是用了這樣的方法:
而我早已體悟到自學會有「工作記憶區」不夠用(甚至是長期記憶區也不夠用),還有「自信心打擊」的問題。所以我還利用了其他技巧
你看。我是一個編程超過十年以上且自學無數次的人,才可以在短短的一兩天之內,在低心理壓力下,搞定學起這套技術(後端程序改寫 iOS )。那麼,初級程序員呢?沒有寫過程序的一般人呢?
一般人學編程其實是萬分痛苦的,多數人會遇到這樣的問題
就如同我在上一篇文章提到的,人其實是避免一直去存取大腦的。我甚至相信,每個人的意志力,在面對陌生的環境,都是同樣薄弱的。
就算是你理解了,自學要從套路做起。一個陌生入門的人,甚至無法辨清哪些是高頻套路,更別提網路上還有一群「反套路黨」。
##自學與找人教的差別
當然,我相信看到這裡,你還是會認為我還是一個反自學黨。說真的我實在不是。但我在這裡想要講一個更貼近的譬喻。
假設今天你跟朋友約吃一間新的餐廳,是在你從沒去過的某某鬧區的 XXX 路 XXX 巷 XXX 弄的 XXXX 號的 J 座 9-1 號 。你會怎麼做?
##自學
我想大多數人是這樣做的:
又或是甚至是不熟的朋友,你就乾脆不找了,直接推說有事 byebye ….
##找人教
除非空間記憶夠好的人,或者是常常在外面跑的人,要他找一個點,絕大多數會是上述我說的「自學」情形。。。。
不是走不到。而是值不值得。你到底是想要享受美食呢,還是想要享受路上風景呢?你的意志力是否又能夠強到去忍受「遲到 + 未知」。
##不明白大腦運作,自學是低效的
在這一篇裡面,其實我想講的道理其實有幾個: