Ken Thompson 回憶 Unix 那段狂放不羈、撬鎖惡作劇的起源 (★ 213 分)
Ken Thompson 回憶到 1960 年代中期,在 Bell Labs 的 Multics(多工作業系統)計畫失敗後,他與同事取得了一臺閒置的巨型電腦,開始實驗同時重疊讀取磁鼓記憶體(drum memory)的程式,意外地演化出一個檔案系統核心。隨著文字編輯器、使用者切換機制、編譯器與組譯器等元件陸續到位,Unix 作業系統便在毫無預警下誕生。當時管理階層一度禁止任何人開發作業系統,因為 Multics 花費龐大卻收效甚微;但年輕的 Thompson 與一群技術人員私底下繼續研究,最終將這套系統裝上 PDP-11,並透過專案部門的多餘經費,以「文件處理」之名正大光明地納入經費預算。
就在那個位於 Bell Labs 六樓的「Unix 室」裡,Thompson、Dennis Ritchie、Doug McIlroy、Brian Kernighan 等人大搞鎖匠遊戲,甚至趁安全人員對女秘書汽車鎖具加「腳鐐」時遠端偷走,最後以「如果還給你們,我們就別再捉弄你們的秘書」達成協議。這種盡情分享原始碼、不設任何檔案權限限制的文化造就了一股同儕自發的「摟牆塗鴉」精神:任何人想改編編輯器,就直接把原始碼拉出來寫完再放回去,「你碰它就歸你修」成為不成文的信條。
Thompson 之後在 Bell Labs 持續開發 C 程式語言、Plan 9 作業系統,並親眼見證 Unix 在公司內部先用於行政流程與故障通報,進而深入電話交換設備。2000 年離開 Bell Labs 後,他先後投入網路設備公司 Entrisphere 與 Google,並與老友 Rob Pike 一同打造 Go 程式語言,延續早年那種「不設限、為任何人打造」的開放實驗室氛圍。
在 Hacker News 討論中,有人分享由 Computer History Museum 與 ACM(計算機協會)合作、長達 4.5 小時的 Ken Thompson 口述歷史錄影,並直指偷「腳鐐」的逸事最能體現當年以工程師雙贏而非官僚規條解決衝突的智慧;也有人指出 Unix 名稱極可能是對「eunuchs」(閹人)的雙關,但早期業務人員在公開時寧可稱作「UNIX 不是 UNIX」以避嫌。資深讀者則提醒,Thompson 曾證明如何在編譯器中巧妙植入後門,令後門在未經原始程式碼審核下依舊潛藏生效,這段「Ken Thompson Hack」故事也流傳至今。許多人從討論中體會到,無論是 Unix、Linux、早期 Python 或遊戲開發團隊,都因「玩心」與「高度信任」孕育出一波波技術革新。許多讀者也推薦史蒂文‧Levy 的《Hackers》與 Brian Kernighan 的回憶錄,作為理解這段技術社群精神的最佳補充讀物。
👥 48 則討論、評論 💬
https://news.ycombinator.com/item?id=45713359