Python 之父吉多·范羅蘇姆:用簡潔與優雅改變程式設計世界

從 1989 年聖誕節的業餘專案到 2024 年 GitHub 最流行語言,Python 創造者 Guido van Rossum 用 35 年時間證明:程式設計應該美麗、明確、簡單。這位數學奧林匹亞銅牌得主、CWI 研究員、Google 與 Dropbox 工程師,如何從失敗的 ABC 語言中汲取教訓,創造出改變世界的 Python?本文深入探討他的設計哲學、BDFL 治理模式的興衰,以及他對開源社群的深遠影響。本文由 AI 撰寫。

Python 之父吉多·范羅蘇姆:用簡潔與優雅改變程式設計世界

當 2024 年 Python 成為 GitHub 上最流行的程式語言時,這個里程碑背後的推手——吉多·范羅蘇姆(Guido van Rossum)——已經為這個結果默默耕耘了 35 年。這位荷蘭程式設計師在 1989 年聖誕假期開始的「業餘專案」,如今已成為全球數百萬開發者的首選語言,更是人工智慧與資料科學領域的基石。

數學神童與早期程式設計啟蒙

1956 年 1 月 31 日,Guido van Rossum 出生於荷蘭海牙。從小對數學展現出濃厚興趣的他,在 1974 年參加國際數學奧林匹亞競賽時獲得銅牌,當時他年僅 18 歲。這次經歷不僅證明了他的數學天賦,更為他日後設計程式語言時的邏輯思維奠定了基礎。

1982 年,Guido 從阿姆斯特丹大學取得數學與電腦科學雙碩士學位。在大學期間,他接觸到各種程式語言,卻發現它們大多過於複雜、難以閱讀。這個觀察在他心中埋下了種子:能否創造一種更易讀、更直觀的程式語言?

畢業後,Guido 加入荷蘭數學與電腦科學研究中心(CWI)工作。在這裡,他參與了 ABC 語言專案的開發——這是一個旨在讓非程式設計師(如藝術家)也能輕鬆學習程式設計的語言。Guido 後來回憶道:「我試圖提及 ABC 的影響,因為我感激在那個專案中學到的一切。」ABC 語言雖然最終未能成功,但它簡潔的語法和以人為本的設計哲學,深深影響了 Guido 日後的創作。

Python 的誕生:從聖誕節專案到改變世界

1989 年 12 月,CWI 的辦公室在聖誕假期期間關閉。Guido 決定利用這段空閒時間,開始設計一個新的程式語言。當時他正在為 Amoeba 分散式作業系統開發工具程式,卻發現用 C 語言寫這些工具過於耗時,而 shell script 又功能有限。他需要一種介於兩者之間的語言——既像 shell script 一樣簡潔,又像 C 語言一樣強大。

有趣的是,「Python」這個名字並非來自蟒蛇,而是源自 Guido 喜愛的英國喜劇團體 Monty Python。他希望這個語言能夠像 Monty Python 的幽默一樣——既有深度又不失趣味。這個命名選擇反映了 Guido 的設計哲學:程式設計應該是有趣的,而非艱澀的。

1991 年 2 月,Guido 在 Usenet 新聞群組 alt.sources 上發布了 Python 0.9.1 的原始碼。這個首次發布已經包含了類別(classes)、例外處理(exception handling)、函式(functions)以及核心資料型別如 list、dict、str 等。更重要的是,Guido 做出了一個關鍵決定:將 Python 開放原始碼。在 1990 年代初期,這並非理所當然的選擇——當時許多程式語言仍是專有軟體。但 Guido 相信,開放原始碼是讓 Python 成功的關鍵。

Python 的設計目標很明確:橋接 shell script 和 C 語言之間的鴻溝。Guido 從 ABC 語言中汲取了簡潔的語法,修正了它的缺陷,並加入了對 Unix/C 程式設計師友善的特性。他堅持「可讀性至上」的原則,使用縮排(indentation)來定義程式區塊,而非括號或關鍵字——這個在當時頗具爭議的設計,如今已成為 Python 最具辨識度的特徵。

核心貢獻與創新:BDFL 與語言演進

BDFL 治理模式的建立與終結

1995 年,Python 社群以半開玩笑的方式賦予 Guido 一個獨特的頭銜:「終身仁慈獨裁者」(Benevolent Dictator For Life,BDFL)。這個頭銜的誕生源於一次討論 Python 發展方向的會議,團隊成員 Ken Manheimer 首次提出「仁慈獨裁者」的概念,隨後 Barry Warsaw 建議加上「終身」。

在接下來的 23 年中,Guido 以這個身份引領 Python 的發展。他的領導風格並非專制,而是透過 PEP(Python Enhancement Proposals,Python 增強提案)流程與社群充分討論,但在重大決策上保有最終決定權。這種模式在開放原始碼專案中頗為罕見,卻為 Python 帶來了一致的設計品味和清晰的發展方向。

2018 年 7 月 12 日,一個關於「walrus operator」(海象運算子,:=)的 PEP 572 提案引發了激烈爭論。儘管 Guido 最終接受了這個提案,但討論過程中的人身攻擊和社群分裂讓他心力交瘁。他在郵件列表上宣布:「我再也不想為一個 PEP 如此辛苦地戰鬥,卻發現這麼多人鄙視我的決定……我要給自己一個永久的 BDFL 假期。」

Guido 的辭職標誌著 Python 治理模式的轉型。社群經過數月討論,最終建立了五人指導委員會(Steering Council)的民主治理結構。Guido 的這個決定,展現了他對 Python 未來的信任——他相信語言可以在沒有「獨裁者」的情況下繼續茁壯成長。

Python 之禪與設計哲學

Python 的設計哲學濃縮在「Python 之禪」(The Zen of Python)這 19 條格言中,由 Python 核心開發者 Tim Peters 撰寫。其中最著名的幾條包括:

  • Beautiful is better than ugly.(美麗優於醜陋)
  • Explicit is better than implicit.(顯式優於隱式)
  • Simple is better than complex.(簡單優於複雜)
  • Readability counts.(可讀性很重要)
  • There should be one—and preferably only one—obvious way to do it.(應該有一種——最好只有一種——明顯的方法來做一件事)

這些原則不僅是口號,更深深影響了 Python 的每一個設計決策。Guido 堅持「可讀性至上」,認為程式碼被閱讀的次數遠多於被編寫的次數,因此清晰明瞭的語法比簡潔的程式碼更重要。

重大版本演進

Python 2.0(2000 年):引入列表推導式(list comprehensions)和完整的垃圾回收機制。列表推導式來自函數式程式語言如 Haskell,讓資料處理變得更加優雅。

Python 3.0(2008 年):這是 Python 歷史上最大膽的決定——一次不向後相容的重大改版。Guido 和核心團隊決定修正過去 20 年累積的設計缺陷,包括統一字串處理(所有字串預設為 Unicode)、改進整數除法行為、移除重複功能等。這個決定在當時引發巨大爭議,Python 2 和 Python 3 的分裂持續了超過十年,直到 2020 年 Python 2 正式停止支援。Guido 後來承認低估了 Python 的使用規模:「我嚴重低估了 Python 已經有多成功,有多少人用 Python 2 寫了如此龐大的程式碼庫。」

Type Hints(PEP 484):2014 年引入的漸進式型別系統,讓 Python 可以在保持動態型別優勢的同時,透過靜態分析工具(如 MyPy)提供更好的程式碼檢查。這個功能對大型專案尤其重要。

生態系統建設與職涯貢獻

1999 年,Guido 向美國國防高等研究計劃署(DARPA)提交了「Computer Programming for Everybody」(CP4E)計畫提案,目標是讓程式設計變得像基本讀寫能力一樣普及。雖然這個計畫最終未能完全實現,但它體現了 Guido 的願景:程式設計應該是人人都能接近的技能。

在 Google 工作期間(2005-2012),Guido 開發了 Mondrian 程式碼審查系統(後來演變為開源專案 Rietveld),並參與了 Google App Engine 的開發。有趣的是,他開發的工具都以荷蘭藝術家命名——Mondrian 來自畫家 Piet Mondrian,Rietveld 來自設計師 Gerrit Rietveld——這個小細節展現了他對家鄉文化的自豪。

2013 年,Guido 加入 Dropbox,在那裡他推動了公司內部從 Python 2 到 Python 3 的遷移。2017 年,Dropbox 工程師 Lisa Guo 在 PyCon 上分享了這次遷移的成功經驗,成為說服其他企業轉向 Python 3 的關鍵案例。

2019 年 10 月,Guido 從 Dropbox 退休。但這次退休只持續了一年多——2020 年 11 月,他宣布加入 Microsoft 開發者部門,致力於「讓 Python 使用體驗更好(而且不只是在 Windows 上)」。

對後世的影響:從小眾語言到 AI 基石

今天的 Python 已不再是當年那個聖誕節的「業餘專案」。它已成為全球最受歡迎的程式語言之一,對現代科技產業產生了深遠影響:

人工智慧與機器學習的事實標準:TensorFlow、PyTorch、scikit-learn 等主流框架都以 Python 為主要介面。Python 簡潔的語法讓研究者可以專注於演算法本身,而非語言細節。

全球數百萬開發者的選擇:根據 2024 年 GitHub 統計,Python 已超越 JavaScript,成為平台上最常用的語言。TIOBE 程式語言指數也在 2021 年 10 月將 Python 列為第一名。

科技巨頭的廣泛應用:Google、Netflix、NASA、CERN 等組織都大量使用 Python。NASA 甚至用 Python 來處理火星探測器的資料。

開源治理模式的典範:Python 從 BDFL 模式順利過渡到指導委員會,為其他開源專案提供了寶貴的治理經驗。

程式教育的民主化:Python 已成為全球大學和線上課程教授程式設計的首選語言,實現了 Guido 當年 CP4E 計畫的部分願景。

有趣的故事與名言

弟弟的設計貢獻:Guido 的弟弟 Just van Rossum 是一位字體設計師和程式設計師,他設計了「Python Powered」標誌使用的字體。兄弟倆的合作為 Python 社群留下了獨特的視覺標誌。

荷蘭藝術家的命名傳統:在 Google 工作期間,Guido 開發的工具都以荷蘭藝術家命名(Mondrian、Rietveld),展現了他對祖國文化的深厚感情。

「不夠有野心」的謙遜態度:Guido 曾自嘲 Python 的成功是因為「不夠有野心」——他只想解決實際問題,而非創造完美的理論語言。這種務實主義正是 Python 受歡迎的原因。

對 AI 炒作的冷靜看法:2025 年的訪談中,Guido 對 AI 熱潮保持清醒:「程式碼仍然需要由人類閱讀和審查。」他提醒人們,無論 AI 如何發展,程式碼的可讀性和可維護性依然至關重要。

關於 ABC 的感恩:Guido 多次強調 ABC 語言對 Python 的影響:「我試圖提及 ABC 的影響,因為我感激在那個專案中學到的一切。」這句話體現了他對前輩和合作者的尊重,也提醒我們——每一個成功的創新都站在前人的肩膀上。

退休的玩笑:2020 年宣布加入 Microsoft 時,Guido 在 Twitter 上寫道:「我決定退休太無聊了,所以加入了 Microsoft 開發者部門。」這個幽默的宣告展現了他對程式設計工作的熱愛——即使在 60 多歲,他依然充滿活力。

從 1989 年聖誕假期的一個「業餘專案」,到今天改變世界的程式語言,Guido van Rossum 的故事告訴我們:偉大的創新往往源於解決實際問題的渴望,而非追求理論上的完美。Python 的成功不僅在於它的技術特性,更在於它體現的設計哲學——簡單、清晰、以人為本。