1.克服慣性
將大塊任務細分為微任務。
2.關注大牛
你想學的或許是一門新的編程語言、應用框架或者是新的工具,一旦你確定了想要的是什么,就立刻去收集相應的優秀群體所做的一些優質的工作成果。這些可以從YouTube、Vimeo、HackerNews、各種博客,甚至是你的微博好友那里獲取。關注別人做了些什么可以給你強大的信心,讓你覺得 “You can do it, too!”
3.建立知識網
當你對自己要學習的東西建立了信心之后,接下來要做的就是做一塊海綿,然后開始瘋狂地吸收知識。從Google搜索關鍵詞“beginner tutorials”開始吧,搜索一些跟你要學習的知識相關的入門教程。如你所知,Nettuts+上面有成千上百的各種教程供你選擇,StackOverflow上面也有很多學習資源。此外,Quora也是一些不錯的選擇。通過瀏覽這些網上的資源之后,如果想要集中精力學習某一方面,這時就需要閱讀一些相關的書籍了,個人推薦在Amazon上面尋找一些評分較高的專業書籍來提高自己。
4. 多聽多看
隨著你對技術的深入挖掘,你可能會想利用更多其他形式的學習資料,比如podcasts,screencasts等等。我的建議是多用 iTunesU,這上面有很多很專業的知識可以讓你對于特定的領域進行深入的探索。
目前,有很多的網站都有提供在線教育服務,你可以在下面幾個網站上找到自己需要的教程:
· Udemy
· CodeCademy
· CodeSchool
此外,你也可以看一些免費的會議視頻材料,比如YouTube上面的Google IO,以及Confreaks!
5. 行動起來
用你所掌握的技術做一個個人的小項目,設計一些簡單的功能并且實現他們。毫無疑問,你會遇到很多的絆腳石,當遇到它們的時候,在StackOverflow或者Google上面搜索之,解決之。你已經踏上一條成為某一領域專家的旅程,遇到的困難挫折越多,你會變得越睿智。有句老話說得好,“專家是犯錯最多的人”,這意味著他們嘗試了很多瘋狂的事情來探索這門技術的極限,最后,對于這門技術是如何運作的就可以知根知底。擁有這種洞察力之后,他們便可以隨心所欲的運用這項技術去按照自己的意愿完成想做的事情(當然,是做好的事情)。
6. 寫博客
如果你想走的更遠(比如想像Nettuts+上面的職業作者一樣),你也可以制作屬于自己的screencasts。總的來說,寫博客能夠提升你的個人溝通能力,這與你學到的技術同樣重要。
7. 感受技術的脈搏
社交網絡已經廣泛應用于人們的日常交流以及發現新鮮事物。Twitter和Facebook是信息的主要來源,與此同時,有很多的網站提供更專注的資訊,如前面提到過的Quora網站,這上面有很多涉及面很廣的一些話題供人們評論。在這上面可以找到很多知名大牛的建議以及觀點。
8. 參加聚會以及會議
盡管社交網絡很棒,但是沒有任何事物可以取代面對面的交流。在你住的附近參加一些小組聚會,在這里你可以找到志同道合的伙伴。你可以知道他人在做的一些有趣的項目,同時也可以在他人的幫助下解決一些自己遇到的難題!同樣的,技術會議對于分享經驗以及增長技術大有幫助!
9. 擁抱GitHub
GitHub是全世界開源項目的標志性“建筑物”。它是知識以及優質代碼的寶庫。當你對某項技術自我感覺良好的時候,下一步便是在GitHub中瀏覽尋找有趣的項目。閱讀開源代碼,盡可能多的閱讀。這樣做的話,你能夠學到很多東西,比如說:
· 如何管理規模較大的項目
· 項目中應用的有趣的庫
· 代碼規范以及代碼全局設計
· 文檔風格
· 測試規范
· 解決詭異問題的方法,以及發現項目中有問題的地方
所有的這些知識都在等待著你去挖掘。有趣的是,這些知識的通過一個簡單的標簽就可以得到,那就是“好奇心”。
10. 專注學習
如果你擔心上述的學習過程太遲緩,那么你也可以嘗試一下快速學習模式。你或許聽說過“24小時學會某某某”,但是這種方式不是我所推薦的。我認為更合理的是用幾周的時間去學習。你可以嘗試一下類似“七周學會七種語言”或者是“七周學會七種數據庫”等學習方法。盡管這些講的是語言以及數據庫方面的學習,但是你在學習其他技術的時候也可以運用這種思維。
有一個不太相同的學習風格是“困難學習模式”,這種觀點的前提是沒有人可以真正掌握一門技術,除非每天都練習。所以,想要成為專家,你就需要不停地進行練習。異曲同工的是你可以查看Katas 和 Koans,他鼓勵的使用你學的知識來解決問題。這些可以讓你更好地入門以及接受那些陌生的概念,勇敢走出自己的舒適區,開始學習新知識!
學習一門交叉的技能
編程是一項左腦的運動,它利用的是大腦的分析能力,一步一步地尋找解決問題的方法。為了發揮右腦的功能,你可以嘗試從事一些創造性的活動,比如說畫畫、3D建模、折紙、樂器甚至是制作家庭相冊等。事實上,編程同樣需要大量的創造力。或許你曾經遇到過類似的事情,你在睡夢中找到了問題的解決方案。這是因為你的右腦處理問題的方式很不同,它可以從各種地方獲得信息。敏捷開發權威人士Andy Hunt就這個話題寫了一本書《程序員的思維修煉》。如果你想點燃你的每一個神經元,建議你開始學習一門交叉的技能。
總結
掌握一門新技術振奮人心,這是一項影響你思維的新的體驗。但是首先,你必須克服你的慣性,一旦你做到了,你便開啟了從web的每個角落學習知識的旅程。我希望上面講的十點能夠給你的學習旅程帶來一些幫助或啟發。
最新內容請見作者的GitHub頁:http://qaseven.github.io/