Categories
程式開發

一位資深程序員的感悟:這個行業,僅靠年輕人是不夠的


我們的文化推崇年輕人。這有幾個原因,年輕似乎等同於活力、力量、美麗以及許多其他令人嚮往的品質。一般的觀點認為,年輕人雖然叛逆,但也很容易操控——如果你知道合適的方法。我應該買一雙耐克鞋,因為它們是以邁克爾·喬丹的名字命名的:像我這樣的中年人不會輕易受到這樣說法的影響。但是有一段時間,我十幾歲的女兒買了一雙耐克鞋還不夠。

在智力追求上(像軟件開發),年輕人通常被讚美為創新的源泉。你可能經常遇到這樣的例子,哪個人年輕有為——埃瓦里斯特·加洛瓦,他在21歲前就完成了自己的所有發現;艾達·洛夫蕾絲在28歲時製作了被認為是“第一個計算機程序”的東西;艾倫·圖靈在24歲時撰寫了《論數字計算在決斷難題中的應用》。

注:埃瓦里斯特·加洛瓦是數學家,現代群論的創始人之一,被視為數學天才;艾達·洛夫蕾絲,數學家,世界上第一個計算機程序員;艾倫·圖靈,英國數學家、邏輯學家,被稱為計算機科學之父,人工智能之父。

很明顯,年輕不妨礙做出突破性貢獻。甚至民間有流傳,35歲以上的人在學術上的唯一機會就是編寫一本教科書。

五隻猴子的故事

你可能看過一個叫《五隻猴子的實驗》的故事,它很可能是虛構的:

一群科學家把五隻猴子放進一個籠子裡,並在中間放一個梯子,上面掛著香蕉。每當一個猴子爬上梯子,科學家就向其它猴子潑冷水。一段時間後,每當有一個猴子爬上梯子,其它猴子就會毆打它。

過了一段時間,沒有猴子敢再爬上梯子。科學家然後用一隻新猴子取代其中一隻猴子,新猴子會立即去取香蕉,然後被其它猴子毆打。在被毆打幾次後,新猴子知道了不要爬梯子,儘管它不知道為什麼。

第二隻猴子被取代,相同的事情會發生。第一隻取代的猴子參與毆打第二隻取代的猴子。第三隻猴子被取代的時候,故事則會重演。第四隻猴子被取代,毆打被重複。最後,第五隻猴子也被取代。

剩下五隻猴子,儘管它們從未被潑冷水,但仍會毆打任何嘗試爬梯子的猴子。如果有可能問這些猴子為什麼毆打所有想要爬梯子的猴子時,回答很可能是:

“這是這裡的規矩。”

這個故事告訴我們,年齡和經驗所帶來的拖累。如果你在一家公司做了幾十年,你會看到無數你年輕時就嘗試過的失敗嘗試。你知道,那是不可能的。

年輕人不知道某件事是不能做的。如果他們能避免像故事中的猴子毆打那樣的打擊,他們就會嘗試不可能的事情。

改變環境

嘗試不可能的事是個好主意嗎?

一般來說,不是,因為它是不可能的。年長者告訴年輕人某件事不能做是有原因的。這不僅僅是因為他們是討厭變革的頑固保守派。而是因為他們將這種努力視為浪費。也許他們會試圖表現地和藹可親,引導年輕人遠離只有辛勞和失望的道路。

而年長者可能沒有意識到,有些時候,環境發生了改變。

二十年前不可能的事情,現在也許有可能實現。我們可以在許多領域看到這樣的例子。幾十年來,生產一輛商業上可行的電動汽車是不可能的,直到電池技術的進步,這讓生產電動汽車成為可能,比如特斯拉。

在軟件開發行業,技術快速變化。人們之前嘗試並覺得不可能的事情,也許現在會發現變得可能了。曾經,如果你有很多數據,你必須以完全標準化的形式存儲,因為存儲非常昂貴。十年來,關係型數據庫獨領風騷。然後環境變了,存儲變得更便宜,NoSQL存儲成為一個新動向。之前不可能的事情變得可能。

年長者往往看不到新的機會,因為他們“以為”某些事情是不可能的。年輕人在熱情和無知的驅使下衝擊桎梏。大多數人失敗了,但少數人卻獲得了成功。

不可能的彩票

我將這個過程視為一個彩票抽獎活動。想像一下,每個不可能的事都是滾筒中的一個紅球。每個嘗試不可能的年輕人從滾筒中隨機抽取一個球。

這個滾筒中有幾百個紅球,但每時每刻,其中一個都會變綠。你不知道哪個會變綠,但只要你參與抽獎,這就代表了以前不可能的事情現在變得可能了。

這個過程產生了增長,因為一旦發現新的、更好的做事方式就可以改善整個社會。有時候,年輕的發現者甚至會收穫名譽和財富。

儘管,這看起來有點兒浪費。大部分嘗試不可能的人都會得到原先預測的結論。被認為不可能的事情確實是不可能的。

從我個人來講,我不認為年輕本身就是進步的源泉。這只是適用於大數定律。如果某件事有百萬分之一的機會成功,但是一千萬人嘗試了它,有一個人成功就只是時間問題。

社會上的大部分人會從這些少數人的成功中獲益,但是上千萬人仍然浪費了他們的精力。

我們也需要“老人”

如果你接受年輕人更喜歡嘗試不可能事物的觀點,那麼我們需要年輕人。

那我們需要“老人(這裡指大齡程序員)”嗎?

我在今年50歲了。你可能認為我老了,但是我期望再多工作幾年。我不知道軟件行業是否需要50歲的人,但是我想的還不是這種年紀較大的人。我想的是那些已經退休或即將退休的人。

在推崇年輕人的文化中,我們往往忽視“老人”的意見和經驗。我們常說,這只是一個懂事兒的“老人”。

我們忽視“老人”的經驗,因為我們認為他們沒有與時俱進。他們的經驗不適用於我們,因為我們活在新環境中。就像上面所說的。

我並不是提倡我們變成一個只因為年齡而尊重長輩的“老人統治”。而且,根據大數定律,有些人會活到老年。倖存者和智慧之間沒有任何必要的聯繫。

我們需要“老人”告訴我們真相,因為他們沒有什麼可失去的。

沒有什麼可失去的

在過去幾年裡,我注意到一個趨勢。一本書出版,它會揭露某個組織的悲慘狀況。這在我居住的丹麥經常發生。一本書可能揭露丹麥稅務局的可悲情況,一本書可能描述了國防部的情況,一本書批評與氣候危機有關的群體思維等等。

一般,這些書是由退休的教授或部門主管撰寫的。

我不認為這些人在退休後突然頓悟。作為系統的一部分,他們早已知道身處系統的“腐爛”,但它們那時有太多東西會失去。你可能會說,他們本應在退休前說出來,但是,那需要我們不能指望大部分人都有的道德支柱。

當人們退休了,被解僱的風險就消失了。 “老人”可以比其他人更自由地說一些其他人不敢說的話。

誠然,有許多人可能會利用自由言論進行發洩。但是,許多處於特殊地位的人能揭示別人不敢說的真理。許多人,可能只是吐吐苦水,但一些人去可以揭露他們處於獨特地位所掌握的信息。

當那個脾氣暴躁的老傢伙在推特上寫了一些讓你感到不舒服的東西時,想一想:他可能是對的。

不可理喻

在某種程度上,你可以說,我們需要年輕人和老人是出於同樣的根本原因。不是他們所有人,而是足夠多的人,處於不可理喻的境況。

“理智的人讓自己適應世界:不可理喻的人堅持試圖讓世界適應他自己。因此,一切進步都要靠不可理喻的人。”
-喬治·伯納德·肖

年輕人和老人都在用他們各自的方式表現得不可理喻,我們需要這兩種人。

結論

在軟件開發行業,我們需要年輕人。由於他們的熱情和缺乏經驗,他們將衝擊桎梏。大部分人在嘗試做不可能的事情時會失敗,但少部分人會成功。

這看起來有點兒像是個憤世嫉俗的觀點,但是我們都曾年輕過,而且我們大部分人都經歷過這樣一個階段。這有點兒像是一個成人儀式,即使你沒能在世界上留下你的印跡,你仍然會學到很多東西。

我們需要老人,因為他們處於敢向世界說真相的位置。請注意,我並沒有就老人的經驗進行爭論。事實上,我覺得那也很有價值,但這就是一個普通的觀點:傾聽老人的話,因為他們有經驗和智慧。至少他們中的一些人是這樣的。

我並不想就此爭論太多。如果我只是想說那些,就沒有理由再寫這篇文章了。老人在意的更少,所以他們能更自由地說話。如果你曾經崇拜的某人退休了,突然開始說或者寫一些令人不快和吃驚的事情,那也許就很好解釋了,而且也比較值得注意。

或者,也許他(或她)只是在吐苦水或者慢慢變老…

原文鏈接:

https://blog.ploeh.dk/2020/09/14/we-need-young-programmers-we-need-old-programmers/