如何避免陷入教程地獄? - josh

banq發表於2021-11-07

人們常說,網際網路使教育民主化:人類知識的總和只是谷歌搜尋!然而,獲得資訊只是故事的一半;您還需要能夠將原始資訊轉化為可用的技能。
對於我們中的很多人來說,者兩者之間的差距可能會導致像教程地獄:在一個接一個的教程中陷入困境,卻從未感覺自己取得了實質性的進步。
何有效學習非常重要,尤其是作為軟體開發人員;學習新事物實際上是整個演出!如果你能學會快速掌握新的語言/框架/工具,你就能比普通開發人員更有效率。這是一種超能力。
在這篇博文中,我將分享我在學習中學到的東西,並向您展示我如何掌握新技能 lickety-split!
 

兩種學習Learn
從廣義上講,學習分為兩類:

  1. 有指導:閱讀教程、參加課程、觀看 YouTube 影片。您遵循指南的任何地方。
  2. 無指導:從頭開始建立自己的專案,擴充套件教程,在文件中查詢內容。任何您沒有遵循指南的地方。

如果您只遵循有指導的學習,您將陷入教程地獄。您不會培養作為開發人員取得成功所需的解決問題的技能。當您嘗試構建自己的專案時,您將不知道從哪裡開始。你會覺得你花了很多時間練習,卻沒有培養任何切實的、實用的技能。
另一方面,如果您完全專注於無指導的學習,則需要時間很長。如果沒有經驗豐富的指導,您將需要重新發明每一個輪子,花費數天或數週的時間來解決已經解決的問題。這是一條漫長而令人沮喪的道路。在最壞的情況下,你可能會完全退出,確信(錯誤地!)你只是不夠聰明,無法處理這些事情。
 

故意犯錯
如果你和我一樣,你不喜歡犯錯。你希望一切都完美無缺。
這種心態通常對生活很有幫助,在其他領域也很有幫助。如果您是一名汽車修理工,錯誤可能會導致零件損失數百美元。如果你是一名牙醫,一個錯誤可能會毀了某人的笑容。
但是,在軟體開發中,錯誤是免費的!如果我們犯了錯誤,我們可以返回編輯器,更改程式碼,然後重試。我們甚至有有用的錯誤訊息,可以(有時)為我們指明正確的方向。這是一種令人難以置信的奢侈,而且我們還沒有充分利用。
當我學習教程時,我喜歡玩程式碼。不要逐字複製/貼上提供的程式碼,而是嘗試對其進行試驗:如果省略其中一行會發生什麼?或者如果您更改某些值?
我試著表現得像個科學家。如果我對這段程式碼應該如何工作有一個假設,我會透過更改程式碼來測試該假設,並檢視它是否以我期望的方式中斷。當我發現我的假設有缺陷時,我可能會繞過教程並在谷歌上做一些研究。或者,如果兔子洞似乎太深,我可能會將其新增到“稍後要探索的事物”列表中。
這個過程可以幫助我們避免跟隨自動駕駛教程、複製/貼上程式碼而沒有真正理解它的作用或我們為什麼這樣做的險惡節奏。
學習是一個主動的過程。戳戳程式碼將幫助我們為正在發生的事情建立一個心理模型。
 

相關文章