Yipit聯(lián)合創(chuàng)始人Vacanti:我是如何學(xué)習(xí)編程的
Vinicius Vacanti
回到2006年,那時候我還在干一份金融相關(guān)的工作,趁著休息時間,我偷偷溜出來去曼哈頓市中心的書店閑逛。茫然的翻看著眼前的各種計算機(jī)書籍。 《學(xué)習(xí)HTML》,《24小時精通Java》,《Javascript入門》以及各種《一步一步學(xué)XX》這樣的書籍,讓我不知所措。
一年后,我正準(zhǔn)備要辭去金融工作,自己創(chuàng)立一家技術(shù)公司。所以我決定自己學(xué)習(xí)編程。當(dāng)我再次去那家書店的計算機(jī)圖書區(qū)域,依然讓人眼花繚亂的書架在我眼中變得空曠了——我自己做了研究,我要看的是“LAMP”相關(guān)的書——于是我就進(jìn)拿了一本《Apache+MySQL+PHP》,翻看了幾頁之后就回去工作了。
實際上我并沒有學(xué)習(xí)什么編程。我只是晚上和周末試圖自學(xué)。在休假的時候像模像樣帶著我的編程書。盡管我做完了所有練習(xí),也寫了諸如“to-do”和“blog”這些應(yīng)用,但我并沒有真正學(xué)會。
2007 年夏天,我辭掉工作開始創(chuàng)業(yè)了。我們將首個創(chuàng)意產(chǎn)品原型外包出去了,這樣一來,我就能專注與如何獲取客戶與商業(yè)拓展。外包團(tuán)隊會注重產(chǎn)品代碼質(zhì)量,直到我們招到了 CTO。
然而九個月以后,我發(fā)現(xiàn)我的想法行不通。接包方并沒做好,無論我們怎么盡力了,都沒有找到合適的 CTO 人選。
為了公司能繼續(xù)做下去,我只有真正去學(xué)習(xí)編程了……
所以在2008年初,我又到了曼哈頓的“Barnes and Noble”的計算機(jī)圖書區(qū)。這次我挑了一本『學(xué)習(xí)Python』,然后就直接回家了。
這次我一點也不興奮,而是沮喪。
如果我不親自學(xué)習(xí)編程,我的公司就完了。我又得繼續(xù)干回金融的老本行。我不想讓我的家人和朋友看到我放棄。那樣我就完全失敗了。
三個月以后,我不僅寫了一本書,還重寫了我網(wǎng)站的原型(之前的外包花了六個月才寫完)。我自己動手將我的網(wǎng)站架設(shè)在我自己建設(shè)的服務(wù)器上,并且以小時為單位,迭代的增加新功能。我學(xué)會編程了。
雖然我并沒有打算做一個Google的工程師,但我還是可以把我們?nèi)魏嗡枰臇|西做出來。幾年之后,Yipit上線了,現(xiàn)在是一個有25名員工,已獲風(fēng)投,很快就將盈利的創(chuàng)業(yè)公司。
為什么我這次嘗試學(xué)習(xí)編程和前幾次如此不同呢?其實原因很簡單:我沒有其他選擇。
說真的,學(xué)著寫自己的網(wǎng)站原型非常艱苦。我得不停第學(xué)習(xí)各種技術(shù):HTML/CSS、MySQL,Python/Django、Javascript、AJAX、Nginx 等等。我?guī)缀醪煌5卦贕oogle搜索錯誤信息,期望Stack Overflow上有人已經(jīng)解決了我的問題,并且我能理解那些答案。
我發(fā)現(xiàn)有兩類人是能挺過那些艱辛的:
- 那些真的特別喜歡編程的人。如果你現(xiàn)在不是一寫代碼就興奮的話,那很可能你不是那種人。
- 那些必須寫代碼才能達(dá)成目標(biāo)的人。他們 寫代碼不是因為樂趣。他們寫代碼是因為他們必須這么做。他們也許享受過寫代碼的快樂(實際上大多數(shù)代碼的人都感受過這種快樂)。但這種快樂和上面第一條提 到的快樂不同,因為他們是工作需要,要不就是他們想做的東西,沒人給他們做,只有自己動手。
所以如果你打算學(xué)習(xí)編程,那就不只是買一本書,或去上個課程那樣。
如果你真想學(xué)編程,你應(yīng)當(dāng)做兩件事:
- 現(xiàn)在開始想一個項目,必須是你確實特別想實現(xiàn)的項目,開始學(xué)習(xí)所有要實現(xiàn)這個項目所需要的技術(shù)。
- 把自己放到一個除了這個項目實現(xiàn)沒有其他選擇的情況中(譯注:也就是咱們常說的『置之死地而后生』)。
原文鏈接:http://viniciusvacanti.com/2013/07/30/why-you-will-never-learn-to-code/