我的背景——也是我的愛好之一——是計算機編程。我從十幾歲的時候就開始編寫計算機程序了。我可以用所有主要語言為各種平臺(如web、桌面和移動)編寫代碼。我在一些大公司工作過,包括阿里和騰訊。我也在很多小型創業公司工作過。軟件開發是我的一項紮實的技能,儘管我已經有一段時間沒有以軟件開發為生了。
儘管如此,辭去我那份收入豐厚的工作,離開編程界,是我所做過的最好的決定之一。
如果我可以從頭開始,這就是為什麼我永遠不會成為一名程序員的原因:
1.你沒有培養關鍵的社交技能
程序員與由玻璃、塑料和金屬製成的機器進行交互,而不是與活生生的人進行交互。這是一種超現實的看待它的方式,但事實就是如此。你編寫的程序越多,你與機器的交流就越好。您將學習鍵入代碼、測試代碼、期望得到特定的響應、修復不能工作的代碼,然後重試。這樣做的時間足夠長,你就會比與真人打交道更容易與機器打交道。
你一次只能做一件事,所以如果你坐著開發一個應用程序,你不是在酒吧、派對或聚會上與新朋友交往。如果你已經內向,那麼你會變得更加內向。如果你有良好的社交技能,這些技能很快就會退化。如果你在工作中編寫代碼,然後在家裡玩電子遊戲,情況就更糟了。
我無法強調社會交往的重要性。這幾乎是任何男性自我提升的核心。你想有更好的朋友嗎?學會如何與人交往。你想認識新女人嗎?學會如何與人交往。你想要得到一份工作還是從你現在的爛工作升級?學會如何與人交往。
具有諷刺意味的是,像與他人見面這樣自然的事情,如今卻成了一種可以傳授和提高的實際技能。如果你每天都和人打交道,情況就不會這樣了。例如,我不認為一個整天打陌生電話,處理沒完沒了的拒絕的銷售員在酒吧裡有任何接近焦慮——他以接近為生。同樣的道理也適用於積極進取的房地產經紀人、律師或廣告高管。
此外,與你一起度過大部分時間的人都是和你一樣的程序員。他們同樣內向,不善社交。他們不會教你如何和女人相處。他們不會教你如何征服新的土地,成為真正的男人。我可能用一隻手就能數出我所認識的程序員中有多少人碰巧也很擅長社交,而且在別人面前也不尷尬。大多數是內向的人,他們害怕女人。我生命中最鼓舞人心的人是那些積極進取的人,他們創建企業,而不是無所事事地編寫Javascript閉包。
2.你不會發展情商
編程是一個非常合乎邏輯的過程。電腦沒有情感。在核心,所有的計算機代碼都是由0或1組成的。所有控制語句都被評估為true或false。電腦不會哭,不會生氣,也不會同情別人。計算機只能理解0或1。
你的大腦也會這樣。人類的思維是很有彈性的,幾乎可以適應任何工作。當你把大部分時間花在處理理性問題上時,你的思維就會變得更加死板和合乎邏輯,而不是更加靈活和情緒化。
你開始把世界看成是0和1的集合;顏色壓縮成黑色和白色,而不是美麗的灰色陰影。你失去了那種能讓你感覺到一個人的情感/非理性的“氣味”,而不是問他們一個合乎邏輯的問題並期待一個合乎邏輯的答案。這就是情商。當你整天寫複雜的“如果”和“其他”語句時,你就失去了情感推理的能力。
直到我停止與顯示器和鍵盤交流,開始更多地與人打交道,我才最終開始建立這種至關重要的情商。當你不總是內省,不把每件事都分解成它的邏輯成分時,生活會更豐富,更有意義。
3.你在放棄你最好的價值
你知道這句話,“為別人工作你永遠不會發財?”“我很確定這是一個程序員發明的。
我們生活在一個資本主義社會,有錢的人僱傭工人為他們做事。編程是一種勞動。當你為薪水而編程時,你是在用你的時間和專業知識來換取金錢。你在幫助公司創造價值,而你所得到的回報就是被通貨膨脹侵蝕的錢和被稅收侵蝕的錢。
這不是一個理想的情況。資本家通過僱傭勞動力變得更加富有,因為他們知道,在支付了工資之後,他們仍然會走得更遠。
科技公司完全理解這一點,所以他們提供各種各樣的津貼和財務激勵(股票獎勵、期權)。儘管如此,不要被愚弄:除非你是公司的創始人之一(或者前十名員工之一),否則你付出的價值將永遠大於你得到的價值。這就是資本主義的運作方式。
一般來說,這是一個很好的規則,以避免你的時間交換金錢的情況。我認識很多人,他們曾經在自由職業中賺了一大筆錢,但現在已經改行,開了自己的公司,甚至在睡覺的時候也能賺錢。這就是讓資本為你工作的美妙之處。
4.編程不是一項“Empire”技能
人們理解上面這一點(你不可能在為別人工作的同時變得富有),但是他們仍然相信能夠編寫代碼是不同的。他們認為他們可以在自家地下室開發一款應用程序,並將其推向世界,明天的估值將達到250億美元。
好吧,我要告訴你一個小秘密,我花了一些時間才弄明白。你永遠不會變得富有或成功,因為你碰巧知道如何編程。除非你是世界上最優秀的程序員之一,而微軟或谷歌正用200萬美元的簽約獎金來吸引你,否則你永遠不會真正大賺一筆。這聽起來可能很明顯,但這並不是我長期以來的想法。我之所以這麼想,是因為我知道如何編寫代碼,並打造下一個Facebook、谷歌或WhatsApp,並立即取得成功。
但事實並非如此。是的,我可以很容易地創建一個Facebook應用程序。是的,許多科技公司的創始人都是有技術背景的工程師:比爾•蓋茨(Bill Gates)是一名工程師;拉里·佩奇和謝爾蓋·布林(谷歌)在學校學習工程學。WhatsApp的創始人擁有工程學背景。甚至連馬克·扎克伯格(Facebook)都是個電腦迷。
但這並不是這些公司如此成功的原因。他們之所以成功,是因為創始人創造了一種需求量很大的偉大產品。任何程序員都可以創建一個Facebook的克隆版本(實際上它非常簡單),但是要想獲得巨大的成功,它需要特殊的才能和技能,當然,還需要時間。毫不奇怪,許多創始人後來在自己的公司擔任了更多的高管和戰略職務;他們擁有的技能遠遠超過坐在鍵盤前編寫類和函數。
“Empire”職業的一個很好的例子就是營銷和銷售。另一項偉大的技能是知道如何忙碌。弄清楚客戶想要什麼,並能夠提供給他們是非常重要的。此外,如果你有一個你認為會成功的好主意,你可以僱傭(廉價的)程序員來開發你的應用程序。
5.這是一個門檻很低的工作,而且正在迅速商品化
有人曾經說過,程序員只不過是現代的機械師。當我第一次聽到它的時候,它並沒有反應過來:我做了我喜歡做的事情,我得到了很多錢,所以我怎麼能像那些給我的車換油的機械師一樣呢?我和街上一家美體店的機械師毫無共同之處。還是我?
現在它有意義了。也許我一直在否認。編程的關鍵是任何人都可以成為程序員。我是說幾乎任何人。如今,編程不再是一門需要創造性和想象力的科學,而是一門人們可以通過書本學到並在第二天應用的東西。其中一個原因是,許多新工具的出現簡化了應用程序的構建。
如今,幾乎任何人都可以找到一個教程(其中有數百萬),學習網絡語言之一,比如PHP、Python或Ruby和構建一個應用程序。這是一個學習非常簡單的語言像PHP,但這是另一件事掌握整個框架和建立一個Facebook克隆一個小時。就在五年前,這一過程涉及的範圍更廣。不了。
編程現在已經成為一種大眾市場現象,而不是隻適合那些有工程頭腦的精英。有很多訓練營和課程,幾乎任何人和他們的媽媽都可以參加,保證你在一個小時左右就能開發出一個“複雜”的應用程序。這甚至不是誇張。如果你能在一兩個小時(或更短)內創建一個Facebook克隆版,我甚至不會感到驚訝。
這導致了該職業的商品化。世界上有那麼多人知道如何創建Facebook的克隆版,任何人都可以跳到自由職業者網站上,從印度、俄羅斯或中國僱一個廉價的程序員,付給他西方工程師能拿到的錢的一小部分。
6.這是一個糟糕的長期職業選擇
如果你瀏覽任何一個開發或創業論壇,你會注意到許多程序員在接近30歲、35歲或更老時開始質疑人生的意義(以及他們的職業選擇)。這是因為編程主要是年輕人的遊戲。有點像運動員,但是沒有錢,沒有名氣,沒有女人。
軟件公司喜歡僱傭剛從大學畢業的人,這並不奇怪。他們把最好的招聘人員送到頂級大學,把公司介紹給潛在的員工。一旦他們僱傭了這些人,他們就會用慷慨的福利和便利設施來縱容這些新員工:校園裡有大型健身房、免費食物、現場按摩,以及幾乎所有你能想象得到的東西。他們這樣做是為了讓你沒有任何理由(你為什麼要這樣做呢?)
當我十幾歲和二十幾歲的時候,我喜歡編程。我被其他雄心勃勃的傢伙包圍著,他們認為自己可以建立一些令人驚歎的操作系統。那些一邊吃披薩和麵條,一邊寫代碼的人,似乎整整幾周都沒有睡覺。
但是,一旦你到了30歲,甚至35歲,或者有了一個認真的女朋友,甚至是妻子,你的產出就會比一些剛從大學畢業的孩子要少。你再也不能在新版本發佈前在辦公室通宵達旦地工作了,因為有人會在家裡等你。你會有壓力,要求你升到更高的“管理”職位,或者改變職業道路。
這意味著程序員的職業生涯相對較短。我並不是說,如果你40歲以上,正在找工作,你會受到任何不同的待遇(儘管在硅谷,大多數公司只僱傭年輕的自以為是者,這是一個骯髒的秘密)。但是,即使你被錄用了,當你被一群看起來像正處於青春期的孩子包圍時,你可能也會感到奇怪,為什麼要聽從一個只有你一半年齡的皮條客的命令。
總結:你需要想得更大更廣
大多數人從事編程工作,但後來發現它並不令人滿意,他們沒有意識到編程只是他們所能從事的工作的一小部分。還有很多其他的問題和挑戰非常適合他們的創造性思維和分析能力。關鍵是要想得更大更廣。開始考慮人的問題,而不是軟件的問題。你能幫助人們解決哪些問題?
創建一個構建和分發軟件服務的軟件公司就是其中之一。建立一個自由職業公司,為你的客戶解決特定的挑戰是另一回事。還有什麼?你決定。
將編程看作是工具箱中針對特定問題而設計的特定工具。例如,我非常幸運,我可以輕鬆地打開WordPress主題並實現一個新功能,或者不需要任何人的幫助就能快速定製註冊表單。
但這些都是在更大、更復雜的挑戰背景下完成的小問題。挑戰包括建立真正的永久性資本。這些挑戰比整天調試煩人的Javascript函數更有挑戰性,也更有價值。