我在學習編程中犯的兩個最大錯誤
Suneel Chakravorty
一年前,我剛從大學畢業(yè)并且決定踏入社會。我有很多初始的想法并想將它們實現(xiàn),但我不懂編程。
聽從 Yipit 聯(lián)合創(chuàng)始人Vin Vacant 的建議之后,我開始自學編程。
現(xiàn)在我終于學了足夠多的知識來自己實現(xiàn)產品原型,一路走來,非常坎坷。如果你在跟我同樣的路上,我希望你能避免犯跟我同樣的錯誤。
錯誤0:我花了太多時間學習那些我不是特別需要的東西上
有如此多的技術,又有那么多的相互矛盾的觀點以至于你很難判斷什么是重要的,我根本就不知道如何開始。在Hacker News、 Quora、 Stack OverFlow上看了一大堆最流行的文章之后,我簡直要瘋了。下面是大雜燴清單:
HTML、CSS、 AJAX、 PHP、 Javascript、 Heroku、 Celery、 SQL、jQuery、 Django、POSTGRES、 nodeJS、 BackboneJS、Ruby、 Rails、 MongoDB、 Python
在這些技術中,我不知道哪些我需要學哪些不需要學,所以我試著把它們全部學習一遍。
我當時本應該做的:我本應該縮小這個清單,只挑出我構建原型所需要的技術。
最終,我搞清楚了這些技術就是干什么的,然后把這個清單縮減為如下:
0. HTML:構造一個網(wǎng)頁的內容(如鏈接,標題等元素的選擇)
1. CSS: 內容的樣式(如鼠標移至鏈接上時改變它的顏色)
2. Javascript:使內容變成動態(tài)的(比如用戶點擊鏈接的時候彈出一個菜單)
3. jQuery: 一個包含容易使用插件的javascript庫(如幻燈片效果顯示圖片)
4. Python: 處理數(shù)據(jù)(如從數(shù)據(jù)庫中讀取用戶購買記錄或推薦用戶可能喜歡的產品)
5. Django: 一個用Python編寫的web框架可以將以上的技術串聯(lián)起來。并且提供了很多內建的、非常必要的功能。(如用戶登錄,以及用python容易地任何數(shù)據(jù)庫)用框架能讓你的工作大大簡化。
錯誤1:我沒有立馬開始寫代碼
我花了太多時間閱讀編程書。我不確定我讀的那些東西是對我的項目有直接幫助的。更糟糕的是,我沒有將書中的東西應用起來,最后發(fā)現(xiàn)沒什么效果。
我本應該做的:在一開始我就應該通過一些小的項目來進行學習。我之后發(fā)現(xiàn)了一個非常有效的學習方法:
0. 在看了一些教程(比如 Yipit 的開發(fā)人員 David Sinsky 分享的文章)之后積極地編寫例程。
1. 挑選一些簡單的項目,然后編碼實現(xiàn)它。例如一個簡單的博客,或者一個投票的應用。
2. 多次重復第二步。
3. 構建你的初始項目原型。
這樣做有很多好處,你可以很快地克服關于編程的任何恐懼。你將會看到你的勞動成果。最重要的是,你能夠很快培養(yǎng)構建產品所需的技術。
英文原文:Suneel Chakravorty