【札記】一道通往新世界的大門:《暗時間》

如果我直接甩一個豆瓣鏈接推薦這本書,多數人可能都不會點開看(可能即使我寫了一點點筆記,也不會有多少人看),但我想這本書是值得看的,這裏列出目錄和一些摘抄,比直接看豆瓣簡介可能要好一些。

《c++ primer》說起,留心的朋友會發現這本書的審校中有劉未鵬的名字,我也是一天突發奇想去搜了一下封面上的人,就找到了劉未鵬前輩的博客了,他寫博客的時間比較早,最開始是在CSDN上面寫的,後面來建了自己的博客,他也有微信公衆號(可以在他的博客中看到),還有豆瓣,裏面有很多書。第一次閱讀劉未鵬前輩的博客時就有一種相見恨晚的感覺,感嘆要是早點看到這些文章該多少,但後面又一想,只要看到了就不算晚,這本書的內容是從他的博客中摘錄出來的,所以可以直接看他的博客,文中有很多的超鏈接和一些圖片視頻,博客看起來比紙書要方便一些。爲了方便查看,這裏按照書裏的內容將博客文章進行了彙總。

這本書本身就是一個索引,我感覺如果要做筆記,整本書都是筆記。不過爲了回顧和總結,仍然對它進行了小結和摘錄。它像一棵樹,樹有根,除了樹本身有價值,樹根延伸出去的知識有更大的價值。

可以先看看“我在南大的七年”瞭解作者的一個大概發展情況。

整本書有三個部分,第一章講時間管理和學習習慣之類的,比較易懂,受衆範圍也比較大,看了可以立即用在生活中。第二章的“逃出你的肖申克”系列文章看的很艱難,講了一些思維認知方面的,仍然可以將有用的東西應用於生活。第三章的數學看的也比較難,如果不寫代碼也不學數學可以不看(不過解決問題方法是通用的可以看看),覺得一時間沒那麼多時間學習,也可以先了解大概,知道有這些思想,等以後再接觸到相關的,可以再回頭來看(比如要學算法了)。

目錄

第一篇 暗時間

1.1暗時間

1.2不是書評 :《我是一隻IT小小鳥》-設計你自己的進度條

1.3[BetterExplained]如何有效地記憶與學習

1.4學習密度與專注力

1.5.1一直以來伴隨我的一些學習習慣(一):學習與思考

1.5.2一直以來伴隨我的一些學習習慣(二):時間管理

1.5.3一直以來伴隨我的一些學習習慣(三):閱讀方法

1.5.4一直以來伴隨我的一些學習習慣(四):知識結構

1.6我在南大的七年

第二篇 思維改變生活

2.1逃出你的肖申克一:親身經歷才能明白?

2.2逃出你的肖申克二:從視覺錯覺到偏見

2.3逃出你的肖申克三:遇見20萬年前的自己

2.4逃出你的肖申克四:理智與情感

2.5[BetterExplained]書寫是爲了更好地思考

2.6[BetterExplained]爲什麼你從現在開始就應該寫博客

2.7我不想與我不能

2.8[BetterExplained]遇到問題爲什麼應該自己動手

2.9什麼纔是你不可替代性的核心競爭力

第三篇 跟波利亞學解題

3.1跟波利亞學解題

3.2錘子和釘子

3.3魚是最後一個看到水的

3.4知其所以然(123

3.5爲什麼有必要知其所以然

3.6康托爾、哥德爾、圖靈-永恆的金色對角線

3.7數學之美番外篇:快排爲什麼那樣快

3.8數學之美番外篇:平凡而又神奇的貝葉斯方法


第一篇 暗時間

1.1暗時間

  • 迅速進狀態

  • 長期保持專注

  • 不要頻繁切換任務

專注的人比不專注的人時間利用效率高得多,能夠迅速進入專注狀態,以及能夠長期保持專注狀態,是高效學習的兩個最重要習慣。

  • 抗干擾能力

1.2不是書評 :《我是一隻IT小小鳥》-設計你自己的進度條

  • 進度條 。將目標分割成一個個的里程碑,再將里程碑分割成TODO列表
  • 不要過早放棄
  • 興趣遍地都是,專注持之以恆纔是真正稀缺的。
  • 靠專業技能的成功是最具可複製性的
  • 反思是讓人得以改進自己的最重要的思維品質
  • 自學的重要性

書:

我是一隻IT小小鳥

1.3[BetterExplained]如何有效地記憶與學習

  • 在恰當的時候被回憶起來

  • 理解記憶-線索越多,記憶越牢固,精細的概念、邏輯、一般的解題原則、通用的解題手法、背景知識、類似的問題等等無數的記憶和提取線索,而不是某段孤立的、任意的文本序列。

  • 抽象(舉一反三),在從既有經驗中總結知識的時候,應利用適當的抽象來得出適用範圍更廣的知識(而不僅僅是一個蘿蔔一個坑);另一方面,在遇到新問題的時候,同樣應該對問題進行抽象,觸及其本質,去除不相干因素避免干擾,從而有效提取之前抽象出來的知識

做法:

  • 主動回顧(很難)
  • 創造回憶的機會
    • 經常與別人討論,或者講給別人聽
    • 整理筆記
    • 書寫
  • 設身處地地“虛擬經歷”別人經歷過的事情
  • 抽象和推廣
  • 聯繫/比較自身的經歷

書:

《找尋逝去的自我》

萬維鋼 - 學而時嘻之

1.4學習密度與專注力

  • 專注-真正的效率源自於內心的追求
  • 潛意識的兩面性
  • 如何獲得專注力?

培養你的思維體力,培養專注的習慣,做自己喜歡做的事 ,克服焦慮的負面影響,不能放棄,不讓生活中其它細節干擾

  • 主動關注和被動關注
  • 如何知道你已經獲得了專注力?

非要把東西搞錯纔算嗎?

1.5一直以來伴隨我的一些學習習慣

如何找到知識的本質?

思考:什麼是本質知識?本質知識是需要事先掌握的,用的時候查手冊基本沒用。比如用matlab,對一些數據函數的理解就是底層的,特別是它的性質之類的,公式的形式的使用方式查一下可以快速上手,但要一下要理解一些複雜的公式就會比較困難,事前知道就會輕鬆很多。

熟悉並非指熟悉所有細節,而是那些重要的,或者無法在需要用到的時候按需查找的知識。比如上面提到的:適用場景不適用場景,編程範式,主要語言特性,缺陷和陷阱。

在學習新知識的時候帶着第三隻眼來敏銳地判斷這個知識是否是不變量,或不易變的量,是否完全可以在用的時候查手冊即可,還是需要提前掌握(一些判斷方法在上文也有所提及)。並且學會在紛繁的知識中抽象出那些重要的,本質的,不變的東西。

書:

《奇特的一生》

《像外行一樣思考,像專家一樣實踐——科研成功之道》

《人性的優點》

《高效能人士的七個習慣》

與計算機相關的:

《Computer Systems: A Programmer’s Perspective》-我應該讀

1.6我在南大的七年

《深入淺出MFC》-我感覺mfc已經過時了,看看QT就好。

如何剖析源碼?-可以拓展的技能。

編碼素養是什麼?看《代碼整潔之道》是否有用?

與人交流的重要性-建小組。這時我才意識到爲什麼會有像豆瓣小組這樣的存在。

《影響力》-如何思考,如何正確思考?

他的英語學習方法:閱讀,讀英文技術資料;寫作,交流郵件,英文博客;

第二篇 思維改變生活

2.1逃出你的肖申克一:親身經歷才能明白?

如何清晰地思考:近一年來業餘閱讀的關於思維方面的知識結構整理(附大幅思維導圖)

書:

《Mistakes Were Made》

《找尋逝去的自我》

2.2逃出你的肖申克二:從視覺錯覺到偏見

  • 先驗知識
  • 偏見

2.3逃出你的肖申克三:遇見20萬年前的自己

標題的意思是什麼?

人類的高級認知模塊、遠古認知之間的博弈。例如:立即享樂,長遠計劃。目前我們還只能通過一些方法誘使大腦去做事。

《Mean Genes》上面說了這麼個例子:在遠古社會我們在向姑娘求愛的時候會小心謹慎,因爲一次洋相會很快被傳遞開來從而使得我們變成整個羣落的笑柄,然而在現代社會,尤其是人口流動劇烈,人際關係變動頻繁的大城市,社交失敗的成本近乎於0,所以正確而理性的做法卻是永遠都勇敢地邁出第一步。

2.4逃出你的肖申克四:理智與情感

這篇講的是心理學

情緒大腦-理性大腦

能夠改變既有的習慣,依靠的不是自制力,而是知識。認識到大腦的侷限性,並最終擺脫它的錯誤驅使,則讓人情緒上感到聰明和愉悅。於是我們就以彼之矛攻彼之盾,利用情緒大腦本身的動力來推動了它本身

2.5[BetterExplained]書寫是爲了更好地思考

書寫是對思維的備忘-讓我想到了todo list,先寫框架,再填充。

書寫是與別人的交流-博客、討論

2.6[BetterExplained]爲什麼你應該(從現在開始就)寫博客

去教一個完全不懂的人,則是一種最最強大和徹底的反思途徑-寫博客的時候也要意識到這一點,也許讀者是一個0基礎呢。

讓你自己成爲一個持續學習和思考的人,並只寫你真正思考和總結之後的產物,其他一切就會隨之而來。-不要寫沒用的東西,發之前想想這篇博客到底有沒有價值。

2.7我不想與我不能

自利歸因,就是把一件事情發生的原因歸結爲對自己有利的那種情況

人生不得意往往由兩個原因造成,一個是外因,即你抱怨的那些原因,另一個則是內因。無論哪一個因素不成立,都不會造成現在的結果

2.8[BetterExplained]遇到問題爲什麼應該自己動手

對學習新知識的困難程度的評估,我們卻很不在行,容易把困難評估得過高了。

大部分知識都是需要等你掌握了之纔會“豁然開朗”、“柳暗花明的”,而在這之前你會覺得這東西太難了,完全沒有頭緒,摸不着門道,覺得山重水複疑無路,你會想“既然無路,就別去碰得滿頭是包了吧?何苦呢?”。

自己在學東西的時候何嘗不是,所以不要輕易說難。

你所需要的只是耐心地踏遍這塊知識版圖,當你掌握了那些你該掌握的知識之後自然會柳暗花明。

生活或工作中,很大程度上你遇到的每個問題都不是孤立的,既然你遇到了某問題,那麼很大的可能性你以後還會遇到類似的問題。-所以去解決它!

但是這個觀點也有問題,事必躬親花費的時間是巨大的!在我看來適當利用資源走捷徑是必要的(比如,可以先分清什麼是本質問題,什麼知識不容易過時,這些自己動手比較划算)。

2.9什麼纔是你不可替代性的核心競爭力

個人的核心競爭力是是他獨特的個性知識經驗組合。如果這種組合,1,絕無僅有;2,在實踐中有價值,3,具有可持續發展性,那你就具備核心競爭力。因此,當設計自己的發展路線時,應當最大限度地加強和發揮自己獨特的組合,而不是尋求單項的超越。而構建自己獨特組合的方式,主要是通過實踐,其次是要有意識地構造。

知識技能組合

  1. 專業領域技能:成爲一個專業領域的專家,你的專業技能越強,在這個領域的不可替代性就越高。這個自是不用多說的。
  2. 跨領域的技能:解決問題的能力,創新思維,判斷與決策能力,Critical-Thinking,表達溝通能力,Open Mind 等等。
  3. 學習能力:嚴格來說學習能力也屬於跨領域的技能,但由於實在太重要,並且跨任何領域,所以獨立出來。如何培養學習能力,到目前爲止我所知道的最有效的辦法就是持續學習和思考新知識。
  4. 性格要素:嚴格來說這也屬於跨領域技能,理由同上。一些我相信很重要的性格要素包括:專注、持之以恆、自省(意識到自己的問題所在的能力,這是改進自身的大前提)、好奇心、自信、謙卑(自信和謙卑是不悖的,前者是相信別人能夠做到的自己也能夠做到,後者是不要總認爲自己確信正確的就一定是正確的,Keep an open mind)等等。

第三篇 跟波利亞學解題

3.1跟波利亞學解題

問題歸約,將一個無法直接解決的問題轉化爲了一個新的、已知的、並容易解決的問題。

數學可以從兩個方面去看,一是從歷史的角度再現了真實的數學發展過程(《數學,確定性的喪失》);從思維的角度去再現數學發現的思維過程(波利亞)。

倒推法

國王給囚徒免死的機會

在記憶掌握和分析問題的時候都應該儘量抽象的去看待,這樣才能夠建立知識的本質聯繫,才能夠最大化聯想空間(《Psychology of Problem Solving》)。

在文章中看到了陶哲軒分享:陶哲軒是如何安排時間的.

“你是怎麼想到的?”這是問題解決者最常問的一個問題。我們能不能至少做些什麼工作以使得它們更容易發生呢?—聯想.

何在獲取知識優勢的同時,防止被知識束縛住,是一門技術。掌握這門技術的鑰匙,就是抽象

題目分兩種:一是:求解它們的那個關鍵的知識可以通過考察題目本身蘊涵的條件來獲得,這類題目就是測試思維本身的能力的好題目了。二是:而如果這個性質根本無法通過對題目本身的考察得出來,那麼這個題目測試的就是知識儲備以及聯想能力

一個好習慣:將思維過程寫下來

良好的思維習慣至關重要,而反省加上運用正確的思維方法則是最終養成良好思維習慣的途徑。

書:

《How To Solve It》-波利亞

《像外行一樣思考,像專家一樣實踐》-金出武雄

《人類和動物的情緒表達》

《Mean Genes》

《決策與判斷》

《Predictably Irrational》

《Psychology of Problem Solving》

《專注力》

《找尋逝去的自我》

3.2錘子和釘子

要學會分析問題是什麼,找最簡單的合適解決問題的方法。

3.3魚是最後一個看到水的

說的還的錘子和釘子,身在其中不自知,think out of the box.

學習C++:實踐者的方法(Beta1)

書:

《你的燈亮着嗎?》

《Essential C++ 》

《Accelerated C++》

3.4知其所以然(123

這節說的是學習算法的時候要了解算法背後的思維過程。

就我有限的閱(算法)書經驗,除了波利亞的《怎樣解題》還算合格之外(也並非最理想),其它的(包括有名的《算法導論》、《如何解題:現代啓發式方法》、《Algorithms》、《編程珠璣》,甚至TAOCP——公平地說由於高老大對算法領域歷史瞭解得非常通透,所以許多地方能夠從原始脈絡來講述一個問題,譬如令人印象深刻的從競賽樹到堆的講解就寥寥一頁紙道出了堆這個數據結構的本質來,而像剛纔列的幾本有名的書卻都沒有做到),在思維的講述上都算不上合格(當然不是說這些書沒有價值,作爲知識性的參考書籍,它們將知識整理出系統結構,極大的便利了知識的掌握,就像《什麼是數學》所做的工作一樣),爲什麼我這麼說呢,因爲我發現每每需要尋找對一個算法的解釋的時候,翻開這些書,總是直接就看到關於算法邏輯的描述,卻看不到整個算法的誕生過程背後的思想。

注重對思維過程的描述,而不是給出結果。(我也很厭惡那種直接給出結果是文章,思維可能更重要一些。)

金出武雄在《像外行一樣思考,像專家一樣實踐》中說寫論文應該寫得像偵探小說一樣

看偵探小說會讓我們更有推理和聯想的能力嗎?我覺得在看的過程中有自己的思考和小結纔會有進步,只是看了圖歡樂則不會有太多的收穫。

算法誕生過程中的思路往往包含了比實際算法更本質得多的知識,實際算法乃至算法的某個特定語言的實現包含了太多表面的不相干知識,它們會阻礙對本質的理解。

養成優先從問題的本質入手進行考察的好習慣,而不是聯想。

看定理必看證明.

看一個問題的解法,必然要看解法所誕生的過程,背後是否隱藏着更具一般性的解決問題的思路和原則。

所謂觸類旁通者,其實便是因爲他擅長去理解解法背後的更具一般性的東西。所以我還有一個習慣,就是看到美妙的證明和解法總是會去一遍又一遍的去反覆揣摩,試圖理解想出這個證明的人到底是怎麼想出來的,有沒有什麼一般性的方法可循,很多時候,在這樣揣摩的過程中,你會理解到更深刻的東西,對問題性質更深刻的認識,對解決問題的思路更深刻的認識,這些認識不僅對於你理解當前這個定理或問題有極大的幫助,同時也有助於你解決以後會遇到的表面不同但本質一樣的問題。

簡單地說,如果你對於每個問題都能真正弄清以下這幾個問題的答案,那麼可以肯定的是,你的理解,記憶,以及學習的效率都會得到質的提高:

  • 爲什麼這種解法是對的?
  • 爲什麼那種解法是錯的?
  • 爲什麼這種解法不是最優的?
  • 證明爲什麼沒有更優的解法。

經驗告訴我們,理解錯誤的做法爲什麼錯誤同樣甚至更爲重要,往往是在理解了錯誤的解法爲什麼錯誤之後,我們才能深刻的體會到爲什麼正確的解法是如此正確。

3

爲什麼當時明明懂了,但沒多久就忘掉了呢?爲什麼當時明明非常理解其證明,但沒過多久想要自己去證明時卻發現怎麼都沒法補上證明中缺失的一環呢?

最適合將一個東西講給別人聽的時候並不是等懂了很多年以後,而是剛剛弄懂的時候,這個時候從不懂到懂的差別記憶還非常鮮明,能夠清清楚楚地記得到底是哪些關鍵的地方是最折磨人的,也最能夠站在不懂者的角度來思考問題。

我:要在弄懂一個原理後立即寫下要點,不然等時間長了,那些難以理解的東西由於自己理解了就會覺得順理成章,所以做一個老師最大的難處就在於換位思考,設身處地的爲初學者思考。

這一小節如果要小結一下,標題就挺恰當的,知其所以然。

延伸閱讀:算法之美-《Algorithms》書評

《Introduction to Algorithms》- 原始作者是怎麼創造算法

3.5爲什麼有必要知其所以然

3.6康托爾、哥德爾、圖靈-永恆的金色對角線

3.7數學之美番外篇:快排爲什麼那樣快

如果排序能夠總是將可能性空間切成兩半,那麼N個元素的N!種可能排列只需要log_2{N!}就排查完了,而log_2{N!}近似於NlogN。這正是快排的複雜度。堆排序之所以比快排慢,是因爲它做不做每次比較都是概率均等。快排也做不到,所以也不是那麼快。

3.8數學之美番外篇:平凡而又神奇的貝葉斯方法

逆向概率。

所有需要作出概率預測的地方都可以見到貝葉斯方法的影子,特別地,貝葉斯是機器學習的核心方法之一。

沒有細看,後面如果接觸到了再細看(反正現在看了也會忘)。


豆列:

『只讀經典』思考的技術與藝術(原“學會思考”)

『只讀經典』思維改變生活(原“心理學改變生活”)

『只讀經典』判斷與決策

機器學習與人工智能

參考書:

《把時間當作朋友》

知乎-暗時間(書籍)-用來 參考總結

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章