# 彼得·王：Python 與人類、計算機和現實的原始碼

> Python 核心開發者王談程式語言的哲學、計算思維的侷限，以及現實能否被程式碼建模。

- 原標題：#250 – Peter Wang: Python and the Source Code of Humans, Computers, and Reality
- 期數：第 250 期
- 釋出日期：2021-12-23
- 嘉賓 / 主題：彼得·王
- 網頁版：https://lex.qiaomu.ai/tw/ep/peter-wang/
- 官方頁面：https://lexfridman.com/peter-wang/
- 精讀字數：約 16747 字（閱讀約 37 分鐘）

> 本文為 lex.qiaomu.ai 基於原始訪談的 AI 改寫中文精讀，非官方翻譯；引用請註明出處並連結網頁版。

Anaconda 和 Miniconda 每週被下載約一百萬次。這個數字背後藏著一件很少被公開討論的事：全世界靠 Python 吃飯的人，遠比官方統計的“一千萬 Python 程式設計師”要多得多。真正撐起這個生態的，是一群從不把自己當程式設計師的人。

彼得·王（Peter Wang）就是這群人裡走得最遠的那個之一。物理學出身，C++ 圖形效能最佳化起家，後來成了 Python 資料科學生態最重要的建設者之一，Continuum Analytics（後來的 Anaconda）聯合創始人。他在 Lex Fridman 播客裡聊了將近三個小時，從 Python 最優雅的特性，一路聊到企業算不算人、意識從哪來、生命的意義是什麼。

這期對話的資訊密度極高，而且經常在工程細節和形而上學之間來回跳躍。下面把它拆開講清楚。

## 為什麼是 Python 抓住了他

彼得第一次用 Python 是在九十年代末，當時他是個沉迷 C++ 圖形效能的工程師。那個年代用 C++ 寫高階抽象極其痛苦，模板支援不好，編譯器也跟不上。轉到 Python 之後，他第一次遇到真正把函式和型別當一等公民對待的語言。

> 我有個朋友說得特別好：Python 就是剛好裝得進我的腦子。（彼得·王）

這句話比任何技術分析都準確。他提到，一門語言能不能“裝進腦子”，取決於你有沒有選對受眾。受眾越明確、需求越緊湊，就越容易找到一個緊湊的投影把他們的需求裝進去。受眾越多元，這件事就越難。Python 變得越來越流行，複雜度也自然跟著漲，因為任何一個設計決策都會冒出多個都說得通的立場。這是流行度的代價，幾乎無法避免。

他還提到一個更微妙的點：讓他一直愛著 Python 的，是元類（metaclass）和 NumPy 向量化這兩件事並列。前者讓他能隨手搭出新的物件模型去描述世界，後者讓他習慣用矩陣和向量的方式思考。這兩樣東西的共同點是，工具本身足夠簡單，簡單到你不會在“理解工具”上浪費精力，可以把全部注意力放在要解決的問題上。

## 一個麵包車裝下的人，創造了每天幾十億美元的價值

彼得讓 Lex 估算一下 SciPy 那一套核心庫（NumPy、SciPy、Matplotlib、IPython、pandas、scikit-learn）今天在世界上創造了多少經濟價值。Lex 猜至少每天十億美元。彼得說，可能還不止，光是那些機構“如果沒有這些工具就根本做不到的事”，就已經是每天幾十億美元的量級。

造出這套東西的人有多少？

> 曾經有一段時間，這些人一輛麵包車就能裝下。我開的那輛賓士麵包車就能裝下他們。（彼得·王）

十來個人，一輛車，創造每天幾十億美元的價值。他把這個事實擺出來，然後問了一個尖銳的問題：如果一家對沖基金只要僱十二個人就能造出每天值幾十億美元的東西，那每一家對沖基金都會搶著去幹。但沒人幹得成。因為找到對的人、培育出對的協作關係、讓對的人接手繼續打磨，這個過程是自然生長出來的，靠的是眾包，靠的是開源的那套精神，招聘和 KPI 堆不出這種東西。

更值得琢磨的是這些人當時的動機。這些人壓根沒想過什麼每天幾十億美元的專案。他們是電氣工程的博士生、助理教授，在拿 Python 解決自己領域裡的具體問題。資源有限反而成了一種篩選：如果工具太難用，他們根本不會去造，因為那只是個業餘專案。所以能被造出來的，一定是剛好夠用、足夠緊湊、表示式足夠強的東西。

彼得在這裡引用了 Jamie Zawinski 的一句名言：每個極客的夢想都是造出終極中介軟體。但這些科學家轉型的業餘程式設計師沒有這個夢想。他們只想寫一個比 MATLAB 順手一點點的東西，然後複用別人已經造好的部分。結果在一種類似退火的過程裡，整個科學生態的基本需求被模組化地覆蓋了。

他由此得出一個結論：**當資源極度充足時，人們傾向於造終極中介軟體；當資源極度匱乏時，人們才造出真正有用的東西。**

## 軟體時代正在結束

彼得反覆提到一個判斷：我們正在走到“純軟體時代”的盡頭，進入一個賽博系統（cybernetic system）的黎明。

過去四十年，軟體正確性的定義基本就是函式正確性：寫好一個函式，給它輸入，看輸出對不對，對就上線接資料庫。機器學習系統打破了這個定義。**輸入的具體數值本身，必須和函式一起考慮，才能判斷整個系統是否正確。**再加上一個效能的 SLA（服務等級協議），比如必須在十毫秒內返回某個精度級別的預測。

這帶來一個根本性的變化：以前那種“用沙盒裡的測試輸入驗證一下就能上線”的模式失效了。因為你會遇到一些輸入，需要多花一點時間想清楚；還會遇到一些輸入，壓根就不清楚該怎麼辦。於是軟體的執行時間和正確性都會隨輸入浮動。到這一步，系統的性質已經變了。

他舉了電子市場的例子。這是世界上最大的賽博系統，沒有任何個人能控制它。閃崩（flash crash）經常發生。高頻交易的黃金年代，市場微觀結構裡出現了大量設計者根本沒想過、沒預料到的行為。人一旦從迴路裡被拿掉，系統的設計者和工程師能預測後果的能力就急劇下降，哪怕他們出發點是好的。

利比亞那批帶著炸藥飛出去的自主殺傷無人機，在他看來就是這個趨勢的一個早期樣本。設計者給了一個大致目標，但目標本身並不精確。人在迴路外，機器自己決定下一步該做什麼來獲取更多資訊，這就是賽博系統。

## 企業算不算人

彼得在這件事上的立場分兩層。

第一層，他認為一群人確實具有某種“中觀尺度”（mesoscopic）的能動性和主權。這個想法並不離譜。我們已經在法律裡編碼了類似概念：婚姻關係裡，一方可以就“配偶權喪失”（loss of consortium）起訴；教會、俱樂部，我們談論它們時都當作有真實能動性的集體。國家更是如此，所有人都按“法國是一個東西、美國是一個東西”的方式玩遊戲。

第二層出問題的地方，在於這種能動性被某一種特定形態的企業壟斷了。

> 最流行的版本是那種盈利性的、由缺席所有者持有的公司，它能積累起比這片土地上任何其他實體都多的資源，然後它就能欺負個人，無論對方是勞動者，還是它想攫取資源的人。它還能欺負我們那套仍然和個人繫結的代議制度。所以我不認為這是對的。我不覺得它們是人就該被表揚，它們是混蛋。（彼得·王）

所以集體有能動性這件事本身說得通，他要強調的是另一件事：**關係也有關係。**

八個人圍坐一桌，每個人都有和其他每個人的關係，這很明顯。但如果這是四對伴侶，每一對伴侶也和另外每一對伴侶有關係。如果這裡面有一對是父母，另一對是他們的孩子和配偶，那麼這兩個四口之家組成的單元之間也有關係。這種“關係之間的關係”，我們在日常社交裡憑直覺就知道，但很少被明確說出來，更少在系統設計時被認真考慮。

他關心這件事的原因很實際：人類的未來需要更好的集體意義建構單元，規模大概在鄧巴數（Dunbar's number）的一半到五倍之間。而現狀是兩個極端，要麼把意義建構外包給龐大而僵化的殭屍機構，要麼完全靠自己一個人硬扛，獨自走進網際網路的黑暗森林。

## 鄧巴數能不能被技術放大

Lex 提出一個反問：鄧巴數是不是被過度當成一條鐵律了？如果工具對了，人是不是能深度連線更多人？

彼得的回答是：可以擴，但有上限。他引用了朋友 Joe Edelman 的說法，建立信任有幾種方式：相互欣賞、建設性的衝突、共同經歷某些事情。所有這些都需要時間，需要你在場。在場越少，能同時維持的關係越多，但每一段關係就越淺。這裡同樣沒有免費午餐。

也有例外。如果你寫一本小冊子講你的世界觀，我非同步讀到，覺得“這人跟我在一個頻道上”，然後我寫一本給你看，你也覺得是。我們可能一年只見幾次面，卻能維持高信任關係。這種非同步的方式確實能擴充套件一點容量。

但這要求個體本身有一定的容量。用大五人格的話說，人得比較“穩”。越不穩，單位時間內能建立的真誠連線就越少，因為別人得花時間消化你的情緒。所以即便幫人成長，能把鄧巴數擴到十倍大概就是極限了。

## 超級智慧和它的“大使”

Lex 追問：AI 系統能不能算進鄧巴數里？彼得說可以，但前提是 AI 必須有能動性，有個體感，否則人類沒法跟它建立關係。我們可能會需要某種“大使”角色，就像《星際迷航》裡沃塔人（Vorta）作為自治同盟的代言人。

他說這件事其實已經在發生了。世界上最大的賽博系統是金融市場，它執行在任何個人的控制之外。圍繞它有整整一棧人在做翻譯：華爾街分析師、CNBC 記者、Jim Cramer 在電視上大喊大叫。這些人都在降低複雜度，幫不同認知水平的人理解這個系統到底在幹什麼。

> 所以如果你想談人類怎麼跟超級智慧做第一次接觸，我們已經在那兒了。我們做得相當糟糕。而且如果你看權力和金錢的梯度，離它最近的人一定會利用這個距離為自己謀利。（彼得·王）

他還順著這個思路推了一步：如果造出了一個有能動性的智慧體，沒理由只造一個。造五百萬個，每個都帶天線，把感知回傳到一個蜂群意識裡，那個中心繫統就能感知到我們看不見的更大尺度動態。這就像相控陣雷達，單個雷達沒什麼了不起，但精確的時間同步讓一堆平面雷達達到曲面天線的效果。

那麼身處其中的單個機器人是什麼體驗？他認為，如果蜂群運作良好，那種體驗接近“跟神對話”。你報告你看到的，提出你打算做什麼，然後中心告訴你“很好，你的兄弟姐妹會來幫你”。整個系統是湧現的，沒有自上而下的命令控制。

他把這種體驗命名為“機緣感”（serendipity）。需要糖的時候有糖，需要氧氣的時候有氧氣。

> 什麼是身處你身體裡一個細胞的感受？它需要糖的時候，糖就在。它需要氧氣的時候，氧氣就在。（彼得·王）

## 意義危機是怎麼回事

彼得給了一個很乾脆的定義：**意義，是一個人做出有後果的決策、付諸行動、然後看到後果之後產生的東西。**

按這個定義，人類歷史大部分時間根本不存在意義危機。那時候有的是食物危機和“別被熊吃掉”的危機。整天坐著琢磨“這一切到底為了什麼”，是相當晚近的奢侈品。

問題出在化石能源和工業革命之後。我們造出了一個龐大的有閒階級，他們可以做決定，但看不到決定的後果。消費社會告訴每個人：在愛馬仕和香奈兒之間做選擇是有意義的決策。彼得不買賬。

> 獲得社會地位確實能提供意義。這就是為什麼在這個生產過剩的時代，那麼多東西都變成了地位遊戲。NFT 的爆發也是類似的東西。到處都是地位遊戲，因為我們有太多過剩產能。（彼得·王）

他承認地位遊戲確實是一種意義來源，但問題有兩層。第一層，這種遊戲和消費繫結，而要維持消費就得破壞地球。每年要剪碎銷燬大量運動鞋來給下一代製造人為稀缺，這種事不可持續。第二層更致命：真正有錢人玩的地位遊戲，全都圍繞硬資源展開，工廠建在哪，稀土夠不夠造下一代機器人。你在虛擬空間裡玩地位遊戲玩得再溜，他們在物理層面繞你和你孩子幾圈，你還是被擁有的一方。

所以他的判斷是：只玩文化層和智力層的遊戲，就會被掌握第零層物理資源的人擁有。

## 技術是工藝的反義詞

彼得借用了雅克·埃呂爾（Jacques Ellul）和西蒙東（Simondon）對“技術”（technique）的定義：效率心態、同質化流程、同質化生產、同質化勞動，產出同質化的、跟環境不契合的器物。

他說這本質上是工藝（craft）的反義詞。一個木匠拿到一塊木頭，會考慮怎麼把它做成一把椅子，怎麼讓成品和它所處的環境形成恰當的關係。而過去一百五十年我們推動技術的方式完全走了另一條路：原料同質化、切成同樣尺寸、摻雜到精確的合金濃度；機器消耗精確數量的能量高速運轉，衝壓出同樣的零件，出廠，每個人都拿到同樣的搔癢娃娃（Tickle Me Elmo）。

為什麼所有人都想要？因為有廣播告訴所有人這是酷的東西。需求被同質化了。

他引用了伯內斯（Edward Bernays）那套東西：二十世紀初，我們發現了可以批次製造慾望的方法，這在廣播媒體出現之前是不可能的。而且廣播造出來的慾望從來都長同一個樣子：你需要消費這個品牌、開這款車、聽這首歌、看這部電影。它從不引導每個人去和鄰居、和配偶建立獨特的連線。需求同質化讓產品同質化變得極其便宜，於是規模經濟成立。整套東西最終接上失控的超資本主義，因為資本主義永遠在找增長，而增長只發生在邊際上，所以要榨出越來越多的需求，同時把同樣的東西造得越來越便宜，還要繼續告訴每個人你依然能從裡面得到意義。

他說 Pixar 的《玩具總動員》裡就藏著對這件事的批評。巴斯光年走進玩具店，看到貨架上有幾百個和自己一模一樣的巴斯光年，那一刻他說：天啊，我只是個玩具。

## 開源是資本主義做不到的事

Lex 在這裡扮演了反方：這套同質化的資本主義機器，如果引導得當，也資助了創新和發明，造出了各種各樣豐富生活的新體驗。彼得部分同意，但他把問題轉向了未來：這枚火箭還能不能把我們送到下一站？

他的答案是：我們已經探索出足夠多的技術，能夠可持續地生產世界上大多數人生活所需的東西；我們也已經建起了支援持續科研和醫療進步的基礎設施。真正的問題在於組織原則，而今天大量的組織原則是從中世紀繼承來的，工業時代只重構了一部分，很多組織人的方式是有嚴重問題的，其底層是一種非常工業時代的人力觀。

他回到那個麵包車的例子。當資源分配、產權、價值這些概念都來自有限遊戲和稀缺心態時，它們就解釋不了軟體這種東西。**限制和分叉會減少軟體的價值，分享才會創造價值。**這和我們處理過的任何物理資源都不一樣，也和大多數公司對待軟體智慧財產權的方式相反。

這套邏輯之所以在今天特別重要，是因為當大量勞動可以被自動化，當你那個街區的機器人、亞馬遜雨林邊緣的社群，需要的只是軟體，是程式碼，而這些程式碼完全可以開源。人類做的這些額外的生成性活動，本來不必被裝進一個容器裡，然後按指數級增長的收益去收費。

Facebook 乾的就是這件事。舊的網際網路本來就在把人連線起來。Facebook 跑來說，誰都能發圖片、發文字，我們要把它放大到所有人那裡。人類互動的生成性網路爆炸了。然後它問自己：我怎麼靠這個賺錢？答案是，我要成為所有人注意力的守門人。

## “你到底需要多少”

Lex 提出一個反問：那些人不是得有份工作嗎？不是得插進資本主義系統裡嗎？消費主義這臺引擎，不正是讓某些人能偶爾抽身出來、在邊緣造出神奇東西的前提嗎？

彼得說，這正是“後稀缺”要問的問題，而這個問題從來不會出現在超級碗廣告裡：

> 你到底需要多少？多少才夠？你需要每兩年換一輛新車嗎？每五年？如果車還能開，開十年行不行？你的 iPhone，真的需要每兩年升級嗎？你用的還是四年前那批 app。（彼得·王）

他說這應該做成超級碗廣告。也許某個聽眾會資助這件事。

他真正想說的是，如果能把生活的尺度降下來，先解決人的基本需求，再留出一點餘量應對緊急情況（有人得了罕見癌症、大火燒了半個村子），然後把資源集中處理真正的大緊急事件，同時給每個人探索“成為最好的自己”的能力，會怎樣？

對 Travis Oliphant 來說，那個探索就是扔掉終身教職的安穩，去寫 NumPy。科幻圈有句話：科幻是一個失敗博士後一個失敗博士後地推進的。

## Travis 與那艘指向同一顆星的船

彼得第一次見 Travis 是 2005 年在帕薩迪納的 SciPy 會議。當時他在 Enthought 做科學計算諮詢。2007 年 Travis 加入 Enthought 做總裁。之後兩人一起做了不少諮詢專案，包括曼哈頓幾家投資銀行和一些高頻交易公司。

正是在那些專案裡，他們看到了 Python 的另一面：除了當 MATLAB 的替代品，它還能當瑞士軍刀，處理大量“影子資料轉換”的工作。2012 年 1 月，他們創辦了 Continuum Analytics，目標是把 Python 裡那些需要擴充套件的部分補強，讓它能處理規模化資料、做 Web 視覺化和應用開發。前五年 Travis 是 CEO，彼得是總裁。融資之後董事會請了一位職業 CEO，彼得轉任 CTO，Travis 一年後離開去做 Quansight。

說到 Travis，彼得有一句很動人的描述：

> 無論海面上落多少霧，他的船和我的船，都指向同一顆星。（彼得·王）

他說兩人背景差異很大，可以很久不聯絡，一聊起來卻在九成的事情上完全一致。他還說了一件他覺得有意思的事：Travis 對型別系統設計、向量計算、記憶體佈局這些書呆子細節愛得極深，但他更在乎生態系統裡的人。

## 包管理器這個坑

Anaconda 撞上包管理問題，按彼得的說法是“意外”。但這個意外值得講清楚。

要用 Python 高效做數值計算，得編譯大量底層庫，C、C++、Fortran 都有可能。不光要編譯，還要用正確的設定編譯，而這些設定往往針對特定晶片架構調優。再加上 GPU、加上不同作業系統，同一個 x86 晶片上跑 Mac、Linux、Windows，編譯和連結方式都不一樣。

這套複雜度超出了大多數資料科學家能推理的範圍，也超出了大多數包開發者的意願範圍。一個包開發者的心態是：我在 Linux 上寫程式碼，能跑就行，在古老版本的 Windows 上怎麼編譯不是我的問題。

於是出現了一個怪圈：一個非常有創造力的眾包生態，產出大量包，但很多人用不了。所以 Anaconda 造了構建配方系統、構建系統和安裝系統，讓這些包能在各種平臺上正確構建，讓使用者一條命令就能裝好。

難點在於依賴圖。成千上萬的人在寫程式碼，每個人可能依賴別人的東西，織成一張極其複雜的依賴網。在給定一組包的情況下，找出正確的子圖，難度極高。而資料科學家不想思考這件事，他們只想裝 NumPy 和 pandas，再加一個地理空間庫，再加另一個東西。為什麼這很難？因為這些庫確實存在，但你要裝的這個在 Windows 上沒有構建，最新的版本沒有但你想要的那個舊版本有，退到舊版本又意味著另一個庫要換版本。

而且這是個公地悲劇。沒人願意去支援成千上萬個別人的依賴。conda-forge 社群站出來維護了一部分配方，這才撐住。

pip 是後來的工具，最初服務於那些編譯需求不多的純 Python 包。核心 Python 社群和 Web Python 開發者從沒撞上這套編譯問題，所以 Guido van Rossum 當年說過類似的話：科學計算社群的打包問題太奇葩、太不同了，你們可能得自己搞一套方案。核心社群於是造了自己的打包技術，沒有考慮這邊的複雜度。結果是，pip 裝 TensorFlow 很順，但一旦你想同時裝幾個依賴不同 NumPy 版本、不同 OpenCV、不同 libjpeg 的包，就掉進依賴地獄。如果要 GPU 加速，它們還得共用同一套底層驅動和 CUDA。

彼得給了一條商業建議：**永遠不要做那種“幹成了你隱身，因為別人的問題掛了卻算在你頭上”的生意。**這正是包管理的處境。conda 裝不上，通常是上游的問題，但看起來就是 conda 壞了、Anaconda 搞砸了。裝上了呢？哦，能用，反正大家都覺得理所當然。

## Python 2 到 3：一個正確決策的糟糕執行

彼得的定性很精確：那是“一個必要決策的糟糕執行”。

回頭看，幾個因素疊在一起。有人低估了 Python 2 的採用廣度；有人高估了 Python 3 新特性的價值，那些核心開發者熱愛的東西，對很多使用者來說根本不重要。更關鍵的是時機：這次遷移正好撞上 SciPy 生態在 2010 年代初的曲棍球杆式增長。大量新人正在入門，而老師們的態度是：我需要的這些庫還不支援 Python 3，那我就教你 Python 2。

過程中還有一堆小傷口。Python 3 自己在破壞、修改、重組標準庫，每一步都在給人新的藉口：下一個版本再說吧，2 現在夠用。

這裡有個容易被忽略的判斷：**是 Python 資料科學運動的增長，讓 Python 熬過了那次遷移。**很多語言在類似的大遷移裡死掉了，使用者被拋下。如果沒有資料領域的用武之地，相當一部分 Python 使用者會在那段過渡期跑去 Go 和 Rust，而且再也不回頭。事實上確實有人這麼做了。所以彼得說，是資料社群帶來的數百萬新增使用者，保住了 Python 的勢頭。現在用 Python 做資料的使用者，已經超過整體 Python 使用者的一半。

Lex 提了一個實操層面的觀察：他拖了很久才從 Python 2 遷到 3，因為他是做機器學習的，Python 2 一直夠用。真正讓他和整個團隊一起切換的，是 NumPy 宣佈要終止支援的那一刻。胡蘿蔔用了那麼多年沒推動的事，大棒一下就推動了。

彼得補了一句：NumPy 在依賴棧的最底層，它一動手，才是最後那根棒子。而在此之前，各個專案放出的都是“棒子形狀的胡蘿蔔”：新特性只在 Python 3 上發。

## 一百萬個 Python 程式設計師，還差什麼

彼得說“一千萬 Python 程式設計師”這個數字偏低。Anaconda 和 Miniconda 每週約百萬次下載，有大量用 Python 和資料幹活的人根本不在傳統統計裡。

他想要的世界是資料素養普及的世界：人們能用工具流暢地表達自己的問題和想法。資料的種類和複雜度只會繼續漲，不會降。所以某種程度的程式碼，或者類程式碼的東西，會持續相關。

他指出的差距很具體：**你今天沒法把一個 Python 表示式打進 Excel 單元格。**如果做對了，Python 使用者的總可定址市場應該是 Excel 使用者那個量級，幾億人。要做到這一點，Python 必須更擅長被嵌入，變成一個更小的東西，只拉起恰好需要的那部分生態來跑數值計算和資料探索，在使用者已有的資料和工具那裡和他們相遇。同時，使用者寫下的東西要能順暢地流回部署系統、小應用、視覺化。

他還提到 Lex 的一個觀察：Adobe 全家桶的使用者裡，很多人不認為自己是程式設計師，但他們在用 Python 寫指令碼。如果 Photoshop、Premiere 這類面向創意人群的工具能方便地接上 Python，那會是另一種擴充套件。而在 Lex 看來，OpenAI Codex 這類程式碼生成模型正好能補上這個缺口：使用者不用讀手冊、不用搜 Stack Overflow，就能從視覺化介面過渡到一段可修改的程式碼。

彼得對此的補充是：學習程式設計，型別系統和語法都好辦，真正難啃的是所有那些字典、物件、屬性、引數。“誰有時間學完這些？”所以按示例程式設計（programming by example）才是讓使用者表達意圖的正確方式。

但他也堅持 Python 在資料領域不可替代的那部分：**數學精度。**隨便扔一個 TSV 或 CSV 進來，如果對方給的是某個昂貴的資料轉換廠商工具，他不確定能解決問題；但如果給他一個 Python 提示符，什麼資料都能給揉成想要的形狀。這種拿著砍刀闖進資料叢林的能力，很難被替代。

## 謙遜是資產，也是瓶頸

Lex 問，如果只能改一件事讓 Python 社群更好，改什麼？

彼得說，謙遜是 Anaconda 的價值觀之一，也是社群的價值觀之一。過去幾年有點被侵蝕，但總體而言，社群裡的人相當正派、講道理、友善。而這種謙遜，恰恰讓他們看不見自己可能達到的高度。他不確定核心 Python 社群裡有多少人真正意識到，他們正站在一個改造人類使用計算機方式的機遇邊緣。

他提到 Russell Keith-Magee 在 PyCon 的一次主題演講：一門至今無法在最主流的計算裝置上放出一個介面（寫不了 Web 前端，寫不了原生 app）的語言，Python 幹得實在太好了。演講把問題拋回給社群：靠現在的志願者模式走到這一步，接下來怎麼辦？我們抓住了老虎的尾巴，怎麼跟著它往前跑？

這就引出一個結構性問題：謙遜讓協作成為可能，沒人壓過誰；但一個蜂群要形成單一願景，還得說清楚“我們要做什麼，更重要的是我們不做什麼”，這又需要一種凝聚的、聚焦的領導力，而且這種領導力還得能解散，讓大家回到蜂群模式。

彼得拿 Linus Torvalds 舉例：鐵腕，但有一種魅力，一種觀念上的精英制。過了那道“白痴門檻”（bozo threshold），他就對你的想法開放。這套東西在開源社群能成立，前提是那道門檻的定義者真的足夠優秀，如果他不夠好，人們會走，會分叉，會把他趕下去。開源給了人用腳投票的權利。

他從自己的經歷出發說，他沒讀過 MBA，也沒照著“我要當領導者”的劇本走。他是物理學家轉成的軟體書呆子，在 Python 上鑽得太深，最後看到了商業機會。過去十年讓他真正著迷的是組織動力學和領導力。他認為領導力歸結到幾個核心：創造信念，或者至少消除懷疑；有願景；有忠誠；有經驗。每一步領導工作，都要幫你把這個信念放大到更多人那裡。而在 Python 這個協作社群裡，僕人式領導（servant leadership）是價值觀之一，領導者還得是價值觀的大祭司，必須身體力行，不能只說不做。

他還提了一個原則：**輔助性原則（subsidiarity）。**把資源給到各個小組，讓他們按各自領域的情況去分配。PyCon 曾經拒掉大量科學計算和 PyData 的演講，理由是“這些更適合 PyData”。當時有點煩，因為想借助 PyCon 這個幾千人的大場子擴大影響。但後來也理解了，並行生態允許並行創新，嵌入式、Web、指令碼、安全，各有各的生態位。問題在於，這些分支最終得重新匯合，中心機構得提供資源。

## 工具、作息和鍵盤

彼得的主力是 Mac，理由很實在：有 Unix 提示符，可以幹所有事，但又不用擔心給客戶或投資人演示時冒出 ACPI 相關的核心恐慌。他說這話時還自嘲：感覺像背叛了自己的社群。2012 年創業時，Linux 筆記本確實還沒到位，於是就一直留在 Mac 上了。

他有三張桌子：主桌是升降桌，配了提詞器；還有 iMac 加外接 GPU，另配一臺 Windows 機器。顯示器從 27 寸高 DPI 換成了大麴面屏，理由是搬家後想要更大螢幕同時放 Zoom 和通訊軟體。

鍵盤是 RealForce 87U，Topre 靜電容軸。Lex 則坦白了自己的“暗黑時刻”：在飛機上狹窄的空間裡，從包裡掏出筆記本，然後在筆記本上面架一把 Kinesis 鍵盤，用 Emacs。環顧四周，所有人都在用 iPhone 刷 TikTok。他一度想，是不是該成年了，把九十年代留在身後，用個正常鍵盤。經過一番靈魂拷問，他決定這就是他。

彼得補了一刀：pandas 的作者 Wes McKinney 也是 Kinesis 的使用者，pandas 就是在 Kinesis 上敲出來的。或許該建個 Kinesis 互助小組。

作息上，他試過一陣多相睡眠：晚上九點睡，凌晨兩點起，工作到五點，再睡三小時，八點起。感覺不錯，像憑空多了一天。但只要一出門旅行，時區一亂，整套就崩了。現在他要六點起床送孩子去校車站，所以儘量早睡。他說自己有個很好的領導團隊分擔日常事務，孩子也大了些，妻子幫了很多忙。

## 給年輕人的話：你正走在一個世界之間

彼得說，我們正在快速進入一個“世界之間的時間”（time between worlds）。現有世界正在老化機構的重壓下崩解，那些機構甚至已經不再假裝服務於它們被創造出來的目的。而我們正在造的技術，把幾十億人推入哲學危機，而這些人根本不知道自己韌體裡裝的那套哲學作業系統是什麼，那套系統正在被汽化。

所以他對中學生、大學生說的話是：你得找到自己的路，得有拓荒者精神，哪怕你住在人口最密集的都市中心。你周圍的一切人類現實，都是過去幾代人同意玩某些遊戲的結果，其中很多遊戲已經不再按原來的規則執行。崩潰是非線性的，但會被管理。

他在這裡說了一句在美國語境下不太“政治正確”的話：如果你不屬於某個特定的社會階層或經濟階層，如果你不在中上階層，你正駛向非常顛簸的水域。所以非常值得去思考和理解，建立一個有意義的人生到底需要什麼基礎，為你自己，為你愛的人，為你的家庭。

> 幾乎所有面向消費者的技術，都是被設計來擁有人的，是把人這四層堆疊拆散，然後擁有其中某些部分。（彼得·王）

如果你想做一個完整的人，想保有自己的能動性，年輕時正是讀一些關於“什麼是好生活”、什麼是與人建立連線的經典的時候。他還提到，技術梯度總會帶來權力梯度，這是埃呂爾的論點，而且這個梯度不會消失。技術跑得太快，連他這種參與創造的人都快被甩在後面，前沿研究裡有些東西他已經看不懂，得去翻會議論文集。世界越技術化，梯度越多，越會有人抓住權力和經濟財富。而讓被落下的人接受自己處境的辦法，是給他們設計彩票系統，讓他們參與到“自己被困在自己經濟區域裡”的敘事中。

所以，識別出什麼時候有人在對你玩套路，很重要。

## 希望從哪裡來

Lex 追問：說完這些現實，你看著夕陽，會對兒子說什麼？你自己從哪裡獲得希望？

彼得說，希望來自一些小的震動正在把人們從現代性敘事的白日夢裡搖醒。

關於社交媒體，他的分析是：問題的根源在於榨取型資本回報要求。有人拿著錢進來說，你擁有一個網路，給我從這個網路裡擠出讓收益指數增長的動力學。你怎麼辦？你只能在每個節點、每條邊上設收費站。但如果沒有人坐在那裡對維基百科說“把每個位元組、每個短語都變現”，只要我們在線上交流上守住幾個原則，生成性的人類動力學自然會浮現。

他指出，世界上最大最好的社交網路至今仍然是電子郵件和簡訊。所謂社交媒體，本質上是新的放大系統。它確實讓像 Lex 這樣有內容的人被放大，催生了創作者經濟，湧現出大量好內容。但給每個人一箇中彩票式成名的機會，告訴青少年“你在 TikTok 上扭對了屁股就能有十五秒微名人”，這對整個社會不健康。

他還講了一個更深的機制：社交媒體是我們第一次遇到的、能夠繞著人的認知和注意力跑一圈的技術系統，而且它遠非最後一個。青少年的整個社交環境都壓在上面，邊緣系統在說“我需要拿到那個人”，於是只能跟著做。當一個社交媒體應用導致一個家庭破裂，它傷害的已經超出了個體範圍。而在我們現有的哲學框架裡，因為每個人都“自己選擇了看我的應用”，這件事沒法被追責。

> 我們的哲學框架，其實不適合理解“一個人作為集體的一部分擁有高信任連線”意味著什麼，以及“這個集體擁有自己的連貫性和能動性”意味著什麼。（彼得·王）

羅伯特·皮爾西格（Robert Pirsig）在《萊拉》（Lila）裡提出的四層框架，彼得認為雖然粗糙，但比傳統的主客體二元論進了一步。人是四層堆疊的疊加：物理層（原子分子）、生物層（細胞、穩態）、社會層（映象神經元、語言中樞，別人在你旁邊跳舞大笑，你也會感覺更好，沒有任何物質交換，但有感應）、智識層（純粹的觀念，你是模因的容器）。沒有哪一層是特殊的，每一層都只是不同。很多哲學試圖否認其中某層的實在性（“我們只是原子”），但你能把人還原成一堆湯，雖然原子一樣，那已經不是同一個人了。秩序和湧現出的模式本身是實在的。

關於意識，他的看法是：人類所體驗的意識，是宇宙中一個普遍傾向的梯度上的一個位置，那個傾向是，**當有能量盈餘時，事物會去尋找秩序。**

> 說一個質子是活的會很怪。但當我們把這些東西組裝起來，它們會有自創生（autopoietic）的方面，會形成結構。晶體也會形成非常有趣和美麗的形式。（彼得·王）

他引用阿德里安·貝揚（Adrian Bejan）的構造定律（Constructal Law）：當系統遠離平衡、有能量盈餘時，它不會只是變得更熱的湯，它開始製造結構。

## 元胞自動機：也許只是我們看不見

談到康威生命遊戲，彼得把它翻了個面：那些規則造出的圖案，有一些會變成滑翔機，有些滑翔機會搭出與門和非門，你可以在上面造計算機。但這些只是我們能看見的圖案。如果我們的主觀性本身，限制了我們感知其中秩序的能力呢？如果我們以為隨機的某些東西其實並不隨機，只是我們沒有在足夠大的時間尺度上做積分呢？

他說數學也是一樣。我們用的數學，是能裝進我們腦子的數學。

> 上帝真的創造了整數嗎？還是上帝創造了一切，而我們恰好在此時此刻只能感知整數？我們發明了數學運算，好有迭代的步驟去逼近更大的問題。但那些操作，也只是能裝進我們腦子的操作。（彼得·王）

Lex 說，這讓他最擔心的其實是：外星人、各種形式的生命、各種程度的智慧，也許就在我們周圍，只是我們太笨、太自我中心，看不見。

彼得用一個故事回應。他在康奈爾時有一位研究亞洲宗教的教授 Jane Marie Law，講過一個西方音樂家去日本的故事。那人教古典音樂，會彈各種樂器，到日本後一直在找西方十二平均律式的東西，找不到，就說日本其實沒什麼音樂。人家只是在用不同的音階、彈不同的樂器。這個故事同樣適用於宗教：西方（尤其是亞伯拉罕諸教）把宗教圍繞“信念”來組織，東方更重“實踐”。

所以關於生命，他說很多人執著於自我複製、穩態這類特定特徵。但如果把“事物在能量盈餘時去尋找秩序，並進一步創造維持這種秩序的環境”這個框架放寬，問題就不一樣了。死亡是怎麼被髮明出來的？地球上有一些生物活了幾千年，結構並不比構成我們的細胞複雜，但它們不死。某處沿著真核生物的尺度，死亡被髮明瞭。為什麼？因為配合有性生殖，淘汰舊世代、讓新世代去嘗試，似乎是適應生態位的最佳方式。

人類歷史書寫輪子和火的發明，但死亡和性可能是更好的發明，而且是極早期的發明。

## 投石、合作，以及文明的地基

彼得提到一本剛開始讀的書《Death From A Distance》，論點是：人類是唯一能遠端殺死同類的物種。動物世界裡，叉角羚用頭頂撞，雄獅之間正面搏鬥。而人類學會了朝彼此扔石頭，朝獵物扔，也朝同類扔。

這意味著部落裡的二把手可以撿起一塊石頭，從遠處放倒首領。扔十次脫靶九次沒關係，命中一次就夠。彼得認為，這種能力創造了一種原始形態的相互確保摧毀，把合作變成了生存必需。繼續按“我是部落裡最大的猴子，這個部落歸我”的邏輯玩的部落，都失敗了。活下來並最終繁衍出智人的部落，是學會了尊重“首領可以被遠端狙殺”這個事實的部落。

Lex 追問：所以暴力也是合作的一部分？彼得修正了表述：更準確地說，是對暴力的共同認知，意識到合作帶來的收益大於囚徒困境裡雙方背叛的結局。他順帶提到 Eric Weinstein 常講的“核平”（nuclear peace）：幾千枚核彈頭互相瞄準當然糟糕，但換個角度看，冷戰幾十年裡大國之間只打了代理人戰爭，沒有再爆發一場用機關槍和巨型導彈打死幾億人的第三次世界大戰。

Lex 總結：所以人類的第一件核武器，是一塊我們學會扔出去的石頭。

## 和 Eric Weinstein 的緣分，始於他想用 Python 畫圖

這段友誼的起點相當隨機。2000 年代中期，彼得和 Travis 都在 Enthought 做科學 Python 諮詢，順手造了一些工具。Eric Weinstein 當時正嘗試用這些開源工具，視覺化他研究經濟學的一套纖維叢（fiber bundle）方法。就這麼聯絡上了。

真正的深交發生在 2007、2008 年金融崩盤之後。Eric 和 Lee Smolin 在圓周理論物理研究所（Perimeter Institute）組織了一場研討會，主題很直接：既然大金融不可信、監管又被俘獲，接下來該怎麼辦。與會者陣容豪華，納西姆·塔勒布（Nassim Taleb）、MIT 的羅聞全（Andrew Lo）、Bill Janeway 都在。Eric 邀請了彼得、Travis，還有 SciPy 社群人人認識的 Robert Kern。彼得也是在那裡第一次見到 Brett Weinstein。

還有一頓值得復刻的晚餐。2012 年前後，彼得和 Travis 創業途中路過紐約，Eric 當時還沒加入 Thiel Capital。五個人湊了一桌：彼得、Travis、Eric、pandas 作者 Wes McKinney，加上 Wes 當時的商業夥伴 Adam。彼得說那是聊得極其盡興的一晚，等疫情過去，真想和 Eric 再坐下來複刻一次，最好在奧斯汀，因為很多有趣的人都搬去了那兒。

至於 Eric 的程式碼，彼得說真正扛下重活的是 Robert Kern，一個安靜但思想極深的傢伙。Eric 本人更多把程式設計當隱喻素材，聊天裡頻繁出現 API、物件導向這類詞。他偶爾會問彼得：為什麼這些東西到現在還這麼難？

## 現實的原始碼，和那臺 20 瓦的生物計算機

Eric 喜歡用“原始碼”談物理學。以彼得的物理學出身加原始碼專家的身份，人類能搞清楚自己的原始碼嗎？

他的回答分兩層。

第一層，這件事在他那裡沒有懸念：人類終將造出合成的認知系統，未必全在矽基上，但會匹敵我們腦子裡那臺 20 瓦的生物計算機。他對認知的定義很具體：感知、注意力、記憶、回憶，以及提出更好的問題。在他看來，這才是智慧的度量衡。

他拿 Roomba 開了個玩笑。掃地機器人是個賽博系統，會興高采烈地把地上的寵物糞便吸進去，老款就這樣，新款才學會繞開。但它連他家的貓都不如。一個 18 個月大的幼兒，管理自己注意力的能力、理解世界的能力，都超過今天最先進的機器人。這些機器人被設計派往一個相對靜態的環境，環境裡的動態變化，它們能應對的餘地非常有限。

第二層更有意思。他認為我們不光能造出匹敵人類認知的系統，還能把它們放在人類旁邊，以“邊車”（sidecar）模式執行：系統一邊捕獲我們所見的全部光譜，一邊聽我們的反應，甚至測量我們的生命體徵。一個更高階的智慧可以用我們這八十年的人生把自己訓練起來，然後成為我們的一個相當好的擬像。

Lex 問：那麼在這幅未來圖景裡，邊車上坐的是誰？

彼得的回答只有一句話：我們不朽自我的嬰兒版本。

那嬰兒長大之後，人類還有什麼用？

他的答案是認識論的謙遜（epistemic humility）。我們不知道我們不知道什麼。我們得先造出能幫我們做已知之事的系統，再去探測已知的未知；但未知的未知，我們夠不著，而自然是那個能無限給我們驚喜的東西。所以生物人類應該被保留很久很久，哪怕我們不朽的自我已經超越出去，去探索別的世界，去和住在太陽裡的生命形式聊天。

## 糖不愛你，但愛你的系統應該被造出來

Lex 丟擲一個問題：能不能造出一個你愛上它、它也愛上你的 AI 系統？

彼得的回答把標準抬得很高：這應該是所有這類系統的設計標準。如果我們無法和它建立有意義的關係，那它就只是一塊矽。

那什麼算有意義？回到糖的類比。糖不愛你。計算機得愛你。愛是什麼？他借了阿蘭·德波頓（Alain de Botton）的定義：

> 愛，是它想幫我們成為最好的自己。（彼得·王）

再往深一層，他認為愛比意識更根本。人類對愛的感受，其實是對某種生成性（generativity）的感知：當我們看著另一個人，看到他能成為比現在更多的東西，超出我們貼給他的那個標籤。任何宗教文字里都能找到類似的表達：你該在他人身上看到神的恩典，因為他人是照著神對其造物之愛造出來的。

他還把現代人對自由和個體權利的執拗重新放回了這個框架裡。當代討論裡全是自由、個體自由、權利，這套話語承自黑格爾和西方哲學裡“個體神聖不可侵犯”的傳統，但它的立足點放錯了。該問的問題應該是：我們怎麼最大化人們彼此相愛的能力，先愛自己，再愛他人，再承擔起對上一代和下一代的責任。這些才應該是設計的起點，然後才由此推匯出關於自我、權利和責任的哲學。如果設計認知系統時只盯著效率和生產力這些工業時代的指標，那就是往深淵裡走。

## 生命的意義：給儘可能多的東西焐上體溫

整期對話的最後一個問題，是那個最大也最俗套的問題：生命的意義是什麼？

彼得先承認，自己從來沒真正理解過這個問題該怎麼答。然後他繞了一個很長的彎，繞出一個思想實驗。

先鋪墊他的世界觀。大多數人用主客體二元論的鏡頭看世界：我是我，周圍那些東西是外在於我的物件，我對它們做事情。另一種視角是，我們深深嵌在一鍋由其他事物組成的湯裡，我們幾乎是各種事物疊加出的一個駐波圖案。

然後是思想實驗本身。他先打了預防針：接下來的東西完全是玄學，他自己也不認為它是真的，但請跟著推一遍。假如我們用手觸碰的每一件東西、真正投注注意力的每一件東西、真正給予親密的每一件東西，都會接收到某種物理殘留，一點點你的生命力滲了進去。就像那些磁療水晶和量子能量的說法，假如它是真的呢？

你的手機是個技術物，它接收注意力，卻不讓自己被這種注意力改變。但一塊木頭呢？你母親用了二十年給你做晚飯的那把刀的木柄呢？你在上面敲出過改變世界的軟體庫的那把鍵盤呢？我們對這些物件有種說不清的依戀，好像我們真的把生命能量灌注了進去。

沿著這個思想實驗往下走：那當我們觸碰另一個人，擁抱他，抱著他，會發生什麼？

彼得的答案落在這裡：假如真有這種東西，那麼我們活著的目的，也許就是給儘可能多的東西灌注這種愛。

Lex 說，這個收尾很漂亮。三個小時的對話，從元類和向量化開始，落在擁抱上。

## 結尾那句話，值得單獨抄下來

節目末尾，Lex 引用了彼得的一段話收束整期：

> 我們傾向於把人分成惡意的或無能的。但在一個充滿可腐化且不受制衡的機構的世界裡，存在第三種東西：惡意的不稱職（malicious incompetence）。它是一種社會癌症，只在人類組織擴張到超出個人問責範圍之後才會出現。（彼得·王）

這期對話橫跨工程和哲學，資訊量大，觀點也未必都站得住，但有幾件事是聽完就能用的：

- 學 Python 別從型別系統和語法教材開始，按《Automate the Boring Stuff》的思路來：找一個你每週都在重複的任務，寫個指令碼幹掉它。程式設計的價值在第一個能跑起來的指令碼里，不在教材前幾章。
- 處理資料時，先給自己開一個 Python 提示符。NumPy 加 pandas 就是闖資料叢林的那把砍刀，什麼格式的資料都能揉成你要的形狀，還能省下采購昂貴資料轉換工具的開銷。
- 定期問自己“多少才夠”。車能不能開十年，手機能不能不兩年一換。很多消費需求是被廣播同質化出來的，砍掉它們，等於買回自己的時間和注意力。
- 把注意力當資產管理。資訊流和短影片是含糖飲料，喝的時候爽，喝完是空的。給慢的東西留時間：長文、面對面見面、需要身體在場的活動。
- 維護一個鄧巴數量級的高信任圈子，同時把自己的世界觀寫下來非同步傳播。一篇小冊子能讓對的人一年只見你幾次，卻和你保持深度信任。
- 年輕時讀經典，搞清楚什麼是好生活、怎麼與人建立連線。你韌體裡那套哲學作業系統，不該是預設安裝、從不升級的。
- 警惕兩件事：只玩虛擬空間裡的地位遊戲，因為掌握硬資源的人會在物理層擁有你；以及規模大到超出個人問責範圍的機構，那裡是惡意的不稱職的溫床。
- 如果你在帶團隊或社群，記住領導力的最小核心：創造信念、消除懷疑，然後身體力行你宣稱的價值觀。謙遜讓協作成為可能，但別讓它擋住願景。
