前言
今天寫下這篇文章,是爲了對這三年的工作和學習做一個總結。
本文的所有觀點均出自作者這三年經歷所得,如有不足或錯誤之處,敬請諒解。
工作經驗
- 通常情況下,技術和薪資成正比。
- 技術好的人比較自信,脾氣也比一般人暴躁。
- 不要裸辭,找好下家再辭職。
- 漲薪基本靠跳槽。
- 同事有可能會成爲朋友,但最終都是過客。
- 戒掉王者,忍一時之痛,換終生榮耀。
- 熬夜基本不可能戒掉。
- 都是出來打工的,沒人欠着你,不要耍性子。
- 要有職業規劃,沒有就去想,直到想出來爲止。
- 善用 fan qiang 工具,好處多多。
- 面試造航母,工作擰螺絲不是玩笑話。
- 要學會心平氣和的跟產品溝通,尤其是不懂技術的產品,雖然很難。
- 越禿越強只是個梗。
- 每天寫業務頁面不能讓你變強,頂多算是比較熟練的流水線工人,要變強還得靠業餘時間。
- 喜歡學習的程序員很少,得過且過纔是大多數。
- 工作不忙時,儘量利用這段時間學習;技術越好,任務完成得越快,摸魚的時間就越多。
- 少管閒事,有時間多學習。
- 少關注八卦新聞,多學習。
- 別拍馬屁,有那功夫多學習。
- 時刻反省自己,今天有沒有學習。
學習經歷
由於我是高中畢業,並且 28 歲纔開始學習編程,所以起點比一般人差很多,完全是零基礎,需要學習的知識也特別多。
在找工作前,我花了五個月時間自學編程。
第一個月學的 C 語言,結果發現 C 語言不好找工作。第二個月轉學 python,學了一個月發現招聘崗位很少,又放棄了。第三個月,痛定思痛,我決定先去網上搜一下什麼語言好找工作再做決定,最後選了前端做爲學習的方向。
接下來前端學習了三個月,HTML 和 CSS 是在 w3school 上學的,JavsSciprt 則是看的 《JavaScript 高級程序設計第三版》。在學習的同時,還做了百度前端技術學院 2016 的任務來鞏固和提升技術。三個月後開始找工作,2017 年 2 月找到了第一份工作,終於轉行成功。
接下來的三年學習經歷可分爲前端和計算機理論知識兩個方面來講。
前端
關於前端學習,我的宗旨是:
- 基礎知識爲主,庫、框架爲輔。
- 理論與實踐結合,學習更高效。
- 時常寫文章總結,將學到的知識消化了再寫出來(費曼學習法)。
庫、框架都是工具,基礎打好了,學習第三方工具才能事半功倍。
基礎知識(JavaScript、CSS、HTML)
在這三年裏,我看了大量的前端書籍,具體如下:
- 你不知道的JavaScript(上)
- 你不知道的JavaScript(中)
- 你不知道的JavaScript(下)
- JavaScript高級程序設計(第三版)
- 高性能JavaScript
- ES6標準入門
- JavaScript語言精粹
- JavaScript DOM編程藝術 第2版
- CSS揭祕
- 高性能網站建設指南
- 高性能網站建設進階指南
- Web性能權威指南
在看書的同時,我還做了百度前端技術學院 2017 年的任務。功夫不負有心人,看書和做練習讓我的技術水平得到了極大的提升,以至於後面對 Vue 源碼的學習起到了很大的作用。
庫、框架
關於第三方庫的學習,我只對 JQuery 和 Vue 進行了深入學習,其他的庫都是看文檔按需使用。
深入學習 JQuery 的成果:寫了兩個組件。
深入學習 Vue 的成果:
- 寫了一個 Vue 動態表單組件,發佈到 NPM上。
- 模仿 Vue1.0 版本寫了一個 MiniVue,這讓我對 Vue 的理解達到了源碼級別。
- 寫了幾篇關於 Vue 的文章。
nodejs
學習 nodejs 的時間比較少,主要是工作用不上。成果是寫了一個個人博客 node-blog,涉及到服務器和數據庫知識。
計算機理論知識
計算機理論知識決定了一個程序員的天花板(在國內還得加上英語)。
數據結構與算法
算法看的是 《算法 4th》這本書,課後習題沒做,刷了不到一百道 leetcode 的題。
編譯原理、計算機原理
由於編譯原理和計算機原理是看的同一本書《計算機系統要素》,所以就放一起說了。
這是本神書,內容通俗易懂,涉及計算機原理、編譯原理、部分操作系統知識,每一章後面都有對應的練習,需要你寫代碼完成。
如果完成了本書所有的項目,你將會獲得以下成就:
- 構建出一臺計算機(在模擬器上運行)
- 實現一門語言和相應的語言標準庫
- 實現一個簡單的編譯器
而且,這本書的門檻非常低,只要你能熟練運用一門編程語言即可。我已經把這本書所有項目都做完了,答案放在 github 上,有興趣可以看看。
操作系統
操作系統看了《操作系統導論》以及《深入理解計算機系統》(這本書更像是計算機導論),並且做了MIT6.828 的項目寫了一個簡單的操作系統內核。
其他
這是沒有做或做了一部分練習的。
總結
計算機理論知識值得每個程序員都去認真學習。不過,持續學習並不是一件容易的事,需要你有堅定的目標和強大的自驅力。如果不想學習,可以看電影玩遊戲放鬆一下,注重勞逸結合,不過也要警惕玩遊戲上癮,這都是血的教訓總結出來的。