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