John Carmack 論程式設計與 AI 的演進
從實用程式設計到「程式之道」的轉變
John Carmack 指出,手動逐行撰寫程式正經歷類似武術演變的轉變。他以武藏的《五輪書》為比喻,觀察到劍術從戰場上的必要技能,演變為運動或歷史奇觀。他認為,程式設計技能正走著類似的路徑:過去至關重要的任務,例如手動將操作碼組合為十六進位,早已成為小眾領域。
Carmack 主張,AI 正加速這一趨勢,將手寫程式從「-jitsu」(實用藝術/技術)轉變為「-do」(一種道路或哲學),他幽默地稱之為「程式之道」。在這個觀點下,雖然對懷舊電腦與手動程式設計的熱愛依然令人愉悅,但那些為了堅持傳統方法而犧牲現代 AI 驅動生產力的開發者,可能會像一位「與時代脫節的功夫大師」,敗給一位更務實、由 AI 賦能的「業餘綜合格鬥選手」。
對軟體工程工作流程的影響
將 AI 整合到開發流程中,正改變軟體工程師的關注焦點,從語法與實作細節轉向更高層級的系統設計。
轉向架構導向
一些開發者認為,AI 消除了輸入與 IDE 互動的「偶然複雜性」,讓工程師能專注於資料結構、軟體架構與演算法。透過減少在語法與函式庫細節上所花的時間,AI 讓開發者能更快地將程式的概念模型實現出來。
技能退化的風險
相反地,對於基礎知識流失的擔憂也十分顯著。批評者指出,一代跳過「以困難方式學習基礎」(例如併發、網路與語言設計)的開發者,可能缺乏足夠的深度,在 AI 生成的程式碼失效時,無法有效診斷或優化複雜系統。
批評觀點與反論
Carmack 的類比在技術社群中引發廣泛討論,聚焦於程式設計的本質與 AI 的實用性。
競爭 vs. 協作
多位批評者指出,軟體開發是一項協作工作,而非競爭性的格鬥運動。他們認為,程式設計的目的不僅是最大化產出或「獲勝」,而是創造可持續、高品質的軟體。
工具 vs. 根本性改變
有些人認為,AI 並未取代撰寫程式本身,而只是更強大的工具——類似於挖土機取代鏟子。雖然挖土機在大規模工程中更有效率,但鏟子在精細任務中依然有用。另一些人則認為,AI 的轉變並非取代媒介(如槍支取代劍),而是誰或什麼在撰寫程式發生了改變。
依賴與控制
對於依賴專有 AI 模型存在戰略性擔憂。開發者表達了對工具「自由」的渴望,指出依賴專有代理進行程式碼生成,會造成一種脆弱性,即供應商可能「切斷電源」,影響關鍵工作流程。
質量與經濟可行性
一些懷疑者仍不相信 AI 生成的程式碼在品質上持續優於人類撰寫的程式碼,或認為「大量消耗 token」在長期來看,並不如聘請具專業技能的人類工程師經濟實惠。
Sources
相關
- Dispatch
- Dispatch
- Dispatch
- Dispatch
- Dispatch