國內(nèi)程序員為何被稱為碼農(nóng) 國內(nèi)外碼農(nóng)的區(qū)別

作者: kaelc  2015-07-10 11:51 [查查吧]:uabf.cn

   實際上IT行業(yè)在中國并不是特別差的行業(yè),而程序員的工資也并不低,但為什么中國的程序員總被稱作碼農(nóng)或者說是苦逼的程序員?中國的程序員生活和歐美的有什么不一樣?

  編程活動和機械電子一樣可以視為一種工藝(craftsmanship),從事此類工藝活動的人可以叫做工匠或者工程師。經(jīng)歷過工業(yè)革命的歐美國家,有深厚的工程根底,從機械到電子再到軟件,都是國家產(chǎn)業(yè)的支柱,滋養(yǎng)著社會中堅力量的中產(chǎn)階級。工程師的社會地位普遍比較高,他們有工藝的傳承,有文化圈,有產(chǎn)業(yè)的歷史。

  而國內(nèi)目前的軟件工業(yè)和制造業(yè)非常相似,以來料加工式的低水平重復勞動為主。就好像農(nóng)民仰賴著老天提供種子、土壤、陽光和水,中國程序員仰賴著洋人提供設備、技術和理念,從微處理器、操作系統(tǒng)、編程語言、編譯器、IDE、編程框架到應用程序,除了做晶圓的沙子是本地產(chǎn)的,幾乎沒有什么屬于自己,每天的工作內(nèi)容主要就是把別人已有的東西按照自己的——甚至不是自己的——需求裝配一下,沒有什么創(chuàng)造性,也很少有業(yè)界的技術積累和傳承出現(xiàn),即便有也流傳不開,畢竟程序員文化水平普遍不高——「有知識,沒文化」,就是說這樣的狀況。記得劣質(zhì)盜版VCD滿天飛的時代,有個程序員做出一款丑陋但是解碼容錯能力很好的播放器,貼合國情,一炮成名,結果好容易寫本書,沒有幾個句子能寫通順的。這種技術書籍的拙劣狀況一直保持到現(xiàn)在,而且拙劣的方式更加多樣化了。沒有技術傳承,沒有文化圈,不乏有人上大學之前對編程一竅不通,學計算機只是因為計算機「熱門」而已。如同包辦的婚姻,沒有一絲愛情,最后以編程為業(yè),只是因為也不會做別的什么了。

  另一方面,國內(nèi)程序員不論薪水如何,的確很苦。許多人長期被迫加班,最后甚至會成為一種自愿的習慣??缮a(chǎn)率和產(chǎn)品質(zhì)量并未因此而提高,就像千百年來用慣鋤頭和鐮刀的農(nóng)夫,很少有人會想要去學習、改進自己使用的工具和習慣,甚至對于新興的思潮和方法抱有非理性的抵觸情緒。生活如此悲慘,卻又如此不思進取,和農(nóng)民的問題很相似。再加上,就好像城里人眼中的鄉(xiāng)下人一樣,程序員們木訥、邋遢、缺乏情調(diào)、土??善肿载摱一ハ嗫床黄?。

  總而言之,在中國做一個程序員,很少有什么事情能讓人覺得自己從事的工作很體面。那么,在整個社會以自嘲為風尚、許多行業(yè)都喜歡好勇斗狠地自輕自賤的狀況中,使勁貶低自己的職業(yè),自嘲和群吵時,就不會有什么心理包袱。不過,就好像黑人可以自稱或者互稱「黑鬼」,但是白人如果敢講立刻會惹禍一樣,喜歡以此自稱的程序員并不見得能容忍其他人這樣稱呼自己。

  最后,英語有類似的說法,將帶有隔斷的辦公室叫做cube farm,常見于傳統(tǒng)的軟件公司。以諷刺(但不限于)軟件公司日常生活為主題的漫畫Dilbert就有不少格子辦公室里的場景。不過cube farm說的并不是程序員們像農(nóng)民,而是說他們像地里的莊稼或者果樹,產(chǎn)出成果,等待收割。畢竟,歐美發(fā)達國家的農(nóng)民生活往往比程序員更好。高收入,農(nóng)機勞作,大片的私有土地,寧靜的田園生活。農(nóng)民的生活在那里,如果不是令人向往,至少也并無貶義。

  補充:本版同文所說的code monkey在英語中的語用,與「碼農(nóng)」在中文里的用法并不一樣。

  code monkey是指以計算機程序員或者那些以編碼為生的人。這個術語可能包含輕微的貶義,這意味著開發(fā)者可能編寫代碼,但不能執(zhí)行復雜點的任務,比如:構建軟件結構、分析和設計,一般指初級程序員。

  如果一名code monkey正在努力增加知識和提升職業(yè)技能,那么會有另一個等級名詞賦予他。

  其實code monkey這個術語在層次劃分上還是有點困難的,因為像那些真正熟練的開發(fā)人員或程序員他們?nèi)匀辉谧鼍幋a工作?;蛟S像這樣劃分會好一點:

  coder:編碼員

  programmer:程序員

  software engineer:軟件工程師

  software analyst:軟件分析師

  software architect:軟件架構師

  或許還可以在前面加“初級”、“中級”、“高級”這幾個前綴。這些都反映了一定的等級、技能水平和薪資。

  請注意:它只能在小范圍確定的某種層次結構,例如在一個公司、甚至一個部門。一個在A公司工作的“程序員”可能比B公司的中級架構師所要求的技能更多。 ?

發(fā)表評論

醫(yī)療健康