1. 糟糕的程序員:
那些沒(méi)有一點(diǎn)技術(shù)或能力但不知怎么就成了程序員的人。他們接觸的每件事情都會(huì)成為同事們的苦難——這些員工更糟糕,他們甚至不知道在和別人合作工作。
這些糟糕的程序員有什么共同特征呢?按理說(shuō)他們跟寫(xiě)什么樣的代碼無(wú)關(guān)——但不管怎樣確實(shí)有關(guān)。
2. 不知名的程序員:
這是眾所周知的典型的一種程序員:無(wú)名氏。他們有能力(通常會(huì)有)但不出色,可能為一家不知名的大公司工作,但那只是一份工作不是生活的全部。不過(guò),那也沒(méi)有什么問(wèn)題。
3. 業(yè)余程序員:
一名業(yè)余程序員熱愛(ài)編程,這說(shuō)明:他可能是一名很有前途的學(xué)生或?qū)嵙?xí)生,他們正在為開(kāi)源項(xiàng)目做貢獻(xiàn),或者在業(yè)余時(shí)間開(kāi)發(fā)有趣的”僅供娛樂(lè)”應(yīng)用程序或網(wǎng)站。他們的想法以及代碼表明他們充滿熱情并且很有前途。成為一名業(yè)余程序員是一件很不錯(cuò)的事情,從這個(gè)階段可以很快成為一名有作為的程序員。
4. 普通程序員:
處在這個(gè)水平,你有自知之明,知道自己不是一個(gè)偉大的程序員——可能你永遠(yuǎn)都不會(huì)是。天賦跟成功鮮有關(guān)聯(lián)。如果你擁有生意頭腦和人際技巧,你會(huì)非常成功。 如果你是一名平庸的程序員,但是能夠以此謀生,那么可以說(shuō)你是很有天賦的,但不一定在編程方面。別低這份估自知之明,因?yàn)橛凶灾鞯娜吮饶阆胍囊佟?有沒(méi)有天賦無(wú)關(guān)緊要,只要你能發(fā)現(xiàn)自己的強(qiáng)項(xiàng)并且持之以恒。
5. 能干的程序員:
作為一名軟件開(kāi)發(fā)人員,你事業(yè)有成。公司需要你的技術(shù),找份好工作對(duì)你來(lái)說(shuō)永遠(yuǎn)不是件難事。你的同事尊重你。你工作過(guò)的每家公司都在你從事的方面取得了長(zhǎng)足的進(jìn)展。但是,僅此而已,別無(wú)他長(zhǎng)?
6. 著名的程序員:
這也是一個(gè)不錯(cuò)的層次,但是美中不足是出名不能當(dāng)飯吃。在編程這個(gè)圈子里,你非常有名。但是,有名氣并不一定就意味著你會(huì)藉此獲利來(lái)養(yǎng)活自己。出名很好, 但成功更佳。你可能為一家著名的大公司或者有影響力的小公司工作,也可能是一個(gè)普通創(chuàng)業(yè)團(tuán)隊(duì)的一員。其他程序員對(duì)你都有所耳聞,你正對(duì)這個(gè)領(lǐng)域產(chǎn)生積極影響。
7. 成功的程序員:
這些程序員既聲名遠(yuǎn)揚(yáng)又借助自己的編碼創(chuàng)立完整業(yè)務(wù),甚至整個(gè)行業(yè)。他們給自己創(chuàng)造了真正的自由:自己決定從事什么工作的自由。并且跟自己的同事分享這種自由。
這是大部分程序員都渴望的一種高度。能否達(dá)到這種高度往往更多的取決于業(yè)務(wù)技巧而不是編程能力。
代表人物:Bill Gates(比爾?蓋茨)、John Carmack(約翰?卡馬克)、DHH (戴維?海涅梅艾爾?漢森)
8. 不朽的程序員:
這是最高層次。你寫(xiě)的代碼并沒(méi)有隨你而去,而是保留了下來(lái)(萬(wàn)古流芳)。你會(huì)在計(jì)算機(jī)領(lǐng)域永垂不朽。其他程序員會(huì)研究你的成果和著作。你可能獲得了圖靈獎(jiǎng),發(fā)表過(guò)有巨大影響力的論文,或者發(fā)明了一項(xiàng)或多項(xiàng)為眾人所知的基礎(chǔ)性技術(shù),已經(jīng)影響了編程事業(yè)的發(fā)展。
介紹你的并不只是個(gè)維基百科詞條——很多網(wǎng)站致力于研究你的生平和成就。只有很少的程序員達(dá)到這種高度。
代表人物:Dijkstra(迪杰斯特拉)、 Donald Knuth(唐納德?克努斯/中文名:高德納)、 Alan Kay (阿蘭?凱)