八.經(jīng)常思考總結
子曰:“學而不思則罔”。只學習不思考,會迷惑,難以把握事情的本質。這好比一個學武之人,只習得其形,而未得其神,難以成為真正的高手。
一個程序員從入門,到成為高手的過程中,往往要經(jīng)過幾次頓悟。頓悟會讓你跳出知識的叢林,一切豁然開朗,仿佛打通了全身的奇經(jīng)八脈一般奇妙。記得我有一次,頓悟到了一個很簡單的結論:“原來高級編程語言中的類庫是封裝了Windows API來實現(xiàn)的。”后來碰到一些自帶類庫無法實現(xiàn)的功能時,我會想到,其實可以通過調用Windows API來實現(xiàn)。利用這個思路,我解決了一些看起來很難的問題,得到老板的賞識,從而很快獲得提升。
頓悟非?少F,然而它不是隨便發(fā)生的,而是經(jīng)過一次次苦苦思索之后、靈光閃現(xiàn)的結果。思考的過程,其實是將外在的知識內化為自己的知識的過程,而頓悟,則是批量的實現(xiàn)這種內化,將無數(shù)個知識點連接在一起,達到融會貫通的境界。
九、克服“高原現(xiàn)象”
愛學習的人都會有這樣的經(jīng)歷,學習持續(xù)了一段時間之后,往往會有一個瓶頸期,長時間似乎很久沒有什么進步,于是內心非常著急。
這種情況實際上這是由人的學習規(guī)律決定的一種“高原現(xiàn)象”。據(jù)研究,學習者在剛開始進步快,隨后有一個明顯的或長或短的進步停頓期,后期進步慢,中間的停頓期叫高原期。
圖2 技能學習練習曲線
在我看來,高原期實質是一個消化期,由于前期的學習積累了太多的知識點,這些知識點在大腦中亂作一團,還沒有形成一個知識體系。這時需要一定的時間來消化它,將它融會貫通,經(jīng)常思考總結可以快速幫你跨過高原期。
在處于高原期的時候,還可以換一個相關的方向來學習,例如編程語言學不下去了,你可以學習一下設計模式,設計模式也學不下去了,再換成數(shù)據(jù)庫。通過學習這些相關的知識,不但補齊了知識體系中的短板,而且各個知識點之間可以互相啟發(fā),幫助你實現(xiàn)頓悟,跨過高原期。
十、學習要有好心態(tài)
(1)學習要靜心
急于求成是學習過程中普遍存在的一種心態(tài)。這可以理解,畢竟作為一個程序員,要學的東西實在太多了,而社會又是那樣的浮躁,讓人覺得一切都是那樣的不安全、不確定,似乎只有學得快一點,才能跟上社會的腳步。
可是“欲速則不達”,想快快的學,往往會形成東一榔頭、西一棒槌的學習方式,每一個點都沒有吃透。心沉不下去,知識也會沉不下去。要想成為真正的高手,只能靜下心來,一步一個腳印的攀登。
(2)學習是一個持續(xù)一生的過程
人生的過程,是一個自我完善過程。
孔子曾經(jīng)說:“吾十有五而志于學,三十而立,四十而不惑,五十而知天命,六十而耳順,七十而從心所欲,不逾矩。”可見孔子也不是天生的圣人,也在不停的學習、進步,從“志于學”到后“從心所欲,不逾矩”,孔子一共花了55年的時間。
作為一個程序員,更是需要不斷更新自己的知識。我們所知道的東西,像一個白色的圓圈,圈外則是黑暗的未知的世界。當圓圈越大,所接觸到的黑暗部分越多。我們只有不停的學習,打破更多的黑暗,找到更多光明。
(3)保持饑餓,保持愚蠢
看了《喬布斯傳》之后,我喜歡的一句話是“求知若饑,虛心若愚”(Stay Hungry,Stay Foolish),其實我更喜歡它更原生態(tài)的翻譯“保持饑餓,保持愚蠢”。我們只有認識到自己還很饑餓和愚蠢,才會像沒吃飽一樣,由衷的需要學習、愛上學習。
當然,知易行難,知行合一才是學習的高境界。我也始終是一個學習者,一直在路上。