⑴ 為什麼中國的程序員總被稱為碼農
碼農,是程序員對自己職業的一自嘲。
其實,是把編程生涯與田間地頭的鋤禾日當午對應起來,確是有那麼些相似之處的。
能想像得到,田間整齊栽種的秧苗,與屏幕上顯示的錯落有致的代碼行有幾分神似。各種莊稼的種植是有講究的,正如要注意編程風格。
施肥灌溉:猶如對代碼進行的編譯鏈接。
除草除蟲:自然是在做著debug 。
挑水澆園:大概是在小菜園中進行的結對編程。
碼農這個叫法讓人體會更多的是滑稽、搞怪、無厘頭。畢竟一個是簡單的體力勞動,一個是高智商的腦力勞動,不可同日而語。
⑵ 程序員被納入「新生代農民工」,碼農為何會被官方定義為「新生代農民工」
01 什麼是新生代農民工「碼農」就是我們常說的程序員,因為靠寫代碼衛生,而且收入低,要長時間面對電腦,所以就自嘲為「碼農」。
我們先來看看「新生代農民工」的定義:
出生於20世紀80年代以後,年齡在16歲以上,在異地以非農就業為主的農業戶籍人口。
具體點來說,他們是「集中於勞動密集型行業,從事信息傳輸、軟體和信息技術服務業的打工人」。
所以如果單從這個描述來說的話,從事軟體和信息服務的程序員們很顯然就是「新生代農民工」中的一員。
但如果你看仔細點的話,你就會發現要滿足「新生代農民工」,條件有兩個:
1.在外地從事非農業行業;
2.農村戶口。
因此嚴格來說,標準的「碼農」前提要有「農村戶籍」,「城鎮戶口的碼農」是不屬於「新生代農民工」范疇的。
就光看這幾點,哪個跟農民工兄弟不是一樣的?
⑶ 為什麼中國的程序員總被稱為碼農
最後,如果你身邊有這樣的程序員朋友,請你好好珍惜他,因為他們不像口中所說的那樣老土和死板,相反,他們的腦海中有一個大世界。
⑷ 為什麼中國的程序員總被稱為「碼農」
對於一些貶義的說法,個人認為作為一個程序員應該保持「誠意開張聖聽,不要妄自菲薄」的態度。
程序員一直以來看哪個是別名最多的一個職業,我姑且不分褒貶的稱之為你才吧!就像小學的時候一樣,相互之間往往喜歡區別名叫昵稱之類的,而又往往外號叫的最響小名最多的就是最受關注的哪一個,程序員在當今網路上的處境大抵如此。
碼農這個詞米偶遇仔細研究過來源。參考其他人的回答知中文中的碼農大體相當於英文中的code monkey。程序員碼農說法的由來大概來自於程序員圈內自嘲的說法。這里程序員對碼農的更多理解可能更接近coder這個詞,就是說我是一個寫代碼的。可能會有人以此來明志,表面自己很熱愛寫代碼,或我很精通以此,再或者言外之意我只是一個寫代碼的,別來找我給你裝系統修電腦什麼的,我最煩這個了(ノ`Д)ノ。
程序員這個行業知名度雖然高,但是正在了解程序員是做什麼的人並不多,大多數人直觀臆想出來的感受可能是一個座在電腦前,後背前傾,頸脖前伸,面容憔悴,形容枯槁,兩眼無關緊盯著電腦,兩只雞爪子似的雙手快速的在鍵盤上敲擊,屏幕快速出現一行行一塊塊英文字元的形象。這其實只是程序員的表面,完全米有展現出大多數程序員的內在。程序員真正的工作是解決問題,代碼只是解決問題的途徑,或曰實現方案。
程序員究竟解決什麼問題呢,又是從哪裡來的問題呢?首先要提到產品經理,產品經理給成員一個需求,程序員要思考如何實現這個需求。比如產品說這個登錄過程應該這樣這樣,用戶是否有通過手機或者郵箱驗證。程序員要做的就是想方案來實現這個需求。在比如產品說我們這個網站要同時支持多少人訪問不會出現卡,或者頁面刷不出的情況。程序員接到這個需要就要思考如何設計這樣一個高性能,高並發的服務端,最終通過代碼來實現設計。好,現在代碼寫完啦,產品發布上線了。什麼購物網站啊,大家可以隨意挑選自己喜歡的產品,什麼交友網站啊,大家可以寫好自己的介紹發布出去讓別人看到。但是還米有完,可能這個網站還要加點新功能,或者程序員自己也想,這個代碼有沒有什麼地方實現的不好,換一個方法會不會更優雅。然後又是思考解決<=實現方案<=線下測試。自己測試發現可以,這個方法很好,發布到線上,就是用戶最終使用的形態。不斷提出新需求,完善新的功能我們稱之為迭代。改善現有設計我們稱之為重構。這些都是非常有藝術感的事!
事物發展就會演變出各種變體,有一些公司會把問題和解決問題的方法都做好,然後再交給其他公司或者個人去做實現(寫代碼)。由於在這里解決問題的過程被剝離出來(最有技術和藝術感的部分)剩下的就是實現,就是敲代碼。好比建一棟房子,房子的設計和施工方案都已經做好了,就剩下施工了,這時候只要找個施工隊就可以了。在這些做設計的公司,他們是有能力來實現這些方案(敲代碼)。但由於歐美日等國家人力成本高,將這些技術含量低敲代碼的苦活兒剝離出來交給相對落後地區的人去實現可以幫助他們節省人力成本。以上這個現象就稱之為軟體外包。另一方面,在美國主導的全球生產分工下,美帝也希望將中印這樣的發展中國家固定在低端製造,勞動秘籍型的行業。
既然程序員是解決問題的,那麼是否所有電腦相關的問題程序員都能解決呢?縱向來看,計算機系統可以簡單的分為三層,應用程序<=操作系統<=計算機硬體。計算機硬體的設計研發基本和程序員無關。硬體往上就是程序員的職責范圍了。這是可以簡分為應用軟體程序員和系統軟體程序員。系統程序員的責任是實現高效的硬體管理,應用程序員則是為用戶提供高效的服務。下面說說在這兩方面和國外的差距,手機端應用軟體(有服務端的包括服務端)差別不大,大家從自己手機中軟體就能感覺到。PC端有差距,比如人家有PS這樣的圖片處理軟體,而我們則沒有。在這方面人家發展了幾十年我們年數不夠,有差距還是可以理解的。但我輩當發奮努力,以追他人之先。另外應用程序web化應該是趨勢,這方面我們還是有優勢的,對於普通用戶來說最直觀的體驗就是不用裝很多軟體了,只要有一個瀏覽器就行。在操作系統層面,PC如Windows,伺服器如Linux。Windows微軟獨家擁有的閉源系統,不說。Linux內核開發來講國內正在迎頭追趕,內核的郵件中中文拼音的人名越來越常見,越來越多的國人加入到Linux內核的開發中。
⑸ 為什麼中國的程序員總被稱為碼農
本人並不是一位程序員,但是從事互聯網行業也少不了與程序員朋友打交道,他們經常自嘲為「碼農」、「程序猿」、「代碼工人」、「碼字猴」等等,這些一定程度上是幽默的稱謂,但是站在旁觀者的角度,本人認為還有一些深層次的原因。
第一,中國的程序員是一個龐大的群體,只要是學過計算機,只要懂一門編程語言,都可以吃這碗飯。當你看到中午吃飯時那個浩浩盪盪的場面,你就會覺得程序員真的看起來和農民差不多。
第二,大部分程序員做的都是比較枯燥的工作,一點創新性都沒有。很多新項目都是在很成熟的項目之上進行修改,都有現成的模板可以套用,基本上不用怎麼動腦筋。這和農民種田是多麼的類似。他們年復一年地做著同樣的事情(播種、插秧、收割),也不知道這種日子什麼時候是個頭。IT行業本應該是一個創新性非常強的行業,但到了中國就成了比較死板的東西了,這是什麼原因呢?
第三,大部分程序員的視野都比較的窄,對其他行業懂得很少,這也和農民是多麼的相似啊!我們都說農民階層是沒有多少文化的,但這居然也適用於以高學歷著稱的程序員身上,是多麼具有諷刺意味啊!你隨便問一下身邊的程序員,當今最流行的詞語是什麼,我想沒有幾個人回答得上來。他們成天盯著代碼,想著那26個字母和10個數字,視野如何能變寬廣?
第四,大部分程序員都是靠自己的努力掙錢,沒有強的人際關系,基本上屬於「弱勢」群體。就像農民一樣,他們沒有關系,只能世世代代在自己的土地上耕耘,只求維持生計、終老一生。如果稍微有點關系,幾乎沒有人願意當程序員。在行業發展較為順利的時候,他們能夠保住飯碗,能夠養家糊口;當行業不景氣的時候,他們隨時都有被裁的危險,因為公司要不了那麼多人。程序員的命運並沒有真正地掌握在自己手上。
在一個大的IT公司,程序員都佔了很高的比例,少則成百上千人,多則幾萬人,真的像農民一樣,到處都是。我在和同事聚餐的時候,程序員都在抱怨自己的工作是如何的辛苦、如何的累,都說自己是「碼農」。
⑹ 為什麼中國的程序員總被稱為碼農
首先這是一個非官方的稱呼,用於非正式場合。
其來源無從考究,只有第一個使用的人才知道最初的含義,所以以下回答純屬個人猜想,純博一笑,如有不妥歡迎指正。
這是程序員們自嘲自己的工作枯燥乏味,簡單重復,可理解為程序員們的一種對壓力山大的稍帶不滿的幽默。
可以理解為表達程序員們在向對程序員們充滿崇拜的粉絲們介紹自己職業時一種謙卑的自稱
從程序員們的工作特徵來說,程序是由不同的模塊組合在一起,每個程序員只是負責自己的一塊程序代碼的編制。這工作有點類似於碼牆,也有點類似於碼」俄羅斯方塊「。
程序的功能越來越龐大,結構越來越復雜,要求掌握的技術越來越多,單個程序員將很難完成一個較大程序的編制。每個程序員只是程序員集體的一分子,所以,程序員們在代表信息高科技的同時,用這一稱呼謙卑地表達了自己對集體、對同事的尊敬,唯其如此,這是一個令人尊敬的群體,他們在卓越的工作成績面前,沒有簡單的個人英雄主義,而是牢記了同事們的才華和倖幸勤付出。
就象沒有農民,」民以食為天「的我們無法生存,而沒有程序員,我們這些縱橫在網路,離不開程序的人,將無法繼續瀟灑,乃至寸步難行。所以,這一稱呼,又可以理解為程序用戶們對這一群體的尊重和感恩。
碼農這一稱呼,表明高科技不能忘本,沒有農民的幸勞,任何高科技神碼都是浮雲;
至於這一稱呼的起源,已無從考究,我們不能根據考古家的簡單邏輯認為無從考究的就是假的,哪怕這是既成事實;也不能認為」碼農「這一稱呼就代表了程序員的全部。但是從心理學來講,這一稱呼能夠普及,肯定是表達了這一群體的某些特徵,能夠引起使用者的共鳴。然而這只是一個盲人摸象般的稱呼,所謂」橫看成嶺側成峰,只緣身在此山中「,喜歡則用,不喜勿噴。我們對所有的稱呼概念,重要的是掌握其表達的是使用者的什麼觀念或者用意,而不必在乎它的表面文字,這就是依義不依語,掌握語言的深層結構而不是止步於其表層結構。
當您使用這一稱呼時,是在表達什麼呢?或者,您更喜歡上面哪一種解釋?