下面要說(shuō)的是我在成為一名程序員的道路上做的幾件事情。寫在這里除了要讓自己銘記在心外,我還希望它能對(duì)別人有些用處。
1. 建立一個(gè)博客
這是我后來(lái)才認(rèn)識(shí)到的事,其實(shí)應(yīng)該很早就去做。如果你是跟我類似的情況,你應(yīng)該盡早開通一個(gè)博客——盡管還不知道該寫什么。注冊(cè)一個(gè)域名,買一個(gè)空間。你會(huì)驚奇的發(fā)現(xiàn)有很多可寫的東西。你可以記錄下你成為一名程序員的過(guò)程,或?qū)懸幌履愀信d趣的技術(shù)方面的東西。我一直以為沒(méi)什么好寫的,可當(dāng)真正思考這些問(wèn)題時(shí),卻發(fā)現(xiàn)有很多值得寫的。最重要的事情是開始去做。
2. 開發(fā)一些東西
開發(fā)什么并不重要。選一種編程語(yǔ)言,任何一種都行,開始干。你不必去花大量的時(shí)間來(lái)決定應(yīng)該使用什么語(yǔ)言。直接開始學(xué)一種語(yǔ)言,事實(shí)上最重要的是學(xué)習(xí)編程語(yǔ)言的基礎(chǔ)知識(shí),而不是勞神費(fèi)力的去選擇一種“最好的編程語(yǔ)言”。我選擇的是PHP。因?yàn)樗且环N被廣泛使用的語(yǔ)言,在網(wǎng)上有大量的學(xué)習(xí)范例,我已經(jīng)通過(guò)搭建一個(gè)WordPress網(wǎng)站而熟練的掌握了它。沒(méi)有絲毫的遺憾。它使我學(xué)到了很多基礎(chǔ)知識(shí)。我還學(xué)習(xí)了其它語(yǔ)言嗎?當(dāng)然,我后來(lái)涉獵了很多腳本語(yǔ)言,我要在下一個(gè)項(xiàng)目上試試Ruby。編程語(yǔ)言不斷的在變化,不要只盯著一個(gè)不放。
3. 注冊(cè)你的GitHub帳戶
我已經(jīng)在Bitbucket上有了一個(gè)代碼庫(kù)。我最初選擇注冊(cè)Bitbucket是因?yàn)樗芴峁?個(gè)免費(fèi)的私有庫(kù)。后來(lái)我決定在GitHub上注冊(cè)。事實(shí)上,我絲毫沒(méi)有拖延,看看我的成果吧。
4. 向開源項(xiàng)目捐贈(zèng)代碼
我早該如此做了。我起初低估了做這種事情的重要性,說(shuō)老實(shí)話,我現(xiàn)在仍需要進(jìn)一步重視。向開源項(xiàng)目捐贈(zèng)代碼,這是一種很好的學(xué)習(xí)別人如何編程的方法,并且能把自己的代碼公開。我今晚的就要去列一個(gè)準(zhǔn)備去參與的開源項(xiàng)目的清單。
5. 熱心參與
這也是我需要改進(jìn)的方面。我應(yīng)該到stackoverflow網(wǎng)站上去回答更多的問(wèn)題,在一些博客,科技網(wǎng)站上分享自己的東西。去那些網(wǎng)站,讓大家看到你。不在網(wǎng)上露面,就相當(dāng)于待在屋里不出門卻想找一份做巴黎導(dǎo)游的工作。
重復(fù)做第2,4和5點(diǎn)
其它一些事情
很明顯,每一個(gè)有志向的程序員都應(yīng)該每天閱讀Hacker News和其它開發(fā)/科技/編程類的博客文章。
我打聽到了不少的技術(shù)討論會(huì)。這周末我準(zhǔn)備去參加一個(gè)。我會(huì)把那里的情況寫出來(lái)。
我在這里并沒(méi)有提讀書。我喜歡閱讀,但我們沒(méi)有買任何的關(guān)于web開發(fā)的書籍。這是我個(gè)人的做法。我相信很多人都會(huì)建議首先買一本書看看。
找一些能和你討論你的web開發(fā)/技術(shù)/編程想法的人和群體。如果我做了更多的第5項(xiàng),我可能找到了更多的這樣的人。
好了,這就是我要說(shuō)的。這些就是在過(guò)去的一年里我成為一個(gè)程序員的成長(zhǎng)之路上做到事情。如果有人覺(jué)得在這個(gè)清單里我還應(yīng)該加入什么,請(qǐng)給我留言。我永遠(yuǎn)都希望聽到新的觀點(diǎn)。