如果人的思想是程式 閱讀和經歷就是原始碼
維爾阿杜安的《第四次十字軍東征》我看過不下兩次,但是你讓我把我記住的內容寫下來,我可能連一張紙都寫不滿。類似的感受發生的太多了,以至於每次看到我的書架時,我都會感到焦慮,如果我只能記住這麼點內容,我花那麼多時間讀這麼多書幹嘛呢。
幾個月前,我在讀Constance Reid寫的《Hilbert傳記》(數學家大衛·希爾伯特)時的一段閱讀體會,撫平了我的這種焦慮感:
書中有這樣一段話:
希爾伯特不喜歡去在數學課堂上講述事實,他更希望教學生構建數學模型去解決生活中的實際問題。他過去經常給學生們講“一個完美的公式本身已經是答案的一半”
我一直都對這個觀點深信不疑,在看到希爾伯特也這麼說以後,對它更加深信不疑了。
但是我最開始是怎麼形成這樣一種觀念的呢?它應該來自於我閱讀到的知識和我親身的某個經歷之間的碰撞和融合,但我之前閱讀的內容和我的那些經歷本身我都記不住了。可能到最後我會忘記希爾伯特也曾表達過這個觀點,但是這次閱讀經歷讓我對這個觀點更加堅信,哪怕我連曾經讀過這本書都忘記了。
閱讀和生活經歷構成了你的世界觀,即使你忘記了具體的經歷或者閱讀內容,它們的影響力仍在。人的思想就像一個編譯過的程式,原始碼或許找不到了,它們默默的發揮著作用,可你卻不知道為什麼。
我在讀維爾阿杜安的史學書時,我學到的不是我記住了些什麼,而是我對於十字軍東征、威尼斯、中世紀文化、圍攻戰等等歷史概念形成的思維模型。其實不是說我應該讀的更認真一些,而是我要明白我從中收貨的東西其實比看起來的要多的多。
這讓我聯想起賈伯斯的一段話
你在憧憬未來時不可能將以前積累的點點滴滴串連起來,你只能在回顧過去時將它們串連起來。所以你必須相信,當前積累的點點滴滴,會在你未來的某一天串連起來。你必須相信某些東西——你的勇氣、目的、生命、因緣等等——相信它們會串聯起你的生命,這會讓你更加自信地追隨你的心,甚至,這會指引你不走尋常路,使你的生命與眾不同。
這些道理並不是讓你用來寬恕自己的健忘的,雖然它確實能讓很多對自己記憶力不滿意的人感到安慰,它其實有更重要的內涵。
閱讀和生活經歷通常是在發生的當下在你的大腦中進行“編譯”的,在你當時的思想狀態之下。同一本書,在不同的人生階段閱讀時,他們“編譯”的結果是不同的。所以好書是非常值得重讀的。過去我經常將閱讀和木匠的工作類比,覺得重來一次就跟宣判上一次工作失敗了一樣。但是現在我不這麼認為了,連“已經讀過”這樣的詞彙我都覺得不能使用了。
有意思的是,閱讀的奧義不僅侷限於書本,科技讓重溫一段經歷變得越來越容易,目前的科技水平下,這種重溫可能是通過看一張旅遊時的照片,就像在原始碼中找bug一樣(例如喜劇演員斯蒂芬·弗雷在催眠師的幫助下回憶起了那段童年的創傷,找到了自己患有唱歌障礙症的原因)。隨著技術手段的進步,也許人們可以不帶目的去重溫一段經歷,僅僅是為了從中學到點什麼,就像重讀一本書一樣。最終除了回顧以外,也許我們還能對過去的經歷進行索引和編輯,所以說,能夠理解大腦“編譯”的方式,也許是作為人類所應具有的能力。
曾經有人定義哲學家是這樣一群人,他們“對越來越巨集大的領域,知道的越來越少”(Know less and less about more and more))。在追求知識的廣度的時候,必然會損失知識的深度。但是這種廣泛的涉獵所吸收的內容,會在未來的某一刻從大腦深處浮現出來,讓你瞬間獲得所謂“頓悟”或者“靈感”。古人云,“讀萬卷書,行萬里路”,看似漫無目的的閱讀、經歷和積累,最終都會醞釀成所謂“智慧”,這是無法通過傳授或者速成來獲得的。賈伯斯的座右銘“stay hungry,stay foolish”,也許也可以理解為,忘記你已經學過的東西,始終保持對未知世界的好奇心和謙卑,不斷地汲取更多地知識。因為即使忘記了知識本身,它所沉澱的智慧也會一直伴隨你,更好的認識這個世界。
相關文章
- Paul Graham:如果人的思想是程式,閱讀和經歷就是原始碼原始碼
- 【原始碼閱讀】AndPermission原始碼閱讀原始碼
- 程式設計師是這樣閱讀簡歷的程式設計師
- 也談如何閱讀程式原始碼原始碼
- 【原始碼閱讀】Glide原始碼閱讀之with方法(一)原始碼IDE
- 【原始碼閱讀】Glide原始碼閱讀之into方法(三)原始碼IDE
- 如何閱讀別人的C/C++程式碼C++
- ReactorKit原始碼閱讀React原始碼
- AQS原始碼閱讀AQS原始碼
- CountDownLatch原始碼閱讀CountDownLatch原始碼
- HashMap 原始碼閱讀HashMap原始碼
- delta原始碼閱讀原始碼
- 原始碼閱讀-HashMap原始碼HashMap
- NGINX原始碼閱讀Nginx原始碼
- Mux 原始碼閱讀UX原始碼
- HashMap原始碼閱讀HashMap原始碼
- fuzz原始碼閱讀原始碼
- RunLoop 原始碼閱讀OOP原始碼
- express 原始碼閱讀Express原始碼
- muduo原始碼閱讀原始碼
- stack原始碼閱讀原始碼
- Appdash原始碼閱讀——RecentStore和LimitStoreAPP原始碼MIT
- 開源經歷就是最好的簡歷
- 閱讀原始碼的樂趣原始碼
- 【原始碼閱讀】Glide原始碼閱讀之load方法(二)原始碼IDE
- PostgreSQL 原始碼解讀(3)- 如何閱讀原始碼SQL原始碼
- 程式設計思想之——"人是活的,程式是死的"程式設計
- 閱讀mybatis的原始碼的思路MyBatis原始碼
- Kitex原始碼閱讀——腳手架程式碼是如何通過命令列生成的(二)原始碼命令列
- Kitex原始碼閱讀——腳手架程式碼是如何通過命令列生成的(一)原始碼命令列
- 我的原始碼閱讀之路:redux原始碼剖析原始碼Redux
- 個人經驗分享如何閱讀Go語言原始碼Go原始碼
- redux 和 react-redux 部分原始碼閱讀ReduxReact原始碼
- PHP原始碼閱讀:strtolower 和 strtoupper 函式PHP原始碼函式
- JDK原始碼閱讀:Object類閱讀筆記JDK原始碼Object筆記
- Laravel 原始碼閱讀 - QueueLaravel原始碼
- Vollery原始碼閱讀(—)原始碼
- 使用OpenGrok閱讀原始碼原始碼