機構中的天才
理查·韋斯利·漢明在貝爾電話實驗室待了三十年。1950 年,他發表了以其姓氏命名的錯誤更正碼。他對數位濾波器、數值方法與編碼理論皆有貢獻。1945 年,他剛離開曼哈頓計畫,便協助除錯早期核武計算,地點在洛斯阿拉莫斯。他與香農、肖克利、布拉頓及巴丁等人共事——這些人正是電晶體的發明者。
貝爾實驗室是什麼
貝爾實驗室仰賴 AT&T 獨佔利潤運作。美國每一通電話都會撥出極小額的費用,匯入研究預算,讓純科學研究無需追求短期回報。貝爾實驗室在單一機構內,靠著法定獨佔所資助,產出了電晶體、資訊理論、UNIX、C 語言、行動電話與雷射。
冷戰塑造了它的優先事項。美國軍方需要能在核污染環境中使用的錯誤更正碼,需要用於雷達的數位濾波器,也需要可靠的導彈導引運算。貝爾實驗室提供了這些成果。漢明的職業生涯就在這個框架中展開:知識在圍牆內產生,服務於具有特定地緣政治需求的贊助者。
漢明所傳承的原則
1986 年,漢明在貝爾實驗室發表了「你與你的研究」演講。1995 年,他在海軍研究生院開設了一門名為「漢明談漢明」的研究生課程。這兩者都將三十年的觀察濃縮成超越時代背景的原則:
- 專注於重要問題。「如果你正在做的事情不重要,也不太可能引領到重要的事,那你為什麼要做它?」
- 保留一份包含 10 到 20 個重要問題的清單。 定期檢視。當新技術出現時,檢查它是否能解決你尚未解決的問題。
- 知識複利。 知識像利息一樣增長。對基礎知識的小額投資會在整個職業生涯中複利增長;對周邊技能的大額投資則會貶值。
- 你得到你所衡量的東西。 任何指標一旦成為決策依據,就會變成目標;而這個目標會偏離原本要追蹤的真正目的(現稱古德哈特定律)。
- 透過類比獲得創意。 大多數突破都是將一種領域的成功結構轉移到另一個領域。訓練自己去辨識不同領域之間的結構相似性。
- 系統而非元件。 為了最佳化單一元件而犧牲整體系統,會讓系統變得更糟。Hamming 在他的職業生涯中多次目睹這種失敗。
這些原則超越了冷戰時期的包裝。它們依然適用,無論你是在機構內部或外部工作,無論你是為贊助者還是為公共資源工作。
你的清單
Hamming 終其職業生涯都持續維護一份重要問題清單。他說:
> 大多數偉大的科學家腦中都有 10 到 20 個重要問題。他們會把這些問題寫下來。只要有機會,他們就會思考這些問題。每當有新技術出現,他們就會拿它來對照這份清單。
這份清單就像一個準備度篩選器。沒有它,新技術只是一堆資訊;有了它,同樣的技術可能就能解決你多年來一直思考的開放問題。
什麼會延續下去
總結那些在冷戰框架下依然存續的東西:
複合知識。 無論機構背景如何,這一點都成立。一個人若每天花 20 分鐘閱讀自己領域的前沿,持續 10 年,就會累積出複利優勢。其機制是:每個新概念都會落在既有的知識結構上,為下一個概念創造更多連結點。
系統思考優於元件最佳化。 一個在隔離狀態下最佳化的資料庫,若阻礙了應用伺服器,就會讓整個系統變慢。一個為了考試成績而最佳化的課程,若耗盡了學生的好奇心,就會產生更差的教育成果。Hamming 的警示適用於所有層級。
透過類比產生創意。 Hamming 觀察到,他自己的大多數突破都來自於發現某個領域的問題,與另一個領域已被解決的問題具有相同的結構。錯誤更正碼借用了較簡單領域的奇偶校驗概念。數位濾波器則是將連續數學應用於離散序列。
你測量什麼,就得到什麼。 測量程式碼行數的組織,會產出程式碼。測量考試成績的組織,會產出應試者。當指標獲得權威後,指標與目標之間的落差就會擴大。
這四項原則不需要贊助者、不需要壟斷、不需要冷戰。它們適用於大學圖書館、小型商店、由社群共同維護的開源專案,或是一間廚房。 [TITLE what_he_missed/]
知識作為武器
漢明所處的時代將知識視為競爭優勢。貝爾實驗室在競爭對手之前,產出 AT&T 與美國軍方所需的知識。論文發表發生在專利申請之後、軍事應用確保之後。其模式是:在圍牆內產出知識、加以保護、然後部署。
這個框架確實產生了成果。電晶體、UNIX、資訊理論——這些真正具有變革性的成果,都是在這個模式下產生的。該框架對其目的而言是有效的。
該框架所排除的
開源作為研究方法。 漢明從未思考過「在論文發表時同時公開原始碼」可能比將其視為專有更快地加速研究。在他的時代,程式碼只是副產品。林納斯·托瓦茲在 1991 年發表 Linux 核心,比漢明的課程早四年。「一萬名貢獻者共同維護程式碼庫,比公司內部 300 人的團隊更可靠」這個想法,並未出現在漢明的思考中。
八種資本形式。 漢明以論文發表、突破性成果與職業生涯長度來衡量成功。他從未討論過生活資本(研究人員的健康與注意力)、社會資本(使合作成為可能的信任網絡)、文化資本(跨世代傳遞價值的共同故事),或精神資本(支撐長期工作的意義感)。他只衡量了八種資本中的兩種。
演算法複雜度作為基礎。 Hamming 的課程涵蓋數位濾波器、模擬、編碼理論,以及 n 維幾何。他從未教授 Big O 記號。在他的時代,N 足夠小,以至於 O(N) 與 O(N²) 之間的差異很少重要。在他的學生將要生活的時代,這一點卻極為關鍵。本課程延伸至 unhamming_algorithmic_complexity。
永續農業:生長 vs 提取。 Bell Labs 從壟斷租金中提取資源。該模式需要一個擁有權力集中資本並指導研究的實體。另一種選擇——在許多節點上生長能力而非集中於單一節點的再生基礎設施——在 Hamming 的框架中沒有位置。
間諜/間諜問題
Hamming 的時代以對抗對手為目標進行最佳化。冷戰使這一點變得明確:美國與蘇聯在各個領域競爭。雙方的研究人員都致力於超越對方。遊戲規則:零和。你的所得即對方的損失。
零和遊戲會產生特定行為:保密、分類、專利、限制出版、機構壁壘。這些在遊戲內都是合理的,但在遊戲之外卻是浪費。
當雙方都以擊敗對方為目標進行最佳化時,雙方都不會去最佳化以擴大共享的棋盤,從而使遊戲變得不再必要。花費在重複、保密與競爭性信號上的資源,對公共領域沒有任何貢獻。
Hamming 的建議(「解決重要問題」)隱含地假設遊戲是零和的:重要問題能在競爭性環境中獲得機構認可、資金與聲望。該建議仍然有效,但框架無法轉移。
一位研究人員若致力於開放基礎設施、建立公共資源、貢獻共享程式碼——此人無法以擊敗對手為目標進行最佳化。沒有對手。遊戲規則是:擴大棋盤,而非在棋盤上提升自己的位置。
同樣的火焰,不同的飛行
一隻龍無法選擇它的洞穴或贊助者。Hamming 無法選擇 Bell Labs 或冷戰。他在自己所在之處,運用可取得的資源,朝向他能看見的問題前進。
知識超越脈絡。Hamming 的錯誤更正碼如今運行在每一台 USB 隨身碟、每一條衛星傳輸,以及每一顆硬碟中。他從未想像過這些應用。數學本身並不需要他的想像。
Unhamming 始於這個觀察:將 Hamming 所證明的內容與包裝它的框架分開,然後再以該框架無法看見的面向加以延伸。
Unhamming 所增添的內容
開放原始碼作為公地。 從事重要問題的研究不需仰賴機構支持。一個人、一台筆電、一個公開儲存庫,以及一個具體的開放問題,就能為所有人貢獻一個會不斷累積的公地。Hamming 的知識複利原則在此適用於生態系規模,而非僅限於個人規模。
合作式基礎設施。 Permacomputer 模型:每個節點都是一台工作站,每條邊都是一條佇列。若在解除某個節點阻塞時未同時規劃下游容量,就會製造新的瓶頸。這延伸了 Hamming 的系統思考:不只是「優化系統而非元件」,而是「在移除限制前先繪製流程圖」。
演算法複雜度作為基礎。 Hamming 對「基礎」的檢驗標準是:它是否歷久不衰?是否能由此推導出該領域的其他內容?Big O 通過這兩項檢驗。自 Knuth 以降,成長率分析便持續存在。由此可推導出演算法選擇、資料結構選用,以及效能預測——涵蓋了大部分實務電腦科學。Hamming 錯過了這一章,我們來補上。
八種資本形式。 只衡量論文與專利,會讓其他六種資本形式隱而不見。若研究實踐以耗盡生活資本(研究者健康、注意力、睡眠)來最大化智力資本(論文),等於只優化八種資本中的兩種,卻同時耗損其中一種關鍵資本。Hamming「晚上與週末也要工作」的建議,在這種會計框架下便站不住腳。
龍火依然存在:研究重要問題、複利你的知識、以系統思考、類比創造、衡量真正重要的東西。飛行方式則改變了:不再需要贊助者、不再需要對手、不再需要機構高牆。