知識管理方法論解決的是效率和效果的問題,其實沒有方法論的時候,足夠的專註和努力也是可以的,許三多就是這方面的典型代表,他幾乎沒有什麼技巧性的方法,完全是靠執著和努力,這種"傻氣"有一個中肯的名字叫做"鈍感力".方法論並不意味著能夠"空手套白狼",其出發點並不是投機取巧的心理,而是一種自我調整過程中摸 ...
知識管理方法論解決的是效率和效果的問題,其實沒有方法論的時候,足夠的專註和努力也是可以的,許三多就是這方面的典型代表,他幾乎沒有什麼技巧性的方法,完全是靠執著和努力,這種"傻氣"有一個中肯的名字叫做"鈍感力".方法論並不意味著能夠"空手套白狼",其出發點並不是投機取巧的心理,而是一種自我調整過程中摸索出來一套最優方案組合;這樣看個人知識管理方法論有兩個特點:
[1] 不是那麼具有普適性,至少不是任何人都能全盤拿過來用
[2] 方法論是動態的,會根據個人的情況進化
個人知識管理方法論的關鍵在於其有效性,所以在不斷的進化過程中,一些無效的行為會識別出來進行剪除;比如,我從來不用瀏覽器收藏,也不會囤積電子書,因為我發現收藏過的文章幾乎都不會再看,囤積的電子書就那麼一兩本會看;對我來說這兩件事情用下麵的方式是有效的:在Evernote裡面有一個"待讀"列表,我會逐漸把裡面的文章消化掉;電子書要讀的,我會放在Kindle裡面.下麵這張圖就是我知識管理方法論的概況:
1.目標與路線圖
好多人寧可先陷入各種細節中也不願意去想想自己目標是什麼,迴避最開始的目標設定環節.翻翻講時間管理的書,很多時間管理技法的書都是從如何操作開始,而關鍵的並不是技法,是目標,試想如果沒有目標,或者沒有想清楚目標,那麼使用各種技巧爭取來的整塊時間用來做什麼呢?
類似的,知識管理也是要從目標設定開始,先確定做事的意義所在,做到什麼程度;否則你投入了很多精力在一個領域,你得到你想要的了嗎?你達到預期的效果了嗎?沒法回答!"但行好事,莫問前程","本想順路打劫,哪想弄假成真"這兩種心態說不上壞,但也算不上好;
設定了目標,就有了目的地,從你現在的位置到目的地怎麼完成這段旅程?這就是路線圖;
我們讀書的時候,有目錄,目錄其實就是一本書的路線圖;閱讀過程中善用目錄是學問的,詳情請參見<如何閱讀一本書>.我們需要擬定一個類似的東西,路線圖的好處是,我們在任一時刻都知道自己在什麼位置,下一步要到哪裡,障礙是什麼.有什麼方法可以幫我們剋服障礙.
沒有目的地的船是無所謂偏離航道的.
2.輸入
輸入有很多方式,或者說有太多的方式,在信息轟炸情況下,獲取遴選優質的信息是必備技能;RSS,郵件推送是我最常用的信息獲取方式;到目前為止我還是排斥微博,微信這類信息渠道,我發現只要是重要的信息,不上微博也會有其它渠道看到,而微博獲取信息的成本太高了,超級碎片化無關聯的信息,很難集中精力,所以早早的玩了一陣微博後,就決然退出不玩了;微信也類似,社交網路在信息獲取上的特點是你關註了什麼人就得到了什麼信息,明白了這一點,完全不必拘泥於微博,可以通過RSS之類完成這個過程;對於豆瓣我有兩種截然不同的用途,一方面維護了一個Erlang資訊小站,另一方面我關註了一堆和電影,音樂相關的人;因為豆瓣小站和個人主頁的時間線有明顯產品形式上的區分,所以很容易完成兩種狀態的切換.還有一點要強調的是:作為一個成熟的人,一定要意識到你在社交媒體上的種種行為對別人來講是沒有多大意義的;
2.1輸入過水
讀技術類的書的時候,我都會預測一下,這本書要是我寫,我會怎樣註水湊字數;開始閱讀的時候,就會比較有意識的把註水的部分略過.比如:講Redis的書註水的方式就是大篇幅講如何安裝,沒節操點就把安裝輸出也列印出來,然後羅列一堆命令,逐一解釋;講大數據的書,就先大篇幅講大數據發展現狀,前景,展望... 在圖書信息組織上,這種信息無可厚非,邏輯上是說的通的,但,這是你想從書中得到的嗎?
2.2 高強度的輸入過程
不得不承認的是,在輸入的過程中,信息會出現丟失;所以,會有一些高強度的方法來儘可能的減少信息輸入過程中的丟失,比如開源項目代碼註釋版,手敲代碼,翻譯文章,為代碼繪製流程圖等等;這些都不輕鬆,比如翻譯文章可以試一下,讀一篇技術文章和信達雅的翻譯,投入的精力可能差很多.很多人無法理解技術人的這種行為,認為難以理解,我是這樣解釋的:"作為一個技術人,發現一個好的項目,恨不能把自己也編譯到代碼裡面去".
2.3 榨取每一次輸入的價值
我把每一次的輸入都當做"線索";買到一本好書的時候我會把這個作者其它的作品也看一下;搜索到一個資料的時候,我會關註一下這個網站,如果是平臺就註冊一下;如果是Blog就訂閱一下RSS,就看看這個博客的主人還關註了哪些人;如果是中文作者,看看他們有沒有豆瓣ID,你認可的人讀過的書,可能是一個非常好的閱讀線索.2.4 自己的錯誤是最好的輸入
我曾經開玩笑說"小時候把錯誤較多試卷蓋住的孩子,長大後會習慣性Catch所有異常而不處理";自己犯的錯誤是最佳的輸入,這要麼是知識盲點,要麼是思維缺陷,相比那些已經做得很好的事情,這些錯誤才真正包含讓你更強的信息量.面對錯誤的那種挫敗感和後悔情緒是於事無補的,無任何建設性,"往者不可諫來者猶可追"說的就是這個道理.我第一次看到"破甑不顧"這個成語真心佩服:《後漢書·郭泰傳》:“客居太原,荷甑墮地,不顧而去。林宗見而問其意,對曰:‘甑已破矣,視之何益。’
3.內化
內化,就是有自己的看法,自己的理解;"自己的看法",這個東西在咱們這裡挺稀罕,我們被灌輸了太多標準化的東西,自己的看法被大大的弱化了;內化就是用自己的思維方式話語方式去描述一個東西,一個比較好玩的例子就是王朔用北京話翻譯了一遍<金剛經>和<六祖壇經>. 內化不是簡單記住,知識需要/值得記住的部分是有限的,把可以RTFM從大腦移除,讓值得思考的部分留在大腦; 一本書或者一份資料放在面前,沒有必要完全按照現有的結構去接受它,可以進行信息的結構上的重構;這種重構只有一個標準:自己理解起來方便.3.3 多種視角
從多個視角來觀察事物,可以獲得更深的印象更好的理解,如果只有一種視角來觀察事物,那麼看待事物的肯定是片面的;學習同樣一種知識也需要多個角度,如果只是一種角度,那最後脫離了這種視角就無法解決問題了;比如,我們熟記TCP/IP相關的各種資料,卻不知道在現實中這些參數對應的問題和現象是什麼,那麼這就是典型的一種維度缺失,只適合用來考試而不是自己掌握的技能;
關係型資料庫實際上是對現實世界的一種抽象方式,不同的抽象方式落實在設計中就是不同的數據表,不同的數據欄位; 當我們接觸一個新知識的時候,書本上給我們只是知識的一個切片,一種抽象而已;避免盲人摸象的尷尬就需要從多個視角去認識同一個事物.
多種視角實際上是對書本知識的突破,因為書本上通常只提供一兩種視角的解讀,從多個視角去分析解構知識,能夠獲得"自己的看法".換句話說,在從多個視角去理解一個知識的時候,實際上完成了知識的內化過程.如果只用一種方式瞭解一個事物,那你就沒有真正理解它.在我們所受的教育中,一個非常的變態的概念就是"標準答案",一個更變態的是"標準過程",前者還只是答案正確即可,後者還要要求過程也正確.橫切蘋果的案例實際上就是一個事物從不同視角切入時的奇妙景象.
高中時代有一個事情,一個運算能力超強的同學,在解決物理試卷上往對面扔沙袋,扔多少個對面小車會停住的問題時,沒有使用數學歸納發,而是1,2,3,4,5....這樣一個個算出來的,算到第21個的時候,得到答案;這個事情留下印象太深了,使用數學歸納法的也未必真正理解其解法的合理性,而這位同學使用了一種自己理解且擅長的方式解出了問題,值得琢磨.
如何找到多個視角呢?這裡有一個工具就是"提問";比如我們現在遇到一個新的東西:Redis,在瞭解了基本的情況之後,我們可以提出一堆問題:
- Redis和Memcached區別是什麼?本質差異在哪裡?
- Redis的性能怎麼樣?和Memcache相比如何?
- Redis安裝,部署,使用上有什麼需要註意的?
- Redis的數據結構在實際業務場景中有哪些"最佳實踐"?
- Redis在NoSQL體系中是怎麼分類的?為什麼?
- Redis的Bitmap有什麼妙用?在以前這些問題是怎麼解決的?
- Redis模擬隊列和Rabbitmq隊列
- ........
這裡可以提出的問題太多了,甚至有些問題需要去代碼裡面尋找答案了.能夠提出問題,實際上是強調了"主動性",通過主動思考發現其中的疑問,而不是被動的灌輸;一開始通過提問打開多種視角的時候,效果可能非常差,主要是問題問得太水了,只要多練習,特別是針對一種類型的事物反覆練習再次遇到同類型的事物基本上條件反射就能提出質量較高的問題.
3.4 可復用視角(思考模型)
同一類事物,我們提出的問題往往是類似的,比如網站系統會考慮頁面緩存,靜態動態資源分離,SEO優化等等;如果是資料庫方案會考慮業務數據的使用情況,數據增長情況,對事務的要求;如果是介面調用,會考慮安全問題,信任問題等等;這些對同一類事物可復用的視角,可以固化下來作為一種思考模型,省得每一次都從頭開始想起了,在不斷使用過程中思考模型也不斷的調整優化;
我至今難以理解的就是政治課和政治試題,這門課你不能用自己的語言去解答,需要按照書本上的標準描述去回答,因為老師要計算得分點,在快速判捲的情況下,死記硬背標準話語模式是有效的.
4. 系統化
系統化,實際上就是建立知識點之間的聯繫,不再孤立,把它融入你的知識體系,說句矯情的話就是"不讓一滴水蒸發最好的方法就是把它放入大海".系統化的知識是不容易遺忘的,即使忘掉了,也可以順藤摸瓜把相關的東西全拎出來;如何做到系統化呢?這裡我常用的工具是
[1]"畫圖"
[2]"講故事"
畫圖,有兩種方式;一種是直接用紙筆畫圖,紙筆沒有什麼講究,隨便寫,隨便畫;一種是思維導圖工具,思維導圖工具用了好多年,在還沒有接觸過電腦的時候我就開始用思維導圖,這也是讓我接觸電腦後最為驚喜的軟體.知識長時間不用必然存在遺忘,不必糾結,我們能做就是留下足夠的"線索"或者說是索引,需要的時候有足夠的線索喚醒就OK,圖形化的內容由於直觀簡潔且都是按照自己的思路整理出來的,再次進入真的很快.今年在項目中再次用到Storm的時候,我找到了當時的思維導圖和筆記,有種熱數據瞬間載入的感覺,非常棒.
講故事,這也是常用的一個方法,王朔在<致女兒書>裡面就是用講故事的方式把人類進化史和自己家族的歷史講了一遍,也有文章用某種語言設計過程中的趣事八卦串聯起來語言的演變過程,這些都是把枯燥的知識有趣化,孤立的知識系統化的好方法.<蘇菲的世界> <上帝擲骰子嗎?>都是這方面的典範;
講故事還有一種套路就是跨學科講故事;高中時候的生物老師是這方面的好手,他經常這樣:"在茫茫的草原上,各種動物剛剛渡過了寒冬,一場在幸存者之間的殺戮馬上就要開始,同學們想一想這個食物鏈是怎樣的?今天我們要講的就是食物鏈....." "李白鬥酒詩百篇,白酒經過消化道發生了哪些變化?".就這樣天馬行空但從不喧賓奪主,這位從不用普通話講課的老師,給同學們留下無數談資;我們的生物課成績也是相當不錯;
我也試過比喻類比之類的方式,發現這種路子開始的時候有效,慢慢就會把我帶上歪路;理由很簡單,既然是客觀上兩個截然不同的東西,比喻和類比只能在一定程度上進行,分寸把握不好反而會影響理解.目前對我而言,還在嘗試中的方法是TRIZ理論,還不好說效果如何,已經驗證行之有效的方法就是畫圖和講故事.
在我們所受的教育中,特別是在面對考試的時候,特別強調的就是"知識點" "重點",零散的知識點是經不起時間考驗的,好在學校裡面通過反覆的練習強化,來對抗這個記憶衰退.當我們走出校園,開始在工作中使用掌握的知識的時候,還有重點嗎?只要影響你解決問題的都是重點. 重點? 知識深度和廣度 重點,是一種非常功利化的概念,是針對考試去講的,隱含的意思是能夠立竿見影有較高的ROI.但實際工作中出現的問題不是XX命題小組搞出來的了,哪裡有什麼重點.之前和梁同學聊這個問題的時候,我們把知識掌握情況大致劃分成下麵幾種:
- 已經掌握的知識,需要解決的問題是抗遺忘
- 以為自己掌握而實際未掌握的知識,一旦遇到問題就能發現,及時彌補即可
- 知道自己不知道的知識,很簡單,意識到短板,彌補即可
- 不知道自己不知道的知識,這種是最可怕的,往往會做出錯誤歸因
知識點之間建立聯繫,從某個點看,要麼是在深度上下功夫,要麼是在廣度上下功夫;深度層面探究原理,機制,思想;廣度方面看應用,看實踐;深度和廣度兩者是互相影響的,這對我們也是一策略調整的機會:深入研究一段時間之後可以透透氣看看應用層面的東西,反之亦然.
註意止損
無論是深度探索還是廣度探索,可能在某個點上,我們投入了很多精力卻收穫很少,ROI很低,邊際效益遞減;這時候,需要提醒自己適時止損,跳出;可能過一段時間之後,再回頭看的時候就會有新的理解了,可以進行下去了.其實這是一種有效避免小巷思維的方法.比如我研究一個開源項目的時候,有一個地方想了兩天沒明白為什麼這樣設計,我給自己的截止時間就是兩天,然後我就把這個事情掛起了,後來看文檔的時候看到了那個設計的解釋,豁然開朗.
5. 輸出
掌握知識一定要有輸出思維,輸出方式可以是在項目中實踐,可以是給自己或別人講清楚,可以是一篇文章或者是一副圖,但是無論如何一定要有輸出;信息閉塞時代,一招鮮吃遍天和教會徒弟餓死師傅的情況並存,但是網路打破了這種情況,只有分享和思辨才能保持知識的新鮮.我老家所在的村莊有很多做豆腐的,但是只有一家從南方學來了製作"豆腐泡"的工藝,每次做的時候都是大門緊閉,對外人一字不漏;後來接觸網路,我在搜索引擎中搜索的前十個問題中就有這個,原來關鍵在於收水和油溫;看,這種知識壁壘,在網路時代是很容易打破的;
輸出最簡單的形式就是講給自己聽了,你以為掌握了,開始嘗試把這個東西講出來的時候就顛三倒四,是真掌握了嗎?輸出給同事,既然是輸出給同事,占用別人的時間,如果你提供的信息混亂沒有乾貨,真是罪莫大焉,出於對聽眾負責的態度也要保證分享內容的質量;輸出為一篇博客文章,只要不是涉及商業機密的內容,總是有好處的.劉未鵬之前寫過一篇 為什麼你應該(從現在開始就)寫博客 ,博客也是一種很好的輸出方式,具體好處請看原文.
輸出思維一方面強迫我們用主動的和"實用"的標準去認知,一方面通過外界反饋調整;如果沒有輸出,學了就是學了,連一個檢驗是否真的懂了的方式都沒有,有什麼意義呢?