“你是怎麼學會所有這些框架和語言的?”,最近在黑客馬拉松上一個朋友問我。
“其實,很簡單,只要用你想學的東西去建立一個合適又值得的專案就行了,”我回答說。
“真的嗎?直接上手搞專案嗎?“,他好奇地問。
“是啊,還有要向合適的人徵求意見。聰明的人通常都很樂於教導和幫助別人。“我告訴我的朋友,同時心中想,我為什麼不關於這方面的內容寫一篇部落格文章呢。——於是有了本文。
對想要在科技領域工作的人非常重要的一件事情就是,你得學會如何學習。我和很多非常聰明的人談過關於學習和掌握技能方面的內容。我還花費大量的時間給我的朋友和同事們講述一些關於如何學習的指導/建議。在這篇文章中我將為大家詳細分析一些要點。
假設你想要學習這個語言/框架/ API /工具/事情,你其實真的並不需要知道從哪裡開始。具體怎麼做,下面我將一一說明,希望能對你有用。
1. 閱讀文件
使用任何語言或框架的關鍵是熟悉它的文件。轉至你想要學習的內容的主頁,從頭到尾看一遍上面的起步/快速入門教程。如果沒有(這是罕見的),或它們的文件很難(這倒並不罕見),那就找找相關專家的建議。通常第三方教程都會告訴你你所需要知道的。
不要害怕學習新的東西。你會驚奇地發現原來get新技能是這麼容易的一件事。
2.找一個值得構建的專案
你挑選的專案必須是你熱愛的,能夠真正投入到學習中去的。有什麼想法,就去實現它!如果沒想法,那麼下面是一些幫助你找到專案的小提示。
說實話,當我想學習新內容的時候,我常常也找不到合適的專案。我的做法是諮詢其他人的看法,直到遇到一個讓我興奮的好點子。我的朋友Yamil Asusta對於這方面就很有見地,最近他就這個主題表述了他的一些看法。在這裡我想推薦兩個他提出的好方法:
- 如果你想學習一門程式語言,學習HTTP請求在這種語言下是如何工作的。那麼,你和其他工具互動的方式最好主要是通過HTTP,這本身就會讓你明白語言的工作原理。
- 找一個可以使用不同工具建立的小專案。複雜度適中的小型web app,同時允許你使用其他框架,這樣也可以學習其他框架的工作原理。使用不同工具構建同一個東西,能讓你清清楚楚地明白工具之間的差異。
3.開始啟動專案
萬事開頭難。不要想著得過且過。從現在就開始,將時間儘可能多地投入到學習中來。
發現教程,可以開始啟動專案,想到要構建什麼專案,也可以開始啟動專案。充實專案需要搜尋程式設計軟體,詢問朋友,閱讀更多的文件。不要隨便亂寫程式碼,不要只在從以往的經驗角度來看問題。閱讀文件,將時間用於理清常見的設計和架構模式。
4.詢問知道的人
不要害怕問問題。如果你不虛心請教,那麼你將用上更長的時間才能得到問題的答案。即使是最好的專家,在某些時候也是一個初學者,並且大多數人都願意指導和幫助他人,回饋社會。
提問的關鍵是你不能浪費任何人的時間。所以要提正確的問題。沒有人願意回答只需要谷歌搜尋就可以解決的問題。最近我在和Hector Ramos(一個花了大量時間幫助大家解決Parse問題的人)交流時,他提到了當別人詢問他時,他喜歡的兩類比較簡單明瞭的問題。
- 我想用Parse來實現this,以及this部分的文件,但是它不工作(肯定是我哪裡犯了錯誤)。你能幫我看看嗎?這是我的程式碼片段。
- 我可以用Parse執行x嗎?
- 對某個專業領域知道得很多。
- 學識淵博,對很多領域都有一定的瞭解。
5.部署專案
讓你的專案到達一種你認為“完成”的狀態。這意味著你並不需要做到臻於完美、100%完成,也不需要搗鼓得非常漂亮。只要你覺得你的專案OK,並願意展示給其他人以顯示你是多麼棒就行。
當你完成專案之後,一定要把它放到Github上,或者部署到能讓其他人看到的地方。這麼做能允許別人批評和評論你的工作,敦促你為自己的工作負責,製作出更好的作品來。此外,這還能讓你將來的僱主看到你豐富的經驗。
即使你認為你的程式碼很爛,但你願意展示的這個事實本身就說明了你是一個開發人員。你已經領先一步於那些甚至沒有程式碼產出的傢伙。
如果你要問別人問題,首先要讓他們知道你學習到了哪裡,向他們展示你的工作,讓他們知道,他們為你解答問題的時間不會白費。最後,完成第一個專案之後,那就去做下一個。學習寫程式碼的唯一方法就是寫程式碼。同樣的,學習新框架的唯一方法就是在這框架下寫程式碼。所以,加油吧。
上面這些是我學習新工具的步驟。如果你也想要充分利用時間學習新的東西,那麼我相信這將會是一個良好的開端。
最後,各位若有不同看法,歡迎留言。
評論(2)