Skip to content

我是如何學習的

最近在與一些業內朋友、前同事對話時感覺到他們對自己學習的能力有些懷疑,並說自己沒辦法任意的轉換不同公司、框架,挑戰不同的邏輯, 覺得我是個厲害的人,但誠實說,我並不是一個很聰明的人,很多概念我都要反覆的去看去想,才會有覺得記住的感覺,融會貫通就又要花更久的時間。 尤其是現在的這間公司,同事們都是本科碩士,看他們學東西,那是真的快😇

這篇就來分享我是如何學習,並且怎麼去思考這些學習後的概念。 這只是個我的個人經驗得出的一些思維模式,一定不會適合所有人, 但鼓勵大家學習總是要有個開頭,願意嘗試就成功一半了。

學習什麼? 為了什麼學習?

在學習之前,我們要知道時間一定是等價金錢的,這個概念對我來說非常重要,每次的學習投入的時間,都是一個成本,若不學習我們去看劇看電影,獲得到的快樂,也可以算是個投資,我是這麼認為的。

那知道了時間等價後,每次的學習再開始前,我都會先想想,這次的學習我想做什麼,先定個目標、里程碑,讓這次的學習有個斷點,學習也不能無止境的, 達到了我們當初訂的目標,這次的任務就已經圓滿了,不需要太過度的追求,我一定要學得很強、學得比別人多,這是不可能的,我們只要比還未學習之前的自己,更加了解這個概念抑或是任務即可。

在確定學習目標及任務後,我會在確立一個動力,也能說是制約的一環,我會告訴自己在這個時間內我必須學習好這個概念,規律且系統性的安排某一段時間,必須要做這件事,是多是少不重要,但就是要在電腦桌前要打開檔案夾,打上幾個字, Notion TodoList 一直是我的好工具。

Notion

INFO

維持成一個習慣後,自然而然就會繼續下去了,很簡單但也很難。

制約是核心動力的一環,為什麼要學習,為什麼持續,在每一天日復一日的練習<學習>中,這會是支撐下去的動力,堅持住你就會看到成果。

資源在哪裡?

知道目標及確認核心動力後,我們要怎麼去找資源呢?在這個資訊爆炸的時代,有哪些資源是高效的、是還沒被淘汰的呢? 通常我會先想想朋友是不是有做過類似的東西,例如 LLM GEN AI,這個概念很新,資訊又這麼多,很容易被迷惑, 這時想起認識的後端朋友,大學是研究過 AI 的於是我就向他詢問資源,通常只要有一個好的起頭內容, 內容中的關鍵字就會與其他好資源關聯, 資源的好壞,往往直接影響我們是否能接觸到這次學習的本質、核心。

DANGER

我們要學習本質及核心,而不是封裝後,似是而非的概念~

曾經我買過大量的程式課程,國內的資源平台、國外的資源平台、對岸的資源平台,我都註冊過會員,也都買過課程,但我覺得有些資源真的是用關鍵字就能找到一堆比課程更好的範例,有種白花錢的感覺。

我的 mentor 曾經告訴我,要去思考概念的本質,本質往往很簡單,學會了本質再去看,才學得通。

前端框架的本質最後都會轉化成 js html css,bundler 框架語法糖 lib 第三方庫,最後都會變成這些東西,在何時轉換、如何轉換、轉換的效益,包含了很多前端的知識, bundler babel axios lodash vue react html tag tailwind http request 網路協定 method,這些東西成複雜的資料夾架構、程式碼區塊,但最終還是只會變成 js html css,當然這是很模糊很大的一個概念,裡面有很多很多可以深究的要素,但要知道學習本質就好,大多數的概念其實都是為了達成某要素。我們就是要找到要素是什麼,一開始一定是會不清不楚的,常常碰壁,這很正常,學習本來就是持續的過程,一次就能找到正確答案的東西,往往也很快就會忘記,痛過才會記得,這是我的些許體悟。

如何練習

練習不是隨意的練習,打打嘗試過就叫練習了,而是要刻意的練習,我知道這很八股,但這就是這樣, 練習是多面向的,js 的迴圈有幾種,迴圈類型的差異在哪裡,什麼時候要用什麼迴圈,為何有些結構可以迴圈, 有些不行,我在程式碼中的某個段落迴圈會發生什麼事,迴圈太多次會怎麼樣,我在迴圈裡打下一個迴圈又會怎麼樣, 結束迴圈的條件是什麼?上面只是一個範例,但刻意地嘗試思考多一些問題,嘗試找出這些問題的解法,如此往復差異自然而然就會出現, 從小小的迴圈到新概念,多做幾次多錯幾次,漸漸就會清晰,知道某些結構在哪裡會錯,關鍵字在哪裡如何下,有哪些約定俗成的概念是都需要遵守的。

在進入這間公司前,我沒寫過 python,但報到後的一個月,我已經發了幾次修正後端 issue 的 mr,還幫忙研究新的 llm metrics 工具,看程式碼架構我覺得沒有很懂,有些資料結構跟語法上的差異跟 js 不一樣,但我要做的事情是一樣的,是明確的,我就用 js 的關鍵字與 python 關聯。

INFO

遇到新的概念時,不要先否定、排斥,要先觀察,想想是不是有相似的概念我學過了,先用舊概念驗證看看

大量的刻意練習,會在意想不到的時刻,幫助你。 說穿了只是多做一點、多想一點而已,這個過程會很枯燥、有時候會懷疑,但只要你有核心動力堅持住,就會有意想不到的回報。

驗證及覆盤

怎麼去驗證這些學習到的新知識,其實在練習中就是在驗證了,在練習的過程中,會發現有些點好像有所關聯,透過這些關聯的點,發想一個小題目小案子去實作, 要馬遇到更多問題需要學習,要馬就是成功實作出來,也就是透過這些實作再次的驗證,學習到的東西,去再次關聯,就這樣不斷的重複。

或是分享輸出給周遭的同事、朋友們,透過口語或文字的輸出,也是再次加深印象的一環,有些概念他們有不同的想法時,更是能驗證自己所學的概念,知識的碰撞也是一種學習。 若所學的概念不夠堅實,你也不會為之辯護。

結語

為自己規劃學習路徑,空出時間持續練習,堅持住枯燥乏味衍生的自我懷疑,每一次的都比昨日的自己更進步一小步,相信每次的刻意付出都是成就更好的自己。 或許不會馬上的看到回報,但要相信不會白費這些時光。

每月寫一篇部落格,堅持到現在也兩年了。一開始也只是為了面試有個好談資,但寫著寫著也變成了自我對話回顧的一個紀錄。

加油!祝看到這篇文章的每個人,都有好歸宿!

Released under the MIT License.