開發人員如何構建本身的學習筆記系統

做者:王下邀月熊
連接:https://www.zhihu.com/question/273440522/answer/373538291
來源:知乎
著做權歸做者全部。商業轉載請聯繫做者得到受權,非商業轉載請註明出處。

回答節選自技術之路/筆記系統與知識管理這篇文章,一點淺見,還望指正。git

技術分爲術與道二者,術便是具體的作事的方法,而道則是作事的邏輯抽象的原則與原理。構建專屬筆記系統的目的,是爲了讓本身更好地管理知識,既可以避免本身重複地學習,來使本身可以接觸到更普遍或者更深度的知識,探索屬於本身的道;也可以經過快速命中有效方案,來提高本身及所在團隊的研發效能,從而高效地利用已有的術去解決問題。於筆者自身而言,構建筆記系統的初衷並不是是想讓本身不去忘記什麼,而是但願可以在須要的時候,以適合本身思惟、理解的方式,快速地從新掌握。程序員

李翔知識內參有一集介紹到,根據傑瑞德·霍瓦特的研究,在互聯網時代,回想記憶(Recall Memory),也就是大腦自發地調用信息去回憶過去的能力,已經變得不那麼重要了,認知記憶(Recognition Memory),即記住大量事物、地方以及各類人物形象的能力才最重要。他說:「只要你知道在哪兒能夠查到這個信息、如何查找,就不須要回憶它了。」互聯網至關於咱們的外部記憶(Externalized Memory) ,有一項研究指出:「若是人們知道他們能在網上獲取信息,那麼他們回憶信息的機率就較小。」 同時,這又是一個碎片化閱讀的時代,兩相結合,會讓咱們以爲本身持續地學到了東西,卻也可能只是虛假的知足感。咱們既要利用這種特性,利用互聯網提供的便捷的檢索、閱讀,去構建專屬的外部記憶;就像創建緩存服務器同樣,咱們能夠直接去獲取,而不須要費時費力的從新檢索、篩選。同時也須要真的沉澱下來,脫離碎片化獲取帶來的混淆與可能的膚淺,真的能成體系地,探究到某項技術或某個領域的深層知識、實踐。github

筆記系統,或者說知識管理的首個難點,在於知識的檢索,與更新;直觀地來講,就是當咱們想到某個知識時,應該如何去找到對應的筆記,或者說當咱們想去記錄某些心得體會時,應該把它們放在什麼地方。通常來講,目前的筆記組織結構,能夠是樹形層級目錄式,就像思惟腦圖同樣,從某個點展開,延伸到各個具體的技術領域;也能夠是 Tag 式,即爲每一個筆記進行人工地主題詞提取,而後依賴於搜索功能進行檢索。筆者上車伊始,即主張:知識應該放在它應該在的地方,所以數年來一直以近乎強迫的方式,去構建 ITCS 技術體系與知識圖譜,而且將其做爲泛筆記系統的目錄規範。這種細緻的劃分方式,每每會隨着自身對於技術世界的認知變化而不斷衍化,所以也是創建在普遍的閱讀、涉獵的基礎上;不過磨刀不誤砍材工,若能堅持下來,澆灌培育出屬於本身的知識體系樹,也是別有一番滋味在心頭。緩存

另外一個須要說起的,對於筆記的工具也很重要,不少人零碎地記了不少筆記,卻每每沒法遷移或者分享。筆者提倡以 Markdown 做爲筆記格式,圖片的話單獨統一存放,具體的方法論能夠閱讀熊寫代碼這三年:閱讀寫做與技術成長(2015)或者 Workbench CheatSheet服務器

有了遨遊星海的星圖指引,咱們就要開始逐個探索美麗的知識星球了。根據知識自己的特色,使用的頻次,檢索與更新的方式,咱們又能夠將筆記分爲索引式、清單式、書籍式與代碼式;下面我會結合自身的實踐認知,來闡述這幾個不一樣類型的筆記的構建與使用。架構

  • 索引式筆記,典型的表明是 Awesome Links,其按照知識圖譜來將各個領域的有效的連接沉澱下來。與 Google 這樣搜索引擎搜出的結果相比,其含金量會更高。一方面,歸入到 Awesome Links 當中的連接,每每都是自身閱讀、篩選過的,儘量去蕪存菁,去重留一,不管是分享某個技術領域的文章給他人,仍是本身學習閱讀,都可以避免冗餘閱讀。另外一方面,不少優秀的文章並不必定會出如今搜索引擎的前幾頁,而是須要依靠本身平常瀏覽中主動發現、概括。Awesome Links 中還包含了很重要的一個部分,*-OpenSource-Links,是對於各個領域的常見開源項目的歸檔;便可以方便快速查找所需的框架與庫、開發工具等,也可以提供一些優秀的,能夠借鑑的開源項目來學習。
  • 清單式筆記,典型的表明是 Awesome CheatSheet,便是對於某個領域、方向的精華,以及平常工做中經常使用知識點的歸檔。不管是快速學習,仍是做爲平常開發中的工具手冊,都是極好的。
  • 書籍式筆記,便可以是 Awesome-CS-Books-Warehouse 這樣對於優秀書籍的蒐集,也能夠是 現代 Web 開發深刻淺出分佈式基礎架構 等這樣子各個領域的本身的筆記的編排。值得一提的是,書籍式筆記,並不強調必定要遵循知識圖譜的結構,而是賦予其必定靈活性,以方便記錄與交流。
  • 代碼式筆記,典型的表明是 coding-snippets, 對於程序員這個角色而言,代碼也是咱們筆記系統的重要組成。在這個之上,咱們又能夠構建出一系列小的項目。

講了一些,都是筆者這幾年的心得體會;構建知識體系、筆記系統也並不是一蹴而就之事,並且每一個人皆有其獨特的方式與目標,能夠先讀然後記,然後邊讀邊記,最後成一家之言。每當擡頭仰望浩瀚、無垠,且不斷變化,有無數璀璨明星閃爍的知識星海,難免會以爲有疲憊與無力感;而正是本身這麼多年構建下的知識體系與筆記系統,成爲了我遨遊星海,領略美景的一葉扁舟。框架

相關文章
相關標籤/搜索