程式設計師和一般的人的區別(程式設計師是怎樣的人)
2023-09-23 16:27:55 2
1971年,一個美國的心理學家在史丹福大學心理學系的地下室,搭建了一個模擬監獄。
他找來一批志願者,讓他們擲硬幣,一半人扮演囚犯,另一半人扮演獄警。這些志願者都是正常人,從來沒有接觸過監獄,心理學家也不告訴他們,該怎麼扮演囚犯和獄警。
每個人換上角色服裝,進入逼真的環境。一開始,大家都舉止笨拙,不知道做什麼,還覺得這件事有點滑稽。
但是過了一會,事情就開始發生變化。囚犯們慢慢擺脫了從前的身份,開始接受現在的角色,站在囚犯的立場思考。他們感受到心理壓力,沒心思吃東西,向「獄警」提出抗議,彼此互相指責。
獄警們也開始像真正的獄警,管起了囚犯,劃定單人牢房,讓囚犯呆在裡面,接受心理懲罰。同時,對囚犯發表長篇大論的說教,聽任囚犯互相攻擊,還會緩慢地在走廊上踱步,用木棍敲打牢房門的柵欄。
最驚人的是,過了兩天,心理學家讓所有人調換角色,囚犯扮演獄警,獄警扮演囚犯。結果,雙方很快就適應了新角色,行為變得與新角色一致。
由於所有人太入戲,心理學家擔心發生難以控制的局面,原定兩周的實驗不得不在第六天就宣布結束。
心理學家從這個實驗,得到一個結論:人類行為受到工作環境的強烈影響,你會變成環境要求你成為的樣子。 正常人關進監獄,就會變得囚犯般俯首聽命,暗中算計;要是當上獄警,就會不由自主地居高臨下、殘忍霸道。
這個實驗帶給我們的啟示就是,要小心你的工作,它會改變你,讓你成為另一個人。 很多人都有一種印象,會計師的性格是斤斤計較、對數字格外敏感,律師的性格是重視利益最大化,海關執法人員的性格則是充滿懷疑、不信任他人,這就是職業對性格的改變。
這不禁讓我思考一個問題:程式設計師這個職業,會如何改變一個人的性格?
我能想到的有下面幾點。
(1)你會變得習慣孤軍奮鬥,靠自己解決問題。編程本質上屬於個人勞動,不是團隊勞動。一段代碼終究需要你一個人寫出來,不可能兩個人合寫一個函數,你寫上半段,我寫下半段。現代軟體工程是基於分工的協作,每個人完成自己那份工作,然後才能互相協作。
(2)你會習慣孤獨。編程非常孤獨,日復一日、長時間地與機器打交道,很少與他人面對面交流。如果遇到趕工期,一連好幾天,都說不了幾句話。我能想到的類似工作,大概只有作家。
(3)你必須非常細緻,做到謹小慎微。每個細節都要考慮到,任何一個字母、一個小數點都不能寫錯,每個邏輯條件都要理清。只要有一個疏忽,代碼就會無法運行,或者留下安全隱患。
(4)強大的心理承受能力。程式設計師是壓力很大的工作,公司越大,壓力越大,代碼寫得慢、寫錯了、或者寫不出來,你都要承擔責任。有時候出現重大線上 Bug,別人在屁股後面催著你,你卻遲遲想不出問題出在哪裡,又沒有辦法測試,那種心理壓力真會讓人崩潰。
總之,一個人如果沒有形成穩定的個性之前,就去當職業程式設計師,可能就會變成上面這樣:不習慣與他人緊密協同,喜歡單幹,長時間的孤獨勞動,非常重視細節,任何一處都不能偷懶或寫錯,心理壓力巨大。
如果你想好了,能夠接受變成這樣的人,可以來當程式設計師。
,