最近跟一些比較年輕的朋友談到找工作、換工作、或是與工作相處本身,會想勸但是不知道怎麼勸。想勸工作、技能本身不要看得太重,但是我來說又很沒有說服力。有時候對方就是要談怎麼增強實力大哉問時,不時會分心想起這句 “Everything you do is ultimately pointless”

這句話是幾個月前在 HackerNews 討論串 看到的回覆。討論串的起頭是有人聽了 John Carmack 與 Lex Fridman 五小時的 Podcast,一面景仰 John Carmack 又埋怨自己在 WoW 跟社群媒體上「浪費」太多時間,現在 23 歲了對未來感到相當緊張與迷惘,問該如何是好。

很巧當時看到一則排名不高但自己很有共鳴的 回答

fnordpiglet:
Everything you do is ultimately pointless. You feel that becoming a particular type of engineer you aspire to is meaningful, but once you get there you’ll realize you’re still yourself and you didn’t ascend to some higher level of being. Probably the most meaningful thing we can do is through social interactions. Your time in WoW must have incorporated social interactions. Be proud of those experiences - they’re in no way worse than others. Enjoy who you are and where you’ve been, avoid hurting people directly or indirectly, and you’ll be fine. If now you value your work with computers more then pursue that with the same vigor - but realize it’s not more meaningful than playing WoW, because meaning is what you make of it. Our culture will tell you productive activities that create capital and productivity are meaningful, but they only are if you find meaning and purpose in them for yourself without regard to the monetary necessities. I’m certain you felt purpose and meaning in your WoW playing at the time, and maybe you’ve just grown and changed. That’s ok too. Just because you wouldn’t spend your time doing WoW now doesn’t change you were driven to then, and the fact you could have “leap frogged” your current skill doesn’t matter one little bit. It’s not a race.

fnordpiglet:
你所嘗試的一切終究是徒勞。你覺得成為某種你景仰的工程師是有意義的,但是當你抵達後會發現你還是你,沒有昇華成更高等的存在。我們能做最有意義的事還是要靠人際互動。你在 WoW 裡花的時間肯定包含了這點。這些經驗值得驕傲。它們不比其他事物低劣。享受你是誰、去過哪,別直接或間接地傷人,這樣就好。如果你現在覺得你的電腦工作比較重要,那就使相同的勁去追求-但要理解它沒有比玩 WoW 更有意義,因為意義都來自於你自身的主觀。我們的文化告訴我們能產生資本、生產力的活動才是有意義的,但它們其實只有在你除去財務壓力後還能找到意義才有意義。你在玩 WoW 的當下肯定有感受到目標與意義,也許你只是長大想法變了。這也很正常。只是現在不想花時間在 WoW 不代表當時不想,去想「早知道就在技能上彎道超別人車」不會有任何實際差別。這本來就不是跟人比賽。

最近有一次聽到別人描述在工作中沒有進步的焦慮,才回想起來自己從小到差不多年紀也這樣焦慮過。焦慮程式競賽沒有名次、焦慮同學都出國自己沒出國、焦慮沒申請上最想去的學校、焦慮在美國念錯科目、焦慮暴雪不給面試機會、焦慮年紀更輕的朋友比自己有成就、焦慮找不到工作要兩手空空回台灣、焦慮要被埋沒在陳年 Legacy Code 裡。來的路上還是一樣不簡單,好像錯失中間任何一步都是人生要全毀。到現在真的都錯失後還沒有全毀,會有點忘記以前是怎麼感受焦慮的。

本來想寫些勸人的話,但是想想又覺得人很難事前勸阻。想像現在要勸以前的自己得失不要看那麼重,自己都覺得不太可能。有時候還不夠接近目標,就是不會停止做幻想到了的時候會有多好。沒有錢的時候也是會想有錢會多好,真的有錢了反而是失去了不快樂的藉口,要直接面對自己就是快樂不起來。雖然程度還是不上不下,但最近幾年寫過了一堆語言 Golang、F#、Haskell、Rust (Rust 推薦學長的 系列文章,可惜沒有後續更新,學長也有技術外的東西要忙了),總是只敢遠觀的 SICP,過了十年也終於聽完了每一課,甚至還在嘗試 Category theory。積累得越多反而越直面空虛感,最近用 Rust 寫 Ray Tracer 算出圖的瞬間感覺到的不是成就感,而是這樣也快樂不起來覺得要完蛋。

畢業過了十年重寫一次 Ray Tracer 發現真是教測試的好題目。大部分零件都是 Pure Function,但是沒有測試確保零件的正確性,算圖結果難以用看的看出問題在哪。是寫測試會遠比不寫順利的情境題。

當然學是沒有止境,只是精進技術跟自己可能最想要的內心的平靜、或是跟人建立長久的關係,真的是相互正交。工作做到管理下屬、制定技術策略、有年輕朋友求教。但生活上沒有吃藥還是難以自理,恐慌跟焦慮來的時候覺得自己有一部分還像是要人哄的嬰幼兒。每天要花 10 ~ 20 分鐘檢查門窗才能出門,最近糾結健康檢查項目反覆快一個月了,寫下來就覺得誇張。人生的課題歸人生的課題,技術歸技術。見識多了還是找不到掌握了就能人生課題不用從頭開始寫的技術。

期待技術能解決人生問題就像期待考試考好能過上好人生一樣,最後只是緣木求魚。

如果你還是跟我朋友一樣想問我有沒有實際一點的建議,我想就延續 沒有人會賠你的 說的不要在看過一樣的東西上太執著,像是 SOLID、Uncle Bob、DDD、Scrum 等等。看看 不用繼承用代數型別(Algebraic data type)做 DDD、考究 Scrum 的 Sprint 的歷史由來、或是重修一門 完全不一樣的程式課程。SICP 是很好的一門課,不要被動漫頭圖的人寫的說幾天就讀完的炫耀文唬住,也不要想要翻別人的筆記求速成。一邊聽寫自己的筆記,有聽不懂的地方就往前翻找,即是像我沒慧根也是能花時間攻克。這不是跟人比賽。其他覺得值得推薦的演講,整理了一個 Wiki 清單 有興趣的朋友可以參考。各個都是我覺得好到想寫文章介紹的演說,只是現在覺得寫文章好像也是種執著跟與人互動的緣木求魚,就越來越少寫了。其他覺得非常值得推薦的東西,今後大概都會簡單更新在 Wiki