從盧德運動到 AI Coding:我們如何面對無法預測的技術變革?

過去兩三年,AI coding 的發展速度相當驚人。

2024年,許多工程師已經開始使用 ChatGPT 或 GitHub Copilot 協助寫程式,但通常只讓 AI 完成一小段 code,然後自己逐行檢查、修改,再整合到原本的專案裡。當時 AI 比較像是一個程式助理,工程師還是需要自己掌握整個開發過程。

2025年,隨著 Claude Code 等 AI coding agent 的出現,工作方式開始改變。工程師可以直接交代一個完整任務,讓 AI 自己閱讀專案、修改多個檔案、執行測試,甚至根據錯誤訊息自行修正程式。不過,工程師還是需要花不少時間檢查 AI 寫出來的 code,確保它沒有犯錯。

到了2026年,部分資深工程師又開始採用不同的工作流程。他們不再逐行檢查 AI 產生的所有程式碼,而是建立一套自動化的測試與審核機制。例如先讓 Claude Code 完成開發工作,通過預先設計的測試,再交給另一個 AI,例如 Codex,從不同角度審查程式碼。如果發現問題,再交由 AI 修改,直到通過測試與審查。

從2024年到2026年,短短兩三年,AI coding 已經從協助人類撰寫程式,發展到可以自行執行相當完整的開發任務。

工程師的工作也開始改變。過去主要是自己寫程式、除錯與測試,現在部分工作逐漸轉向設計系統架構、規劃工作流程,以及建立一套能夠驗證 AI 工作成果的機制。

如果未來大部分程式碼都可以交給 AI 撰寫、測試與修改,那麼軟體工程師的工作究竟會變成什麼樣子?企業還需要雇用這麼多工程師嗎?整個軟體產業又會如何改變?

這讓我想到兩百多年前的英國紡織產業,以及當時著名的盧德運動(Luddite Movement)。

1811年,當紡織機開始取代熟練工匠

1811年,英國諾丁漢郡的紡織工人開始集體破壞編織機,抗議工廠主利用新的機械與生產方式降低工資,破壞傳統工匠的生計。這場運動後來被稱為盧德運動,並逐漸擴散到英國其他紡織工業區。

現在英文裡的 Luddite,經常被用來形容那些反對新科技、不願意接受技術進步的人。但如果回到當時的歷史背景,這些工人的反抗其實有相當具體的經濟理由。

工業革命以前,英國許多紡織工人仍然在家庭或小型作坊工作。他們使用編織架、織布機或其他工具製作紡織品,其中一些工作需要多年累積的技術與經驗。

例如當時的毛呢剪絨工(cloth croppers),必須使用大型剪刀修整毛呢表面的絨毛,讓布料保持平整均勻。這需要相當熟練的技術,因此這些工人的工資也相對較高。

但是新的紡織機械出現後,部分原本需要熟練工人才能完成的工作,可以透過機械與較低技術的勞工完成。工廠主不再需要依賴原本的專業工匠,這些工人的工資與議價能力也開始受到威脅。

對工人而言,他們花費多年累積的專業技術,突然變得沒有以前那麼有價值。

所以盧德工人反對的,不完全是機械化本身。他們也在反抗新的生產方式所帶來的工資下降、工作條件惡化,以及原本經濟地位受到的威脅。

從經濟學角度來看,機械化提高了紡織品的生產效率,降低了生產成本,長期而言也讓更多消費者可以購買便宜的布料與衣服。

但這些社會整體的利益,並沒有保證原本的工人能夠受益。

當新的機器可以取代熟練工人的專業技術,企業對這些勞工的需求可能下降,原本的技能溢酬(skill premium)也跟著減少。即使整個社會的生產力提高,某些勞工的工資與就業機會仍然可能惡化。

後來的歷史確實也發生了類似的變化。

兩百年後,紡織成衣產業變成了什麼樣子?

紡織機械化並沒有讓紡織成衣產業消失。

相反地,隨著紡紗、織布與縫紉技術持續進步,布料與衣服的價格逐漸下降,成衣也從相對昂貴的商品,變成一般家庭可以大量購買的日常用品。

當商品價格下降,消費者的購買數量可能增加。因此,即使製造每一件商品需要的勞動投入減少,整個產業的產出仍然可能大幅擴張。

這是經濟學上技術進步所帶來的需求擴張效果。

但產業擴張並不代表原本的工人能夠保住工作。傳統工匠逐漸被工廠裡的機械操作員取代,原本分散在家庭與小型作坊的生產,也轉變成大型工廠的集中生產。

到了20世紀,隨著國際貿易與全球化發展,成衣產業又經歷另一種轉型。

由於衣服的縫製仍然相當依賴人工,歐美企業開始將生產移往勞動成本較低的地區。日本、台灣、韓國、香港,後來的中國、越南與孟加拉,先後成為全球重要的成衣製造基地。

台灣早期的工業化與出口成長,也有相當一部分來自紡織成衣業。後來隨著國內工資上漲,許多成衣工廠逐漸移往海外,台灣的紡織產業則轉向化學纖維、機能性布料,以及其他附加價值較高的產品。

但如果我們繼續往後看,到了今天的成衣產業,會發現整個產業的競爭方式已經和兩百年前非常不同。

例如西班牙的 Zara,競爭優勢來自整合服裝設計、生產、物流與門市資訊,快速回應市場上的流行趨勢。傳統服飾品牌可能需要提前好幾個月決定下一季的款式與生產數量,但 Zara 可以透過較短的生產週期,減少需求預測錯誤造成的損失。

近年快速崛起的 SHEIN,又進一步利用網路平台掌握消費者的搜尋、點擊與購買行為。新款衣服先少量生產,觀察市場反應,再決定是否大量追加訂單。

另一方面,Lululemon 則透過機能性布料、服裝設計與品牌行銷,讓消費者願意為一件運動服支付相對高的價格。

這些企業不一定需要自己經營大量成衣工廠。它們可以將製造工作交給全球不同的供應商,自己專注於產品設計、供應鏈管理、消費者需求與品牌經營。

如果我們回到1811年,問一位正在抗議新式編織機的英國紡織工人:「你認為兩百年後的紡織產業會變成什麼樣子?」

他可能會想像工廠裡出現更多、更有效率的機器,或者未來需要更少的工人製造布料。

但他大概很難想像,兩百年後的成衣產業,會出現 Zara、SHEIN、Lululemon 這些商業模式。企業可以不直接製造大部分的衣服,卻透過全球供應鏈、消費者數據、產品設計與品牌經營,成為龐大的跨國企業。

當然,這兩百多年的變化並不完全來自紡織機械。國際貿易、交通運輸、資訊科技、消費文化,以及不同國家的經濟發展,都參與了整個產業的轉型。

但是,身處1811年的紡織工人,不可能預見這些技術與制度未來將如何結合,最後改變整個產業的生產組織。

同樣,今天 AI coding 未來會如何發展?

我們現在看到 AI 開始取代部分程式開發工作,就像當年新的機械取代部分紡織工匠的工作。但如果 AI 持續發展,最後改變的可能不只是工程師如何寫程式,而是整個軟體產業的生產組織、工作分工與競爭方式。

AI Coding 會讓工程師失業嗎?

假設一家軟體公司原本需要10位工程師,一個月才能完成10項軟體功能。現在透過 AI coding,只需要5位工程師就能完成相同的工作,那麼企業可能減少雇用工程師。

這是技術進步帶來的勞動替代效果(labor displacement effect)。

但這個推論有一個問題:它假設企業需要開發的軟體數量不會改變。

如果 AI 大幅降低軟體開發成本,原本不值得開發的軟體,可能開始變得有經濟價值。

例如一家中小企業,過去可能沒有足夠預算聘請工程師,為自己開發一套庫存管理或客戶管理系統,只能使用 Excel 或購買現成軟體。但現在如果透過 AI,就能用相對低廉的成本開發符合自己需求的工具,這家公司可能開始使用更多軟體。

現在完全不會寫程式的人,也可以透過 AI 開發自己的應用程式。

所以 AI 可能同時減少每項軟體工作需要投入的人力,卻又增加整個社會對軟體的需求。

這和紡織機械化之後,布料價格下降、消費需求大幅增加的歷史有些相似。

但最後工程師的就業人數會增加還是減少,取決於這兩種力量的相對大小。

而且即使軟體產業的總產出持續成長,也不代表原本所有工程師都能受益。

例如,企業可能需要更多能夠設計複雜系統、處理安全問題,以及管理 AI agents 的資深工程師,卻減少雇用負責標準化 coding 任務的初階工程師。

這些變化可能改變不同工程師的相對工資,也可能讓某些原本具有市場價值的專業技能逐漸貶值。

就像盧德運動時的紡織工匠。後來紡織成衣產業確實持續擴張,但這並不表示當年失去工作的工匠,都能找到相同薪資與工作條件的新職位。

所以,即使未來軟體產業因為 AI 而大幅擴張,整個產業的發展,以及個別工程師的處境還是可以大不相同。

當寫程式變得容易,軟體產業會如何改變?

除了工程師的就業,還有另一個問題。

如果 AI 讓寫程式變得非常便宜,軟體公司之間的競爭會發生什麼變化?

過去一家企業如果想要開發軟體,需要聘請具有專業能力的工程師,投入相當多的時間與資金。即使公司有很好的產品構想,也不一定有能力將它實現。

但隨著 AI coding 的能力提高,軟體開發的進入門檻可能逐漸下降。

原本需要十位工程師才能完成的產品,現在也許只需要兩三個人搭配 AI agents,就能完成大部分開發工作。這可能讓更多小型企業,甚至個人開發者進入市場。

可是,如果所有企業都能使用能力相近的 AI coding 工具,開發軟體本身還能成為企業的競爭優勢嗎?

當一項生產技術逐漸普及,其他企業也能取得類似的技術時,原本依靠技術優勢獲得的超額利潤,可能因為市場競爭而逐漸消失。

因此,未來軟體公司的競爭優勢,可能更多來自專業領域知識、產品設計、資料、客戶關係,以及對市場需求的理解以及市場區隔。

但這也只是根據目前技術發展所做的推論。

例如,現在許多公司每個月付費訂閱 SaaS 軟體,使用財務、人事、客戶管理或其他企業系統。如果未來 AI 可以根據每家公司的需求,快速開發並維護專屬軟體,這是否會改變現有 SaaS 公司的商業模式?

另一方面,軟體開發成本下降,也可能讓大型企業變得更有優勢。因為它們擁有大量資料、既有客戶與平台資源,可以利用 AI 更有效率地擴張業務。

所以,AI 可能降低軟體產業的進入門檻,讓更多小型企業參與競爭;但它也可能強化大型平台的市場地位。

而且,隨著 AI 的能力繼續提高,未來可能連系統設計、產品規劃與開發流程管理,都逐漸交由 AI 完成。

現在我們認為工程師可以從 coding 轉向管理 AI,但這可能也只是一個過渡階段。

如果十年後,AI 已經能自行完成這些工作,那麼軟體產業又會變成什麼樣子?

Junior 減少,未來的 Senior 從哪裡來?

目前美國軟體工程師的勞動市場,已經出現一些變化。

近年的研究發現,相對於資深軟體工程師,初階工程師的職缺與年輕勞工就業受到比較大的衝擊。部分美國大學的 CS 相關科系,在學人數也開始下降。

當然,這些變化不能全部歸因於 AI。科技業景氣、疫情期間資工系快速擴張後的調整,以及學生對未來就業前景的預期,都可能是原因。

但如果企業越來越依賴資深工程師搭配 AI agents 完成開發工作,減少對初階工程師的需求,就會產生另一個長期問題。

未來的 senior engineer,要從哪裡來?

過去軟體工程師通常先在大學學習程式語言、資料結構、演算法與系統原理。畢業進入企業後,從比較簡單的工作開始,例如撰寫小型功能、修改程式、測試與除錯。

這些工作可能不需要非常高深的系統設計能力,但工程師可以在過程中逐漸理解大型軟體如何運作,累積處理複雜問題的經驗。

經過幾年實務工作之後,才逐漸成為有能力設計系統、處理困難問題,以及帶領其他工程師的 senior。

這是一種透過實際工作累積專業能力的過程,經濟學上稱為 learning by doing,也是人力資本累積的重要方式。

但現在,過去由 junior 負責的許多工作,可能直接交給 AI 完成。

假設一家軟體公司原本由一位 senior 帶領三位 junior。Senior 負責架構與技術決策,junior 負責實作、測試與除錯。

現在如果 senior 可以搭配 Claude Code、Codex 等工具,完成原本需要三位 junior 協助的工作,那麼公司可能發現,不再需要雇用這麼多初階工程師。

而這三位原本有機會進入產業、逐漸累積經驗的 junior,也因此失去了成為 senior 的訓練機會。

如果整個產業都採取類似的做法,五年、十年後,是否反而會出現資深工程師不足的問題?

不過,這個問題其實隱含了一個假設。

我們假設未來仍然需要今天這種 senior engineer,而且必須透過現在 junior 的工作與訓練方式,才能培養出來。

但短短兩三年間,senior 的工作流程已經發生很大的變化。

2024年的資深工程師,仍然需要花費大量時間親自閱讀與修改程式碼。到了2026年,部分工程師已經開始讓 AI 負責主要的開發工作,自己則專注於架構設計、工作分配與驗證機制。

如果未來 AI 可以自行設計系統架構、建立測試與審查流程,甚至管理其他 AI agents,那麼五年、十年後的 senior engineer,還會是今天的樣子嗎?

這讓我開始懷疑,現在討論如何培養下一代工程師,是否仍然太依賴過去的職業結構。

如果連未來的工作都無法預測,我們應該學習什麼?

這個問題可以從資工教育開始思考。

我目前比較傾向將未來工程師的學習區分成兩個層次。

一個是相對穩定的電腦科學基礎,例如資料結構、演算法、計算複雜度、系統架構與資訊安全。

即使 AI 已經可以快速產生程式碼,工程師仍然需要理解演算法如何運作、系統為什麼會出錯,以及如何判斷 AI 產生的結果是否可靠。

這些基礎原理不會因為 Claude Code 或 Codex 更新版本,就立即失去價值。

另一個層次則是持續變動的 AI 工具與工作流程。

從2024年到2026年,工程師使用 AI coding 的方式已經改變好幾次。如果現在教學生如何使用最先進的 coding agents,等到四年後畢業,這套工作流程可能早已過時。

所以這一層的學習,可能不能只教學生如何操作目前的 AI 工具,而是要讓他們練習如何探索新的技術、評估不同工作流程的效果,並且不斷調整自己的工作方法。

這有點接近 learning how to learn,學習如何學習。

不過,即使我們現在把教育分成這兩個層次,也無法保證這樣就能培養出十年後軟體產業需要的人才。

因為我們不知道,未來哪些工作仍然需要人類負責,哪些現在看起來需要多年專業訓練的能力,最後也可能被 AI 自動化。

而且這個問題並不限於軟體工程師。

法律、金融、研究、設計與其他專業工作,也都可能因為 AI 而逐漸改變。不同職業受到影響的速度與程度可能不一樣,但現在學習的專業技能,未來是否仍然具有相同的市場價值,已經變得越來越難預測。

過去我們習慣透過教育與專業訓練,累積一套可以使用很長時間的技能。隨著工作經驗增加,逐漸成為某個領域的專家。

但當技術進步的速度越來越快,部分專業技能的折舊速度(skill depreciation)也可能跟著提高。

今天花費多年學會的工作方法,幾年後可能就有更有效率的替代方式。

這並不表示過去累積的知識全部沒有價值。專業知識仍然可能幫助我們理解新技術、判斷它的限制,以及處理 AI 無法解決的問題。

但如果我們把自己的專業能力,完全建立在某一套特定技術或工作流程上,未來可能需要不斷重新調整。

這又讓我想到兩百年前的盧德工人。

我們能預見十年後的世界嗎?

想像1811年的英國,一位熟練的紡織工人看到新式編織機開始取代他的工作。

如果有人問他:「未來紡織產業會需要什麼樣的人才?下一代工人應該學習什麼?」

他可能會回答,既然新的機器逐漸取代傳統手工技術,那麼下一代工人就應該學會操作新的紡織機械。

這在當時是合理的答案。

但他不可能預見,兩百多年後的紡織成衣產業,會出現 Zara、SHEIN 與 Lululemon 這些企業。製造衣服仍然重要,但整個產業已經形成複雜的全球供應鏈,許多成功企業的競爭優勢,來自消費者數據、產品設計、品牌行銷,以及不同生產活動之間的整合。

如果我們在1811年設計一套未來紡織工人的教育,教大家如何操作當時最先進的紡織機械,這套教育可能對當時的工人很有幫助,但不可能直接培養出兩百年後 Zara 所需要的供應鏈管理人才。

今天的我們,可能也處於類似的情況。

2026年,我們看到資深工程師開始使用 Claude Code、Codex 等工具,重新安排軟體開發、測試與審查的工作流程。我們可以根據這些變化,學習如何使用 AI,提高自己的工作效率。

但如果十年後,AI 的能力已經遠遠超過今天,整個軟體產業又會變成什麼樣子?

也許那時候的工程師已經不再需要親自寫程式,甚至不需要像今天這樣管理 AI agents。也可能因為軟體開發成本大幅下降,出現許多我們目前還無法想像的新產品、工作與商業模式。

從盧德運動到今天的全球成衣產業,經過了兩百多年的發展。這段歷史包含機械化、工廠制度、國際貿易、資訊科技與全球供應鏈等不同階段的變化。

但 AI 的發展速度可能遠快於當年的紡織機械。我們無法確定軟體產業是否會在十年內經歷相當於紡織業兩百年的轉型,但從過去兩三年 AI coding 的變化來看,十年後的軟體產業,很可能已經和今天相當不同。

而且我們越是試著根據當下的技術預測未來,就越容易受到現在已經存在的工作方式限制。

1811年的紡織工人,能夠想像如何使用更好的機器製造布料,卻無法想像兩百年後的產業組織。

我們現在可以想像更強大的 AI agents,更自動化的軟體開發流程,但這些可能也只是根據今天的工作方式,所做的延伸。

真正的未來,也許會出現完全不同的生產模式。

所以,面對 AI 快速發展帶來的不確定性,我們很難預先知道自己應該掌握哪些具體技能,才能確保未來仍然具有競爭力。

我們可以建立相對穩定的專業基礎,也可以學習現在最有效率的 AI 工具與工作流程。但隨著技術不斷進步,這些工作方法可能幾年後就需要重新調整。

因此,我目前比較確定的是,我們需要學習如何學習(learning how to learn)。

這不是抽象地要求自己保持學習,而是實際去使用最新的 AI 工具,了解它現在能做什麼、有哪些限制,以及如何將它應用在原本的工作中。當新的 AI 工具出現,就重新探索工作流程,嘗試以前無法完成的事情。

但如果只是學會使用最新的工具,可能還不夠。

我們也需要大膽想像,當現在許多耗費人力的工作都可以交給 AI 完成,還有哪些過去不可能實現的事情,現在開始變得有可能?

就像牛頓看到蘋果掉落發現萬有引力的故事。

當然,牛頓發展萬有引力理論,是長期數學研究與科學探索的結果,並不是看到一顆蘋果就突然得到完整答案。但這個事件所呈現的,是如何從原本熟悉的現象中,提出一個不同的問題,進而發展出新的理解。

今天的 AI 已經可以幫助我們處理大量資訊、分析複雜問題,甚至提出新的研究假說。但如果我們只是把 AI 當成提高現有工作效率的工具,可能仍然受到原本工作方式的限制。

例如,現在我們討論 AI coding,主要還是在思考如何讓 AI 更有效率地寫程式、測試與除錯。但如果十年後,大部分軟體都可以由 AI 自行開發與維護,那時候人類可能會開始從事什麼樣的工作?

或許我們根本不需要沿用今天軟體工程師的工作分類,也不需要按照現在的軟體公司組織方式來思考未來。當技術限制改變,可能出現全新的產品、服務與專業領域。

這些新領域可能不是從現有工作的分工中直接延伸出來,而是有人開始提出以前沒有想過的問題,嘗試過去因為技術或成本限制而不可能完成的事情。

從1811年的盧德運動到今天的成衣產業,經過了兩百多年的發展。當年的紡織工人不可能想像,兩百年後,紡織機其實不重要,重要的是國際貿易分工與商業模式。

今天我們也很難想像十年後的 AI,會讓哪些原本不可能的事情變得可行。

因此,學習如何學習,除了持續掌握最新技術,也包括不斷重新思考自己正在做的事情,嘗試提出新的問題,甚至想像一個與現在完全不同的工作流程。

我們可以一邊使用 AI 改善眼前的工作,一邊探索 AI 讓哪些新的可能性與組織模式開始出現。

而這些新的可能性,也許才是未來十年最難預測也是最有價值的部分。

留言

這個網誌中的熱門文章

肥胖解密 (1): 前言 肥胖的設定點理論 Set Point Theory

肥胖解密 (5): 胰島素阻抗的解方,新的典範

沒有不好的你 翻譯修訂建議