『壹』 為什麼程序員特別容易出高智商低情商的人以及憤青
注意,此文的背景是西方國家,所提的程序員也是西方國家的人,和中國的程序員無關。 首先糾正一個偏見,就是說純粹科學家都是書獃子,其實不然,20世紀早期的著名物理學家個個都是高富帥(就是貴族精神,真正的高富帥,不是土豪,土著),例如薛定諤有幾個情婦,一點也不見得書獃子,主要是媒體宣傳得多霍金,導致普通人都認為物理學家就是那樣的。數學家雖然比物理學家們沉默的多,但是也很少做出一些出格的不經思考的問題。至於其他種類的科學家,因為實驗設備的限制,不可能完全自己閉門研究,因此必定要和別人交往。而純粹程序員(特別是學院派的)卻有很多低情商(此處指不懂社會)憤青,學院里除了社會科學就是軟體工程會出憤青了 但是在同樣要求嚴謹思維的計算機軟體行業,卻出現了很多高智商低情商的人,他們的編程水平屬於世界一流,但是很多行為要麼就是反社會,要麼就是不經思考。此處的程序員指對軟體進行深入研究者,就像純粹科學家那樣,不包括比爾蓋茨等成功企業家。很多著名程序員都是黑客出身,專門入侵美國政府網站,成為麻煩份子。更多的學院派程序員是極左的憤青,例如理查德斯托曼(GNU創始人),推行所謂的「自由軟體」,實質上是「軟體共產主義」,問題是,他自己開源就行,卻要討伐任何不開源的軟體,一廂情願地以為所有人都能夠像他那樣「為了興趣」而編程。而且他的很多行為都已經成了行為藝術了,為了彰顯他的理念故意做一些愚蠢的行為,例如喬布斯死了他就踩一腳說活該,頗有韋斯特波羅教派的作風,還有賣「龍芯」電腦,說這個電腦連BIOS都是開源的(諷刺的是,做硬體的都知道龍芯的內幕,難道他認為抄襲等於自由?)而且他宣揚的自由軟體意識形態,本意是鼓勵更多人參與開發軟體(或者學習軟體源代碼,應用到工作中,實質上就是通過這玩意兒賺錢),但是恰好會毀掉軟體業,因為軟體業的發展事實上都是靠利益推動的。 還有前段時間(大概幾個月前,以前的豆瓣賬號寫過那篇文章的)把MIT弄得天翻地覆的黑客,被抓了就乾脆自殺,以及最近的斯諾登,硬要往更不自由的地方逃(他是間諜我無話說。如果不是間諜,那麼肯定相信了古巴社會主義那套童話了,不過也有很多憤青被朝鮮、古巴的幾棟樣板樓房就騙倒了,如果他逃往古巴,那就出不來了,那些死要面子的獨裁者肯定不想讓幻想破滅的他向全世界宣揚國內的丑聞吧,不要也用不著沒收旅遊者的手機了) 至於普通程序員(和黑客),更是不懂時事的憤青,輕易被利用,例如匿名者組織,基本上都被恐怖分子利用來進行破壞了,他們宣揚網路自由,總是去攻擊民主國家的政府和公司網站,但是卻從來不敢動一下中國的大防火牆,或者亞非拉各種獨裁國家的網路。還有本來認為可以防止政府操縱經濟而創立的比特幣,結果成了國際犯罪的綠色通道(交易查不到,而且多一種方法洗錢,找個高智商低情商程序員來接盤比特幣,和傳銷一樣,找個傻逼下家接盤)基本上用一句概括就是這些程序員活在自己一廂情願的童話里,做事不考慮後果。 如果他們僅僅是「相信能夠創造更美好的世界」就算了,但是他們很多本質上是自大的(越來越覺得他們心理上還是十四歲),例如ubuntu社區的態度,一點也不ubuntu(自己查ubuntu的本意),倒是充滿了美國高中生的「小社團」(clique)特色。
『貳』 有哪些好笑的關於程序員的笑話
我認為下面這些算是關於程序員的笑話。程序員對愛情的看法:愛情是一個死循環,一旦被執行,它就會陷入其中。愛上一個人是記憶的泄露——你永遠無法釋放它。當你真的愛上一個人時,這是一種持續的限制,永遠不會改變。女朋友是一個私有變數,只能由我的類調用。情人是指針,你必須注意它,否則它會帶來巨大的災難。
昨晚,當我下班回家時,一名警察來巡邏。突然,他對我喊道:「停下!」 民警:int類型有多少位元組? 我:四個。 警察:你現在可以走了。 我感到非常驚訝。 我:你為什麼問這樣一個問題? 警察:我深夜還在街上散步。我看起來痛苦不堪。我不是小偷就是程序員。所以我覺得這些算是程序員的笑話。
『叄』 在大家眼中,程序員是一個怎樣的職業
為什麼有人在技術造神
大家應該已經感受到,技術圈這兩年已經和娛樂圈創業圈差不多的氛圍了,這其實是有原因的。
最主要的原因是,創業公司和創業媒體越來越多,他們需要大量的程序員投身到創業這個高風險的行業中,而造神,正是讓程序員們自動跳進火坑的絕佳辦法。不是說程序員不能創業,我是說,創業媒體們故意模糊了創造和創業的界限,把程序員們的創造沖動偷換概念,鼓吹了太多不適合的人去創業。
另一個原因是,招聘成本高漲,CTO 們為了能提升影響力,不得不頻頻出席各種大會刷臉。文筆好的再做做自媒體和技術社群,既能強化個人品牌提高身價,又能在融資的時候提升成功率。
總之,這個行業出現了各種技術大神。
這些大神在普通人類和初級程序員眼裡是無所不能的,是他們嚮往的目標;在中級程序員和高級程序員眼裡,這些大神就是他自己,只不過他還沒紅起來而已…
於是攀比心理也開始泛濫,全國第三的架構師比比皆是,整個圈子漸漸就浮躁起來。
然而絕大部分程序員,依然是雇員
媒體們在包裝時,最喜歡按獨立開發者的路線來整。「從小就對技術有天分」、「大學時曾在某編程大賽一鳴驚人」、「寫了個 APP 玩結果一個月有了千萬用戶」、「從公司離職自立門戶三年上市」。
OK,這的確是程序員的一條職業路線圖。但是媒體們不願意告訴你的是,一:只有極少數程序員是通過這個路線成功的;二:這條線其實需要太多非程序員職位的技能,比如產品設計能力和銷售能力。
程序員的價值決定
絕大部分互聯網公司的程序員職位,沒有技術門檻
然而不幸的是,絕大部分互聯網公司都不是技術驅動的公司。真的就是鳥哥說的那樣,絕大部分技術崗位,其實技術門檻都不高(門檻在工程上,後文細講)。技術不過是這些公司的護航艦,而不是破冰船。
先別打我,冷靜下來想想,到底有多少你會的那些技術,是你的同行們不會的呢?不多,對吧?
幾年前億級別的搜索還是問題,現在已經到處是通用解決方案了;幾年前千萬到億級別的網站和 APP 解決方案還在大公司手裡,現在各個架構大會都講爛啦,而且其實都差不多;就連 DeepLearning,帶 API 介面的框架也開始涌現,只需要把圖片用 REST 傳進去就能取到結果了。
很多事情,已經沒有難度,只需要持續投入。是的,對絕大部分程序員來講,他們不需要成為科學家,而需要成為工程師,成為從科學家手裡接過火種,去燎原大地的人。
怎樣才是一個好工程師
工程的本質不是創造,而是去風險化。
工程是關於如何低成本、高效率、按時按量完成既定任務的。所以判斷一個工程師是否優秀,並不是他多有創意多有名氣,而是看他有多穩,看他能多 GettingThingsDone,中文就是「靠譜」。
有時候一個好的解決方案,未必採用了最新的技術和框架,而是看上去朴實無華,功力都包涵在背後的細節里。就像頂尖高手打的斯洛克檯球,每一桿都平淡無奇,只是因為上一桿的回球太到位。
有同學問,那我工程做的太好,豈不是沒有機會遇到一些高難度挑戰了么?放心,一般公司都僱傭了產品經理來幫你製造高危事件。
同樣的,一個好的工程師,會選擇最適合需求和團隊的方案,考慮開發效率和系統效率的均衡,從而已達到最優效果;而不是整天和別人去爭論什麼語言最好、哪些框架過時了。
工程的另一個要求是進度控制和質量控制。
在項目立項之後動工之前,對要做的事項作出詳盡的規劃,對未來一到兩周的工作給出細致的排期,這是進度控制的基礎。
代碼的及時入庫與合並,自動化測試和每日構建,CodeReview 和文檔編寫,這些看似無關緊要的習慣則決定了項目質量。
不幸的是,很多程序員把這些工程上至關重要的東西當成垃圾,視為對他們「創造力」的壓抑。
他們總是以創造力為借口去尋求自身的自在,比如上班不帶胸牌不打卡,中午休息時間在公司看視頻打游戲,最好可以遠程上班,項目到期之前再來檢查進度,公司不要用統一框架,只有傻逼才寫文檔。
對職業的理解偏差和工程能力上的荒蕪,培養了大批能寫代碼但死活寫不好代碼的「碼農」,反而讓那些有著彪悍工程能力和良好習慣的程序員變得奇貨可居。
最後,來說說程序員那無處安放的創造力
有了錘子想找釘子是很正常的原始沖動,但我們必須認識到,創造力對於程序員這個職業來講,是錦上添花的東西。如果你沒有強大的工程能力,那麼創造力也不過是無本之木。所以扎扎實實的把工程基礎打好,這是最根本的。
在此基礎上,我比較推薦程序員採用內外兩條線來培養自己。在公司內的項目上採取相對保守的策略,盡力把穩定性做到最好,培養出自己卓越的工程能力;然後在公司外的開源項目和自己的獨立項目上,採用一些新的技術、實踐一些新的想法、充分發揮自己的創造力,夢想還是要有的,對吧。
這樣做最明顯的好處是,你可以了解到新技術和激進方案的優缺點,從而在進行方案選型時,有更多的依據;還有一個職業發展上的好處:如果不是主負責人,公司的項目往往不能代表你的能力;但獨立項目卻可以作為一個非常好的能力證明出現在你的簡歷里邊。
你可以是一個身懷絕技的手藝人,在自己家裡你嘗試各種手法各種風格的個人作品;但當你參與頤和園這種級別的工程時,好好的把自己負責的石頭雕成總設計師要求的樣子就好 —— 畢竟這個時代一個人已經很難負責整個項目了。這就是我所理解的程序員的工匠精神。
『肆』 程序員的悲哀是什麼
情景一:
程序員的悲哀,不是情商問題,不是衣著問題,更不是自黑之類的,而是並沒有決策權。項目做成什麼樣,你有決定權嗎?那是領導和產品經理的事。注意流程是這樣的,領導或經理決定要改需求,然後通知你,然後你等設計給你圖,然後你做好。程序員只是一個執行者,別人叫你幹啥你就只能幹啥,除非產品是傻逼到讓你實現不可能的功能。最後項目做壞了,裁員了是誰?程序員。
做程序猿越久,越是感到:我們是新時代的手工藝者。只有少數人,從手工藝者,變成了發明手工藝製作機器的人,少部分人變成了設計手工藝的人,少部分人變成了車間主任罷了。
「碼農」這個詞有著深深的悲哀。
情景三:
作為創造性的工作者,程序員最悲哀的是,很少有人可以真正欣賞你的作品。
他們能理解程序功能性的部分,但是無法看到它的藝術性,優雅的結構,簡潔的邏輯,因為程序是對外不透明的,不要期望同行可以欣賞你程序的美妙。不過沒有這種落寞,大概就不會有開元運動了。
『伍』 程序員真的會覺得寫代碼比女朋友重要嗎
答案肯定是否定的婚的時間比我還要早,而且夫妻兩個人每天都會秀恩愛。婚的時間比我還要早,而且夫妻兩個人每天都會秀恩愛。在程序員哪裡寫代碼只是自己的一個簡單工作,如果讓他們加班,那感覺比殺了他們還要難受。畢竟代碼千千萬,女朋友可只有一個,而且就目前的就業形勢來看,碼農的工資水平可不足以讓女朋友對自己10萬個放心。
他這樣的工作強度持續了大概有一年半的時間,之後工作穩定就不再做這樣高強度的工作,而是比較正常的休息。畢竟那個時候剛畢業工作不穩定,需要拼一拼,現在穩定了誰也不會把自己的命賣在工作上。
『陸』 為什麼程序員給人的第一印象總是沉悶,拖沓的感覺
總有些傻逼這要改那要改,完成了要求又要免費加功能,錢也給的到多不少的,當然就沒啥動力了,然後就是經常熬夜,所以遇到傻逼就不想多說話,感覺智商也不在一個檔次
『柒』 為什麼都說悲劇的程序員程序員很悲劇嗎
情景一:
程序員的悲哀,不是情商問題,不是衣著問題,更不是自黑之類的,悲哀是並沒有決策權。項目做成什麼樣,你有決定權嗎?那是領導和產品經理的事。注意流程是這樣的:領導或經理決定要改需求,然後通知你,然後你等設計給你圖,然後你做好。程序員只是一個執行者,別人叫你幹啥你就只能幹啥,除非產品是傻逼到讓你實現不可能的功能。最後項目做壞了,裁員了是誰?程序員。
做程序員越久,越是感到:我們就是新時代的手工藝者。只有少數的人,從手工藝者,變成了發明手工藝製作機器的人,少部分人變成了設計手工藝品的人,少部分人變成了車間主任罷了。
「碼農」這個詞有著深深地悲哀。
歡迎大家都來吐槽!
『捌』 自學編程的傻B,
什麼叫項目,簡單點,寫個計算器就叫一個小項目...
一個小軟體就可以稱得上是一個小項目...做項目用到的知識面是廣,但都是需要做的時候才去接觸相關知識。一個新來的項目,不經過一段時間的學習,是不可能做出來的。程序員也不是什麼類型的項目業務都了解的。只是需要做的時候才去學習項目所需要的業務。首先有一點你要明確,不離開書本你就走不出來。
你可以就你目前了解的東西來做東西。先學習模仿才能學會創新...
再者說,大點的項目是需要一個團隊來完成的。
像你這樣,你可以先模仿寫點簡單的東西,然後才會慢慢有進步。比如系統裡面的計算器,運行窗體等,一些簡單的小程序。
說句外話,你得有興趣才能做這個。不然堅持不長。。
『玖』 普通程序員的工作生活是怎樣的
通常我們進入公司以後,不會是重頭開始一個項目,而是在已有代碼的基礎上進行維護或新功能的開發,所以必須「讀代碼」。
讀有「泛讀」,了解系統架構、功能模塊,對系統有一個大致的認識,各個功能能找到相應代碼實現的位置。
還有「精讀」,通常就是調試了,在fix bug的時候使用。此外還包括審核:一些規范一點的公司,都會有code review,也是精讀,但不用debug。
對於一個成熟的項目來說,讀代碼——而不是寫代碼——可能是最耗時間的工作了。
寫注釋文檔
為了減少「讀代碼」的時間,我們不得不花時間「寫注釋」「寫文檔」——這個程序員最深惡痛絕的工作。所以現在「爛代碼才需要注釋」的聲音變得越來越強,但無論如何,文檔還是要寫的。(注意:要能區分注釋和文檔)
了解需求
好了,終於到了「寫代碼」的時間了。
然而,在動手開始寫代碼之前,你必須花時間「了解需求」。和自己寫個小程序玩玩不同,在公司,你是為別人寫代碼,所以你一定要了解別人究竟想實現什麼功能。通常,這並沒有你想像的那麼簡單,需要反復的溝通。
當然,也有一些團隊和個人,不願意在這上面「浪費時間」,通常他們的下場就是不斷的寫代碼,然後不斷的改代碼,加班加點的做大量的無用功,整個公司怨氣沖天一地雞毛。