
本文對《軟技能:代碼之外的生存指南》書中的“十步學習法”展開討論,該書作者是John Z. Sonmez,一名程序員,書中有很多面試、專業等建議。有一些建議相見恨晚。某天在喵哥群里看到了本書的推薦,非常感謝推薦。
本文末尾附上了John Z. Sonme推薦的書單(自我提升、軟件開發、投資類),感興趣的可以看一下。
雖然本書說的是“程序員必備的軟技能”,但我認為這是所有職業都通用的軟技能。該書中總共分成七個部分,分別是:職業、自我營銷、學習、生產力、理財、健身、精神。我做了下面的思維導圖,可以概括個大概,可以根據需要隨意讀取某個章節(下圖右下角被擋住的二字是:如何脫單):
本書總共71篇文章,可以把每一篇都看成一篇高質量的博客,也就是說如果你能夠寫出71篇高質量的博客,你也就能夠出書了(手動狗頭)。
這位作者老哥很會玩,他有自己的youtube頻道,網址youtube.com/jsonmez 我點進他的油管主頁看了一下,好家伙,作者本人還是個猛男:
十步學習法
你是不是和我一樣,學習知識的時候就喜歡拿著一本書“從封面到封底”仔細閱讀,這樣可以學到東西,但是效率很低。因為我們往往只會用到書中的一部分內容而已,沒用到的內容會迅速忘記。這是關鍵,沒用到的內容會迅速忘記……通過不同的方法,對于知識的掌握程度也不同,可以參考下面這張圖:
僅僅通過閱讀,學習信息的留存度只有10%。因為我們并沒有掌握那些沒被用到的知識。學到了某個知識,叫懂得;練習過學到了的知識,這叫掌握。掌握了的,不容易忘。
懂得很多道理,但是依然過不好這一生?!驗檫@些道理只是頭腦上的懂得,但并沒有身體力行的掌握……
學習二字,學——頭腦上的懂得,習——頭腦和身體上的練習。練習中的體驗,極大加深了該知識的記憶。我們都有背單詞的經歷,但真正掌握這個單詞的時候,還是和這個單詞在某個地方不期而遇時,比如某一天下午你在看國外新聞時,看到了這個單詞,這個時候才發現這個單詞還有這個用法。我們學會了使用它,也就記得了它。
十步學習法如下:
不要被這么多步驟給嚇到了哈,總共分成兩個部分:
第一步到第六步:學習前的準備部分,即為前期調研以及設定目標。
第七步到第十步:學習過程部分,即這四步:學習-實踐-學習-分享教授(Learning, Doing, Learning, and Teaching)
第1步,了解全局
這些年有個很流行的認知的四個階段:不知道自己不知道什么、知道自己不知道什么、知道自己知道什么、不知道自己知道什么。
“了解全局”就是從第一階段到達第二階段的過程。如果想要學習一門編程語言,那么首先得知道計算機的編程語言都可以做些什么,市面上有哪些編程語言,這些編程語言之間又有什么關系等等。關于這些我們可以在網上搜索一些文章,或者請教相關的人,了解個全局。
等到我們了解個差不多的時候,我們終于知道了這些東西大概是個什么,但是具體是啥我們是不知道的。這就進入了“知道自己不知道什么”的狀態。
了解全局是必要的,如下面:
如果我們按照圖的上半部分,在沒有了解全局,就開始精細地學,這樣恐怕不會持久。
但是像下半部分那三張圖一樣,先了解一個模糊的大局,再逐漸精細地了解,這樣的效果會更好
第2步:確定范圍
我們大致了解全局之后,需要確定范圍。因為計算機知識浩如煙海,我們無法掌握全部——窮盡一生也不可能。甚至就算單是學習一門編程語言,比如如果想要精通C++,那沒個好幾年是不可能的。但是我現在的學習時間只有一兩周,那只能把范圍縮小,這樣的范圍可以是,使用學習某個編程語言中的:
圖形界面相關的編程。 文件操作相關的編程。 網絡通信相關的編程。
短時間內我們可以聚焦在以上三個主題中的一個。一個主題就是一個聚焦范圍。
第3步:定義目標
確定一個小范圍之后可以定一個小目標,比如下面的任意一個都是小目標:
寫出一個圖形界面 用程序操作文件 用程序進行PC之間的通信。
第4步:尋找資源(學習材料)
學習一個知識點的時候,最好不要就只用一本書,可以參考不同各個書上的指定的章節,因為很多時候不同的書都在描述同一個東西,但是描述的角度不一樣。
當我們從A角度看某個東西的時候,可能會消除在B角度看相同東西時產生的那個疑惑。盡可能尋找更多資源。
信息來源:
圖書 博客文章 在線視頻,公開課 詢問這方面的專家 播客 源代碼 示例項目 在線文檔 各種網頁 付費視頻、課程
第5步:創建學習計劃
創建學習計劃,就算我們已經在第2步里面縮小了學習范圍,可能這個范圍內還有比如六個如A,B,C,D,E,F個知識點,而有些知識點是最基本的,比如知識點A,所有其他知識點B、C、D都依賴于A。這個時候我們肯定要學最基礎的A,再學其他不那么基礎的點。
就像上圖中的螺旋上升的階梯,往上的階梯需要穩固的基礎,也就是一個起點。
很多時候可以直接參考書的目錄,基礎的點都在前面,進階的內容都在后頭。
第6步:篩選資源
因為我們在第4步的時候已經尋找了很多資源,那么這個時候可以進行篩選,去掉重復性比較多的,或者不太適合自己的那些書,找出最物超所值的那幾本——可以看看網絡上對該書的評價。
第7步:開始學習,淺嘗輒止

以上學習前的準備過程就差不多了,接下來就是學習過程,學習-實踐-學習-分享教授(Learning, Doing, Learning, and Teaching)。
這一步的學習是為了下一步的“動手操作”。
這個時候我們就要清楚地知道,為了下一步的操作,我們需要的“最小量的啟動知識”有多少。度很關鍵,學太多或者學太少都影響效率。
第8步:動手操作,邊玩邊學
如果是學習代碼,這一步可以按照示例代碼自己試一遍,或者自己改一遍。如果是學習英語單詞,就使用這個單詞造句、練習發音,并根據不同的釋義想象可以在什么場景下可以使用。
以上過程也是根據不同的例子來強化自己的記憶。我知道有一個挺有名的程序員章亦春,他喜歡在學習的時候,手抄代碼。第一次聽到這事的時候,我震驚了,手抄,那效率得有多低?后來我在刷leetcode的時候,遇到看不懂的那些題解代碼,復制粘貼后上程序跑一遍還是不懂。然后我就在紙上手抄這些代碼,抄著抄著的過程,竟然真的慢慢懂了,真香!
第9步:全面掌握,學以致用
我們可能會在上一步的操作過程中遇到問題,這個時候可以回到資料里面,去尋找答案。又或者這個時候我們再看之前看過的內容,也會有不同的體會。
第10步:樂為人師、融會貫通
原書中是這樣寫的:
你可以用多種方式將自己所學教給他人。你可以寫博客,也可以制作YouTube視頻。你也可以跟自己的愛人探討,將自己所學解釋給他/她。重點在于,你要花時間將自己學到的東西從大腦中提取出來,以別人能夠理解的方式組織起來。在經歷了整個這個過程之后你會發現,有很多你以為自己明白了的知識點,其實并沒有摸透。于是你會將那些以前自己沒太明白的東西聯系起來,并且簡化自己大腦中已有的信息,將它們濃縮并經常復習。
費曼學習法也大概是這個意思,諾貝爾物理獎得主費曼說:“如果你沒有辦法用簡單的語言表述你所學的知識,你就沒有真正學會它?!敝馁M曼學習法,推崇以教為學。
這段視頻解釋得相當透徹:為什么費曼技巧被稱為終極學習法
首先我們通過練習大量的例子,從而總結出這些例子的通用規律。然后將這些例子以他人聽得懂的方式表述給他人,在這個過程中你再一次對這個通用規律進行了總結——或者說壓縮。同時在表述的過程中,進行了邏輯上的驗證。
有時候,邏輯驗證會出現卡殼,會發現有很多你以為自己明白了的知識點,其實并沒有摸透。
這還沒完,在表述給別人的時候,別人會產生疑問,這時候可以將別人的例子,套用在你已經總結出的規律中,進一步驗證這個規律的準確性。
分享知識的途徑:
寫博客文章 創建視頻教程 發表演講 與朋友或愛人進行對話探討 線上或者線下回答他人的問題
只要善于總結,就超越了很多人。當年RTS游戲盛行的時代,WAR3(魔獸爭霸3)游戲的王者,中國人皇SKY李曉峰。他當年在網吧接受采訪的時候,秀出了他一個記滿技術要點的小本子,這是他對很多場對戰的關鍵總結。說實話,字寫得真的丑,寫的句子也和“文筆”兩字絲毫不沾邊,但這并不能阻止他成為世界人皇。
最后,祝各位前程似錦。
最后的最后附書單
文末附上原書《軟技能:代碼之外的生存指南》作者推薦的書籍匯總。各位也可以參考以上學習方法,選擇某一主題的書,進行學習哈。
自我提升和勵志類圖書
Steven Pressfield的The War of Art [Black Irish Books, 2002] Dale Camegie的《人性的弱點》(How to Win Friends and Influence People)[Gallery Books, 1998再版] 沒錯就是卡耐基的書,英文名直譯有點意思:如果獲得朋友和有影響力的人 Napoleon Hill的《思考致富》(Think and Grow Rich)[Wilder Publications, 2007] Maxwell Maltz的《心理控制方法》(PsychoCybemetics)[Pocket Books, 1989再版] Norman Vincent Peale的《積極思考就是力量》(The Power of Positive Thinking)[Touchstone 2003再版] Ayn Rand的《阿特拉斯聳聳肩》(Atlas Shrugged)[Signet, 2005再版]
軟件開發類圖書
Steve McConnell的《代碼大全》 Robert Martin的 《代碼整潔之道》 Eric Freeman, Elisabeth Robson, Bert Bates和Kathy Sierra的《Head First設計模式》
投資類圖書
Gary Keller的The Millionaire Real Estate Investor [McGraw-Hill, 2005] Robert Kiyosaki的《富爸爸,窮爸爸》 Kerry Given的No-Hype Options Trading: Myths, Realities, and Strategies That Really Work [Wiley, 2011]
往期推薦
如果喜歡這篇文章,請點贊、在看,支持一下哦~謝謝!