AI 時代的軟體工程師:你愛的是手藝,還是目的?
文字解析 · 1 支影片 · 產生於 2026-10-01 00:54
章節(4)
1. Outline
- 起點 · Not Holding Back the Ocean
從個人焦慮出發,用電影剪接的類比推出「剪膠卷 vs 拍電影」這個自問,回到自己真正在乎的是做出好軟體。
2. 作者的思維推導
Not Holding Back the Ocean
ethanniser.dev · 閱讀約 2m28s · 文章語言 en · vision=off (文章沒有任何圖片,純文字論述;shots_mode 自動降為 none。) · 原文
預估 vs 實際耗時
| 階段 | 預估 | 實際 |
|---|---|---|
| fetch | 5s | 1s |
| segment | 35s | 2m30s |
| shot | 0s | – |
| analyze | 2m15s | 1m42s |
| render | 5s | – |
作者從一個很個人的起點出發:他原本是「舊式軟體工程」的高手,而 AI 讓「最好的軟體工程師」這個目標的定義在一夜之間改變,第一反應是不安而不是興奮。他先誠實拆解這份不安的來源——擅長一件事帶來的速度、信任與影響力可能一夕貶值——再把眼前看到的現象歸納成兩點:新工具別人用得更好、過去能讓自己脫穎而出的工作正在變普通。接著他去找歷史上經歷過同樣劇變的產業,選了電影剪接從手剪膠卷走向數位的過程,指出兩者的模式一模一樣,並從中提煉出一個可以拿來自問的問題:你愛的是「剪膠卷」這個手藝,還是「拍電影」這個目的?
如果是後者,工具革命是天大的好消息。最後他把這個問題套回自己:他確實喜歡手寫程式的過程,但更愛的是做出好軟體,這個目的沒變,而過去讓他領先的習慣(努力、持續學習、產出看得見的東西)在新時代依然有效——唯一的條件是,不要像想擋住海潮那樣去對抗這場改變。
推理鏈:每段留給下一段的線索
每一列是一段,箭頭後的字是這段留給下一段的線索。點段落標題跳到該段。
- 遊戲規則已經變了 → 既然舊優勢在貶值,作者接下來要具體說明:他環顧四周到底看到了什麼,讓他確信規則變了?
- 眼前看到的兩件事 → 作者提煉出「工具演進讓差異化工作變普通」這個模式,並暗示它不是第一次發生。那麼歷史上有哪個產業經歷過一模一樣的轉變,可以拿來對照?
- 剪膠卷,還是拍電影? → 「你喜歡剪膠卷還是拍電影」這個問題已經擺在桌上。作者接下來必須回答:套在他自己身上,他愛的到底是「手寫程式」還是「做出好軟體」?
- 我愛的是做出好軟體
3. 逐段說明
Not Holding Back the Ocean
1. 遊戲規則已經變了 ¶1–¶2
作者說「當最好的軟體工程師」的意義已經不可逆地改變了,不是將來會變,是昨天就變了。他承認第一反應並不正面:因為他很擅長舊的那套軟體工程,而擅長一件事既好玩又有力量——能比別人快、成為可信的聲音、發揮更大影響力。
推理因為作者意識到「當最好的軟體工程師」的意義已經不可逆地改變,所以他先不急著談 AI 有多令人興奮,而是誠實交代自己的第一反應並不正面,並解釋原因:他很擅長舊的那套軟體工程,而「擅長」本身就是資產——能比別人更快進步、成為圈內可信的聲音、放大影響力(順帶也能賺錢)。文中第 1、2 段(¶1–¶2)等於先把「有什麼好失去的」講清楚,後面的論證才有重量。
- CDifferentiation:擅長一項稀缺技能能換到速度、信任與影響力→ 畫地圖
- E擅長舊式軟體工程曾帶來:更快進步、圈內信任、放大影響力、賺錢→ 存+演練
- R作者對AI coding工具的第一反應→ 存+回想
AI 補充作者沒有明說但整段推理仰賴的一點是:技能的價值來自稀缺。當「擅長舊式軟體工程」的人少,這份技能就能換到速度、信任與影響力;一旦 AI 讓這些能力變得人人可得,貶值的不是你,而是你原本靠來領先的那項「差距」。作者刻意用「Yesterday honestly」強調變化不是漸進而是已完成,這是後面「不進化就被留下」論述的前提。另外注意作者的坦誠:他把「怕失去優勢」這種通常不會公開講的動機攤開來,讓讀者能對號入座,這也是這篇文章有說服力的原因。
術語:trusted voice
2. 眼前看到的兩件事 ¶3–¶5
作者環顧四周看到兩件事:一組快速演進的新工具與新技巧,別人用得比他快、比他好;以及過去能讓他脫穎而出的工作,正變得稀鬆平常。結論一句話:如果你選擇不進化,這是很可怕的景象。
推理因為上一段已經說明「擅長舊技能」的價值正在流失,所以作者接著把這種抽象的不安具體化成兩個可觀察的現象(¶3–¶4):第一,一組快速演進的新工具與新技巧,別人用得比他更快、更有效;第二,過去能讓他與眾不同的工作,正在變得稀鬆平常。然後他在 ¶5 下了一個條件式結論:「如果你選擇不進化」,這景象就很可怕。注意這句話的重點在「選擇」二字——可怕不是必然,而是取決於你怎麼回應。
AI 補充這兩點其實是同一件事的兩面:新工具讓「以前很難的事」變得容易,所以(一)會用新工具的人跑得快,(二)以前靠「能做到很難的事」建立的差異化就消失了。作者沒有明講但值得補上的是,這兩點合起來構成一個「模式」(pattern):工具演進 → 難事變常態 → 舊差異化失效。之後作者會拿這個模式去對照別的產業,所以這一段的功能是先把模式抽出來。另一個值得注意的地方:作者說別人用新工具「比我更快、更有效」,這暗示他自己也在用,只是還不熟——他的焦慮不是「被淘汰」而是「從領先變成落後」。
術語:normalizationevolve
3. 剪膠卷,還是拍電影? ¶6–¶10
作者拿電影產業類比:以前剪接是用手剪膠卷,做這行的人很厲害、賺得好、樂在其中;數位工具出現後,不進化的人就被留下。那次轉變的模式跟現在一模一樣。關鍵問題是:你喜歡的是「剪膠卷」還是「拍電影」?如果是拍電影,數位攝影革命是你遇過最好的事——五十年前要一整個團隊、幾萬美元、幾週時間,現在一支 500 美元的 iPhone 自己就能拍完。喜歡剪膠卷沒有錯,但得接受它不再是原本那份工作。
推理因為上一段已經抽出「工具演進 → 差異化工作變普通」這個模式,所以作者接著去找一個已經走完這條路的產業來對照。他選了電影:以前剪接是用手把實體膠卷剪開再接起來(¶6),做這行的人很厲害、賺得好、樂在其中,但數位工具出現後,不進化的人就被留下。¶7 明確說「那次轉變的模式一模一樣」,把類比跟上一段的兩件事對上。然後 ¶8 提出全文最核心的問題:你喜歡的是「剪膠卷」還是「拍電影」?如果是拍電影,數位攝影革命就是你遇過最好的事。¶9 用具體數字說明為什麼:五十年前要一整個團隊、幾萬美元、幾週;現在一支 500 美元的 iPhone 自己就能拍完。¶10 收尾時作者刻意留了餘地:喜歡剪膠卷沒有錯、現在還是有人在剪,但得接受它不再是原本那份工作。
- CMaking movies:手藝(剪膠卷)會被取代,目的(拍電影)不會→ 畫地圖
- A手寫程式的技藝可能被AI coding工具取代,就像剪膠卷被數位剪接取代→ 批判類比
- E50年前拍片要一整個團隊、幾萬美元、幾週;現在500美元的iPhone就能拍完→ 存+演練
- R作者選電影剪接業當歷史對照→ 存+回想
- R作者對堅持手動剪接的人留的餘地→ 存+回想
- R作者混在一起講的兩波技術變革→ 存+回想
AI 補充這段類比的力量來自它把「手藝」(craft)和「目的」(purpose)拆開:剪膠卷是手藝,拍電影是目的。手藝會被工具取代,目的不會——而且工具革命通常讓目的更容易達成。套回軟體:手寫程式是手藝,做出好軟體是目的。作者沒有直接說,但讀者到這裡應該已經能自己完成這個對應。有一個地方作者講得比較快:他把「數位剪接」和「數位攝影」混在一起講——手剪膠卷被取代的直接原因是非線性剪接軟體(1990 年代普及),而「用 iPhone 拍完一部片」說的是數位攝影機的普及(2000 年代之後),這是兩波不同的變革;不過對於「工具讓整個流程門檻大降」這個論點來說,兩者方向一致,不影響結論。另外注意 ¶10 的態度:作者不是在嘲笑堅持手藝的人,而是在區分「保有興趣」和「以此為業」——這也是他對自己的態度預告。
術語:cutting filmmaking moviesdigital cinematography
「And yet when digital cinematography tools arose, if they chose not to evolve, they would’ve gotten left behind.」
4. 我愛的是做出好軟體 ¶11–¶14
作者回到自己:他真的喜歡手寫程式——手刻 leetcode、翻 Stack Overflow 除錯、被 tab 補全加速的快感。但比這些更愛的是「做出很棒的軟體」。當初學程式就是為了成為最會做軟體的人,這沒變;過去讓他領先的東西——努力、持續學習、產出看得見的成果——在新時代一樣適用。前提是:他選擇不去擋住海洋。
推理因為上一段已經把「手藝 vs 目的」的問題擺出來,所以作者接著誠實承認:他真的喜歡手寫程式的過程(¶11)——一個字一個字敲 leetcode 和 Advent of Code、在 Stack Overflow 翻好幾個小時找一個小 bug、被 tab 補全加速的快感——這些都是真的。但 ¶12 用一句話轉折:比這一切更重要的是,他愛的是「做出很棒的軟體」。¶13 接著推論:他當初學程式就是為了成為最會做軟體的人,這個目的沒變;而過去讓他領先的三件事——努力、持續學習、產出看得見的成果——不是綁在舊工具上的,所以在新時代應該一樣管用。¶14 用標題那句話收尾:前提是,他選擇不去擋住海洋。
- CHold back the ocean:面對必然的潮流,唯一理性選擇是順著走不抵抗→ 畫地圖
- A抗拒AI coding工具,就像當年可能抗拒tab補全一樣沒必要→ 批判類比
- E逐字敲leetcode、翻Stack Overflow找bug、被tab補全加速:三段回憶分屬手藝的樂趣、苦、早已接受的加速→ 存+演練
- P區分自己愛的是手藝還是目的→ 練習
- P把綁定舊工具的技能,換成可攜的工作習慣→ 練習
- R「hold back the ocean」的典故→ 存+回想
- R過去讓作者領先的三件事→ 存+回想
AI 補充這段是前面類比的直接套用:手寫程式 = 剪膠卷,做出好軟體 = 拍電影。作者列舉的三段回憶其實有層次——leetcode 是「手藝本身的樂趣」,翻 Stack Overflow 是「手藝的苦」,tab 補全則是「他早就接受過一次工具讓自己變快」——最後這點是隱藏的論證:如果你當年愛上了 tab 補全,那你愛的其實就不是「每個字都自己打」。¶13 的推論也值得注意:作者主張真正讓他領先的是「工作習慣」(努力、學習、產出)而不是「特定技能」,前者是可攜的,後者才會被工具取代——這是他為什麼能從焦慮走向樂觀的邏輯關鍵。最後「不擋住海洋」(hold back the ocean)典出英王 Canute 命令潮水退去的傳說:面對必然的潮流,抵抗是徒勞的,唯一理性的選擇是承認它、順著它走。作者把「進化」重新定義成「不抵抗」,跟第 2 段「進化是一種選擇」相呼應。
術語:tab complete
4. 總結
作者先坦承:他是舊式軟體工程的高手,而 AI 讓「最好的工程師」的定義一夜改變,第一反應是不安 → 把不安拆成兩個觀察:新工具別人用得更好、過去能差異化的工作正被 normalize → 找到歷史對照:電影剪接從手剪膠卷走向數位,模式一模一樣 → 提煉出關鍵問題「你愛的是 cutting film 還是 making movies?」 → 套回自己:喜歡手寫程式,但更愛做出好軟體;努力、持續學習、產出成果這些習慣依然有效,前提是不去「hold back the ocean」。
勘誤總整理
確定錯誤/已過時見仁見智(取決於版本或情境)
| 段落 | 原話(transcript 逐字) | 說明 |
|---|---|---|
| 3. 剪膠卷,還是拍電影? ¶6 |
「And yet when digital cinematography tools arose, if they chose not to evolve, they would’ve gotten left behind.」 | 這句把「手剪膠卷被取代」歸因於「digital cinematography(數位攝影)」,但實際上取代手工剪接的是數位非線性剪接系統(例如 Avid,1989 年推出、1990 年代普及);數位攝影機在電影圈普及是 2000 年代以後的事,兩者是不同波的變革。作者是把兩者合稱為「數位工具」來講,對「門檻大降」的論點沒有影響,但術語上不夠精確。 依據: Avid/1 Media Composer 1989 年推出;Walter Murch 以 Avid 剪接《English Patient》(1996)獲奧斯卡剪接獎;數位攝影在主流電影普及約 2000 年代(如 Star Wars Episode II, 2002 為首部全數位拍攝的大型商業片)。 |
5. 推薦三個下一步
1. 往下挖深:AI 時代的工程師實際上怎麼工作
文章只給了心態,沒說「evolve」具體長什麼樣;缺的是新工具與新技巧的實作面。
YouTube 搜尋:AI-assisted software engineering workflow agentic coding Claude Code Cursor how senior engineers use AI coding tools
2. 往旁邊對照:其他被工具革命改寫的專業
作者只用了電影剪接一個類比;看更多產業(攝影、翻譯、排版)能檢驗這個「模式」是否真的普遍。
YouTube 搜尋:film editing digital transition history how photography changed with digital cameras translators and machine translation career
3. 往上應用:把「目的」重新定義成你的職涯策略
文章結尾說「同樣的習慣依然管用」,但沒展開在 AI 時代要學什麼、產出什麼;這是讀者要自己接的。
YouTube 搜尋:software engineer career AI era what skills matter for developers with AI product engineer vs software engineer
- 接著看 →How a Cloudflare Engineer Ships Production Code He Didn't Write | Dillon Mulroy · 這篇問「你愛的是剪膠卷還是拍電影」;那站是一個人真的選了拍電影之後六個月的代價與收穫
- 接著看 →GitHub Copilot 一次只給一種答案?Orca 讓你召喚 AI 大軍同時寫 Code,優劣立判! · 文中說「別人把新工具用得更快」;那站具體看這些新工具(ADE、多 agent)長什麼樣
- 接著看 →Rails World 2026 Opening Keynote - DHH · 先分清愛手藝還是愛目的,DHH 用攝影史把同一題推成產業宣言
- 接著看 →Ruby, Rails, and the future of programming - Matz, DHH & Jeremy Daer · 先分清愛的是手藝還是目的,再看 Matz 與 DHH 怎麼回答同一題