老實說,我在20歲時可沒打算這樣。我編程就是為了掙錢。只要編程還能掙錢,我就願意一直這樣掙下去,差不多就是這樣。
到了50歲時你覺得你還能做什麼?你能找出一個遠離編程但符合下列要求的職業嗎?:
- 需要很少或不需要任何的教育程度
- 報酬高——即使是水平一般的人
- 無數的崗位需求
- 不需體力勞動
- 沒有健康安全或違法的風險
編程掙錢很容易。編程這個行業門檻低,但卻極難退出。什麼行業能替代?
我有3個律師同事——兩個後來成為了程序員,一個成為了項目經理。我還沒有遇到過有程序員變成律師的。我知道一個工程師——不是程序員——他後來變成了專利律師(據說的原因:「一定程度上,你會非常討厭那些跟你的孩子年歲相仿的經理」)。你想在你50歲時做一名專利律師嗎?
我認識一個經理,他說他更想當一名學校教師,認為這樣的工作對社會更有價值。但他幹了8個月後就辭職了,在主流報紙採訪他的告別會上他說:「有時候我甚至想帶一挺機關槍進教室,端起來掃射」。他現在給韓國三星工作,他感覺他的在智能手機攝影技術上的貢獻已經充分的長久的使社會受益了。
我的一位同事近來一直在學習大量的知識。他有心理學和一種叫做虛擬劇院(Visual Theater)的學位。他業餘時間一直在編程,靠編程來補濟他的學費。他的編程工作也成了他的視覺效果工作的一部分(跟電腦聲效相關)。他的編程最終也可能會資助他的藝術工作。我不能想象他某一天會退出編程。
我曾看到過很多人的「退出」,有的是學習物理的,有的是學習哲學的,他們最終轉向了編程工作。金錢是有吸引力的。當然,除了錢,編程還能讓你獲得很多其它的滿足——這就是為什麼我要無償的開辦這個博客網站——但是,大部分的這些滿足都是有源動力的——直接或非直接的,大部分的還是和金錢相關的。「開發有用的東西」和「掙錢」是密切相關的。
當然,你也許會有一個不用發愁的財務來源。但如果沒有,編程就成了你的B計劃。對於物質財富,有一點我要提醒——它是很容易被拿走的。我經過了蘇聯時代,所以我說的會顯得有些誇張——但實際上,財產很容易被沒收,鈔票一夜間變成廢紙,並非在蘇聯是這樣,美國在相似的時期也有過沒收公民黃金的事情。而職業能力是不能沒收的。程序員在這個時候仍然能通過自己的努力來保持良好的生計。
有人說職業編程壓力太大。同樣,要看跟什麼相比。跟醫生?律師?接聽暴跳如雷的客戶的電話時還要留神你的回復會被錄音用作以後的檢視?
什麼壓力?真正能編程的程序員——比如,能正確的打印出二叉樹結構——是非常稀缺的。這種稀缺情況下一個真正的程序員不會任人隨意擺布的。你也許能脅迫他們沒有報酬的加班,但很快他們就會認識到:這是買方市場,你在虛張聲勢。你找不到可以替代他們的人。
在這種供不應求的局面下,每個人都能在編程職業里找到自己的空間。相較於金融/投資銀行類的工作來說,編程行業競爭並不是那麼激烈。 程序員通常還會有「隔離帶」來防止客戶和高層管理人員的侵擾——這些人永遠都是對的,這使得跟這些人的交流索然無味。
工期壓力?不錯,這是存在的,但每個人身上都會發生。我承認,我們經常會逾期完不成任務,但這不是很有壓力的事,除非自己給自己製造壓力。如果你被分配了一個不可能完成的任務計劃,而你也儘力了,但還是沒按時完成,你可以深深自責,或者保持平和心態。事實上,你的肉體絕不會因為貽誤工期而受到危險,所以,你的反應完全取決於你自己。
有人說,程序員無法完全的把握事情的進展,無法完全的了解所有的API,技術層面等東西。如果你不能理解自己身處的環境,這就是壓力,這可不好玩。說的很好;但是,又有誰能比一個程序員對此了解到更多呢?鑽研病人內髒的大夫?翻閱法律文案的律師?監管一二十個程序員的老闆?面對所有這些人為造成的複雜情況,我們仍然是境遇最好的。
事實上,超過50歲的程序員並不是很多。這意味着編程不是一個長久的活兒嗎?更可能的原因是,這只是發展的結果。30年前——相對於10年前—— 20多歲的程序員是很少的。因此,如今50多歲的程序員要要比30多歲的程序員少的多。一定程度上編程世界的發展在慢下來,往後20年,事情又會變的不同。
所以,我沒打算退出編程,並不是單因為它本身能帶來很多樂趣,也是因為它比起其它行業來要理想的多。也許這不是最「熱情的」詞藻——即使熱情耗盡,貪婪永不停息。如果你打算退出編程行業,我懷疑你能找到什麼更好的職業。而且,當你數年後再次回到編程領域時,我一點兒都不會驚訝。
[本文英文原文鏈接:Do you really want to be making this much money when you're 50? ]