如何在學校、公司學習?
如何提升技能?
如何技術選型?
如何做深度而又不失廣度?
如何成爲管理者?
如何創業?
什麼是好的程序員?
什麼是高速增長的方向?
你有三次機會:
分析問題(爲什麼)
整合資源
邊做邊看
傳統學習法:
1. 破碎的知識點
2. 關注what 和 how
解讀GFS(Google File System)
1. 不要背答案,學會找到特定問題的特定方案。
2. GFS特定於大文件的場景
3. 讀寫過程是核心
學習生長法:(不僅是生長方法,更是一種解決問題的思維方式)
方法:通過爲什麼把零碎的知識邏輯串聯的知識網
優點:記得牢、舉一反三
E.g.解讀MongoDB
Saves documents whose attributes can beupdated freely
Adds padding into documents to reducefragments
Uses pre/next points to increase lookupspeed
Saves the documents into a sequence of 16M,32M, … 2GB files
Uses BTree (a better version of BST) tobuilt index
如何在學校學習?
1. 這是個問題嗎?(yes or no)
2. 爲什麼學習? (爲什麼學習?)
3. 如何成長?(爲什麼成長?)
方法:讀書,向牛人學習,google、
4. 怎麼向牛人學習?
共事
5. 什麼能力是職場上的程序最重要的能力?
溝通能力、抽象能力、學習能力
用生長學習法解讀算法題:
(判斷一個二叉樹是否爲對稱樹)
解答見算法設計leedcode 。
面試的時候都在幹嘛?
聊簡歷、知識點、系統設計、算法題、面向對象設計
虛假的天才
當我登臨高峯,我知道所謂的天才都是騙人的