大學四年,研究生三年,我的學習寶典。
大家好,我是 Jack。
隨著讀者的增多,越來越多的讀者會找我諮詢一些建議或學習心得。

看到這些問題,我都會利用閑暇時間,一一解答。
這兩個問題只是眾多問題的一小部分,屬於都有著不錯基礎的。
其實更多的是一些對於學習方法的困惑,比如看書好、還是看影片好,怎樣自學。
這些困惑,我也都經歷過,在學習過程中也踩了不少坑,好在及時反思及時調整。
今天,給大家分享一下自己的學習經歷,看書、看影片的經驗,期望對你有所幫助。
與君共勉!
初學者,比較容易糾結的一點是:是先看書還是先看影片?
其實,無需糾結,它們都是相輔相成的,並且還需要再加上一個實踐環節。

看影片
先說,看影片。
如果是零基礎,純小白,那我建議從影片開始學起。
影片的好處是,學起來更輕鬆、更有效,不容易從入門到放棄。
古之學者必有師,而沒人說古之學者必有書。
影片通過聽覺和色彩豐富的視覺傳遞資訊,比書本單一的黑白視覺資訊能讓學習者更易於接收。
同時,影片講師在講課的時候,會把自己的理解傳授、灌輸給你。站在「巨人」的肩膀上,學起來會快上許多。
但需要挑選好的影片來學習,互聯網讓資訊更容易觸達,不過想從龐雜的資訊中篩選出有價值的內容,也需要花費大量的精力。
我曾經出過一篇文章,系統介紹了一些優質的影片資源,涵蓋了以下方面:

精挑細選的學習影片,有需要的可以看一下:
總之,初學者從看影片學起。
看書
雖然看影片輕鬆有趣,知識點易於吸收,但它的缺點也明顯。
看影片,往往是所有東西過一遍,學了個大概,但對基本概念不甚明確。知識沒有書里詳盡,會導致基礎不紮實。
所以,看書的過程必不可少。
在學習過程中,我們可以先有個全局觀。
因為看過影片,所以涉及的知識點是有整體印象的,然後根據目錄,羅列出涉及的知識點。
比如我學習深度學習的時候,大致羅列了一下知識點:

這樣,循序漸進、逐一擊破,可以學得更通透、更系統。
在學習過程中,根據個人習慣,可以選擇是否記筆記,我是習慣記一些筆記。
比如,我曾經入門機器學習,看得書就是「機器學習實戰」,理論結合實戰。
然後做了學習筆記,這也是我當初系列教程的由來:

我做這個系列教程的初衷就是,讓小白都看懂,方便自己日後回顧。
對,沒錯,最初的目的就是幫助自己回顧,沒想到還小火了一把。
書籍也是,有很多,那有系統的好書可以看?
我剛整理了一小部分,還沒有整理完。整理好後,我再發給各位:

編程能力、演算法基礎、數據分析、數學基礎等等方向的書都在梳理中!
一句話總結就是:跟影片里的老師學個大概,有了一個全局觀,再去讀經典的書,夯實基礎。
做項目
最關鍵的環節,動手實踐。
學編程,一定要勤動手。光看影片、書籍,不動手寫程式碼是不行的。
編程是偏工科性質的,強調的是動手能力。
本科
本科生,可以參加一些科技競賽,比如 ACM、大學生電子設計大賽等A類科技競賽,獲得國家一等獎,還有保研加分,甚至直接保研的機會。
比如我曾經參加過的智慧車比賽,當年這個比賽還叫飛思卡爾。
智慧車的機械結構、硬體電路、控制演算法,都是參賽團隊自己設計的。

當時畫的板子很騷氣,弄隊名,刻名字的,當年小車的整體結構。

雖然,現在看來,這些知識很簡單,但是對於剛學硬體電路,程式語言,控制演算法的新手來說,確實是一個非常棒的比賽。
經過這次比賽,我們團隊里的每個人,都學到了很多知識。
本科可以參加的競賽很多,不要錯過機會。
不少應屆畢業生找工作,填寫簡歷突然發現,項目經歷沒得寫!
要是在校期間,參加了不少競賽,那就不用愁簡歷沒有項目經歷了。
研究生
研究生,那可以做的就更多了,除了競賽,更多的是實驗室的項目。
比如,我曾經跟實驗室的同學們一起做的一個六路全景系統。

硬體電路、Linux驅動、上層影像演算法、Qt介面開發等等都做了一遍,邊學邊做。
這就是一個完整的項目經歷。
不過,實驗室的項目如果自己不感興趣,那就參加一些網上的科技競賽。
比如,Kaggle。

再比如,阿里雲天池。

既能打比賽,又能贏獎金,何樂而不為呢?
除了這些,如果有機會能出去實習,那一定要去實習!
去大廠實習,還有轉正機會,積累項目經歷,在正式批找工作也會更具優勢。
寫在最後
一本好書,一個好影片,一種好的學習方法,可以幫助我們快速成長。
看書,看影片,相輔相成,跟影片里的老師學個大概,有了一個全局觀,再去讀經典的書,夯實基礎。
學習的同時,一定要勤動手,培養自己的實戰能力,多做競賽和項目。
最後再送大家一本,幫助我拿到 BAT 等一線大廠 offer 的數據結構刷題筆記,是一位 Google 大神寫的,對於演算法薄弱或者需要提高的同學都十分受用:
以及我整理的 BAT 演算法工程師學習路線,書籍+影片,完整的學習路線和說明,對於想成為演算法工程師的,絕對能有所幫助(提取碼:jack):
祝各位終有所成,收穫滿滿!
我是 Jack,我們下期見!

