㈠ 程序員的日常生活都是什麼樣的有哪些不為人知的地方
其實一直不知道為什麼,大家都會覺得「程序員加班都很多」,「程序員都不愛干凈,老不洗頭」,「程序員穿的都很low」,「程序員都找不到對象」,最終得到的結論是。「程序猿的生活很枯燥」。
現在讓你們看看真實情況。
㈡ 程序員最怕什麼
程序員為什麼容易脫發掉頭發?近10年來互聯網飛速發展,導致互聯網的人才需求也日益增加,程序員更是因為成為各大互聯網公司必爭的人才資源,所以身價也水漲船高。網上曾經流傳這么一條段子,找程序員做老公的3大理由。1.掙錢多,死得早。2.女同事少,出軌幾率少。3.埋頭苦幹,任勞任怨。哈哈,雖然只是條段子,但是卻在一定程度上反應了很多程序員的真實生活情況,而且在現實生活中程序員跟脫發人群也是有非常大的重疊部分,程序員為什麼容易脫發掉頭發呢?
1.程序員容易脫發掉頭發是因為工作時間不規律:大家都知道程序員的工作強度一般比較大,而且很多小的公司因為程序員的工資太高而一般會選擇壓榨現有程序員的勞動力和工作時間。所以導致項目一上線,很多程序員就不得不24小時待命。而人體的新陳代謝時間是晚上11點到凌晨2點,這個點也恰恰是頭發的生長時間點,不注意休息經常熬夜肯定也會導致頭發生長不完全。
2.程序員容易脫發掉頭發是因為精神長期高度集中:松柏大夫之前也有文章提到過長期的高度緊張狀態會導致脫發的情況,因為人體的腎上腺素等壓力激素長期居高不下,壓力激素會把毛發的「資源」也一起集中在我們的大腦以便滿足大腦高速運轉的需要,所以毛發就會因為缺乏營養而變細、脫落。
3.程序員容易脫發掉頭發是因為長期面對電腦、手機:電腦輻射不但會影響眼睛,對人體頭發毛囊也會有一定的影響,輻射會對細胞有一定的「滅活」作用,所以說長期面對電腦對皮膚影響不好,而人體的頭皮細胞是非常脆弱的。
㈢ 程序員不喜歡什麼,在廣州藍景做開發的朋友說,他不喜歡加班改別人的bug,你們呢
程序員最討厭不確定性。
Debug的時候,在怪異再棘手的問題,只要可以穩定重現,都遲早可以解決。「穩定重現」的意思是只要按一定的步驟做下來,問題就可以重演。
最討厭的就是那種時有時沒有,不知道什麼時候出現的bug。改了代碼不知道有沒有效,也不知道是否引入了新問題。可以把碼農逼瘋。
引入到生活中對人對物的態度也是一個道理。無緣無故發脾氣又不說為什麼的女朋友,言而無信說到做不到的人,約好的事情被放鴿子... 這些都是不確定性。
程序員對不可控的不確定性因素也是有解決方案的。在代碼里頭把異常try-catch-finally一下,做好補救收尾,在加上幾行注釋警醒後來人這里別亂動。對隨機發生的問題,對應方案就是假設這里永遠都會有問題,把隨機的行為轉化為降格的確定行為。就比如隨機發脾氣的女朋友吧,就會放棄研究發脾氣的原因,不求治本,而是假設她永遠會發脾氣,專注「哄」的工作也就是catch裡面的內容。
㈣ 程序員的悲哀是什麼
「碼農」這個詞,不管是不是從事IT工作的人,都略有耳聞。這個詞的誕生無從考究,不知是程序員的自嘲,還是外行帶有顏色的嘲諷。總之,對於這個詞,我是既無奈又無力反駁。確實,工作中,我們大多數底層程序員每日做的工作相當於流水線的作業。
大部分程序員是悲哀的,不是情商、衣著、自黑之類,悲哀的是沒有決策權。項目做成什麼樣,那是領導和產品經理的事;用什麼技術框架,那是架構師的事;資料庫的設計,業務那是項目經理和產品的事;而作為一個普普通通的底層碼農,我們只需要拿到需求,然後等設計給圖子,流水化的寫出實現代碼。我們只是一個執行者,別人叫你幹啥就幹啥。最後項目做壞了,裁員的是誰?程序員。
這就是一個普普通通的「碼農」。讀書那會,我的老師跟我說,「如果從業十年,你依舊在寫最基礎的代碼,做一個碼農,那麼就不要做程序員了,轉行吧」。現實中,每個公司存在最多的就是這些「碼農」,那種掌握核心技術,產於項目設計,技術架構的畢竟是少數,大多數程序員都處於被動接受,按需求完成代碼的任務。
做程序員越久,越是感到:我們就是新時代的手工藝者。只有少數的人,從手工藝者,變成了發明手工藝製作機器的人,少部分人變成了設計手工藝品的人,少部分人變成了車間主任罷了。
「碼農」這個詞有著深深地悲哀。
見過太多剛入行的菜鳥,像極了曾經那個滿懷激情,夢想的自己。當第一次接觸Java的面向對象思想時,那種興奮,彷彿能用Java描述整個世界,彷彿自己就是上帝一般,在現實世界,創造出另一個虛擬世界。而現實中,一兩年的流水化作業,沖淡了一切。
對於產品,彷彿是自己的孩子,從無到有,一點一滴,看著一個網站,產品,在自己的手下,滿滿長大,那種滿足感,自豪感,油然而生,但是最後你希望它變得更優秀時,卻發現它不受你控制,彷彿養了好幾年的兒子,被人教唆去做壞事,你不能說任何話,因為撫養費不是你出的。
決定你有沒有決策權的是你的縱向位置,也就是在本行業金字塔的位置,出類拔萃者說話就響。過慣了咸魚生活,但誰又甘心做一個「碼農」,我們希望發出自己的聲音,成為那個有權利選擇的人,這一切需要提高自己的技術,能力作為支持。在國外,程序員被稱為程序設計師,而國內「碼農」,區別可想而知。
㈤ 程序員的工作環境是怎樣的
每個人職場人都希望在一個輕松、開心、干凈、舒適的環境裡面工作,這樣心情好工作起來自然效率高,但是這畢竟是理想狀態下的工作環境,當然現在絕大多數企業工作環境雖然達不到百分百,但至少有百分之六七十以上吧。
那麼對於程序員這種有點特殊的工種工作環境又是怎麼樣的呢?
程序員又被人們稱之為碼農,也有人調侃戲稱「程序猿」,程序員對工作環境往往需要有一張大的辦公桌,他們不僅用一台電腦在工作,有時候需要幾台電腦同時操作,而且遇到一些bug或者瓶頸的時候需要和同事協同工作,當然在硬體方面除了辦公桌要大外,還需要配置比較高的電腦,畢竟這是程序員最基本的工作工具,試想如果剛有靈感,結果電腦卡頓或者死機了,那有可能靈感頓時就消失了,所以他們大多數工作環境都擁有足夠大的辦公桌和高配置的電腦。
前面就提到了程序員是有點特殊的工種,因為他們往往加班到很晚,時常會通宵,這就和我們正常上班的時間上錯開了,他們往往白天睡覺,晚上工作,有時候為了打起精神工作,他們提神的方式各自不同,有抽煙的、有喝咖啡的、有聽歌的等等,大家可以想像這是什麼樣的工作環境嗎?但是程序員工作的時候,大多數情況下都需要安靜的環境,畢竟安靜能讓人更好的思考問題。
每個人對工作環境要求都不一樣,讓自己覺得舒服的環境是自己願意留在公司的原因之一吧,程序員也是一樣的。
大公司的程序員,工作環境基本上就是一個電腦版的「衡水中學」,每天就是開會寫代碼改代碼查代碼開會繼續循環往復,跟中學里每天就是拚命讀書刷題刷題讀書吃飯無味上廁所要跑一個樣。
硬體配置無需你考慮,肯定是夠你用。跟人的成本比起來,硬體就是個渣。
大公司的程序員工作比較穩定,每個人的分工是比較明確的,職業路徑也很明晰,越往上的職位對智商的要求越高,這點和靠情商往上升的工作還真有點不一樣。在程序員這個隊伍里拍馬屁搞關系基本沒啥用,你寫的代碼都無需用戶檢驗,自己一跑就知道成不成。這也是IT公司通常人際關系和氛圍都比較輕松且簡單直接的根本原因,特別適合那些不喜歡搞關系的同學去擼起袖子加油干。
如果你想在這個行業長期發展,智商一定要夠用,真的。有沒有基礎倒在其次,如果數學好更佳。有些業內大咖本身是學數學或物理這些靠智商吃飯的學科的。
小公司的程序員,尤其是那些非IT類小公司里的程序員工作壓力更大。面對不懂程序的銷售和老闆,還有極度貪心又不願多付費的客戶,需求三天兩頭變,界面是個人就可以提意見改,時間永遠是「明天就要」。他們覺得程序員比悟空辦法多,所以什麼要求都提得出來。能在小公司做出成績的程序員,真心讓人敬佩不已。
小公司的程序員是掌握公司核心機密最多的人,比老闆都掌握得多,所以通常他們的待遇也還過得去。另外他們一來二去把公司業務摸透了,出來自己乾的也不少,當然能不能幹成是另一回事。
其實程序員的工作環境真沒什麼要求,只要沒什麼干擾就行。學霸們在這里會找到十分熟悉的感覺,所以程序員之間以「同學」相稱的極多。
我是2015年本科畢業的,但是2014年就開始工作了,從程序員+運營的工作開始實習(其實也是看最後哪一個更合適就走哪一個方向)。
對於實習階段,因為當時待的是小公司,所以大家的配置都很一般。幾個主力程序員加上我這個實習的,工作用的都是windows筆記本,聯想的,除了我自己配的固態硬碟之外,很多都是機械硬碟在跑,沒有特別明確的代碼庫規范、沒有知識系統,交流全靠跑,有的是後端和前端一起干、前端和客服一起干,所以我兼職運營也是如此……平時要是不忙的話,那還沒什麼事兒,大家會閑聊扯淡,也算是其樂融融;但是要是忙起來,可能會突然加班到很晚——當然這種情況還是比較罕見的。
工作到了中型公司,跟以前的小公司就不在一個量級上了。這個時候主要的工作是後端開發,配置的電腦是聯想的ThinkPad,但不是最高配那種,仍然沒有固態硬碟,慢的要死。第一梯隊的程序員配置有雙顯示器、機械鍵盤、mac。我的話配置的是外接顯示器,座椅很一般,坐久了比較累。公司分工明確,辦公室跨越兩座樓,各個團隊都有自己的辦公室。有自己的wiki、定期站會、嚴格的代碼規范、安全規范。一般情況下主要是在解決各種bug,或者開發新系統。偶爾流量高峰的時候,會加班到一兩點,平常並不是特別忙,工作還是比較有序的。
其實想要招妹子進團隊的,因為我們團隊唯一的測試工程師長得真的一般,而且性格也很差……一個性格好長得好看的運營妹子真的能調動整個團隊的氣氛。
所以什麼機械鍵盤、Mac、外接多少顯示器、加多大固態硬碟、多好的人體工學座椅……這些都是假的,開發的團隊裡面有好看的妹子才真的是「好的開發環境」。
可以穿拖鞋?可以戴著耳機聽著歌?配備兩個顯示器?身邊總是圍繞這MM端茶遞水果?還是以上都不是,而是詩和遠方?
程序員,一個高薪卻嚴重亞 健康 的群體 。他們有著極客精神,瘋狂coding的時候可以廢寢忘食,但他們也追求精神自由,喜歡自由自在。對於這樣一個群體,良好而又恰到好處的工作環境顯得尤為重要。
1. 彈性上班制
常規企業的朝九晚五上班制度,說實話並不適合程序員一族,因為這種制度一定程度上扼殺了這個最需要差異性的群體的差異性,把程序員的Coding靈感等同於工廠流水線上機械手臂,希望按鈕一按下,靈感發動,按鈕再一按下,靈感結束。這是一種一廂情願的想法。
所以對於高層次的程序員群體,請不要在作息時間上嚴格限制他們,因為他們不是裝配工,有著獨一無二的個體差異性,有著不同的思維G點,他們需要差異性的時間作息來調整自己的最佳狀態,從而迸發激情和靈感。
2. 寬松的工作氛圍
程序員群體討厭管理,任何自上而下的所謂管理都容易引起程序員們的心理抵觸,特別是那種死板的、指令式的管理模式,尤其讓程序員們作嘔。
程序員們希望自己做的事情是出於內心的意願,那樣他們就會干勁十足,而不是來自於經理計劃文檔中那條冷冰冰的文字,哪怕是他們心裡意願的和經理的計劃本是同一件事。所以對於程序員群體的管理需要技巧,要化管理於無形,讓他們感覺不到管理的痕跡,讓他們感覺著做這些事情就是出自於他們自己的意願。
總結來說就是讓他們作為自己的管理者,而團隊的管理者所要做就是培養他們這種自管理的能力。
適度的壓力可以產生做事的動力,但長時間的持續的壓力卻是扼殺激情和創造力的罪魁禍首。壓力會讓程序員焦慮,同時也會造成低劣的設計和代碼實現,因為交付的壓力會讓程序員對匆忙設計出來的方案妥協,而不會持續的優化找到最優方案。而一系列看似微不足道的缺陷設計集合到一起,就會形成讓人意想不到的、不可控制的亂象。
所以,「快」不見得是好事,「慢」也不見得是壞事。
3. 鼓勵參與開源項目
開源項目社區的欣欣向榮,是一朵盛開的奇葩,無論怎麼贊譽都不為過。
一些著名的開源項目,例如Linux,Apahce, openssl等等,數不勝數的優秀設計,給我們帶來了多少的驚喜,同時也催生了多少的商業公司。
參與到開源項目中,是一個程序員從初級走向高級、完善技術的最有效途徑之一。一些著名的開源項目,架構設計和Coding技巧上都屬上乘之作, 浸淫其中,受益匪淺。
其實以上三點不僅是對程序員群體,對任何一個職業的人來說都是適用的。再看下知乎上程序員們理想中的工作環境是怎樣的。
@蕭井陌:我讀書的時候就有一個執念,一定要找一家可以穿拖鞋背心大褲衩上班的公司(當然我不穿大褲衩),如果我找不到這樣的公司,說明我學得不好,所以我一直以來努力的目標似乎只是為了進一個能穿拖鞋的公司?哈哈哈哈。。。
@知乎用戶:我只想要2個顯示器
@知乎用戶:1.安靜,沒有人隨便喊你或者在你耳邊說話;2.絕對的自由,程序員都有一定的怪癖,比如我喜歡聽著搖滾樂寫代碼。這些都要被允許。3.溫度,氣味舒適的環境。
4.有個養眼的MM同事,大概是這樣的
嘿,箭頭方向那個哥們才是真正的程序員吧
5.獨立10M光釺線
@Indream Luo,軟體工程師:1.女多男少,人均年齡不到27;2.身處白雲山上,與廣東外語外貿大學一牆之隔;3.無邊界文化,有問題可以找任何人溝通,包括高層,如果你見得到;4. 健康 文化,加班有補休,提倡8小時,自建食堂和農場,買下巴馬泉眼特供礦泉水
@石磊
硬體:
1. 頂配的 MacBook Pro。
2. 上廁所不需要排隊。
與人相關:
1. 不會在開發到一半時被通知要重新討論功能,然後把以前做的東西全部推翻。
2. 沒有不必要的會議,必要的會議速戰速決。
3. 行政人事什麼的做事清爽高效,這樣不用在各種日常手續上浪費時間,只管寫代碼就好。
4. 同事們效率高、工作態度嚴肅、善於溝通、活潑有趣。
@張英鋒:最理想的工作環境應該是能幫助團隊沉下心來,開發出最好產品的環境。
1.上級對程序員工作的認可和尊重;
2.對所作的工作有自主權和決定權;
3.營造能讓程序員專注於工作的設施,比如大家都提到的安靜、以及各種提高生產率的硬體條件;
4.最後是公司是盈利的,最好是暴利,能持續提供更多福利。
@庄生:其實最重要的工作環境,還是有一幫靠譜的同事,真心的。可以術業有專攻,但是該你負責的你負責到底,保質保量,不要麻煩別人。
那你呢?你希望你的工作環境是怎樣的?
上聯:一個項目兩部電腦三餐盒飯只為四千工資搞得五臟俱損六神無主仍然七點起床八點開會處理九個漏洞十分辛苦 ;
下聯:十年編碼九年加班八面無光忙的七竅生煙到頭六親不認五體投地依舊四肢酸軟三更加班只為二個臭錢一生孤苦;
橫批:苦逼程序員。
程序員飄過
作為一名程序員的我可以很負責任的說:是的,工作環境就像問主圖片那樣,可能會稍微好點,我們公司都是中央空調,不用電風扇!
我在程序員的崗位上也有好幾年了,也待過幾家公司,其實就工作環境來說,程序員的工作環境還是不錯的,不用風吹日曬雨淋,而且是冬暖夏涼!和人們眼中的白領工作人員的工作環境是差不多的。
工作氛圍其實也是很好的,程序員在穿著方面大部分公司是沒有什麼太大要求,可以穿著自己喜歡的風格(腦補一下大褲衩配涼拖的程序員正在擼代碼),同事之間的交流也是很活躍的,所以程序員的苦逼之處不在工作環境,而是工作內容和壓力。
程序員分工:
1.純軟體工程師,就是只靠電腦吃飯的,設計包括但不僅限於---網頁、架構、UI、數據、運維、系統等等,整天與代碼打交道;
2.Firmware(分位)工程師,半軟半硬的工種,要焊板,要搭建環境,還要寫代碼維護代碼,演算法可能沒有純軟體工程師牛,但動手能力絕對強,涉及的知識面可能更廣。
本人就是後者,來看下我的桌面:
各個公司對於辦公環境都不一樣,國外都注重個人隱私,很多都是一個人一個封閉的房間。國內大部分就像圖中所示那樣,半隔開。也有 科技 公司,鼓勵大家敏捷開發,多溝通,開方式辦公
請忽略那些包含「安靜,優美,閑逸的辦公環境」的答案吧!
圖中的環境,只是正常普通公司的工作環境。
不一定是程序員的。
程序員的工作環境,因工作內容,導致需要很多屏幕。
而且電腦配置也需要很高。
每個人因面對的公司、自身能力等因素,都會導致工作環境的不一樣。
所以就有了工作環境好壞的區分。
如果你曾對著大海構思過某個介面,
在櫻花飄落的院落里調試過代碼,
那麼你還覺得在寫字間喝著咖啡對著三屏顯示器敲鍵盤是理想的環境嗎?
工作環境,還是得靠自己改變。
在程序者的不斷追求下,編程是可以和寫作一樣成為藝術創造過程,
那麼任何一個能夠激發出你靈感的時刻和環境都應該可以成為你的辦公環境。
資深碼農應邀回答這個問題。籠統來說,程序員的工作環境與圖中展現的差別不大。但根據工作屬性和所屬行業來講,還是有一些區別。
甲方和乙方的區別
我在剛畢業時進入了一家軟體外包公司,幾乎所有的工作都是在甲方所在地完成的。
因為甲方員工是公司的穩定員工,所以工位來講就要精緻一些,配備也要完善一些。一般都會是隔間,有抽屜、插座、文件架、座機、台式電腦,甚至還有床等等。
而我們作為乙方因為流動性大,人數也不固定,甲方公司不太可能為我們准備這些精緻的辦公位,一般只是拉幾張桌子拼湊起來,然後再接幾個線板,有時候靠椅都沒有,還得坐獨凳。
技術驅動和業務驅動的區別
現在任何一個互聯網公司,技術部門是必不可少的。但是有的公司會以業務為驅動,有的公司會以技術驅動業務。
以業務為驅動的公司就會優先考慮業務的發展,然後技術來輔助實現。我現在所在的就是這樣一家公司,這樣的公司技術部門就會非常的小,人員也會很少。這樣的公司程序員的工位大體上和整個公司的風格沒有太大的區別,因為人少,一般只有5-6個人,做技術的也喜歡安靜,所以一般位置會選擇靠近辦公室的角落。
以技術為驅動的公司會依靠自身技術實力結合行業發展,碰撞出一些具有競爭力的業務品種,並與業務部門配合來實現並推廣產品。這樣的公司技術人員起碼佔到50%以上,這樣的公司更有可能為程序員規劃一個單獨的大辦公室,與外界隔離。一方面是為技術人員提供安靜、舒適的辦公環境,另一方面也是盡量避免閑雜人等進出公司技術核心所在地。
以技術為驅動的公司往往技術實力比較突出,所以他們會為自己的技術團隊配備「駕駛艙」、小機房等設施。
就問題中的格子間來講,不管是什麼性質的公司,只要場地不是特別的擁擠,都會設計成格子間,這樣既保護了員工隱私也充分利用了辦公場地的空間。這並不是程序員特有的風格。
㈥ 為什麼程序員都喜歡說臟話
程序員每天壓力很大的,一天大部分時間對的就是電腦,遇到讓人心煩或者懊惱的事情,有些臟話就是程序員發泄的時候不小心就說出去了,又沒有人監管久而久之就變成習慣了。我高中同學就是一名優秀的程序員,也同樣說,普通人都說就不要過多的關注程序員這點了吧。
㈦ 程序員的代碼潔癖在什麼情況下是一種惡習
當你把【代碼清潔】當作目的時,就是惡習了。為什麼會存在代碼潔癖,究其根本,是我們對「維護代碼」這種讓人抓狂的事情的實際需求,讓我們越來越注意到清潔的重要。比如說 1 == a 這個,如果從來沒有把 a == 1 寫錯成過 a = 1 導致你調式很長時間過,恐怕這個人能難把這個納入到他的潔癖范疇內,即使他對空格的使用要求近乎苛刻。在我的圈子裡面,一直有很多搞單片機的的。這些人主業是做電子甚至是機械的,當需要一個控制器的時候,會用單片機寫一些非常小的程序來實現控制。我發現在這個圈子裡面,就幾乎沒有代碼潔癖的人,別說潔癖了,代碼的基本清潔都看不到,即使這個人在做電路板的時候一板一眼。為什麼?因為沒有需求,代碼本身長度都很小,而且都是寫過無數遍的基本套路,甚至大段大段的代碼都是用輔助工具直接生成的;這些代碼對他們來說,多亂都很難寫錯,並切,最重要的,這些代碼幾乎都不需要維護,因為功能簡單,程序就是可以做到沒有BUG,需要升級的時候也很少。混亂的代碼,於他們的工作效率,幾乎沒有什麼影響;相反,由於開發環境難以想像的簡陋,整理代碼會浪費他們大量時間。既然代碼潔癖是由需求引起的,那麼我們來反思一個問題:我們做的和我們需要的一致么?其實問題問出來的時候,相信大家有答案了,既然用到了「潔癖」,肯定代表「做多了」,《編程之道》這本故事書裡面有個有趣的小故事:一個初學者被要求編寫一個財務軟體。他瘋狂地工作了很多天,但他的主管檢視他的程序時發現,它寫了一個編輯囂,一個圖形程序集,和人工智慧的界面,但是看不到任何跟財務有關的東西。主管要求解釋時,程序員被激怒了:你太沒耐心了,我會在最後寫財務的部分。這就是一個典型程序員在乾的事情,所有的優秀程序員都要經歷這樣的階段,過度設計、過度優化、過度使用技巧等等等等,因為我們就是這樣的群體,對這些的追求就是我們學習編程提高自己的動力,所以我們必然會經歷這樣的事情
㈧ 怎麼樣防止程序員自己盜用資料庫資料
你都給人家導入數據的許可權了,相信人家吧
用人不疑,疑人不用。
技術手段是有,不值得用。