第三個軟體工程黃金時代:AI 引領的革新與未來
Original Video Description
Every few decades, software engineering is declared “dead” or on the verge of being automated away. We’ve heard versions of this story before. But what if it’s just the start of a new “golden age” of a different type of software engineering, like it has been many times before?
In this episode of The Pragmatic Engineer, I’m joined once again by Grady Booch, one of the most influential figures in the history of software engineering, to put today’s claims about AI and automation into historical context.
Grady is the co-creator of the Unified Modeling Language, author of several books and papers that have shaped modern software development, and Chief Scientist for Software Engineering at IBM, where he focuses on embodied cognition.
Grady shares his perspective on three golden ages of computing since the 1940s, and how each emerged in response to the constraints of its time. He explains how technical limits and human factors have always shaped the systems we build, and why periods of rapid change tend to produce both real progress and inflated expectations.
He also responds to current claims that software engineering will soon be fully automated, explaining why systems thinking, human judgment, and responsibility remain central to the work, even as tools continue to evolve.
— Brought to you by our season partners: • Statsig — The unified platform for flags, analytics, experiments, and more. http://statsig.com/pragmatic • Sonar – The makers of SonarQube, the industry standard for automated code review. https://www.sonarsource.com/pragmatic/?utm_medium=paid&utm_source=pragmaticengineer&ut[…]egory=Paid&s_source=Paid%20Other&s_origin=pragmaticengineer • WorkOS – Everything you need to make your app enterprise ready. https://workos.com/
— The Pragmatic Engineer deepdives relevant for this episode: • When AI writes almost all code, what happens to software engineering? https://newsletter.pragmaticengineer.com/p/when-ai-writes-almost-all-code-what • Inside a five-year-old startup’s rapid AI makeover https://newsletter.pragmaticengineer.com/p/ai-first-makeover-craft • Software architecture with Grady Booch https://newsletter.pragmaticengineer.com/p/software-architecture-with-grady-booch • What is old is new again https://newsletter.pragmaticengineer.com/p/what-is-old-is-new-again
— Where to find Grady Booch: • X: https://x.com/grady_booch • LinkedIn: https://www.linkedin.com/in/gradybooch • Website: https://computingthehumanexperience.com
— In this episode, we cover: (00:00) Intro (01:04) The first golden age of software engineering (18:05) The software crisis (32:07) The second golden age of software engineering (41:27) Y2K and the Dotcom crash (44:53) Early AI (46:40) The third golden age of software engineering (50:54) Why software engineers will very much be needed (57:52) Grady responds to Dario Amodei (1:06:00) New skills engineers will need to succeed (1:09:10) Resources for studying complex systems (1:13:39) How to thrive during periods of change
— See the transcript and other references from the episode at https://newsletter.pragmaticengineer.com/podcast
— Production and marketing by https://penname.co/.
軟體工程領域的傳奇人物、IBM Fellow Grady Booch 在專訪中提出軟體工程三個黃金時代的理論,並深入探討 AI 帶來的第三個黃金時代。他駁斥了 AI 將在短期內取代軟體工程師的預測,認為 AI 只是另一層抽象的提升,如同過往從機器語言到高階語言的轉變。Booch 強調基本功的重要性,管理大規模複雜性的能力,以及處理人與技術多重面向的能力,這些技能將更加被需要。他建議工程師向上移動到抽象層級,開始處理系統層面的問題,並將 AI 視為釋放想像力的工具。
講者介紹
Grady Booch — IBM Fellow, Chief Scientist for Software Engineering, IBM Research
Grady Booch 是軟體工程領域最具影響力的人物之一,與 Ivar Jacobson、James Rumbaugh 共同創造了統一建模語言(UML),奠定了現代軟體建模的基礎。他於 1981 年共同創辦 Rational Software Corporation 並擔任首席科學家,2003 年 Rational 被 IBM 收購後獲選為 IBM Fellow。Booch 同時是 ACM Fellow(1995)與 IEEE Fellow(2010),也是敏捷聯盟(Agile Alliance)與 Hillside Group 的創始成員,著有六本專書與數百篇技術論文。他畢業於美國空軍學院,並取得加州大學聖塔芭芭拉分校電機工程碩士學位。
Gergely Orosz — Creator & Host, The Pragmatic Engineer
Gergely Orosz 是 Substack 上排名第一的科技電子報 The Pragmatic Engineer 的創辦人與作者,同時主持同名 Podcast。他曾在英國擔任軟體工程師,之後加入 Skype 工作三年,隨後在 Uber 擔任工程經理四年。離開大型科技公司後,他專注於撰寫深入的軟體工程與科技產業分析,涵蓋工程團隊管理、技術架構與職涯發展等主題。
軟體工程的三個黃金時代
Grady Booch 提出了軟體工程發展歷程中的「三個黃金時代」理論,將整個產業的演進分為三個重要階段:
第一個黃金時代(1940年代末至1970年代末) 以演算法抽象為主。這個時期的軟體工程主要處理基礎的計算問題,從機器語言逐步發展到組合語言,再到高階語言。1970 年代召開的 NATO 軟體工程會議標誌著「軟體危機」的開始,業界開始意識到軟體開發面臨的種種挑戰。
第二個黃金時代(1980-1990年代) 以物件導向抽象的崛起為特徵。物件導向設計(Object-Oriented Design)徹底改變了軟體開發的方式,讓工程師能夠以更符合人類認知的方式構建複雜系統。這段期間 UML 的誕生進一步標準化了軟體建模語言。
第三個黃金時代(2000年左右至今) 即當前 AI 輔助軟體工程的時代。Booch 認為這是另一個抽象層級的提升,如同過往從機器語言到組合語言、從組合語言到高階語言的轉變,AI 代表了軟體工程的進一步抽象化。
AI 取代軟體工程師?Booch 直接駁斥
訪談中提到 Anthropic CEO Dario Amodei 預測軟體工程將在 12 個月內被自動化,Booch 直接了當地回應:「這是完全錯誤的(utter nonsense)」。
Booch 指出,AI 只處理最低層次的模式自動化,而軟體工程涉及複雜的決策問題,遠超出單純的程式碼生成。他以歷史為例:當編譯器出現時,組合語言程式設計師認為職業將終結;當高階語言出現時,同樣的恐懼席捲業界——但每次理解趨勢、願意學習新技能的人都成功了。
軟體工程師的核心價值在於平衡多種「力量」(forces):物理定律(如光速限制)、硬體限制、演算法限制、人力限制、經濟因素以及倫理議題。這些都是 AI 無法完全取代的領域。
軟體工程的本質:約束與想像力
Booch 強調,軟體的主要約束是「想像力」,而非技術本身。他表示:「AI 消除了開發的部分摩擦和成本,讓我們能將注意力放在想像力上。」
在 AI 時代,軟體工程的本質正在發生轉變——從處理程式或應用程式,轉向處理「系統」本身。這意味著工程師需要具備管理大規模複雜性的能力,以及處理人與技術多重面向的能力。
給軟體工程師的建議
專注於基本功
Booch 對軟體工程師的核心建議是:「不要擔心,專注於 fundamentals,因為這些技能永遠不會消失。」基本功包括:
- 系統思維能力
- 對複雜性的理解與管理
- 溝通與協作的軟技能
向上移動到抽象層級
建議工程師從「寫程式」轉向「設計系統」,開始處理更高層次的問題。這意味著:
- 學習系統理論基礎
- 研究複雜性科學
- 理解 Agent/多代理系統架構
將 AI 視為工具而非威脅
Booch 建議把 AI 工具視為另一層抽象的提升,用於:
- 學習新技術
- 理解文檔
- 快速原型開發
他以自身為例,使用 Claude 來加速理解 JavaScript、Swift、PHP、Python 等新技術。
推薦的學習方向
系統理論基礎
Booch 推薦閱讀 Herbert Simon 和 Allen Newell 的《The Sciences of the Artificial》,以及研究聖塔菲研究所(Santa Fe Institute)關於複雜性和系統的著作。
Agent 架構
- 閱讀 Marvin Minsky 的《Society of Mind》
- 研究早期 AI 系統如 Hearsay
- 研究 Global Workspaces、Blackboard 架構
- 研究 Rodney Brooks 的 Subsumption Architectures
生物學啟發
觀察生物系統的架構,例如蟑螂的神經網絡可以啟發我們理解簡單但有效的系統設計。
結語:飛翔而非墜落
訪談最後,Booch 總結道:「這是釋放想像力的機會,應該『飛躍』而非『墜落』。」他認為軟體工程不是終結,而是新章節的開始。對於非專業人士而言,這是一個令人興奮的時代,任何人都可以建立自己的應用程式。
面對 AI 的快速變化,關鍵不是恐懼,而是擁抱變化,持續學習基本功,並將 AI 視為提升自己的工具。Booch 的觀點為軟體工程師提供了一個清晰的方向:在 AI 時代,人類的價值在於想像力、系統思維以及對複雜性的管理能力,這些都是技術無法取代的核心競爭力。