程序員的宇宙時間線


蜘蛛的選擇


週六晚上,我把車停在了親戚家小區門外的路邊。在三個小時之後我準備開走的時候,突然發現,前車門外面似乎有一根銀色的細線,在遠處路燈投下的微弱余光中輕輕地顫動。我藉助手機屏幕的亮光才得以看清,原來是一隻蜘蛛正在左後視鏡和前車門之間織網。


一陣晚風吹來,裹挾着旁邊溫榆河的水氣。蜘蛛和它的蛛網,也在這一陣風中搖搖欲墜。但我知道,這還不是最糟糕的,因爲汽車馬上就要開動了。


於是我在心裏不禁爲它感到一陣惋惜。它本來應該選擇把自己的網建在一個更恰當的地方。


人生之事業,也猶如在織一張大網。要想把事業之網織的牢固,選擇最重要。首先要讓自己立足於一塊良田沃土之上,深耕數年,方得收穫碩果。選擇一個適合自己,並讓自己的才智得以發揮的領域,這是每個人都要面臨的課題。


棧式時間線和多重宇宙


六月夏季的一個晚上,小白獨自行走在校園裏。最近畢業季的各種告別聚會和酒精帶來的刺激,讓他不禁感到有些恍惚。他隱隱地感覺到又一個面臨人生重大抉擇的時刻到來了。他剛剛把女朋友送回宿舍,然後獨自一人來到這片還算僻靜的地方,就是想靜下來仔細想一想。


他就讀的學校算不上一流大學,但學的是當前熱門的計算機專業,所以找到一份餬口的工作並不成問題。實際上,他現在手裏已經有了兩個offer了。


一個offer來自一家知名的互聯網公司,給他提供的工作崗位也是他比較喜歡的編程工作,只是需要他離開當前所在的北京,南下深圳。小白是個北方人,他擔心自己會不習慣南方的生活習慣,而且更重要的是,他女朋友肯定短期之內不會跟他過去。他已經和女友反覆討論過這個問題,雖然不會就此分手,但恐怕要陷入異地戀的糟糕狀況。而一份異地的感情,往往凶多吉少。


另一個offer來自北京一家體制內的研究所。他本來覺得自己年紀輕輕,不會喜歡體制內那種按部就班的工作狀態。但是他家裏人都極力勸他接受這份工作,理由是工作穩定,福利也有保障。而且他這個offer確實得來不易,要不是他二舅的表哥的鐵哥們跟裏面的熟人打了招呼,他能進入這家研究所的可能性恐怕連萬分之一也沒有。


小白正在左思右想,難以抉擇之時,突然間,他聽到附近有人發出一聲怪笑:“哈哈哈,我終於成功了!”小白心裏不禁一驚,原來他不知不覺間來到了科學怪才博士的實驗室旁邊。


好奇心驅使他來到博士的實驗室門前,他發現博士手裏正拿着一個類似空調遙控器一樣的設備,嘴裏正嘿嘿地笑着。博士發現了小白,喊他進去,把那個遙控器一樣的東西遞給他看,“小夥子,這是我新研製出來的設備,正想做個實驗,想不想試試?”


小白隱約察覺到博士的嘴角流露出一絲陰險的笑意。但當他低頭看到遙控器上的一行小字時,心裏頓時樂開了花。那行字寫的是:“多重宇宙控制器”。


小白輕輕按下存檔鍵,幽幽的藍光閃過,“存檔-1”瞬間被創建好。然後小白輕鬆地做出了他的選擇,宇宙時間線也開始向着他所選擇的分支延伸。


小白進入了那家北京的研究所,在IT技術部門負責維護網站和數據庫。開發的需求大部分來自於部門領導王處長。


一轉眼兩年過去了。雖然工作比較乏味,但是小白每件事情都認真去做,王處長對他的工作非常滿意。他逐漸贏得了領導的信任,感覺被提拔的日子指日可待。


有一天,傳達室的張大媽突然找到小白,告訴他王處長的侄女對他有意思,問他願不願意試着和她交往。王處長的侄女也在這個研究所工作,只是跟他不在一個部門,他平常與她只是有些業務上的往來。小白心想,領導的這個侄女長相一般,脾氣也不好,實在不是一個理想的人生伴侶。而且在這兩年中,小白與原來大學期間的女朋友感情也很穩定,他不能辜負她的感情。不過王處長人家是大領導,如果駁了他的面子,會不會被穿小鞋?


小白婉言拒絕了張大媽的提議,不過心裏也很忐忑。他偷偷拿出了科學怪才博士送給他的“多重宇宙控制器”,幽幽的藍光閃過,“存檔-1-1”瞬間被創建好。


果然不出所料,從那以後,王處長對他態度大變,經常指責他做的工作不到位。轉眼間又過去了兩年,他眼瞅着周圍的同事一個個都被評上了工程師或高級工程師的職稱,只剩下他自己排不上號。他和女朋友也到了談婚論嫁的年齡,但是他們在北京買不起房,而且以他現在這個狀態,在單位裏分到房的希望也很渺茫。迫於現實的壓力,女朋友提出跟他分手,投入了別人的懷抱。


小白極度悲憤。他又一次拿出“多重宇宙控制器”,這次他按了恢復鍵。刺眼的紅光閃過,宇宙時間線開始倒退,一直退到了“存檔-1-1”的位置。


對面的張大媽正等着他的回答。這次他做出了不同的選擇。


小白與王處長的侄女交往得還算順利。而他自己的個人評級,職稱評定,工資上調之類的事情,也從此異常地順利。他原來的女朋友知道了這事之後,傷心地離開了。


一年之後,他與王處長的侄女結婚了。然而,婚後生活卻很不太平。他這個老婆在婚後終於露出了粗俗的本性,經常對他大發脾氣,動不動就拿王處長來壓他,還經罵他是喫軟飯的。這讓他感覺沒有一點男人的尊嚴。


小白實在忍無可忍。他再一次拿出“多重宇宙控制器”,按下了恢復鍵。刺眼的紅光閃過,宇宙時間線瞬間退到了“存檔-1-1”的位置。


他又按了一次恢復鍵。刺眼的紅光閃過,宇宙時間線瞬間退到了“存檔-1”的位置。


小白滿臉沮喪地看着科學怪才博士。博士一臉壞笑,“這裏還有一條1-2時間分支,看起來似乎不錯,要不再試一下這個?”


小白心裏清楚,博士說的“1-2時間分支”,指的是讓他接受第二個工作offer。


他遠赴深圳。在這家互聯網公司裏,他工作得兢兢業業,每天加班到很晚。功夫不負有心人,一年之後,他被提升爲技術主管。又經過兩年,他進入了中層管理層。他的個人收入在過去的三年裏也連續翻了兩番,並在深圳購入了他人生的第一套房。


然而,危機也隨之而來。由於工作繁忙,分居兩地,他與女朋友缺乏相處的機會,終於這一份感情被時間消磨地所剩無幾。最後兩人以分手告終。同時,他也沮喪地發現,在公司內中層以上的晉升非常困難,很多要職已被公司元老們佔據。在可以預見的未來五六年內,他都不太可能會有什麼大的突破。他又一次開始懷疑自己當初的選擇,甚至懷疑自己是否適合技術開發這個行當。


在一次與朋友一起喝酒敘舊之後,小白回到家裏,一時激動,拿出了科學怪才博士的“多重宇宙控制器”,哆哆嗦嗦地按下了恢復鍵。刺眼的紅光閃過,宇宙時間線再次退到了“存檔-1”的位置。


小白髮現自己又一次回到了博士的實驗室。他舉頭望去,淚水已經模糊了他的雙眼。他看到博士臉上戲謔的笑容不見了,而是發出了悲天憫人的一聲嘆息。




好了,故事講完了。我們先暫時舒緩一下情緒,分析一個技術問題。在小白的多重宇宙裏,時間線是按照棧式來組織的。大體來說,按下存檔鍵相當於進棧操作(push),而按下恢復鍵相當於出棧操作(pop)。作爲程序員的你,看懂了嗎^-^ (如發現bug,請留言)


然而,在我們這個現實世界裏,時間線可不是什麼棧式的,而是一維線性的。這意味着我們一旦做出選擇,就無法像故事中的小白那樣悔過重來。


無論你是剛剛畢業,即將踏入社會的學生,還是已經在程序員這個行當幹了若干年,卻遇到了上升瓶頸期的老手,都要面對一個對於未來重新選擇的問題。


人生的很多焦慮,都來源於對未來的不確定性的恐懼。一旦選擇,便無法挽回。


我們的選擇正確嗎?我們選擇做了程序員,這適合自己嗎?我很想與你討論討論。


感性


對於有些人來說,在他/她走出校園之前,就很清楚自己不太適合做程序員了。理由很簡單,就是不喜歡。沒有爲什麼,就是不喜歡。


比如很多科班畢業的同學,在學校的學習成績很好,但只要一看到代碼就感到頭痛。如果這樣的事發生在你身上,不要感到沮喪,這並不是什麼糟糕的情況。越早地發現自己的劣勢,越能夠以小成本的方式避免進入錯誤的行當。


而更常見的一種情況是,各方面的興趣都很泛泛,不知道自己喜歡什麼,不喜歡什麼,也不知道自己擅長什麼,不擅長什麼。這樣選擇起來就難了。這樣的同學如果選擇做了程序員,多半會發生這樣一種情況:工作了兩年之後,發現自己越來越不適合做這這份工作,很多方面都跟當初自己想象的不一樣。比如需要長時間獨自一人坐在電腦前面,特別是在調試程序時發生了意想不到的情況,百思不得其解而又無人求助,心裏會越來越沮喪。再比如,每次技術討論,周圍的技術牛人們都在發表自己的見解,而他自己卻越來越聽不懂他們在說什麼。長期如此,自己會變得越來越沒有自信,不敢在別人面前發表技術上的看法。他們得不到周圍同事的讚許,也得不到leader的青睞。


這樣的情況,也還不算太糟糕,至少試錯的時間成本還不算太高。這時要做的就是儘早轉型。


真正糟糕的情況是那些在程序員這個行當混了五六年以上的,仍然沒能發現自己有這方面的天分,在團隊中一直無法出類拔萃。可以想象,這個時候如果再轉型,壓力是巨大的。


不過,按我個人的猜測,大多數從事編程工作的從業者,很可能都會陷入這樣一種困境而無法突破。在任何行業,都是隻有少數人才能夠成爲精英。在整個互聯網甚至整個IT行業內,正是這樣的“大多數”默默無聞地工作在各個崗位,辛辛苦苦地維護着各種各樣的業務,爲更多的人提供着互聯網服務的便利。


這對於整個社會來說,或者對於一個大的公司組織來說,是一種常態。但對於深處其中的個人來說,是一場人生悲劇!


我們怎樣做才能避免這種悲劇發生呢?


理性


在很多情況下,我們如果不去花費時間和精力去嘗試做某一件事情,我們就不知道自己能不能把它做好。而職業選擇的目標就是要讓我們避免不必要的嘗試,最好能每次都選擇正確。這是一件事情相互矛盾的兩個方面,而矛盾的焦點就在於時間成本只能付出一次,一旦付出,就無法收回。


我們沒有前面故事中講的“多重宇宙控制器”,我們每個人都要面對的,是唯一的一條線性時間線。那我們應該怎麼做呢?


我們唯一能做的就是:一旦選擇,就全力以赴


我經常聽到有一些技術人員會說,我將來的志向是做管理,所以現在沒有必要鑽研一些特別深的技術細節。而且不知道從什麼時候開始,在程序員職場上有一種流行的說法,說是做技術的歲數大了都無法再做技術,必須要轉管理。甚至很多畢業生也都是這樣想的,把第一份編程的工作只是當成一個過渡。我們先不管這種說法正確與否,我們只是來分析一下這種思潮對我們會帶來哪些負面的影響。


首先,它可能讓你心猿意馬,無法專注於眼前的工作。時間長了,它可能讓你產生一種錯覺,感覺自己總是無法深入到技術底層,從而愈發覺得自己不適合做技術。


其次,如果你當前這一件事情沒有做到最好,那哪來的信心能把下一件事做好呢?要知道,做任何事情的技藝都是相通的,成功的經驗比失敗的經驗更重要。


所以,不管你未來的遠景規劃是什麼,對於當前的事情你都應該全力以赴。即使你打算遨遊整個宇宙,是不是可以先從研究發動機開始呢?


那好,我已經全力以赴了,我非常刻苦了,但還是感覺追不上週圍的技術大牛。怎麼辦?


這個時候就不要做橫向比較了,周圍的技術大牛可能比你積累的時間長多了。而且,並不是任何人都能成爲Dennis M. Ritchie,也不是任何人都能成爲Jeff Dean。你周圍的技術大牛恐怕也不能。


這時就需要從自身出發去考慮了:我是不是每天都在進步,比昨天的自己更好一點?我當前還有沒有突破的可能?如果沒有的話,那麼我的時間資源是固定的,我要把它投放到哪裏才能發揮最大的價值?比如我轉行去設計產品的話,我能否成爲傑出的產品經理?再比如我轉行去做銷售的話,我是否每天願意和不同性格的人打交道?如果我乾脆自己去創業的話,那麼我有沒有堅定的想法和不斷向前的驅動力,以及足夠的抗壓能力?如果我打算轉行去當一名作家,我能否寫出驚世駭俗的作品?


當對於這些問題你都有了堅定的答案了,也許你就能做出你的選擇了。


結局


在前面小白的故事中,小白的錯誤就在於他總以爲有博士的控制器爲他撐腰,所以選擇過於輕率,而放棄也過於輕率。


每個人都有選擇的自由。


選擇也無關乎好壞。


在現實世界中,我們也無法真正比較兩個不同的選擇分別會帶來什麼樣的結果。


但是,我們必須學會要對任何一種選擇的後果負責。


實際上,小白的故事還有一個結尾。


博士在一聲嘆息之後,喃喃自語,“看來這終究是個害人的東西。”說完,他拿起一把錘子,把“多重宇宙控制器”砸了個稀巴爛。


小白選擇留在了北京,留在了女友的身邊。這一次他下定決心,不管發生什麼事,他都要堅持這份感情。他先是在北京找了一份技術工作,工資不算太高,但每天都能學到新東西,也能有更多的時間陪伴女友。


兩年之後,小白辭職出來,與女友一起創業。經過多年打拼,雖然中間也經歷了種種難關,他們創辦的公司也幾近倒閉,但他們最終還是堅持了下來。終於,他們的業務規模越做越大,賺的錢也越來越多,在北京也購置了房產。


又過了幾年,小白把公司賣掉,變身爲億萬富豪。然後,他帶着老婆開啓了去仙境瀑布探險的幸福旅程。



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章