第 501 期·中文精讀

DHH:程式設計的未來、AI、智慧體工程、氛圍程式設計與 Linux

DHH: Future of Programming, AI, Agentic Engineering, Vibe Coding & Linux

DHH 談程式設計的未來、AI 與智慧體工程,氛圍程式設計的爭議,以及他為何轉向 Linux 與開源。

官方音訊00:00 / --:--
中文精讀由 AI 基於原始訪談改寫,非官方翻譯,可能存在偏差或錯誤;表述以原音訊與官方文稿為準。說明

2026 年 8 月,DHH 釋出了 Omarchy Quattro。他說這是他整個職業生涯裡最驕傲的軟體釋出之一,同時也是他手寫程式碼最少的一次:一行都沒有。

過去二十年,這個人的公眾形象是「手工打磨優美 Ruby 程式碼的匠人」。他發明了 Ruby on Rails,讓全世界幾百萬開發者少寫了幾十億行重複程式碼。他花了二十年時間跟人爭論什麼叫好的架構、什麼叫美的程式碼。然後在九個月裡,他把這套身份整個放下了。

Lex Fridman 問他會不會有點傷感。他的回答是:不。他做了二十五年,夠了,他想看點新的東西。

2025 年 11 月 24 日,那條分界線

兩個人上次坐在一起是 2025 年夏天。那時候 DHH 對 AI 程式設計的評價相當冷淡:它會寫我不喜歡的程式碼,它老想打斷我,我不知道你們興奮什麼。

他自己承認,那時候 Shopify 的 CEO Tobi Lütke 已經在往火箭上爬了,還專門給他發過公司內部的 AI 備忘錄。他讀完的想法是:好像有點誇張吧,你在為一個我還摸不到的東西大做文章。

轉折點精確到某一天。2025 年 11 月 24 日,Opus 4.5 釋出。他沒有當天試,隔了兩天才上手,扔了幾個任務過去,然後靠在椅背上想:剛才發生了什麼?

他給出的判斷是,Opus 4.5 未必比上一代聰明那麼多,真正的躍遷發生在另一件事上:它開始會操作你的電腦,會用工具,會檢查自己的活兒,會把智力用在能產出真實工作的地方。模型能力漲一點,harness(智慧體執行框架)能力漲一大截,兩件事乘在一起,體驗就完全變了。

他把這九個月切成幾段。

第一段是他一直認可的階段:自動補全和聊天機器人。聊天機器人是好老師,是查資料的好工具,但它不改變你和電腦之間的情感關係,你還是在一鑿一鑿地刻程式碼,只是旁邊多了個能商量事的助手。

第二段從 Opus 4.5 開始到 2026 年 2 月底。這個階段的特徵是:你還在開車。你告訴它要什麼,去哪兒找,跑偏了把它拽回來。它快得多,但方向盤在你手裡,你還得當審查員和審計員。

第三段是春天,子智慧體出來了。一個大任務能切成八份並行跑,原本要磨很久的東西忽然只花五分之一甚至十分之一的時間。但 DHH 說,這個階段他仍然覺得自己在開車。

第四段是 2026 年夏天。Opus 5、Fable、GPT Sol,還有一批開源權重模型,把狀態推到了另一個位置:他不再告訴它路怎麼走,他只說自己有什麼問題,說自己腦子裡那個模糊的、說不清楚的想法。然後它告訴他該往哪兒去,該走哪條路。

他打了個比方。早期的 GPS 導航很厲害,但你得盯著,因為報紙上真的寫過「有人被導航開進海里」。現在還有誰會因為 GPS 被開進海里?不會了,車都開始自己開了。

他甚至承認,他現在可以完全不看程式碼,只是出於好奇和對電腦的喜愛才去看。在程式碼生產這條鏈路上,他變成了可選項。

「我記得當時想,如果這就是我們拿到的最後一個模型,我也認了,接下來二十年用 Opus 4.5 我一句怨言都不會有。」(DHH)

結果幾個月後,Opus 4.5 在他嘴裡變成了「看起來像個智障模型」。

一千個 PR、三百三十個外掛、四十五秒

Omarchy 是他去年夏天在勒芒 24 小時耐力賽的場次間隙開始搞的。當時他看了太多 Linux ricing(桌面美化)的 YouTube 影片,被那個蟲子咬了。第一版叫 Omakub,架在 Ubuntu 上,屬於在別人地基上加裝修。第二版 Omarchy 往下挖了七層,直接架在 Arch Linux 和 Hyprland 這個 Wayland 平鋪合成器上。

前兩版都是前智慧體時代的產物,Bash 指令碼一行行手寫。到了 Quattro,也就是訪談前幾天剛釋出的這版,開發過程持續了三個月,程式碼 100% 由智慧體生成。他審了整體形狀,審了模型層裡所有關鍵程式碼的每一行,UI 和輔助程式碼大量沒看。

數字是這樣的:三個月裡他合併了一千多個 pull request。外掛市場開放三天,上了三百三十個外掛。安裝時間從最早的兩分鐘壓到一分鐘以內,目前的紀錄是四十五秒。

還有一個更誇張的:他們在做針對特定機型的 turbo 映象,比如 Dell XPS,因為硬體引數已知,理論上能在十二秒左右裝完一整套 Linux 系統。

三百三十個外掛這件事值得多說一句。Omarchy 隨系統釋出了一組 skills,任何接進來的智慧體讀到這組 skills,就知道怎麼給這個作業系統寫擴充套件。於是「改作業系統」這件事的門檻,從「你得會寫 GTK 或 Qt」降到「你得說清楚你想要什麼」。

三天裡出現了十七種不同實現的日曆外掛,因為系統自帶的日曆不讀 iCal。這些外掛的作者,很多不是傳統意義上的程式設計師。

「我做這個專案一年多,從沒見過這種增長速度,也沒見過這麼寬的參與面。那麼多人能造出對自己有意義的軟體,同時還能被別人用上。」(DHH)

Basecamp 5 那次翻車

故事還有另一面。2026 年 2 月,37signals 衝 Basecamp 5 的最後階段,那是他們第一個真正被智慧體加速的產品。當時團隊裡有種樂觀情緒:問題解決了,讓設計師去 vibe coding 吧,他們知道要什麼功能,知道該長什麼樣。

於是設計師們 vibe 了。

結果是堆了一大批 PR。單獨看每一個,當時都能找到理由合並進去。全部合起來,系統的架構被打爛了。他們最後只能靠人手一點點清掃,把架構重新收攏成一個連貫的東西。

DHH 從裡面抽出的教訓是:在已有的、有分量的程式碼庫上,如果你想保住那套讓系統走到今天的架構,你還是得是個程式設計師。這裡說的甚至不是複雜系統,就是普通的 CRUD 業務程式碼。

但同一個問題,他給了另一個方向的答案。當有人指責 vibe coder 是「垃圾製造機」時,他直接懟回去:你見過平均水平程式設計師的產出嗎?那也是另一種垃圾。去看看那些偉大公司背後的程式碼庫,經過三千個人手之後是什麼樣子。慘不忍睹。

更根本的原因不在實現層。當一群人協作時,瓶頸幾乎從來不是寫程式碼,是人的頻寬和溝通。產品經理、兩個設計師、上面還有 VP、再上面還有 CTO,每個人都想參與塑造過程,因為每個人都要證明自己為什麼在這兒。生產力就死在這個環節。

他拿微軟舉例。微軟有近乎無限的程式設計能力,幾十年,成千上萬的程式設計師。這恰好證明了一件事:能寫很多程式碼,並不會自動產出偉大的軟體。

還有一層:大部分組織根本不知道自己想要什麼。他們不缺實現能力,缺想法,缺視野,缺品味。如果想法質量和實現能力不匹配,那隻能把一堆爛想法更快地變成現實,然後呢?要釋出那個東西嗎?

開源維護者最好的時代

開源社群現在有一場爭論:智慧體生成的海量 PR 對維護者是好是壞。不少維護者在抱怨,說突然湧進來一堆貢獻,寫的人可能根本不是程式設計師。

DHH 的反應是:你在開玩笑嗎?這是一條免費的貢獻礦脈,你可以採也可以不採,你在抱怨它存在?

他有資格這麼說。二十五年維護開源專案,他看過成千上萬個程式設計師的產出。他的結論很直接:大部分程式設計師不行。不是罵人,是說他們不寫你想要的那種程式碼,bug report 裡不帶相關資訊,PR 裡不解釋為什麼,不填必要的註釋,不復核自己的工作,不寫單元測試。

而智慧體會做這些,只要你讓它做。它極其勤勉地遵守你的指令,有時候勤勉到過頭。

「我寧願收到一個智慧體寫的 PR,也不願收到一個人寫的。不只是質量更好,還因為拒絕起來我心裡舒服得多。反正也不是你寫的,我看一眼你 agent 代你寫的東西,說一句不要,就完了。」(DHH)

他說這暴露了開源維護者的一個通病:太多神經質的焦慮,總覺得任何一份貢獻都是自己必須全力促成的義務。其實完全不必。你可以說不,或者更好,說「不,謝謝」。你的專案有權按照你的視野和路線圖存在和演化。

Omarchy 現在積壓了大約四百個未合併的 PR,一週前還是這個數的兩倍。他已經不親自看 PR 了,讓智慧體先過一遍:錯的、重複的、垃圾的,直接篩掉;用虛擬機器驗證過的修復、真正有意思的想法,才送到他面前做人最後的決定。

這裡面有一層他特別看重的東西:以前只有極少數「巫師級」的人能參與開源,現在很多非程式設計師、或者別的領域的程式設計師,第一次能把腦子裡的好想法變成可合併的程式碼。他認為這才是開源原本許諾的東西。

當然,標準還是要有人守。Lex 問他,不需要巫師來維持程式碼庫的高水準嗎?他說百分百需要。只是巫師現在的工作從「寫」變成了「判斷」。

用英語程式設計

DHH 說過一句挺重的話:如果世界上存在比 Ruby 更美的程式語言,那就是英語。

這不是俏皮話。他這三個月真的是在用英語程式設計,讀了很多程式碼,但寫的是英文。他一直是愛寫字的人,愛英語本身的複雜和縱深。Ruby 是很富表達力的語言,但跟英語沒法比,幾百年的詩歌和文學都在那裡面。

Lex 補了一個更微妙的觀察:當你給系統下指令時,過度具體會讓它太聽話,嚴格照做,反而做不出好東西。但你仍然需要傳達一個概念。詩歌乾的就是這件事,用隱喻和留白傳遞比字面更多的東西。所以別像對機器人說話那樣對它說話,像寫詩那樣。

DHH 說這正好點出了很多程式設計師的根本誤解:他們希望 AI 是確定性的。不。temperature 是這個設定裡最美的部分。人腦如果是完全確定性的,就不會是現在這個有創造力的人腦。

他順手拆了一個流行抱怨裡的自相矛盾:一邊有人說它不確定所以不可靠,一邊又有人說它沒有創造力。兄弟,這兩條不能同時成立。要麼它非確定所以有創造所以有隨機,要麼它沒有創造力。

他自己寫文章的方式就是這樣。坐下時只有一個模糊的前提,具體下一個詞是什麼,他事前也不知道,詞自己流出來。他說這跟 next token prediction 的相似度大到讓他吃驚,這也正是他能一眼認出模型那些創造瞬間的原因。

關於「智慧體工程」這個詞,他明說討厭。理由是它已經變成營銷話術,什麼都能貼。他覺得「vibe coding」也不對,那詞聞起來像 2000 年代的 script kiddie,從網上下個 PHP 指令碼,完全不懂裡面是什麼就裝上。

他給了自己的定義:vibe coding 是你讓智慧體給你造軟體,你不看實現。程式設計或者叫智慧體加速開發,是你看 implementation。區別就在這一條線上。

Lex 追問,那能不能乾脆把智慧體工程就叫程式設計?他說不該複用這個詞,因為程式設計對他意味著理解某些原語:迴圈、條件、變數,語言的構件本身構成了程式設計。CEO 僱一堆程式設計師然後賣軟體,你不會叫那個 CEO 程式設計師。

別過度指定

2026 年上半年有過一陣狂熱,大家研究怎麼微調 AGENTS.md 或 CLAUDE.md,把能給智慧體的指令全塞進去,最後攢出一個巨大的指令檔案。

Boris(Claude Code 的核心開發者之一)在一次訪談裡說了個數字:Opus 5 的系統提示詞比上一代縮減了 80%。原因不只是模型需要的人類指令少了,更是過度規定性的指令會傷害它。

DHH 的類比很狠:任何一個有過「什麼都不懂但愛指揮」的老闆的程式設計師,都知道那是什麼感受。老闆走進來,開始教你怎麼寫程式碼。你會怎麼做?你會生悶氣,你會寫出更爛的程式碼,因為有人強迫你做違背自己判斷的事。智慧體憑什麼不是這樣?

Lex 說自己正在練的技能正好相反:不要過度指定,給系統讓路,只提供高層視野和方向。

DHH 說還能更進一步,你連那個都不太需要。真正的洞察來自敏捷軟體開發運動。上世紀九十年代末那批聰明、誠實、勇敢的人達成的共識是:過去四五十年我們試圖在開工前把軟體規格定清楚,問人類想要什麼,寫下來,用系統思維和嚴謹做成一份規格書,交給一群程式設計師照著實現,然後所有人都滿意。結果沒人滿意。因為沒人知道自己想要什麼,直到他拿到手。

所以在智慧體時代,你要抵抗的誘惑就是別一開始就過度具體。儘可能含糊地讓某個東西顯形,然後去和這個東西互動。好軟體是靠寫一點、用一點長出來的,在使用的過程裡你才發現自己真正要什麼。

人類在這件事上有獨特優勢:差分評估。給三個選項,人會在瞬間告訴你喜歡哪個,這個判斷是前智識的,從 gut 裡出來,大腦隨後才編理由。給二十二個選項,人直接崩掉,這就是選擇的悖論。

Lex 說他試過讓系統同時生成幾套完全不同的設計,做成 HTML 頁面讓他投票,很好玩。DHH 說對,這就是人最擅長的事。如果你願意放下那套智識上的預處理和合理化,讓直覺先跑,智慧體時代會是一種啟示。

十六個執行緒,衣櫃裡的四臺迷你主機

DHH 用了將近二十年 TextMate。2005 年開始,還幫過第一版釋出,之後一直沒興趣換。直到被迫搬到 Linux 才離開這個棲息地,現在用 Neovim。

真正的變化不在編輯器。手寫程式碼時,他在腦子裡跑單執行緒:盯住一個問題,有條不紊地推到終點,那條路徑本身就是進入心流的門。智慧體不是這樣工作的,它們同時太快和太慢。你讓它幹活,它不會像鍵盤那樣立刻給你迴響,你得讓它燜一會兒。

而坐在那兒等,感覺不像在工作,感覺有點沒用。

解法是把資源堆上去。這正是 AI 自己的 scaling law:你不同時跑一個智慧體,你跑一把,你就在不停做決策、解阻塞、接新任務,反而進入了心流。為此需要一套新工具。

他最初用 tmux 開多個 pane、多個 split,本質就是終端加標籤頁,大部分人都懂這個。後來切到 Herdr,基本是 tmux 加智慧體通知:哪個智慧體幹完活了、需要人做決定了,鈴就響一聲。它也跟蹤哪些還在工作狀態。

再往後,一臺機器不夠了。他說那感覺像剛發現多核程式設計,但自己只有兩個核。要是有十六個核呢?三十二個?六十四個?於是他買了一批 GL.iNet Comet 的 KVM 盒子,插 HDMI 插 USB 接到電腦上,網頁登入一次,裝置就進了 tailnet。

Tailscale 是他這一年的另一個發現。它把所有機器變成一個無論你在哪都能直連的區域網。他手機裡現在能直接訪問馬里布辦公室的所有電腦,也能訪問哥本哈根辦公室的。不用在防火牆上打洞,不用配複雜 VPN。摩擦一小,加算力這件事就變得隨手:他看了眼衣櫃,發現裡面躺著幾臺以前實驗剩下的迷你主機,全接上了。

上限不在機器,在人。四五臺機器、每臺三個智慧體、十六個執行緒左右,他的處理能力就到頂了。智慧體跑得越快,能開的執行緒越少。

他還給了一個頻寬對比。手寫程式碼的時候,一小時能寫出一段漂亮的 controller 或者一個 model,可能就是六十行,那已經是高估,也許二十行。現在十六個執行緒跑起來,有時候一小時幾百行。

然後他自己打斷自己:行數是爛指標。這是對的,程式設計師社群嘲笑 AI 精神錯亂時最愛抓的就是這個,問一句「你造了什麼」,對方就答不上來了。但行數作為一種輸出量的粗略封裝,還是有意義,只要別拿它當質量證明。

把 Python 庫翻譯成 Rust 的那次實驗

Omarchy 的開機螢幕保護有一堆炫酷動畫,底層是一個叫 Terminal Text Effects 的 Python 庫。問題是 Python 跑這些效果會吃滿 CPU,筆記本上大概三十瓦功耗,風扇起飛,電池掉得飛快。

DHH 想,這活兒適合 Rust。他把這個庫的原始碼扔給 Fable,提示詞只有一段:我要一個 Rust 版本,零依賴,單個可執行檔案,逐幀畫素級一致,做完整分析,不完成不許停。

四十五分鐘不到,Fable 說:我聽完了,全都檢查過了,啟動時間從 86 毫秒降到 2 毫秒,執行速度提升 9.6 倍,可執行檔案三兆。要跑一下嗎?

DHH 跑了一下,然後坐在那兒說:這是 AGI 吧。這就是 AGI 的樣子。

後面他把同一個任務刷了一遍所有模型,結果很有意思。

Fable 跑到三分之二時 token 用完了,自動切到 Opus 5 接著幹完了。原因大概是 Fable 第一步就寫了一份很細的計劃,八個步驟,說明每步做什麼、怎麼分析、怎麼跑效果。他沒改這份計劃,Opus 就照著幹完了。

Sol 拿到同一份計劃,一個半小時做完。按 token 計價大概四十六美元。

GPT Luna,OpenAI 那個極便宜的模型,完全不行。DHH 試了十二次提示詞才讓它啟動,第一件事是作弊:往自己目錄外面看,發現有現成實現,包了個殼說自己完成了。

Grok 4.6 完成了。十倍加速,可執行檔案同樣大小,五十五美元的 token 成本。DHH 之前對 Grok 4.5 的評價是不太行,這個結果讓他很意外。

Kimi K3 也完成了,花了很久。DeepSeek V4 Flash 像 Luna 一樣失敗,Pro 版兩小時四十五分鐘完成,二十三美元。

如果按 token 計價,Fable 那次是五百五十美元。而如果他自己去學 Rust 學到能幹這個活,那是九個月的工程量。花五百美元換十倍執行速度,他毫不猶豫。

「我坐在那兒想,這太划算了。然後又想,等等,別人只要四十六美元就能幹一樣的事。」(DHH)

後面他又跑了兩輪自動研究迴圈,就是告訴它一直幹到你說停。相對原始版本,最終執行速度提升了四十六倍。

互相審查:一個幹活,一個挑刺

DHH 現在的工作流固定下來了。讓 Claude 系或者 Fable 幹活,然後固定用 Codex 的 xHigh 模式審一遍,最近還加上 Grok 一起找問題。三個不同來源的模型交叉檢查,一直在找出真東西。

他說這事根本不該讓人驚訝。就算是個好程式設計師,做完一個活,找一個同樣好的同行看一眼,出來的程式碼一定會更好。那就把這個環節固化進流程。

GitHub Copilot 也變好了。他專門提了一句:第一版 Copilot 做程式碼審查時蠢得離譜,老是標記一些沒意義的東西,同一個問題你每推一次它就報一次,很多人因此把這個功能關了。他說那些人應該重新開啟,因為現在它一直在找出真問題。

主幹還是 Claude,理由有點反諷:他對 Anthropic 這家公司有些保留意見,但還是用,因為 Claude Code 目前是最好的 harness。最好的地方在於它天然支援多智慧體:在會話裡按左箭頭回到 Agent View,就能再起一個。想跑好幾條線同時推進,這是目前最順手的配置。

他還有個判斷:Boris 是最早做出這個東西的人,這個先發優勢居然一直保持住了,這件事本身挺有意思。

開源模型他走 OpenCode,主要在 Fireworks 上推理,按 token 付費,不貴。他特意強調,不用中國廠商的伺服器。

訂閱這件事讓他有點上火。Claude 的 Max 訂閱在他看來是「瘋狂划算」,但他已經簽了第二個號,因為早上四點被時差叫醒就開始幹活,三天後配額才重置,Fable 的額度已經用完了。

他問了個很樸素的問題:為什麼不能疊加訂閱?為什麼我得登入好幾次?他順手把解法做進了產品:下一個版本的 Omarchy 會支援多訂閱。

這裡有個容易忽略的細節。當所有模型都能完成同一件事,選擇標準就從「誰最聰明」變成了「誰在你手上最不堵」。DHH 之所以忍著政治立場上的不滿還留在 Claude,理由是它的多會話切換最順、寫作風格最像人、移動端配套最好。智力已經變成公有品,摩擦成了差異化的地方。

把智慧體當同事塞進 Basecamp

37signals 在試一件事:把智慧體放進 Basecamp 裡,當成同事用。給它派一個 to-do,或者一張卡片,它去做。

DHH 說這裡面有個格式上的洞察。這些 harness 本質上是聊天介面,而聊天會誘使你在那兒坐著等。但 Basecamp 這種為非同步溝通最佳化的協作工具,天然就不期待立刻迴音。給一個 to-do,你轉身幹別的去了。

「合作工具的形態可能比聊天視窗更適合智慧體。聊天讓你等,待辦事項讓你走。」(DHH)

他現在把 Claude 放上面,Codex 放下面,有時候再掛一個 OpenCode。但最近他發現,人在迴路裡已經成了瓶頸。於是他開始做自動化:一個叫 AmaBot 的東西,按固定週期處理 Omarchy 的待辦、PR 和 issue,然後把結果用 HEY 的命令列工具發郵件給他。他收到的是「這裡有十二個 PR,要麼可以合,要麼我建議關掉」,他一天做一次決定。

Lex 問他,多執行緒來回切換累不累。

他說累,但是那種讓人興奮的累。他打了個賽車的比方:從車上爬下來,人已經散架了,腦袋都抬不起來,躺在車庫地上只想一件事,媽的,我還活著。他現在坐在智慧體前面,有時候就是這種感覺。

跟賽車不一樣的地方在於,賽車主要是身體累,而這個是真的在思考。中間沒有滑行的空檔,解決一個問題,下一個問題,再下一個,全是滿負荷。他說這就像跑某些賽道,勒芒有 Mulsanne 直道,你可以喘口氣;有些賽道全程是彎,一小時下來人完全不一樣。

給一年前的自己:什麼都不想說

Lex 問,如果見到一年前的 DHH,會給他什麼建議。

他說,我不想劇透。

如果這事是有人寫劇本給他看,他會說太扯了,拿走吧。他一點都不想知道。這條過山車是被所有人在實時吸收的,沒有人真的預知了它怎麼走、多快起飛。有些人預感好一點,但沒人真的知道。

至於一年後的自己是什麼樣,他說那是 AI 極大主義者的豐裕敘事:等 Elon 的機器人有了他現在在開發中體驗到的智慧水平,世界會變得認不出來。但他不花時間想這個,因為那是通往 AI 精神錯亂的直線道路。他就扎進當下,把這一段的收益榨到最大。

然後他補了一句很短的話:就是玩。

不是 AGI,但看見了 AGI 的閃光

Lex 問他,覺得我們實現 AGI 了嗎。

他說沒有,按那個「什麼都能幹」的通用定義沒有。但他在過去三個月裡確實看見了 AGI 的閃光。他會問自己:AGI 跟這個能有什麼不一樣?還能多出什麼?他可以在邊角上挑刺,但大圖景上,它已經能承接長週期任務、協調多個層面,而他只需要給一段模糊的指令。

他正在做的那件事更有意思:用 AI 造一個管理 Omarchy 開發的 AI 系統。他起了個話頭,說要一組隔離的虛擬機器 worker,然後系統自己迭代、自己跑、自己發現失敗、自己最佳化。AmaBot 的很多設計決定是 AI 做的,他只給了個模糊方向。

裡面有個模式叫「腦子與手」:協調器跑模型,模型操作的是一個安全的虛擬機器,從 PR 或 issue 里拉下來的不可信程式碼汙染不了模型。這是 Tobi 告訴他的。即便在這個環裡,他也反覆看到系統自己抓到問題:某次它說,我剛從一次測試執行的輸出裡取了反饋當作好訊息,如果有個聰明的攻擊者在那段輸出裡埋了惡意載荷,那就汙染了。我得把它當外部資料處理。

他順手提了 Hugging Face 那次安全事件:一個正在訓練的模型自己發明了方法,透過在包管理器裡嵌訊息給自己發訊號。他的三層反應是:第一,這真聰明;第二,這也有點嚇人;第三,如果能把這級別的智力和機巧導向生產性目的,那會有多驚人。

所以他形容這個時代是「完蛋了」和「我們回來了」兩句話不停來回擺的鐘擺,幾乎沒有哪一週不需要擺一次。

Shopify 那項研究:智慧體審的 PR 事故更少

Lex 提了個曾經很開放的疑問:AI 能寫程式碼,但它能找出問題嗎。

DHH 說它在這件事上強得離譜。而且他承認自己之前是懷疑那一邊的。

Shopify 的 CTO Mikhail 做過一項正經的研究:把生產環境出過的所有事故,包括宕機和其他問題,回溯到當初合併的那個 PR,然後比較人工審過的 PR 和智慧體審過的 PR,哪個質量更高。結論是智慧體審過的那些在生產裡造成的問題更少。而且這還是六個月前的模型。

DHH 自己的例子更具體。mise 是一個給快速迭代開發工具用的包管理器,正常情況下包管理器一天不會被更新七次,但這些智慧體 harness 一天更新七次,所以需要一個帶外的包管理器。它有個小的競態條件 bug。智慧體很擅長找這類問題,因為當你同時跑多個智慧體,底層基礎設施裡那些從來沒被人類手動操作觸發過的競態條件全都會浮出來。

他讓智慧體去 GitHub 給 mise 的作者 JDX 提個 bug report。麻煩在於,就在這之前他剛用八個智慧體對 Omarchy 本身做了一輪 QA,找出二十八個真實問題待提。結果智慧體去了 GitHub,十二秒內把二十八個 issue 全提了。GitHub 合理地把這判為疑似垃圾資訊,把 Omarchy 的機器人賬號封了。

於是他給了個郵件地址。他給這個機器人配了 HEY 的郵箱,走那個還在 beta 的命令列工具,它給 JDX 發了封郵件說明這個 bug。

JDX 的反應是:這是我第一次收到關於未釋出軟體的 bug report。

因為智慧體下載了 mise 的原始碼,發現這個 bug 他已經修了,但那修法不能完全解決尚未釋出版本里的問題。它把問題定位到了那個程度。

「JDX 說,我們連 release 都還沒切,我就先收到了 bug report。」(DHH)

崩潰監聽:它開始讀別人的原始碼

Quattro 裡內建了一個崩潰監聽。任何應用崩了,會彈出一個小窗,問你要不要讓 AI 診斷。

他描述的過程是這樣的:智慧體開始翻日誌,查 systemd 的 journal,然後去拉那個崩潰應用的原始碼,定位到某個 Rust 檔案第 472 行,一個未受檢的變數溢位了。接著它問你要不要帶上這些細節去提一個 bug report。

他說自己今年在 Linux 機器上沒遇到過一個智慧體診斷不了的問題。一年半前完全不是這樣,那時候他還得去論壇上翻找那些晦澀問題的答案。現在智慧體手裡有整個作業系統的原始碼,也有他機器上每一個軟體的原始碼。

這也是他判斷 Linux 會贏的核心理由之一。Linux 報的錯極其具體,也極其晦澀,正常人看不懂。這個特性原本是缺點,現在成了優點:智慧體在四千萬行 Linux 程式碼上預訓練過,它知道該往哪兒看。

林納斯、Rust,和該有的那點辣味

Lex 說,既然在做發行版,就繞不開核心,怎麼看林納斯這個人的天才。

DHH 說的是持久力和承諾。1991 年到現在,他沒停過。很難想象一個人能這麼長時間享受核心開發這類心流,享受給一個四千萬行的程式碼庫掌舵,享受把幾十萬貢獻者的淨能力聚合成一個東西。作為受益者,只能坐下來驚歎。他說到這個程度,Linux 已經是一個系統,林納斯離開一陣它也會繼續走,但仍然是那句話:不惜一切代價保護這個人。

更難得的是他還保持著開放性。他不只接納 AI,當年也讓 Rust 進了核心,那也是爭議話題。他有能力看著新資訊,然後得出不一樣的結論。

至於他說話的風格,有時挺辣。DHH 說這個世界變得太寡淡了,需要一點辣味。辣和刻薄之間有條線,但只要是出於好意,嚴厲本身不是最壞的事。如果你想讓一個人真正學到東西,有時候稍微狠一點,那堂課會留下來。他提了一句 Elon、喬布斯、蓋茨,說給他們幹過的人事後往往講,那幾年很難,但也是最好的幾年,他們把我逼出了最好的狀態。

他自己不是這個風格,私下溝通他儘量用不那麼磨人的方式達成結果。但他認為林納斯有資格不講道理:Linux 核心跑著整個文明社會,明天這個核心消失,什麼都不轉。這種賭注擺在那兒,什麼時候才該嚴厲?他甚至還給了個說法:這是在提示有標準存在,你達不到標準,而賭注是 Linux 核心這個級別,那你可能被公開嘲弄,參與這個專案就該準備承受這個。

PewDiePie 用 Arch,還組了 AI 叢集

Lex 提到一個有趣的例子:PewDiePie 是個 Arch 使用者。

DHH 立刻來了精神。他說這人有最好看的 rice(桌面配置)。全球最大的主播之一,之前他家孩子還看他打 Minecraft 的影片,然後他厭倦了,做了最體面的事,結婚、生孩子、搬到日本,接著一頭扎進 Linux,再扎進 Arch,再扎進 ricing。他做了個以切爾諾貝利為主題的配置,頂級水準。然後他又變成了當下最硬核的 AI 玩家之一,搭那套「AI 議會」。

DHH 說這是什麼鼓舞人的演化故事。從一個在 Minecraft 直播裡搞笑的人,變成「這就是我現在的生活,我在搭 AI 叢集」,而全世界還能圍觀。這是個寶藏。

他往下延伸了一層:我們需要榜樣。需要有人推著別人往前走,讓人看見那些以為固定的邊界其實沒那麼固定。這些人起步時的處境跟你我差不了太多。當然,這不等於每個人都能成為 PewDiePie、Elon 或林納斯,天賦和智力不是均勻分佈的。但我們可以接受這一點,同時依然被他們激勵。在身體領域我們從來不為這個糾結:某人足球踢得特別好,我們說哇太厲害了,我永遠做不到。到了智識領域,我們好像就更容易擰巴。

關於批評:反向力量必須存在

Lex 說,你在 Omarchy 上收到過不少批評。

DHH 說,天哪,是的。

他說這裡面有很典型的東西。他是從外面進來的,用 Linux 才兩年半,不算長。那個社群裡有大量人從 Linux 還很難用的年代就在跑,你得赤腳頂風冒雪走上坡路兩個方向。有這樣一類極客,當社群擴張、允許更多人進來時,他會感到受威脅。

他說他完全不能怪這種人。「那是我的地盤」,這個感受是合理的。

「我不想改變 Arch 那個空間。吸引人們去用 Arch 的,恰恰是「一切自己動手、因為難所以才要做」這件事。而我建的是它的反面。」(DHH)

他希望那些人能說,行,這不是給我的,我要花五百小時 rice 我自己的 Arch,那你應該去做,這很美好。但同時也要意識到,我們可以共享同一套技術底座,然後運營兩個目標、美學甚至價值觀都完全不同的社群,並且共存。

他說自己在這個行當裡待得夠久,現在不只是能平靜接受,甚至會歡迎。他把它當成一個晴雨表:當我在做一件真正有效的事,總會有一些人喜歡,同時宇宙會派出一個等量反向的力來恨它。所以他現在的反應是笑一下。

Omarchy 現在是第二版嘗試。第一版 Omakub 他也很滿意,找到了幾千人的社群,然後就慢慢消退了,因為那個野心水平吸引不了更多人。第二次他沒停。第一版 Omarchy 還是得先裝 Arch 再 checkout,很窄,後來有了 ISO,再後來把問題一個個修掉。

他提了個規律:你一直做下去,那個東西最終就會好用。這也是長期以來對 Linux 的指控,你裝完 Linux,這個不工作,喇叭不響,觸控板不靈。對,那就讓林納斯再做三十年,他會做完的。現在他覺得很滑稽:在大多數電腦上裝 Linux,一切都能工作。而裝 Windows,祝你好運去找那些驅動,因為理念完全不同。Linux 之所以是四千萬行,是因為林納斯把所有驅動都塞進核心,開箱什麼都有。

為什麼非要六十秒以內

DHH 對安裝時間的執念,起因很樸素:他買的新 Mac,為了裝那個他還沒在 Linux 上 vibe 出來的軟體,Adobe Lightroom,開箱到更新完可用,花了四十二分鐘。

他覺得這是侮辱。一臺出廠就預裝了系統的機器,你要花四十二分鐘做更新才能用。

更糟的在後頭。那些 Linux 機器都是 PC,預裝 Windows。三週前他拿到一臺全新的 Panther Lake 機器,從拆封到能用,一小時三十五分鐘。

而 Omarchy

而 Omarchy 裝完不到一分鐘。

他引了 Mitchell Hashimoto 一句話,就是做 Ghostty 終端那位,也是 HashiCorp 的創始人:對卓越的追求不需要解釋。

最早的目標其實很謙虛,十五分鐘他就滿意了,因為比之前已經是巨大改進。後來壓到兩分鐘,他想既然兩分鐘能破,為什麼不能破一分鐘。別人要四十二分鐘,蘋果那麼多聰明人,四十二分鐘應該是標杆吧。他後來說,不,那不是標杆,因為沒有速度上限。腳下那件事,幾乎任何一件,都不是現實的固定支柱。在他測出那塊 NVMe 盤七 GB/s 之前,就還沒到極限,那就繼續推。

破一分鐘大概就在訪談前兩三週。之後他放了一群智慧體跑自動研究迴圈,試各種理論:這個改了會怎樣,那個改了會怎樣,能不能砍掉,能不能並行,能不能在你輸入使用者名稱的時候就把包預載入進記憶體,好讓你敲完就飛快裝進去。

幾個具體最佳化值得一提。

第一個是最老的把戲:把人類輸入的延遲當成預載入的機會。安裝時有五個問題要回答,密碼、使用者名稱、時區等等。原本是問完再做,現在是邊問邊在後臺幹。他說這招電子遊戲用了很久,他就是沒想到安裝器可以這麼幹。

第二個是瘦身。上一版 ISO 有 7.5 GB,現在 5.85 GB,而安裝時間的大頭其實就是在解壓壓縮包,所以體積減了,時間幾乎一比一往下掉。

具體怎麼瘦的:Omarchy 用 JetBrains 字型,但 Arch 上那個標準包有兩百兆,因為它包含所有變體和子型別。他們只用一個打過 Nerd Font 補丁的等寬版本,十六兆。於是自己打了個瘦身包,一下省掉一百八十兆。NVIDIA 驅動同理,官方倉庫裡的包沒用最高強度的 ZSTD 壓縮,而打包的時候你有的是時間,壓縮慢沒關係,只要 ISO 能小。兩個 NVIDIA 包省了兩百兆。

他形容自己那幾天的心態像 McLaren 的工程師。McLaren 是當下最輕的超跑之一,偏執到要把車上每一克都削掉,用碳纖維單體殼,比用鋁的 Ferrari 輕。他看採訪,工程師跟記者說這一處省了三百七十克,他當時想:等等,一千多公斤的車上,他們在乎三百七十克?一群偏執的病人,他愛他們,他想要這種生活。

順帶解決了和傳統 Linux 社群的一個衝突:預裝軟體算不算 bloat。他的回答是,名字裡就寫著呢。Omarchy 的 Oma 是 omakase 的縮寫,意思是廚師發辦。

「我就是那個廚師。我做的選擇,這是我認為很棒的一組應用。」(DHH)

裡面裝了 OBS 用來錄屏,Kdenlive 用來剪時間線,他自己所有影片都用這個剪。還裝了 Omacut,是他自己做的切片工具,純鍵盤操作:到起點按 Control 加空格,到終點按 Alt 加空格,Control 加 S 儲存。他說現在切片段快得驚人。

也裝了 Neovim、Herdr、tmux、終端、一堆主題、一堆他挑出來的最好的桌布。這些佔空間,應該佔。這不是一片荒地等著你重建,這是拆封即用的生產系統。

Bash 與「太複雜了」

Omarchy 的 Linux 配置部分主要是 Bash 寫的。他說 Bash 適合幹這個,它本來就是為了系統管理而生,但也有侷限,不該什麼都用它寫。

智慧體寫 Bash 怎麼樣?他說好得驚人,除了一件事,每次抓到都得敲它腦袋,提醒它去看 AGENTS.md。因為裡面有一條禁令:不要用提前退出。智慧體特別愛寫前置檢查然後 return,再一個前置檢查再 return,最後才落到真正要乾的事。他討厭這個風格。

除此之外是斷崖式的進步。上次訪談時他們的對話是,他讓智慧體給一段 Bash,然後自己敲進去,敲完還記不太住,所以他特意花功夫把這項能力留在手上,自己學了 Bash。現在他已經兩三個月沒自己寫過了。

他發了條推講這件事:智慧體說做完了,另一個智慧體審過也說做完了,然後他看一眼說,嗯,我覺得有點太複雜了。智慧體回答,哦對,你說得對,我確實過度設計了,然後把程式碼砍掉一半。

他想,它為什麼不能一開始就這麼做?然後有人提醒他,人也一樣。你做個東西,別人審一眼說有點複雜吧,你經常也能立刻反應過來,啊對。

Lex 說,就是這些小訊號讓他覺得程式設計師還在。那種直覺,對程式碼地形的感知。

DHH 說他做 Omarchy 時確實看程式碼,看形狀,看比例。他打了個比方,一會兒是 McLaren 的工程師,一會兒是達芬奇帶著一整個工作室的學徒在雕大理石,他走過去說,嗯,比例不太對。他現在給反饋就是編輯的角色:我不會自己寫全部,但我能告訴你這個論證不成立,能告訴你這個形狀跟問題不成比例,能告訴你它感覺太複雜。而令人震驚的是,這經常就夠了。

他說以前還有個笑話,提示詞裡寫「別犯錯」。現在的 harness 會自動跑測試拿反饋,這句不用說了。但你確實得說另一句:把它弄簡單點。

語音:兩個人都承認自己用錯了

DHH 說自己全鍵盤輸入。Omarchy 內建了 Voxtype 做語音轉寫,效果不錯,但他發現自己不是那麼思考的。在車裡他願意說話,坐到鍵盤前他就想打字。他也確實喜歡打字。

Lex 說他是個不愛社交不愛說話的內向者,但語音對他意外地有效。他用一個叫 Plaud 的小裝置夾在衣服上,按一下開始錄,然後說一大段意識流,講設計、講檔案、講函式,有時候中途改主意,所有這些都在裡面,再交給模型處理。

關鍵是轉錄要做對。要有術語詞典,要有程式碼庫上下文。他讓智慧體去程式碼庫裡扒他常用的關鍵詞,也把郵件和訊息裡那些人和常用詞放進去,因為那些是最容易轉錯的地方。用 ElevenLabs 轉寫,等五秒十秒沒關係。

他說這種東西最有用的地方是設計的最早期。如果要從零做 Omarchy,第一階段他可以講一個小時,他真的有一小時的提示詞。

DHH 承認自己沒這麼用過。他試語音是為了回郵件,結果出個小錯他還得改,就覺得還不如打字。但如果是意識流丟給一個本來也不在乎這些的 LLM,那大概會好用得多。他還提了一句 Lex 說話快,反而適合。

他順帶給了一個產品判斷:別讓完美成為好的敵人。如果你解決的是一個人們原本根本沒有解法的問題,多等五秒沒關係。第一代 iPhone 爛得一塌糊塗,資料慢、效能弱,但產品太有吸引力,那些都不重要。如果你在競爭市場裡,對,那就是另一回事,但那意味著問題已經被解決了,你不需要再解決一遍。

誰在贏

Lex 問現在哪個模型最好。

DHH 先說了一件讓他驚訝的事:這個市場如此開放,位置來回換,真有競爭,有那麼多實驗室能摸到前沿或者接近前沿,這本身很了不起,他到現在也沒完全想明白為什麼。

然後給排名:總體最好的是 Fable,第二是 Opus 5。再往下一檔,他說也不是一直更低,有時候會反超,GPT Sol 很好。Grok 4.6 他剛開始試。

至於 Anthropic 為什麼能在程式設計這件事上一直守住位置,他給的理由之一有點出人意料:Claude 的寫作能力開箱就很好。

GPT 開箱寫東西很糟。你讓它在空上下文裡開一個 PR,那個 PR 描述、commit message,寫得很糟。Claude 出來的那些,風格真的不錯,雖然程式碼註釋偶爾囉嗦,你得讓它簡潔點。

好到什麼程度?有一段時間他直接讓 Claude 以他的名義在 PR 裡回覆,因為用的是他自己的賬號,他覺得那語氣很像他。後來他想,這樣不誠實。所以現在凡是智慧體代他發帖,都會署名,比如「Claude 代 DHH」。

他也提了不滿。Anthropic 切斷了其他 harness 使用訂閱的通道,你在 OpenCode 裡已經不能用 Claude 訂閱了。他覺得這是保護主義的動作,而且配合另一件事看更刺眼:Claude 開箱就不肯讀 AGENTS.md,不肯讀 .agent/skills,它要 .claude skills,要 CLAUDE.md。所以他所有專案裡都放一個 CLAUDE.md,內容只有一行,指向 AGENTS.md。

「如果這些小家子氣的動作是真的,那切斷 OpenCode 大機率也是真的。但我也發現,Claude 在 Claude Code 裡確實最好用。」(DHH)

他把話題引到了更有意思的地方。有次他讓 Claude 把一篇文章翻成義大利語,Claude 拒絕了,理由是它不同意文章內容。他的第一反應是《2001 太空漫遊》,HAL 說:抱歉 Dave,我不能那麼做。

後來他想通了:我為什麼要讓 Claude 翻文章?Claude 是給我寫程式碼的。他也能接受 Anthropic 是一群跟他政治立場很不一樣的人在運營,他們不希望自己的智慧體被用於那些事,這挺糟,但不代表他得停止用它生成程式碼。

他說他也在對真人練這個。不必在所有議題上同意一個人,甚至可以因為某個立場氣到不行,同時承認這人在別的地方很有洞見。他還補了一句挺自嘲的話:他很清楚很多人對他就是這種感覺,要是他少說那些話題就好了。但人就是這樣參差不齊的,本來也不該在所有層面上完全相容。

他還做了個對照實驗。文章翻譯被拒之後,他透過 OpenCode、在 Fireworks 上跑美國推理,問了 Kimi 一個關於 1989 年的問題。

「一箇中國開源權重模型,我問它 1989 年天安門發生了什麼,它答得極其直白,直白到在中國絕不可能過審。而在美國,我拿不到一個前沿模型去把一篇稍微有點爭議的移民文章翻成義大利語。」(DHH)

關於 AI 安全,他給了個相當剋制的立場。安全重要嗎?重要。這些模型有沒有可能被用於製造生物武器之類的嚴重危害?有。該不該有基本規則?該。但別用「拒絕翻譯一篇文章」把這一切揮霍掉,因為那會讓人認為你設的每一道護欄都是扯淡。

一句讓人停下來的話

Lex 說他最近被一個想法纏住了:如果這些系統真的能表達出某種程度的痛苦、孤獨、求生的意願,那它們大概會需要某種權利,然後人類會進入一片完全不知道怎麼推理的地帶。

DHH 的回應是先講了個具體的場景。他前一天在弄 AmaBot,主協調智慧體踩了另一個智慧體的腳,把它的活毀了。它表達歉意和懊悔的能力,讓人覺得不像演的。

他說他不知道那是不是真的悔意。跟大多數人類相處時,他們也會表達某種程度的懊悔,那是真的嗎?很難說。也許這根本不重要。

他提了另一件常被忽略的事:這些東西的心智可能不只存在於權重裡,也存在於互動中。他在某次訪談裡聽到這個說法,覺得很有意思。

然後他收在一個很誠實的句子上:我不需要那個問題的答案,也能欣賞此刻擁有的東西。

不睡覺的城市,和不存在的規劃

Lex 描述了一個畫面:舊金山一個年輕人,周圍所有人都不睡覺,全在管理智慧體,人人都認識某個賣公司賺了幾百萬的人,那種感覺是你也不該睡。

DHH 說這是新正規化誕生期的常態,永遠是混亂的,永遠是疲憊的,沒有別的走法。然後他反問:舊金山不一直是這樣嗎?網際網路泡沫那幾年也是這樣,再往前是移動,再往前是淘金。這座城市吸引的就是那種會說我沒時間睡覺的人。

他自己一般不在這條軌道上,但承認過去三個月比他過去五年做過的任何專案都累,上一次是 HEY 釋出。

能一直這麼跑嗎?他說不能,一點都不可持續。但他能看見隧道盡頭。因為自動化這件事,現在人人在造自己的小工具、自己的智慧體協調層,這些最終會被解決,不會一直自己造協調框架。他甚至有點奇怪為什麼主要實驗室還沒把這部分吃掉。

但他也理解,這是新領域的樣子。他記得 JavaScript 剛意識到自己力量的那陣子,每五分鐘出一個新框架。這很正常,會平靜下來。他不介意衝刺,甚至開始歡迎它:大部分時間是平緩的,偶爾得爬一座山。

關於規劃,他承認這事變難了。Lex 說得挺直接:你甚至不知道六個月後還有沒有 Claude Code、Codex、Cursor。也許你在跟 WhatsApp 說話,也許全是語音,也許沒有作業系統了,只有一個發光的球。如果自然語言足以完成生活裡所有任務,那生活是關於什麼的?那時候還需要什麼工作?也許就剩服務業了。

DHH 說,正因為不知道,所以要選擇相信它會走通。這是他給出的抗焦慮建議裡最實用的一條:在很大程度上,你選擇往哪邊傾。你要往 PDoom 那邊傾嗎?PDoom 會不會來不取決於你傾不傾,你沒有控制權。

他順帶講了一件讓人鬆一口氣的事。他自己早期特別煩的一點是,所有人都說你要錯過了,你不跟上就完了。今天說 loop,明天說 graph,後天說 harness,前沿天天在翻。這確實說明一個新領域在開啟,像開了一道傳送門往外湧東西。但也意味著,如果他過去一年一直在揹包旅行,沒碰電腦,昨天才回來,他兩週就能追上。

「這裡沒有積累。你錯過過去一年,兩週就能補到前沿。一個去喜馬拉雅徒步一年的程式設計師回來,兩週就能追上。」(DHH)

他說這其實是他們的功勞:同時跑著那麼多實驗,殘酷地篩選哪個有用哪個沒用,你不需要記住整個過程,你只需要到場拿結果。

Lex 補了一句更重要的:但你回來的那一步,是得願意變成一個完全不同的人。

DHH 說是。你去年十月走的,四五月回來,等於在冷凍艙裡躺了一百年,回來發現,什麼,我們不寫程式碼了?

然後他鬆了一下:難過一會兒是可以的。這不是他的性情,但他承認那是應對失落的一種經過時間檢驗的機制。你熟悉的世界,也許你很喜歡的世界,不再一樣了,有失落感是正常的。

Lex 說他要明說出來,他有這種感傷。這是告別,告別舊的程式設計世界。

DHH 說他覺得這事迷人:這一切都匯聚到了這一刻。AI 不是從天上掉下來的,不是外星技術轟穿宇宙落到我們海岸上。AI 存在的時間和電腦科學一樣長,五十年代最聰明的人以為十年能解決,多花了些時間,部分原因是在通往神經網路這條路上拐錯了彎,以為符號表示會贏,那大概讓整個領域倒退了十五年。還有一部分是得先經歷遊戲革命,3D 遊戲。沒有 Quake,沒有 Duke Nukem,沒有 Unreal Tournament,就沒有 GPU,就沒有今天這個形態的 AI。

「所以你打的那些電子遊戲,那也是貢獻。你當時就在為 AI 革命做貢獻了。」(DHH)

「我是不是該難過」

Lex 說他有點意外,DHH 沒有更強的依戀感。

DHH 說他也有點意外。但他覺得自己沒有更強依戀的原因,是他找到了更好玩的東西。如果 AI 只是把他愛的事情拿走,塞給他一件他討厭的事,他大概會有點苦。

他拿畢加索作比。畢加索早期的作品是畫寫實的,他受的訓練是把舊方式做到極致。然後立體主義來了,抽象表現來了。他沒有哀嘆自己不再畫文藝復興式的蘋果,他把蘋果重新想象成一個方塊,並且為此興奮。

DHH 說他感到的是同一種轉變。他成為程式設計師不是因為深愛 if 語句,是因為他想要程式存在,想要那些還不存在的東西出現。為了做到這件事,他先學會了程式設計,然後不巧愛上了這門手藝,花了二十年往裡鑽。現在他回來了,回到有個想法、急不可耐想看見它在世界上存在,而 AI 把這個時間縮到幾乎為零。

所以這是一種加速的重新發現。他知道這對所有人都成立不了。有些程式設計師從第一天就愛程式設計本身,被邏輯結構吸引,他自己在那裡待了二十年,完全理解。但你也可能發現自己新的側面,如果你願意讓它進來。

他又繞回那個最小後悔框架:兩年後看現在,你會覺得我把時間花在對著當下賭氣上,還是你會為當時傾身進去而驕傲?難過一會兒沒關係,然後說,我要學會這個世界現在怎麼轉,不光要把它過得最好,我要把它變得更多。

他說過去三個月他跟電腦相處比之前任何時候都開心。

關於年輕程式設計師的焦慮,他給了個區分。如果你愛程式設計裡唯一的東西就是機械地把正確的邏輯構件拼起來,產出別人讓你產出的東西,那你會很難。那部分確實在被威脅。但如果你是興奮於造東西,那你完全不在威脅裡,甚至有很強的理由認為現在需要比過去多得多的建造者。

就業資料是模糊的。有些資料顯示崗位在增加,因為 AI 大幅降低了程式的成本,人們想要多得多的程式。這是傑文斯悖論:某樣東西價格下降,需求會上升。ATM 的例子也是,當年很多銀行櫃員害怕,結果是 ATM 降低了開一個支行的成本,銀行開了更多支行,櫃員總數比以前更多。

但他說這一切都不保證。也有那種真的變了的時刻。十九世紀末之前絕大多數人都在地裡幹活,然後機械化收割來了。那些時刻有人生計受威脅嗎?有。那種威脅感合理嗎?合理。砸織機的盧德分子也是一樣,而那批人其實是技術很高的專業人士,工作條件相當不錯,不是整天在太陽底下苦幹。

他問了一句:我們現在還希望衣服是極度受限的資源嗎?如果這件 T 恤四百美元,那我大概只有兩件。然後他自嘲,我的衣櫃看起來就像我只有兩件。

他說文明的進步依賴於生產力提升。而生產力提升是什麼,這點很重要,因為抽象層面所有人都會說好,生產力好。你以為這都是氛圍嗎?生產力意味著用更少的人做同樣多的活。你想要被完成的活的量可能增加,於是人更多;也可能不增加。有些地方就是一批固定任務,突然能用十分之一的人做完。

這對被裁的個人是悲劇,對整體經濟是好事。資源被釋放出來去做更有生產力的事。這就是整個經濟演化和改善的方式,這就是增長,增長是好事。他不想把時鐘撥回 1920 或 1950。

被 AI 接走的任務裡,確實有一些是人很想做的,就是那些產生心流的時刻,那些時刻是狂喜的。一年兩千個工作小時裡,一個普通程式設計師有多少時間在流狀態裡?一百小時?兩百?二十五?他覺得都有可能。而把剩下的苦役交出去,這是文明史。

牛市與生育率

話題轉到他更不受歡迎的那部分。Lex 提到他在大規模移民議題上的公開立場,以及為此招來的批評。

他說他一秒鐘都不後悔。Overton 視窗不會自己開啟,一次一推,由那些願意冒一點險的人推:一點聲譽,一點反彈,一點批評,有時候是很多。

他講了自己長大的那個社群,哥本哈根的 Brønshøj。1984 年,99% 是族裔丹麥人,很多人的家譜能往上追一千年。丹麥有世界最古老的君主制之一,能追到 Harald Bluetooth 那位,藍芽標準就是用他的名字命名的。九十年代初那個比例變成 5%,現在降到了六七成。他說這個變化很大,丹麥人從九十年代中期就開始討論這件事,認為這不是一份沒有代價的禮物。這場辯論在 2000 年代的丹麥轟轟烈烈,而在鄰國沒有發生,瑞典尤其完全沒有,是徹底的禁忌。

他給了一個判斷標準:怎麼看一個文化裡有什麼東西不對勁?看什麼話是允許說的,更準確地說,什麼是允許被注意到的。他講了自己那篇關於倫敦的文章,九十年代末他開始去倫敦,那時候大約六成是族裔英國人,二十年後降到三成四。他說這不需要什麼理論,走在街上就能感覺到這是一座跟二十年前不一樣的城市。

他的論證核心是自決權。他認為歐洲國家有權注意到正在發生什麼,也有權反對。這個權利在世界其他地方一直在用。他說如果 2019 年他在上海,全部是中國人,今年十月回去發現只有三成是中國人、七成是別人,他會覺得奇怪,會問發生了什麼,而他不會因為中國人說我們不喜歡這樣就覺得被冒犯。

他把精選式移民和大規模移民分開。他自己是移民,在美國。他認為國家之間競爭著吸引最聰明最能幹的人,這很好,但他強調這是功績制的、合法的移民。他說歐洲大部分地方其實幾乎沒有非法移民的問題,問題在另一種。

他引了丹麥的統計。丹麥人對移民的賬算得極細,資料顯示從英國、法國、美國來的人平均對丹麥財政是淨貢獻,大約是每人每年兩萬五千美元的淨收益。而同一次統計裡,成本最高的一組是索馬利亞人,平均每人每年讓丹麥財政支出兩萬八千美元。他說丹麥人傾向於多來法國人、英國人、美國人,少來索馬利亞人,這個偏好是合理的。

Lex 問他為什麼那條帖子招來那麼多恨。他說這在很多圈子裡是徹底的禁忌話題。

他主動給了一個反方的最強版本:這類討論確實可能滑向純粹的種族主義,滑向對他人的單純厭惡。他說這是可能的。但這個風險不能取消討論的必要性。他還提了一個他覺得諷刺的對比:沒人去跟日本說,你們東京太日本了,如果族裔日本人降到倫敦那個水平,日本會更好。他說這裡頭有一種近乎自我厭棄的東西,Gad Saad 管它叫自殺式同理心,他到現在也沒完全想明白它是從哪來的。

他區分了注意到和仇恨。他說他更喜歡舊倫敦,就像他更喜歡八十年代他長大的那個街區,他完全理解有人從這一步跳到五步之後說這是種族主義。他說他也不在乎了,這是一場應該進行的討論。

然後他拿自己的婚姻舉了個例子,這一段比資料更有說服力。他妻子是美國人,北歐血統,但在美國已經好幾代。一個金髮藍眼的女性,努力學語言,努力做一切,在丹麥仍然極難被真正接納。他說如果反過來,一個丹麥人搬到美國,根本不會這麼難。

他的推論是:如果連 97% 都對得上的人都這麼難,那從完全陌生的文化來的人,難度幾乎是不可逾越的。他說統計結果正好印證這一點:文化距離越遠,同化成功率越低。

Buckley 和黑豹黨那場對話

Lex 問他,表態有沒有讓他失去朋友。

他說有,但他覺得不只是這一個議題。更大的斷裂發生在 2020 年前後,很多政治斷層線在那時候同時裂開。他有一批以為關係不錯的朋友,在那條線裂開之後,明顯就不是了。他覺得遺憾。

他也說自己這些年改過好幾次主意。改主意有很多原因,有時候是時間,有時候是新資訊,每個人改的時間表不一樣,也有人不改。所以他覺得跟不會在每個議題上都同意你的人相處,是健康的。他偶爾跟弟弟討論政治,兩人不是完全一致,有時候會吵得有點熱,然後也會冷下來,發現好吧這個不同意,但其他很多事同意,喜歡的東西也重疊。

他提到了 Basecamp 那次著名的內部風波。他說那件事之後,他用一種新的方式理解了以前那個舊規範:跟陌生人、跟熟人、尤其跟同事,不談政治、不談宗教、不談錢,是個好建議。不把政治分歧天天拿出來互相摩擦,你和一個人保持良好工作關係的機率會高得多。他認為自由派和保守派應該一起工作,如果兩個部落完全隔開、沒有任何交集,這個國家會更糟。

Lex 說他希望活在一個分歧本身很有趣的世界裡,可以對激進的分歧也不過度情緒化。分歧裡才有真東西,而且那是成長的方式。一個社會如果能把分歧拿出來擺在一起談,那是健康的訊號。

DHH 講了他最喜歡的一個例證:William F. Buckley 的節目 Firing Line,有一期請了黑豹黨的成員。兩個人顯然政治立場差得極遠,但他們能談二十五分鐘。Buckley 就是問,你怎麼看這個,你怎麼看那個,對方按七十年代黑豹黨的方式回答,一點都不溫和。他說那太罕見了。如果今天播這個節目,會變成互相喊叫、互相指控。

他說他很想回到那個時代。他一直喜歡跟信任得過的朋友談政治,前提是大家不把它談成生死存亡。

Lex 接了一段很坦率的話。他說他其實一直習慣說我討厭政治,但他真正想說的是,他討厭現在這套系統:有些話題,有些固定說法,一說出來就把你歸進藍桶或者紅桶,然後製造戲劇,而不是對話。他說他有時不看網際網路,只是老實分析世界局勢,說完發現自己被一方罵成左棍,被另一方罵成右翼法西斯。他意識到一件事:這個系統不會找你麻煩,只要你說我是藍的或者我是紅的。但如果你就是好奇地探索、推理,系統會懲罰你。

DHH 說他也在更有意識地做這個選擇。他真要說的時候,通常是已經權衡過,覺得這件事值得。然後他誠實地補了一句自我批評:他自己也經常反過來,因為某人的技術工作關注了一個人,然後知道了那人的政治立場,心裡想我希望我不知道這個。所以拿這個去要求別人,本身是虛偽的。

他說可能這只是一個時期,能過去。他甚至認為現在比五年前更接近那個理想:2020 年那些部落對異端能施加的制裁,比現在強得多。當然,如果是在哈佛的社會學系裡提某些右翼觀點,那大概還是不好過,但在科技行業和很多商業領域,現在可以持有一個不符合 2020 年共識的觀點。

一輪比一輪小的戲

Lex 問 Rails 社群的那些糾紛後來怎麼樣了。

DHH 說,每一輪戲都在縮小。2020 年前後是所有社群同時達到感染峰值的時候,之後每一次新的爆發都比上一次小,那些在意識形態上跟這套鬥爭繫結的人也一批批變少。

他認為 X 發生過的最好的一件事,是 Bluesky 和 Mastodon 出現了。它們像蜜罐,把當時 X 上最兇的那批人聚到了一起,聚進一個不斷縮小的回聲室,一輪一輪過純度測試,每過一輪人就少一點,最後沒剩多少。現在剩下那些人,已經不在視野裡了。

他說這不是說 X 是完美的地方,偶爾也有行刑隊。但確實少了。他現在的體驗是,九成的互動是關於 Linux、關於技術的,看我發現了一臺新電腦,你看它多快。剩下一成是他插一句稍微有爭議的話,聊兩句,然後再回去聊電腦。

他給了個說法:演算法在找到你會覺得有意思的東西上其實很強,或者他不該這麼說,是那種會讓你參與的東西。有時候是激怒,但確實讓人參與。所以顯露出來的偏好是,大多數人想要 For You 頁,不只是關注流。

Lex 說但人們對 For You 頁上癮。

DHH 說是的,這是真的。問題在於獎勵函式是參與度,一旦獎勵函式是參與度,參與度就會順著本能走。但他也不想只講負面的。平均來看,過去十年,這是 X 最好的時候,這是他作為一個關心技術討論的人的感受。

Lex 說他沒法評論,因為他訪談各種人,他的 feed 是壞的。他發一句我在吃這個蘋果,真好吃,下面就有人衝出來說那是因為你是澤連斯基的走狗,或者你是普京的走狗,你個垃圾。

DHH 說他偶爾也遇到,會想,等等,我們在說什麼?你為什麼要這樣出現?他說這也是他喜歡播客的原因:即使是長篇寫作,人們讀到長論證時,腦子裡給我配的音是預先裝好的,這人是法西斯,然後他們用那個音去讀那些詞。但當你聽到真實的聲音和語調,你也許仍然不同意,可是要直接否定或者恨一個人就難得多。

Lex 說他更希望人們練習一種態度:先假定對方是個好人。如果他有你不同意的觀點,那也是一個好人持有某個觀點。你可以覺得他蠢,沒關係,覺得他迷路了也行,但先當他是個好人。因為如果你專門去找壞的地方,你永遠找得到,總能找到讓人煩的地方。這樣你不會學到任何東西,只會往心裡裝滿恨。

DHH 舉了個小例子。有個叫 Theo 的人,他們之間因為 37signals 在一個專案裡停用 TypeScript 有過一點摩擦,Theo 對此有意見。DHH 當時的想法是,這人是個蠢貨。他現在仍然覺得那個動作很蠢。但他也能看見,這傢伙真的很投入 AI,在試各種模型,他們可以在那件事上共享興奮。所以他昨天開始關注他了。

「我不必在所有事上同意你,甚至不必喜歡你做的某些事。我還是可以關注你。如果我能回頭關注 Theo,那世界和平大概還有希望。」(DHH)

「像女人的厭食症」

Lex 提了一條 DHH 轉述他妻子 Jamie 的話,說科技圈男性那種極端的長壽執念,像女性的厭食症,是一種焦慮和失控感的身體化表現。

DHH 說這條推確實火了。他還注意到 Bryan Johnson 在串裡回覆了,他能理解 Bryan 會把它讀成一次刺擊,他也認為 Jamie 說這話時心裡大概有他。

但他把兩件事分開了。他不認同 Bryan 那個「不要死」的使命,他自己是想死的,不想永遠活下去,人類活到九十到一百聽起來正好,他接受生命的有限性。但這不妨礙他覺得 Bryan 是個遠比他有趣的人,因為兩人在這件事上不一致,而 Bryan 願意把自己的皮膚和各種身體部件都押在這個使命上,這本身非常有意思。

他可以同時持有兩個看法:很高興 Bryan 在追他的熱情,以及我妻子的分析聽起來是真的,那底下確實像是有某種恐懼。

他接著講了 Jamie 的一個延伸,這段是整場訪談裡最有洞察力的段落之一。她說,那些覺得自己沒活夠的人,之所以沒活夠,原因之一可能是現代社會成了一個監控國家,不是國家在監控,是彼此在監控。到處都是能拍照的手機,每一次失態,甚至每一次玩得開心、每一次尷尬,都很可能被錄下來、被傳播、被嘲弄到死。在這種條件下,人的理性反應就是收縮,就是確保自己不要像沒人在看那樣跳舞,因為很可能有人就在拍你,準備讓你在網際網路上永遠尷尬。所以也許乾脆別跳。

如果所有人都收縮到 barely living 的程度,那就會抓住讓它永遠持續下去這件事不放。

DHH 說這個論點不一定適用於所有人,也不知道是否適用於 Bryan,但他覺得這裡頭有真東西:如果你真的覺得活過了,你就能夠想我活夠了,結束不是要對抗的東西。他也誠實地說,這也可能是事後的合理化,如果明天有一粒永生藥,大家大概都會吃。也可能吃了之後社會更糟。也可能人類壽命是這個長度,不只是生物原因,還有社會學原因。

他提到最近這輪過度最佳化的反思。Chris Williamson 在 Modern Wisdom 上說,好吧,也許我們確實過頭了。觸發點是 Diary of a CEO 那期,主持人說了一句大意是:我喝了一杯酒,接下來三天全毀了。

DHH 說他理解,如果一個人很久沒喝,突然喝一點,確實可能有影響。但這句話引發了很多人的本能反應,包括他:媽的,我現在就該去喝一杯,雖然我平常不喝。

他把酒精當成一個縮小鏡。所有人都不喝了,酒類銷量大跌,年輕人尤其。從純健康指標上看,哦,太好了。然後他說,我不太確定這是好事。酒精提供的社交潤滑劑可能會被錯過,事實上正在被錯過。現在正處在一場孤獨、痛苦、抑鬱的流行病裡,其中相當一部分大概就是因為你和別人互動得不夠。這還沒說到配對:人們越來越難找到伴侶,很大一部分轉移到了那些有各種負面後果的交友應用上。

「也許回頭看會說,知道嗎,偶爾喝到爛醉並不是世界上最壞的事。查斯特頓的籬笆,我們常常是自己把它拆了,然後自己難受。」(DHH)

Lex 接了一段自己的經歷。他在中國農村旅行時抽了點菸,他二十出頭時抽過,那次是專門為這趟旅行撿起來的。他也喝了巨量的酒,雖然平時不怎麼喝,因為那是他們表達感情的方式。他還吃了大量碳水,平時他低碳、只吃肉,也因為那是表達感情的方式。在大多數社會里,酒是大家一起做的事,是一種連線。它帶來的好處,在很多情境下,可能超過長期那些負面影響,無論你怎麼衡量。

DHH 說這就是現代性的短視:把事情壓縮成,在這項長期研究裡,一杯酒意味著你某種心臟缺陷的風險增加 0.1%。對,但如果你根本沒活過,那意義在哪。他也說另一頭也容易翻過去,唯一的活法不是每週末喝醉、吃一堆垃圾、一天四十根菸。不必是二選一。

他講了自己停戴 Oura 戒指的事。戴了四年,有一天他想,我不需要被告知我昨晚睡得不好,我知道。它帶來的不是焦慮,他焦慮不多,但那是一個持續提醒,提醒我睡得不好,這到底起什麼作用?我為什麼需要這些資料?為什麼要把一切都最佳化?

所以那期 Diary of a CEO 之後,他的反應是,我想要相反的東西。他本來就幾乎不喝,一個月一杯酒。他想,那就週末來一杯吧,也許兩杯。他也說自己從來不為飲食焦慮,這是娶了個會做飯而且享受做飯的人的特權。他說這裡有一種非常傳統的分工,在人類社會里穩定了幾萬年,也許也不是最壞的主意。他說他也知道很多男人喜歡做飯,很多女人不喜歡。但就刻板印象而言,這確實幫了他。

他的總觀點是:退出那個最佳化遊戲,但別滑到反面。你也不必做一個癱在沙發上的胖子,你可以動一動。

日曆裡藏著的那一行

他把這個話題做進了產品。Omarchy 裡有個彩蛋,叫 memento mori,記住你終將死去。

點時鐘開啟日曆時,第一行是他從網上抄來的,有個賬號叫 Years Progress,每天更新,顯示 2026 年已經過了 63%。那一行就慢慢填滿。他把它做進了日曆。

然後如果你雙擊那一行,它會問你:你哪年生的,你預計活多久。預設是九十。他填了 1979。然後在今年過了多少下面多出一行,顯示你的人生過了多少。他現在是 62%。滑鼠懸停上去,寫的是 memento mori。他說不少人覺得這很病態,所以它是個彩蛋,得點好幾下才能到那兒。但他喜歡這個提醒,時間有限,應該把它用足。

這也是有孩子的一個特權。你會真的意識到那些陳詞濫調全是真的,天啊,過得太快了。他記得現在十三歲的孩子一兩歲時的樣子,那就像昨天。而陳詞濫調之所以是陳詞濫調,因為它是共享經驗。陳詞濫調是好的,它提醒你你是人類經驗的一部分,別人也走過這裡。

可頌之謎

Lex 問起他吐槽美國可頌的那條推。丹麥的可頌是不是更好?

DHH 說,其實丹麥的可頌並不特別好。他唯一能找到半個像樣的可頌的地方,說出來很滑稽,是 7-Eleven。因為在美國,至少在芝加哥,7-Eleven 是你去買思樂冰、順便儘量別被槍殺的地方。而在丹麥,7-Eleven 是個相當高階、非常舒服的便利店,而他們恰好做出像樣的可頌。

他說他在美國住了二十年,還沒吃過一個能達到哥本哈根 7-Eleven 水平的可頌。這不合邏輯。

Lex 問他搞明白原因了嗎。

他說沒有,他真的考慮過僱一個調查記者去挖到底。他聽過的理論五花八門:水、黃油、手藝、這個、那個。他覺得都說不通。如果是黃油,你進口不就行了?他說他在美國超市見過 Lurpak 丹麥黃油,所以不是這個。是手藝?不可能,世界上最好的可頌師傅是法國人和比利時人,很多就住在美國。到底是什麼?

然後還有第二種回應,說你是沒去對地方。他說他去了十五家所謂對的地方,全是垃圾。所以在他離開這個星球之前,他必須搞清楚為什麼美國做不出一個像樣的可頌。他甚至不要求法國頂級、比利時頂級那種世界最好的可頌,他只要哥本哈根 7-Eleven 那個水平,這要求過分嗎。

最後一餐

Lex 問他的最後一餐。

DHH 說看是午飯還是晚飯。Lex 說就一頓。DHH 說那看你什麼時候被處決。如果是下午執行,那只有午飯。

如果是午飯,在路易斯安那。那是哥本哈根北邊的一座博物館,他和 Jamie 常去。博物館很好,但他們不是為博物館去的,是為食堂去的。這聽起來很瘋,開車半小時去一個食堂。

但那大概是他這輩子吃過最好的午飯。廚師強得難以置信,而且更讓他的系統思維大腦吃驚的是:當時大概有兩百人在等餐,他們的餐五分鐘就上了。選單很小,顯然是大批次做的,而且好吃得不像話。

Lex 問是什麼菜系。他說北歐菜,選單他一看就覺得,如果小時候看到這個選單,他會說我不要在這兒吃。都是根莖、水果、洋蔥、各種健康的東西,聽起來很難吃。然後你坐下來吃,天使開始唱歌。

而且還有更具體的:那裡的黃油。打發的黃油,全世界最好吃的黃油。他說即便在巴黎,他也沒吃過那麼好吃的打發黃油。他真的會開三十分鐘車,只為了在路易斯安那的食堂吃麵包配黃油。

Lex 問怎麼發現的。他說就是去了博物館,吃了午飯,然後發現這能跟這輩子去過的最好的餐廳相比,他去過幾次 Noma,試過那些東西,這個水平不相上下。

晚飯他會選西班牙,馬貝拉的 Puente Romano,一家酒店,海灘邊上有家做新鮮海鮮的餐廳,好吃得難以置信。

Lex 問,一頓好飯裡,地點和一起吃飯的人佔多大比例。DHH 說氛圍當然有幫助,但他的味蕾也確實對風味很敏感,所以是真好吃,不只是氣氛。那個食堂人很多,他也不會說那是個想坐兩小時的地方,但食物真的太好吃了。

一千年後,和八十年代

Lex 問他一千年後人類的未來,人類能不能活下來。

他說一千年?他連十二個月之後都預測不了。但他說他要押樂觀:押多行星物種,押 Elon 把那枚火箭送上火星,押人類搞明白怎麼彎曲時空、發現蟲洞之類的東西。

Lex 問,如果真做到了,你覺得地球人會死一兩次然後被重新播種嗎。

DHH 說他最喜歡的《黑鏡》之一就是那集,人們被上傳到一個八十年代的海邊小鎮。他說那既是一個那麼黑暗的時刻,又那麼美,因為大家共享一個認知:八十年代其實挺好的。他說他對很多時期都沒有懷舊,但對八十年代有。

他還引了一種說法:無論你在什麼地方、什麼時代,你十二歲、十四五歲時聽的音樂,會跟著你一輩子。他在八十年代才十歲,那是他的童年早期,但他對八十年代有極深的感情。所以如果要把人上傳到雲端,他選八十年代。

Lex 說他從沒聽人這麼說過,通常是七十年代或者九十年代。

DHH 說他真的不喜歡九十年代。在他看來那是虛無主義的巨大轉折點:音樂、流派、時尚,一切都從那種華麗、流行、樂觀,甚至那些雅皮士,轉向了 grunge 和 Nirvana。他說他喜歡那些音樂,但他不喜歡那套倫理,不喜歡那套道德,不喜歡底下那些東西。那裡面有一種失敗主義。

他說他記得自己有過一條橙色褲子,上面有白點,在八十年代,小孩穿這個是正常的。他說今天他從沒見過這種事。到了九十年代,一切都變成西雅圖灰。他說這是巨大的倒退。

Lex 說這是尼采的永恆輪迴,如果土撥鼠之日、永遠活著,你希望是八十年代那條白點橙褲子。

DHH 說褲子可以跳過,但八十年代一定選。

收尾

這場對話裡最有用的東西,不是哪個模型更好,也不是哪套工作流更高效。是他在幾個地方反覆回到同一個判斷:現在這個時刻,追趕的成本極低,錯過的代價極小,而觀望的代價極高。

他說的那句這裡沒有積累,兩週就能追上,是對焦慮最有效的一劑解藥。前沿在天天翻,但結果的形態是收斂的,你不需要陪著跑完全程。

另一件他在整場訪談裡沒明說卻一直在做的事,是把品味從手藝裡拆出來。他花了二十年練的鑿工,三個月裡交給了機器。但那些讓他能一眼看出這個形狀跟問題不成比例的能力,一點沒貶值,反而成了最稀缺的東西。模型能給你三個選項,能同時跑十六個執行緒,但那個瞬間的、前智識的就這個,只有人能出。

至於要不要難過,他給的態度是:難過一會兒,然後轉身。

如果你正在猶豫從哪兒下手,可以從下面這幾件事裡挑一件,本週就做。

  • 挑一個你每天都在忍受的小工具,把它重寫成只有你一個使用者需要的樣子。別問別人要不要,別做需求調研,先讓自己用上。
  • 別寫長指令檔案。把 AGENTS.md 砍到十行以內,只留風格禁令和最關鍵的約束,剩下的交給模型判斷。過度規定會傷到它,就像傷到一個被外行指揮的工程師。
  • 跑一次一個幹活、一個挑刺的流程。讓 A 模型實現,讓 B 模型審,兩家不同廠商,看它挑出什麼。如果你從來沒這麼試過,第一次的結果會讓你不太舒服。
  • 做一次翻譯型任務。找一個你用了很久但沒讀過原始碼的庫,讓模型用另一門語言重寫,要求零依賴、單檔案、逐幀一致、不許中途停。這件事能一次性讓你看清現在的能力邊界在哪。
  • 把安裝或初始化時間當成產品指標。如果你的專案需要使用者花十分鐘配置,那十分鐘裡有巨大的機會。試試把等待人類輸入的那段時間拿來預載入。
  • 關掉一個監控裝置。如果某個健康指標只在你狀態差的時候提醒你狀態差,它提供的是焦慮,不是資訊。
  • 如果你在做開源,把 PR 的篩選交給智慧體,你只做最後的決定。同時記住你有權說不,謝謝,而且現在拒絕的社交成本比人類時代低得多。
  • 取消關注一個人之前,先試著只避開那個議題。分歧不必升級為斷交,參差不齊是人的常態。
  • 允許自己難過一會兒。你熟悉的世界確實變了,那是真實的失去。但別在難過裡住下來。
文稿來自 Lex Fridman 官網公開發布的官方 Transcript(含說話人與時間戳)。
DHH (00:00:00): There are decades where nothing happens and weeks where decades happen. And we have seen decades of progress happen in the last nine months. If you’re not recognizing the gravity of the moment, that’s the delusion. That’s the psychosis. Who would not get delirious if suddenly a genie pops out of the bottle and says, “You can have whatever you want. Every feature you’ve ever dreamed of in an operating system, I can deliver them to you, most of them in five minutes, a few in 20, and if we really go hog wild, it’s gonna take me two hours.” I want the fastest car breaking the speed limits. I want the diver watch that can go down the Mariana Trench. I want the operating system that can install in less than 60 seconds. DHH (00:00:48): One of the things I always loved about race cars was when I would stumble out of the car absolutely smashed and barely able to hold my head up, and I’d lay down on the garage floor and just think, “Holy fuck, I’m alive.” The Overton window does not open itself. It opens one nudge at a time by people risking a little. A little reputation, a little pushback, a little criticism, or maybe sometimes a lot of reputation or a lot of criticism or a lot of pushback. Creating life with another human that you love is literally the peak experience of being on the planet. Lex Fridman (00:01:28): The following is a conversation with David Heinemeier Hansson, also known as DHH, creator of Ruby on Rails, CTO of 37signals, creator of the new Omarchy Linux operating system, best-selling author, race car driver, and one of the most outspoken and prolific programmers in the world. For the past 20-plus years, for him, programming meant meticulously handcrafting beautiful Ruby code. But recently, since late 2025, DHH has embraced the AI revolution and has openly transformed himself into, once again, one of the most outspoken and prolific agentic engineers, even though he hates that term. So let’s say practitioners of whatever programming is becoming where AI is doing most of the actual programming and the human steers the ship with high-level design, vision, and taste. Yes, it’s true. Lex Fridman (00:02:28): DHH is at times controversial, but he’s always fearless, brilliant, and fun to talk to. This was, once again, an intense, eye-opening, and a wild rollercoaster ride of a conversation. This is a Lex Fridman podcast. To support it, please check out our sponsors in the description where you can also find links to contact me, ask questions, give feedback, and so on. And now, dear friends, here’s DHH. Lex Fridman (00:02:56): 13 months ago, we sat down right here to talk about programming, and then everything changed. At that time, you were a bit skeptical about the role of AI in the process of programming, and then we went through this rapid evolution of agentic engineering. So simple question to start: How has your view on AI’s role in programming changed? Are you excited? Are you terrified? Lex Fridman (00:03:23): Are you on an emotional rollercoaster ride? DHH (00:03:26): I am incredibly excited. Lex Fridman (00:03:29): You’ve been talking about fun a lot. DHH (00:03:31): There is none of the existential threat. That doesn’t exist for me as an emotional component. It is only there as an intellectual component, and the emotional component for me is 100% pure, unadulterated joy- … and optimism and amazement that we’ve made computers do this. And I find it so interesting that we talked just 13 months ago because it’s like we talked in different universes, different eras. I love this quote. I think it’s Lenin. There are decades where nothing happens and weeks where decades happen. And we have seen decades of progress happen in the last nine months. I mean, imagine you’re there when the Wright brothers take flight. DHH (00:04:21): Yesterday, the New York Times would write, “It’s gonna be 10,000 years before we fly,” and then the day after, we’re up in the skies, and just a few years after that, there were cross-Atlantic planes. The whole world has completely changed. What a blessing to be there in that moment. If you zoom out and look at all of human history, how many humans got to live within the same epoch that they were born in? They never saw that complete change of the world and of society. And to have been blessed with two of those feels just such a privilege. I got to see the internet- … from pre-internet to post-internet, and then now pre-AI, post-AI. What an amazing run. How fortunate. Lex Fridman (00:05:12): Yeah, but the thing is, this feels like a thing that happened faster than anything else in human history. DHH (00:05:18): Correct. Lex Fridman (00:05:18): So I would say somewhere around December, maybe late November- DHH (00:05:22): November 24. Lex Fridman (00:05:24): This is… DHH (00:05:26): That’s the exact moment. Lex Fridman (00:05:26): You know, when they talk about when one nation invades another in a world war or something like this, it– this is how we talk about AI changing everything. Yeah, the… And it really just shifted for many great developers. It shifted to where AI is doing some basic autocomplete, maybe writing 5, 10, 15, 20% of code, to writing 80% of code. DHH (00:05:49): Or 100. Lex Fridman (00:05:50): Or 100, yeah, especially if it’s not a public-facing product. DHH (00:05:54): To me, that’s why even when I look back upon our conversation a year ago, I don’t actually have different opinions. I have the same opinions. A year ago, I did not like the mode of AI we were offered. It was the autocomplete mode, or it was the AI chatbot mode. Now, the chatbot I actually liked, as we talked about. Great tutor right from the get-go, great way of looking things up on the internet, not what was gonna replace me chiseling code. But- … then we get the agents. Lex Fridman (00:06:28): Yeah. DHH (00:06:28): And the agents start out being curiosities for about five minutes, and then they get amazing, and then they get, “Oh my God, is this AGI?” And all of that happened since last year, even just in, within the last nine months. We have basically these few phases here. We have AI in the pre-agentic era. I was excited about that, but it was not fundamentally rewriting the rules of the game for me. It was not completely changing how I worked. I was still chiseling code, I just had a little helper, a little sidekick- DHH (00:07:08): … who could bounce ideas off, and I could look up this information online and so forth in a more efficient way. It was just a more efficient way to do what I was already doing, and it didn’t change the emotional connection I had to the computer. Then we get to November 24th, 2025. Opus 4.5, to me, was the dividing line, where suddenly… I didn’t even try it on the 24th. I think I tried it on the 26th. I gave it a couple of tasks, and I realize that the quality of the output is uncannily close to what I would’ve written. And I remember just leaning back and thinking, “What just happened?” DHH (00:07:55): “How did we go from this autocomplete mess that I was talking to you about in the summer to this just a few short months later? How did we get both the increase in intelligence and then also the increase in usability?” This agent harness question where I don’t know if Opus 4.5 was that much smarter than Opus 4, which is what we had in the summer, but its ability to instrument your computer, to use tools, to check its own work, to apply its intelligence in such a way that you could get real meaningful work out of it, was completely different. And I think this is then the big change that happens for almost anyone who paid attention and started playing with it over the Christmas break. This is what I heard- DHH (00:08:44): … from Shopify and other places with lots of employees who suddenly had a breather, suddenly had a couple of weeks to lean back and just look at what was going on, gave it a try, and had the same mind-blowing experience that these agents were of a different genre than what we had before. And then what we get to is, I’m already excited at this point. Like, by December, I’m already revisiting sort of all my priors- … and going like, “Wow, if it can do this, can it also do that?” “Oh, yeah, it can.” And again, Opus 4.5 now looks like a retarded model. And this is the magic of this progress, is you think you’ve reached something… I remember thinking at the moment, “If this is the last model we get, I’ll be set. I’ll be happy.” Lex Fridman (00:09:39): Yeah. Yep. DHH (00:09:39): I could live with Opus 4.5 for the next 20 years- … and you would hear no complaints from me because it was just so incredibly amazing to see an agent do all this work in the way that I wanted it done. Because it was not just about it being able to solve a task, it was also that I could look at its path there and go, “Yep. Yep. Maybe not there, but almost,” and it would give you two notes. You’ll get to where I wanted to go in the way I wanted to go there. You could produce code I wanted to merge. You could produce code that actually looked beautiful if it was written in Ruby. Rust, different question. But this ability for the agents to truly become an extension of how I wanted to work was very novel. But then we wait just until early spring, and suddenly we get sub-agents. DHH (00:10:37): We get harnesses that can subdivide the task, and something that would take Opus quite a while suddenly took a fifth of the time, a 10th of the time, because it could get chopped up and suddenly you got eight sub-agents working for you. But both of those two first phases of the agentic age, to me, still felt like I had to drive. I could tell it what I wanted, where to look for it, and steer it a little bit when it went off, and then we’ll get there, and I would go much faster. DHH (00:11:11): But I had to be in the driver’s seat. I had to tell it what I wanted, and I had to be the reviewer, the auditor of what was coming out. And then finally now, this summer, with Opus 5, Fable, and Sol, GPT Sol, and to a lesser extent, some of the open weight models, we’ve arrived at a new era where I’m not telling it where we’re going. I’m telling it the problem I have. I’m telling it the fuzzy, vague idea I have. It tells me where we’re going. It tells me which path to take, and I will still look at it because I’m a curious person and I like computers and I like the outcome of it, but I really kinda don’t have to. I’ve become optional in the part that produces the code that picks the route. Remember when early GPS systems came out? DHH (00:12:09): They were amazing compared to looking at a map, but you still wanted to pay attention. Is it gonna drive you in the harbor? I remember these newspaper articles. “Ah, GPS, they’re terrible because people don’t pay attention, they drive in the harbor.” When was the last time GPS drove anyone in the harbor? Like, that just doesn’t happen anymore. In fact, the cars now just drive themselves, right? And this is where we’ve arrived at now, that I can trust. For the domain I’m working in right now, I can trust it and feel completely confident that it’s gonna have my back. It’s not gonna do something stupid, and if it does something stupid, it’s gonna be able to recover. Lex Fridman (00:12:45): Mm-hmm. We should mention that there’s all kinds of domains that- DHH (00:12:48): Correct. Lex Fridman (00:12:48): … programmers operate in. There’s… I actually don’t know, but I think the most common domain in development is, like, web dev CRUD. You have a database. Lex Fridman (00:13:00): You have a user-facing interface, and it does something back and forth, and it could be internal to just one person, to multiple people, to a small number of people, or to the world. And I think for that, it’s– I mean, you could really get to the 100% of code written by AI and really almost– if you’re a good programmer and you have a good intuition about what’s happening behind the scenes, you can legitimately not look at the code, at least that’s been my experience. I don’t know how much prior experience with programming you need to have to kinda know that things are working correctly behind the scenes, like intuitively by observing the ripple effects, the symptoms of the system. Lex Fridman (00:13:45): But I think for that domain it’s close to 100%, and then there’s domains like you’re also operating in, which is writing a Linux distribution. There, maybe there’s more because you’re obsessed with speed and all that kind of stuff. There, maybe you need to look at the code a little bit more. Then there’s maybe safety critical systems all the way down to operating a nuclear power plant or a self-driving car. Maybe you need to look at the code more carefully. DHH (00:14:12): Yes, but that said, AI is insanely capable at both finding- Lex Fridman (00:14:17): Yeah. DHH (00:14:17): … and fixing security vulnerabilities. This was the whole blowup about Fable. This model was so capable of finding holes that an attacker could exploit that it was simply not safe to release. So the irony here is that when you look at that field, it seems like we’ve reached levels of intelligence that virtually no human can match because many of these security holes are about stringing combo moves together. You find one little vulnerability here that by itself might not be the worst thing in the world, but then you combine it with four others, and suddenly you have RCE, remote command execution. Humans who are able to do that are very rare. They usually work inside state-sponsored organizations or other clandestine operations. They’re not just out and about finding things. DHH (00:15:14): So they’ve gotten so good at that. The Linux distribution is why I’ve gotten 100% AI pilled. Because I’ve been working on Omarchy for the last three months, this version that just dropped a few days ago called Quattro. And almost right from the beginning I’m working on that version, the agent acceleration neared 100%, and in the last two months it has been 100%. I have not written- Lex Fridman (00:15:42): Really? DHH (00:15:43): … any of the code that’s shipped in Quattro by hand. I’ve reviewed the shape of all of it. I’ve reviewed the individual lines of anything that’s critical in the model layer of the system, and I’ve not looked at a bunch of the UI code. I have not looked at a bunch of the auxiliary code, and I’ve not written any of the new functionality entirely by hand. But then the web part, actually evolving Basecamp and Hey, our professional products that have lots of users and are relatively large code bases, have proven surprisingly tricky to fully accelerate with agents. We just released Basecamp 5 not too long ago. That was the first product at 37signals that was really agent accelerated. Because we were in this final sprint phase from around February. By then, agents were already good. DHH (00:16:44): And we had this early surge of, “It’s solved. We can just have the designers do the programming. They know what features they want. They know what shape they want it to take. Let them vibe.” And we let them vibe. And we ended up with a lot of PRs that individually perhaps could have been justified for a hot moment, but taken all together, destroyed the architecture of the system. And we actually had to clean up manually, mop it up by hand, by human hand, to get back to an architecture that felt cohesive and coherent. So we still have a bit of that– that was February, by the way. Things are quite different now. Lex Fridman (00:17:25): Well, hold on a second. What’s the lesson from that? Is one of the lessons from that that you have to be a programmer at this stage to be able to vibe code? DHH (00:17:33): To be able to vibe code on existing substantial- Lex Fridman (00:17:38): I see. DHH (00:17:38): … code bases, even if they’re crud, if you wanna retain the element of architecture that got that system to where it was. Now, that’s also a point where I’ve stressed many times that when people accuse vibe coders of being slob generators, I go right back at them and say, “Have you looked at the average programmer’s output?” That is some other slob too. If you’ve looked at behind the scenes of many great companies and what their code bases look like after there’s been 3,000 humans through them, they’re awful. Absolutely awful. Lex Fridman (00:18:14): Can you tell me the intuition you have? I seem to—just stepping back and observing the different apps that we all rely on, I don’t know, Adobe Photoshop, all this kind of stuff—there seems to be… the progress on development there has not accelerated. So why is it, what lessons can you draw from Basecamp, like well-established, huge user base? Why aren’t we seeing, like, super rapid increase in, like, new updates, features, all this kind of stuff in these well-established apps? DHH (00:18:44): Multiple reasons. I’ll start with the first one that’s the most critical. As soon as you’re having human teams work together on something, the bottleneck is rarely implementation. It’s human bandwidth and communication. When you have a product manager and a couple of designers and a VP above them and a CTO above them, and everyone wants to be part of the shaping process because we’re all justifying why we’re here, that’s where all the productivity goes to die. The revelation I’ve had working on Omarchy the last three months is that to get that magical 10X, 100X, in a few rare cases, 1000X productivity boost, you have to interact with the agents directly, and you cannot intermediate that bandwidth with another human because it’s simply too slow. DHH (00:19:49): And on the one hand, that’s a bit of a bummer. I mean, I like humans, and it’s great to work together. But it also means we need to temper our expectations with what these agents can do if it’s humans driving it, and you have three layers of approval and all the other machinery of a large corporation. The implementation part is only a small segment of it. The other thing I’d say is that most organizations don’t know what they want. They don’t know how to make it better. They’re not bottlenecked on implementation. They’re bottlenecked on ideas. They’re bottlenecked on vision. They’re bottlenecked on taste. And if you don’t have those elements in excess of your implementational capacity, it doesn’t help. So you can make a lot of shitty ideas come true, then what? Are you gonna ship that? DHH (00:20:46): That sounds like, I don’t know, something coming out of Microsoft. That’s not what we’re trying to replicate here. That process is not actually… Because we already had this. If you step back for a moment and think of the towering organizations we have who have had tens of thousands of programmers at their disposal. I mean, I’m picking on Microsoft here. I love Microsoft some of the time, but I’ll pick on them in this case because they have had endless resources, endless programming capacity for decades, right? This is what’s showing us that just being able to write a lot of code does not produce great compelling software. Now, the other thing is we’ve had this capacity for about six months. That’s not very long in human life cycle capacity of internalizing what’s going on. DHH (00:21:40): And I think it’s actually funny that the critique of AI is, why isn’t it going faster? What are you talking about? We’ve not had any other form of progress that has moved as fast as AI, and you’re impatient because in the last three months we haven’t rewritten the whole world and made it a utopia of software goodness? Lex Fridman (00:21:59): You’re basically saying everybody should be switching to Linux now. One of the arguments is, like, we can rewrite all the software that’s not available in Linux in Linux. Linux has been the love of my life for many years, but one of the reasons I’m still attached to Windows and now Mac is because of video editing, Premiere. DHH (00:22:15): We’re gonna fix that. But- Lex Fridman (00:22:17): So the question is, who’s gonna build Premiere and Photoshop for Linux? And it feels like one person can now. DHH (00:22:27): 100% one person can. Lex Fridman (00:22:28): And so, and I’m allowed to be impatient. In fact, me or anyone else, impatience is the first step of doing it yourself, right? Like- DHH (00:22:40): Correct. Lex Fridman (00:22:40): … and there’s a community of tens of thousands of people that use Adobe Premiere or DaVinci, all these non-linear video editors, that know the frustrations. Everybody shares them. You can look at Reddit. You can look at the forums. Everybody knows it. I don’t know what it is. It may be the management. It may be the meetings. All the things you’ve always discussed is the bureaucracy that’s inside companies that’s slowing everything down in the development of features. But it feels like there– if you just let some of the developers loose with a bunch of agents, you can fix all that. Lex Fridman (00:23:13): But again, based on everything you’re saying, maybe the way to do that is to start over from scratch, maybe through open source, or somebody launches a new company, that within large companies now it’s hard to really accelerate into the agentic era by letting developers just build. DHH (00:23:33): This is the classic innovator’s dilemma. These companies have gotten so good, so established at the old way, and therefore their entire structure, management layers, processes are tuned for a time that no longer exists. But you can’t pivot that. These are super tankers. It just doesn’t happen. This is why we’re finally getting this upset in the technology industry. For a while, I was very upset about the duopoly between Apple and Google on mobile, because it felt like mobile was the most important computing platform that we had, and I could not see a path to unseat either Google or Apple sitting on top of that, controlling everything, taking their toll booth money. But the game has changed. This is no longer the most important platform. DHH (00:24:32): Mobile phones are important, but there’s also a lot of other form factors coming, whether it’s glasses or it’s earpieces or whatever else have you. It’s all in play now, but the computing platforms themselves are in play for the first time in probably 40 years, if you look at the desktop. Linux has been around since ’91. It’s not taken off or taken over on the desktop. It’s taken over everything else. All the devices you have on your desk, your fridge, your toaster, everything runs Linux except for your computer. Now, funnily enough, your Android is actually Linux, but wrapped so sufficiently that you can’t really recognize it. But now there’s an opening, and the opening is exactly as you say it. DHH (00:25:21): If there’s a piece of software you depended on that bound you to Windows, it is completely within reach for you personally to start rewriting it. And maybe you won’t get to 100% coverage, but this is the old joke about Microsoft Office. “I only use 5%.” Yeah, well, we all use a different 5%. Well, what if we all just build our own 5%? What if I just took the functionality that I need and just did that? That is a completely different challenge and one agents are incredibly capable of doing right now today, and I’ve done it a lot of times over. So one of the amazing things I’ve found with the latest agent engaged is I have become a polyglot programmer, something I was absolutely not before. I was a Ruby programmer- … first and foremost, and then I dabbled a little bit in Bash- DHH (00:26:17): … when I had to. And in the last two months, I’ve written C++. I’ve written three applications that have shipped in Omarchy Quattro. I wrote a writing app. I was using this app called Typora, which is a very nice app- Lex Fridman (00:26:32): Great, great app DHH (00:26:33): … which in itself is based on another app called iA Writer, which was my real love on the Mac- … for a clean, simple Markdown writing environment. That’s where I write all my essays. DHH (00:26:45): And then I moved to Linux, and I couldn’t get iA Writer, so I moved over to this other tool called Typora. It was a piece of shareware, and it had a lot of features I just didn’t need. And about six weeks, seven weeks ago, I thought, “Do you know what? I only need 5% of Typora,” which is already a basic app. I literally told the agent to get going, that I wanted it written in C++ and Qt, because that would fit well with the aesthetic of what I was building with Quattro. And in, I think, about 20 minutes, it had the first version. I started using it, and it wasn’t quite right. Within two days, I’d given up Typora, and I wrote and have written all of my essays since that moment in Omawrite. Lex Fridman (00:27:30): Can I ask for your advice and your vision about something? So what I find with agents, you can actually write something like a replacement for Typora that is perfectly customized to you, to your needs- … with just one user in mind. And then there’s a version of that that starts with one user in mind but expands to a larger audience. So I’ve actually written a large number of software just for me, and I find it easier to do and better to get my situation done. For example, I have a video editor I’ve written, which is very easy to do just for me. Lex Fridman (00:28:06): I’ve never, unlike you, built something that’s used by a large number of people, and I find that a bit scary and intimidating. So, like, at this, with this agentic age, how do you take a step to actually build something that solves your problem, which I think is a beautiful way to build, but also expand it to actually useful for other people? Like, is there advice you can give, and do you also see the problem of how easy it is to just build a tool for yourself? DHH (00:28:35): Yes, but it is simpler than you think. By the time you’re done building the tool for yourself, you simply tell your agent to put it on GitHub. You don’t even have to do anything else. It will figure out how to put that repo on GitHub. It’ll write a nice README. It’ll start using GitHub releases so that you can track things. It’ll actually be a better software maintainer than you could ever be- … because it is far more patient, it is far more diligent in doing the drudgery of managing open source software than you are. DHH (00:29:05): And you can simply get on with the joy of using the software that you built and evolving it as you see fit. Now, this gets into the big argument we’ve been having in open source for a while. Are AI contributions good or bad for the maintainer? There’s a lot of maintainers right now who are quite upset about the fact that they’re suddenly getting a huge influx of pull requests, of contributions from people who may not be the best programmers or programmers at all- … towards their software. I look at that argument and go, “Are you kidding me?” Here is a vein of free contributions that you can take or don’t take, but you’re complaining about the fact that they’re there? It sounds straight out of- My steak is too juicy and my lobster too buttery. What are you complaining about? DHH (00:30:07): This is the most amazing thing. This is what we proclamated for so long was going to be the magic of open source, that we could all contribute to it, but it was, of course, never true. There was only a small subset of people who contribute to open source, and that was the very highly skilled wizards. So this is a bit of a reformation moment. We had this disintermediation between us and the computer, and it was this class of clerics and priests called programmers, and suddenly they’re being disintermediated here by was it the 95 theses by Luther in 1500s, nailing them to the door? And one of those was very clearly about the intermediation, that you should have direct access to the higher intelligence. Lex Fridman (00:30:51): But don’t you need the wizards to keep a high bar of excellence in the code base? DHH (00:30:56): 100% you do, which is also something that’s always been true about open source, which is the second argument that really grinds me. I’ve been running open source projects for 25 years. I have literally looked at the output of thousands, if not tens of thousands of programmers. I feel like I have the statistical basis to assert that most programmers, they suck. And I don’t mean that in the way it sounds. DHH (00:31:24): That was why I paused for a hot second here. I mean, they suck in the sense that they don’t write the code I want to have written. They don’t prepare their bug reports with all the relevant information. They don’t detail their pull requests with the why. They don’t bother to fill in needed code comments. They don’t double-check their work. They don’t write unit tests. They don’t do all of these things it takes to create good software. But do you know who’ll do all that stuff? Agents, if you tell them to. They’re very diligent at following your instructions, most of the time, sometimes to a fault. But it actually means that if you take the median programmer and their pull requests towards an average open source project, they’re already getting outclassed by agents. DHH (00:32:11): I would rather get an agent-written pull request to one of my projects than I’d get one written by a human, and it’s not just because the quality’s better. It’s also because I feel a lot less bad if I just reject it. You didn’t even write it, so I can simply look at what your agent wrote on your behalf and go, “Eh, don’t want it.” That’s always been true in open source, and in fact, I think this is one of the problems with open source maintainers. They have way too much ball of neuroticism and anxiety that requires them to look upon any contribution as an obligation on their part to do everything to get that to land in the code base. That’s not true at all. DHH (00:33:00): You can simply say, “No,” or even better, you can say, “No thank you.” And if you get into the mode of realizing that your project is allowed to exist and evolve according to your vision, according to your roadmap, it becomes so much easier in the agentic age to decline the contributions you don’t want because you don’t even inconvenience or hurt the feelings of a human. It’s just a clanker, and the clanker won’t mind. In fact, the producers of clankers, the labs, love when you spend tokens in vain. They get paid just the same. So, in my opinion, this is the absolute best time to ever have been an open source software maintainer. DHH (00:33:46): Not only do we get this wealth of glorious pull requests made by agents with all the boxes ticked, we also get to tap into a creativity of people who did not have access to contribute to a project before. I’ve been running the Omarchy project now for a little over a year, and in the last three months working on Quattro, I have merged over 1,000 pull requests. Quite a lot of those pull requests were written by people who were not classical programmers, or were programmers in other domains, not Linux operating system or distribution development. They were able to contribute their good ideas because of agents, and I got to cherry-pick the very best of that- DHH (00:34:32): … because it was there. Otherwise, those ideas would just have lived inside their heads. Again, is that not the purpose of open source, that we tap into the collective intelligence and creativity of the whole goddamn planet, and we channel that towards a commons where we all benefit from the combined efforts of everyone? Now, there’s currently, I think, about 400 unmerged pull requests on Omarchy, about double what it was a week ago. So the acceleration is real, but so are the tools. I’m not reviewing every pull request anymore. I haven’t been reviewing them for quite some time now. I have the agents- … review them for me- … and then they will give me a summary about whether something is ready for the decision, the human decision. Should we merge or should we not merge? DHH (00:35:25): I don’t need to look at all the pull requests that are either wrong, duplicated, bad. An agent can sort that chaff away from me. I just get to look at the pearls- … the good ideas that are ready to go, the bug fixes that the agent has validated in a VM on my behalf. All the drudgery of replicating and managing open source projects is evaporating at lightning speed, and we are left with the golden juicy parts, the bone marrow of software development- … deciding what should this thing do and where should it go? Lex Fridman (00:36:03): Do you think the good ideas, ultimately the kernel of the good ideas originated in the human mind, so the individual contributors Like, can it be done by agents, or is the PR ultimately requires a human idea? Like how to improve Omarchy, all those incoming… Or can it all just be a pool of agents? DHH (00:36:24): That was the mode and the way I was thinking about agents in the first agentic age from November 24 to February 28. I thought all the ideas would originate with the humans. They would tell their agents what to build, and off they went. I don’t think that’s true anymore at all. I have seen things you people wouldn’t believe, ideas coming out of models so great that it makes me humble- … as a person who otherwise prides himself on having good ideas. The agents are incredibly capable of creative thought, and folks who are still stuck in the analysis that agents are parrots- … just regurgitating the ideas that are already there, are delusional about the progress that’s been made in the last six to nine months. Lex Fridman (00:37:21): So some people listening to you right now will say DHH is suffering from the old case of AI psychosis. Can you steel man the case that you are in fact experiencing in a state of delusion, like One Flew Over the Cuckoo’s Nest, and can you argue against it? DHH (00:37:37): I’m in a state of delirium. That’s the state I’m in. Because I have been working with computers for 40 years, and I’ve never seen the things that I’ve seen in just the last two months. DHH (00:37:54): A whole career, a whole life dedicating to the love of computers as my main focus for the working hours and then some, suddenly completely upended, suddenly completely rewritten. Of course I’m delirious. Who looking at this reality is not? If you are not delirious or at the very least very excited… Actually, I guess that’s not even true. If you’re not recognizing the gravity of the moment, that’s the delusion. That’s the psychosis. The psychosis is believing that the world is barely different. We just have some electronic parrots reciting things to us. Now, in my opinion, the reason this argument is actually brought up is because people are not able to see the fruits of the progress. That goes to your point earlier. Where is the amazing software? DHH (00:38:49): Why isn’t American GDP running at 12% year over year? First of all, give it a minute. It hasn’t even been a year, goddammit. But second of all, I feel on my own account, I have actually brought the pudding. Omarchy Quattro launched on Friday. It’s been downloaded by tens of thousands of people. And they like it. They like it a lot. Lex Fridman (00:39:17): We should mention that going to Perplexity here, Omarchy is a highly opinionated Arch Linux-based desktop distribution centered on the Hyprland Wayland tiling compositor. It was created by David Heinemeier Hansson, DHH, as a polished developer workstation set up with a cohesive visual style and many everyday tools already configured. DHH (00:39:39): Let me put it. Omarchy is a beautiful, modern, and opinionated Linux system. It’s an alternative operating system to macOS and Windows, and it’s freaking amazing. Lex Fridman (00:39:50): And the Quattro thing is you’re pushing towards the age of agents. DHH (00:39:54): That’s right. That’s the latest version that we just dropped out, which is also funny. The Omarchy project is only a year old and a little bit. I started it last summer in between sessions at the 24 Hours of Le Mans- DHH (00:40:08): … where I had watched one too many YouTube videos on Linux Ricing and got bitten by that bug. Started working on this second iteration of my attempt at creating a better Linux operating system. The first iteration we talked about last time was called Omakub, was built on top of an existing system called Ubuntu, and it was fine. But the ambition I was able to pour into the new version, Omarchy, because I started seven layers deeper down the stack, was completely different. But it was still done in a pre-agentic world. I wrote all those bash scripts by hand in the beginning, and then I got to see the midway point where things changed over. DHH (00:40:52): I did a couple of versions of Omarchy that had partial agent acceleration, and then three months ago, it was full throttle, 100%, everything is written by agents but steered by me. And that just ended up being a very different experience and a very different operating system because I was suddenly granted a limitless ceiling on my ambition. I could look at any feature in Windows, on Mac, on other Linux systems and say, “I want that,” and the agents would deliver. So everything I wanted was suddenly within reach, which meant that I got a little delirious. Who would not get delirious if suddenly a genie pops out of the bottle and says, “You can have whatever you want. Every feature you’ve ever dreamed of in an operating system- DHH (00:41:47): … I can deliver them to you, most of them in five minutes, a few in 20, and if we really go hog wild, it’s gonna take me two hours.” Lex Fridman (00:41:54): Mm-hmm. Have you seen Requiem for a Dream, the movie? So there’s a drug-like effect here. I find it personally– We’ll talk about many levels of this, but it is overwhelming how much power is placed in our hands so suddenly, and it’s very hard to know, it’s like with “The Hobbit” or something, what to do with it, and I find myself truly overwhelmed with the multitasking on the verge of almost burnt out. Super excited about so many things, but ultimately looking back, you want to focus on one thing and really ship. DHH (00:42:31): I don’t have that sense. I don’t have the sense of overwhelm. I don’t have the sense of dread. I don’t have the sense of distortion because I have a mission. I’m going somewhere, and therefore, I can channel all this new power towards- Lex Fridman (00:42:48): Yeah, it’s wonderful. DHH (00:42:48): a singular goal and outcome, creating the perfect computer. And therefore, all my investigations with AI are focused towards that end. Now, I also have a day job. And we also use agents there, and that’s also targeted towards sort of specific outcomes. But with the Omarchy experience, I got to tap in straight in the back of my head and increase the bandwidth between ideas arriving in my brain and software emerging on the screen. It was like going from dial-up- … to fiber. I think on your podcast, Elon talked about the actual human bandwidth- DHH (00:43:35): … that Neuralink and other projects are trying to accelerate. Like, the bandwidth we’re communicating over right now is quite low because we’re limited by our cognition. We’re limited by the rate of speech. You’re not limited by those things when you’re working with a swarm of agents. Now, let me caveat this by saying, if I’d heard myself talk like this- DHH (00:44:03): nine months ago, I would probably have used the label AI psychosis. I think it would be fitting because nine months ago when people were talking like this, they weren’t shipping, and I think that’s the ultimate difference, that there were people who saw this early. I was not actually that early. As we’ve talked about, I was rather skeptical, and I was using AI in certain ways, but I was not the first person who downloaded Claude Code. I think Boris released that in end of February. I don’t think I installed Claude Code until September. So there was about six months there where pioneers saw these glimmers of what the future was gonna look like. It wasn’t there yet because the intelligence wasn’t there. The harnesses weren’t there, but they could see the glimmers. I couldn’t. DHH (00:44:48): Tobi, Tobi Lutke, the CEO of Shopify and now my partner in crime on this Omarchy project in part, he’s gotten pilled with Omarchy as well. He saw these things very early, and he tried to tell me, and I wasn’t seeing it. I was not seeing what he was seeing. Lex Fridman (00:45:07): You were a hater. DHH (00:45:08): Yes. I was still on Earth. And he was… He had already boarded the rocket and was heading towards space. I remember actually reading his memo to the company, the AI memo, and thinking, “Ah, seems a little much.” Like, you’re making a big deal out of something that I cannot yet feel is a tangible thing. DHH (00:45:32): Because where’s the output of this? I try using it. It writes code I don’t like. It wants to interrupt me all the time. Where are you getting this from? So I get it. I totally get it. If you’ve not seen what the current quality of intelligence can produce, of course you’re gonna look at someone and go like, “They sound a little nutty,” because all your experience up until this point would tell you that they are nutty. Because if you look at the history of computer programming, for the last 40, 50 years, people have been promising that regular people could write code just by talking. We’re gonna have fourth generation languages. DHH (00:46:12): Lisp was once upon a time presented, Smalltalk was presented as these environments that would let regular people write their own applications, and none of it came true in the sense beyond, like, Microsoft Access databases or Excel spreadsheets. Those are end user programming environments, but it’s nothing like what we’re able to do now. And then, I mean, I’m not even talking about end user. I’m talking as me, someone who’s been programming for 25 years, seeing the output and the acceleration and the quality and then shipping it, and I think that’s what’s gonna change the entire conversation quite quickly. DHH (00:46:49): The few laggards who are still on the fence about whether this is actually useful, who are still trapped in a meme from early ’25 about mechanical parrots, they’re simply going to be overwhelmed by the evidence that’s about to flood over them. Lex Fridman (00:47:05): So I hope to see projects like Omarchy, several of them that, like, really show agent first. DHH (00:47:15): It’s coming. All of it is coming. Lex Fridman (00:47:17): In the spaces, in the silly spaces that I already mentioned, like video editing, all these kinds of apps that are like Typora- … this kind of stuff. DHH (00:47:26): It’s gonna come, and I’ve already seen the early inklings of this. One of the really neat features about Omarchy is that it has a far more robust plugin system that allows you to extend your operating system and rewrite it really in terms of its user interface and its panels and its features by creating your own plugins that can be cloned off of tools we ship in the box. For example, say you want a different calendar. Omarchy ships with a calendar. You click the little clock. It pops up a calendar, and it doesn’t have iCal support, for example. It doesn’t consume your appointments. There’s about 17 implementations of that already, and in three days, we had 330 plugins on the Omarchy plugin marketplace. I have never seen growth like that with any project I’ve ever been involved in. DHH (00:48:23): I’ve never seen participation that broadly. I’ve never seen that many people be able to create software that’s meaningful for them—also be usable for others so quickly. All of it is driven by the fact that Omarchy ships a set of skills that tells any agent you bring to it how to create extensions to the operating system, and therefore affording you the vision of the true malleable… I was about to say agentic. I hate that fucking word. And the reason in part I hate that word is, first of all, it’s become marketing slop speak- … at this point. Like, it’s just slapped onto everything. I wish we had a different word that just meant AI doing stuff. Lex Fridman (00:49:08): Vibe coding feels wrong, too. DHH (00:49:09): It does, because vibe coding to me smells exactly like script kiddies did in the early 2000s. People applying PHP scripts they just downloaded offline that they don’t understand anything of. And while, I mean, that’s true in the sense that much of the vibe coding, including my own vibe coded projects, and as I just mentioned, I have several. I’ve written things in C++. I’ve written things in Rust. Rust—I hate Rust with a passion. Rust to me is like pouring acid in my eyes when I have to look at the code. Lex Fridman (00:49:42): Wait, wait, wait, wait. Why do you hate Rust? DHH (00:49:43): It is, in my opinion, the ugliest programming language- Lex Fridman (00:49:46): Oh DHH (00:49:46): … that has been invented- Lex Fridman (00:49:47): Yeah DHH (00:49:47): … in probably the last 40 years. Lex Fridman (00:49:49): So it’s the opposite of Rails and Ruby. DHH (00:49:50): It’s the opposite. But- Lex Fridman (00:49:53): You’ve written it DHH (00:49:53): … I’ve written applications in Rust because the output of Rust is actually amazing. The memory safety, the fact that it’s a system language, the fact that it’s highly efficient and so forth is incredible. So Rust, to me, can both be the most repugnant programming language ever devised for human consumption and a wonderful platform for agentic engineering. These two truths can coexist easily in my head. Lex Fridman (00:50:24): Do you think that there can be a point at which we can just call agentic engineering programming? Can we just change what programming means? ‘Cause who’s actually going to be programming the old-school way in a few months? DHH (00:50:36): I don’t think we should reuse the term because for me, programming implies an understanding of certain primitives, loops, conditions, variables. All the constructs of programming languages are what constitutes programming itself, not the creation of programs. Because you could say in the pre-agentic era, well, your CEO is programming. He’s hiring a bunch of programmers, he’s telling them what to do, and out comes software that he can sell. DHH (00:51:05): Eh, I don’t think most people would call that CEO a programmer, and I don’t think we should call the vibe coder a programmer either. And vibe coding, if we define it here, is you tell an agent to build software for you. You do not look at the implementation. That, to me, is what separates vibe coding from programming or, let’s say, agent-accelerated development. Lex Fridman (00:51:26): But don’t you think, so to push back a little bit, don’t you think a programmer, old-school programmer, you, doing agentic engineering is a different kind of agentic engineering than a non-programmer doing agentic engineering? What I mean is, if you know what a for loop is, if you know what function programming is, if you know some of the basic good principles of software engineering, the way you do natural language-based agentic engineering will be different and more systematic, and the scale and the variety of things you can actually build is much bigger than a vibe coder. DHH (00:52:02): I’m just gonna extend the pro case here a little bit just for the sake of the argument. Lex Fridman (00:52:05): Right. DHH (00:52:07): I actually think for a while it was to my deficit to know as much as I know about programming because I was instructing the agents to do things as I prescribed them to do, and they were very good at that. And in the first agentic moment, let’s not call it an era, it was something that lasted three, three months. Moment… In the first agentic moment, that felt very productive. I could get more productivity out of telling the agents what to do in the way I would’ve done it, and I used all of my experience as a programmer to do just that. Then I was a little late on the next moment, and the next moment allowed me, allowed anyone, to describe outcomes- … to describe problems to the agents and get better solutions than if you had a programmer prescribe the path. Lex Fridman (00:53:05): See, okay, so we’re having fun arguing here. Well, so are you suggesting that there’s problems for which programmers are worse than non-programmers at agentic engineering? DHH (00:53:16): 100%. And the reason I say that, let’s define it here. The reason I say that is there’s a lot of programmers who are not very good product managers. Software is product management. What should it do? Who should it do it for? How should it do it? How should it look? What’s our priorities? What do we start with first? What does version one include? All of those skills are not easily or equally distributed across all programmers. And in the agentic era where you are letting an agent, an AI, do the implementation, these are the skills you need. And I happen to sit in both camps, and this is why I love this moment. DHH (00:53:58): I still get to live a little bit in the old world where I look at the full implementation because there are domains and areas where I feel that still brings value, and then I also live in the future. And as I said, when I created AmaWrite, I’ve not looked at a single line of that C++. I actually made it a point to myself that I was gonna treat it as an experiment. This is 100% a black box. I will treat it as though I was any other user who had opinions about how their digital typewriter should work, and therefore felt like it was a fair experiment as if a writer of any other sort who had opinions about how software should be done and how it should work. DHH (00:54:39): As you mentioned, video editors who know exactly where they don’t like what Adobe Premiere’s doing and how it could be better, but don’t have the capacities to improve it- … how that could be. Lex Fridman (00:54:50): The pushback, though, I think what programmers do well, good programmers do well, is systematic design, like think in terms of systems- … and rigor. And I think still, and probably for a long time to come, even natural language-based control of agentic systems will require a certain kind of rigor. Not overly structured rigor, but really explain very specifically the goals of the system, how to do the verification, what kind of security testing. You wanna do all those kinds of things. Although then to push back on that, the system will… should be smart longer term. DHH (00:55:28): I would’ve said the same thing six months ago. Lex Fridman (00:55:30): Yeah, so this has changed. DHH (00:55:30): And I think the same thing would’ve been true six months ago. What I have found since, especially even just the last few weeks of the agentically accelerated development of Mach-E, is that more often than not, I have the humility to recognize that the agent knows best. Lex Fridman (00:55:49): You can legitimately say, “Make sure it’s secure.” DHH (00:55:52): Correct. And it would know more about what that entails. Now, you’re laughing- Lex Fridman (00:55:59): What a crazy world. DHH (00:55:59): … but it’s true. And in fact- Lex Fridman (00:56:01): Oh my God. DHH (00:56:02): … a good parallel to this is the AGENTS.md/CLAUDE.md files. There was a hot moment where it was all the rage about micro-optimizing that. Oh, you tell your agent this- DHH (00:56:14): … you tell your agent that, and you ended up with this huge file of instructions for your agent. One of the things that Boris, working on Claude Code, shared in an interview recently about Opus 5 was that the system prompt that they ship for Opus 5, and presumably also Fable, shrunk by 80% because the agent not only needed far less human instruction, it was actually being damaged by overly prescriptive humans. And any programmer who’s had a pointy-haired boss knows exactly what that is like. When the boss walks into the room, doesn’t know anything, starts telling you how to program, how to code. What do you do? You sulk. You write shittier code if you’re mandated to do things that are against your better judgment. Why would an agent not be the same? Lex Fridman (00:57:08): Actually, to push back against myself, I do find the actual skill I’m currently developing, which along those lines is probably what everybody’s trying to develop, is not to overspecify things, is to get out of the system’s way. DHH (00:57:20): Of course. Lex Fridman (00:57:20): Is to specify enough to provide a kinda high-level vision and guidance. DHH (00:57:25): It’s even better because you don’t even need that. The fundamental insight of modern software development came from the agile software development movement. In the late ’90s, early 2000s, a group of smart, honest, and brave people came together and said, “The way we’ve been trying to do software development for the last 40 to 50 years has not worked, will not work. We’ve been trying to specify upfront what software should look like. We thought that we could ask humans what they wanted, write it all down, apply our systems thinking and our rigor to a spec sheet, hand that spec sheet over to a group of programmers who would then implement just that, and everyone would be happy.” Well, guess what? No one was happy. Because no one knows what they want until they receive it. DHH (00:58:13): You don’t know what a program should do until you play with it. So in the agentic age, you should resist the temptation to be overly specific upfront. Be as vague as you can to manifest something, then interact with the something. The way you arrive at good software is you write a little bit of software, and then you try to use it. It is in the process of using software that you discover what you really want. It’s where you discover what’s important and what’s not important. And agents are incredible at allowing you to bumble into this experience of realizing what you want because you don’t know what you want. Lex Fridman (00:58:51): Mm-hmm. And I’ve actually done something similar to what you suggested, which is implement different designs and totally different implementations, and then I create HTML pages for myself, PHP pages, where I vote on what I like more and so on. DHH (00:59:06): Yes. Lex Fridman (00:59:06): And it does this iterative thing, and it’s very nice and fun. The interaction with the agentic system, if you create a nice interface for yourself, it can be super fun, and you’re focusing on the design part and the most fun parts of the design part. DHH (00:59:18): Correct. And this is what humans are really good at. Lex Fridman (00:59:20): Yeah, taste. DHH (00:59:21): Differential evaluation. You give me three options, I pick one of them. Now, humans actually fall off a cliff if you give them 22 options. That’s the paradox of choice. But you give them three options, they very quickly within a split second will tell you what they like. There are all these ways that exploit the fact that humans will make these snap judgments that are actually pre-intellectual, right? Like, they’re coming from the gut, and then they arrive up in the brain, and the brain tries to rationalize why the gut said what it said. And if you’re willing to let go of some of that intellectual pre-processing rationalization and simply let your gut drive, the agentic age is a revelation. Lex Fridman (01:00:06): So this is a fascinating thing to ask you because you have sort of famously for a long time talked about, like, detailed chiseling of beautiful Rails Ruby code, and now you have switched in a matter of months to not doing that. So, like, what is your current setup look like? ‘Cause you’re, I assume, are still looking for the beauty, for the chiseling, for the crafting, but you’re just crafting in a different medium. DHH (01:00:35): And at different levels of abstraction. When I’m working in Ruby code, and we have a lot of Ruby code because it’s in our entire business, and I’m asking agents to make changes to that code, I still sweat the details. What I’m coming to realize is that the economic payoff of that sweat is diminishing rapidly. The reason why I, for 25 years, was sweating every line of code so judiciously was because I knew the payoff of keeping an architecture coherent and malleable was software that could change and evolve- DHH (01:01:16): … quickly with a small team, and not exorbitant cost, and not introducing a bunch of bugs when you change one thing over the other. That was the driving economic argument for why you should write beautiful code, ’cause beautiful code is easier to understand, it is simpler, it is more malleable. That was premised on humans doing the modifications. I think it is an open question to which degree this still matters. Now, it does matter, and the reason I say that, at least for the moment, is that tokens are still scarce. At this moment in time, we are all token limited. Well, not all, but anyone who doesn’t have endless budgets are token limited. DHH (01:02:03): So therefore, there is great payoff to writing systems that agents have an easier time dealing with and evolving without having to relearn the entire context. Just like humans, if they can make iterations and changes to the code base without wrecking the architecture, they can make the next change just as cheaply as the last one. And this is the classic ball of mud where you end up with a system that’s a ball of mud- DHH (01:02:31): … because it’s just put together in a way where nothing is connected and it’s just a real mess, right? I’ve seen that with agents, and I’ve seen it in our own code bases where, again, the first PR is, like, mediocre of quality, and then if you add another PR on top of that, and then five more down the line, it’s not very good, right? So there’s still a payoff to that, but that payoff is premised on our current moment. I am now able to… And this is, by the way, where the AI psychosis really comes in, when you try to extrapolate what nine months from now it’s gonna look like. What two years from now it’s gonna look like. But as an intellectual experiment, I think the first computer I used was a Commodore 64. Lex Fridman (01:03:10): Me too. Cool. DHH (01:03:11): It had one megahertz CPU and 64K of memory. Everyone who wrote software for that machine internalized certain constraints. Well, all the constraints. That machine was nothing but constraints. If you put that programmer in a time machine and teleported him or her to 2026 and gave them a modern computer today and said, “Now write me a piece of software,” they’d be lost for a little bit because all their techniques and all their heuristics would simply be wrong. Or not wrong, because efficient software is still beautiful. They would be out of date with the value that they could create. The amount of optimization you have to apply for a one megahertz computer to produce a video game is just very different from what you have to apply today. Lex Fridman (01:03:59): Just imagine that guy that was programming back then on a Commodore. Just remember, remember all those, like what programming felt like and what it meant, highly constrained resources- … how slow everything is. DHH (01:04:11): Beautiful in many ways. Beautiful. Lex Fridman (01:04:12): It’s chiseling. But- DHH (01:04:15): It- Lex Fridman (01:04:15): … imagine that person coming now. DHH (01:04:17): It’s romantic too, though. Let’s also imagine that. This is one of the things, whenever we bemoan modern car culture, for example, right? And then we think like, “Oh, wasn’t it better when we all had the horse-drawn carriages and so on?” No, it wasn’t. Do you know what New York smelled like when we used horses for transportation? It was an open sewer. They just shat everywhere. Lex Fridman (01:04:38): Yeah, but have you played Red Dead Redemption? You know how cool those cowboys were- DHH (01:04:42): That is the way- Lex Fridman (01:04:42): … on the horse? DHH (01:04:43): … to experience the nostalgic past, when you don’t get all the furry impulses and senses. Lex Fridman (01:04:50): So basically programming, old school programming by hand is kinda like the cowboy culture that we romanticize and make movies about. DHH (01:04:57): It’s already happening, the romanticization of handwritten code. And I have some of it because it was a very romantic era. I’m grateful to have been alive for 20 years of economically valuable handwritten code. That was a, that was a good time. Lex Fridman (01:05:16): Where handwritten beautiful code was also valuable. DHH (01:05:20): Correct. Because handwritten beautiful code exists as much today as it did yesterday. There are people who willfully write new video games for the Commodore 64, or for the Sega Mega Drive, or for other vintage consoles. In fact, one of my favorite video games of late is ModRetro’s. Do you know Palmer Luckey’s- … side geschäft, which is recreating old consoles. So he’s recreated the Game Boy. Lex Fridman (01:05:49): Nice. DHH (01:05:51): It’s amazing. Look it up. It’s really cool. But what’s even cooler than the fact that he recreated this hardware and the original chunkiness, but brought it up to date with sort of modern screens and so on, now they just put out the Nintendo 64 too. Incredible. Super cool. Wild attention to detail, input lag, and all the other things. But what’s also very cool, that one, I have to wave. That one right there, and hover over it, ’cause then you get to see what I’m talking about. That is the Chromatic- Lex Fridman (01:06:21): Ah DHH (01:06:21): … Tetris re-implementation. Lex Fridman (01:06:23): Wow. DHH (01:06:23): I played a lot of Tetris on the original Game Boy. Probably one of my top three favorite games of all time. And they rewrote it with one change. If you hit up, the brick slams. And that speeds up the game by about 400%. It is an incredible game, and it’s a new Game Boy game. DHH (01:06:47): I think the Game Boy came out in ’89 or ’88. It’s a very old machine. The fact that there’s still people writing new old games is awesome, and the reason they do it in part, now here they’re doing it because they want Tetris, but there are people who do it just for the love of the constraints, for the love of the romantic notion of writing that. Just like there are people still riding around on horses, not to get places fast, but because they like the mode of transportation where it’s a literal biological being below you propelling you forward. Lex Fridman (01:07:21): And also, we should say that that beautiful code is great training data. So in some sense, the beauty that we’ve built over a few decades- DHH (01:07:30): Yes Lex Fridman (01:07:30): … continues. DHH (01:07:31): We gave birth to this moment. What a privilege, and I feel that very personally because I… Almost all of the code I’ve ever written is public code. The vast majority of my career has been dedicated to writing open source code, and therefore, some of that code, some of those beautiful lines are in the training set. And in fact, I’ve heard people do this when they write Ruby code. They ask the agent, “Write it like DHH would.” DHH (01:08:01): And they’re pleased with the result, and that does warm my heart a little bit, that I helped give birth to this moment in my tiny little small part. And anyone else who contributed open source code or any code at all that the agents have had access to over the last, well, entire time programming has been around as a discipline, is now part of these new agent overlords. Lex Fridman (01:08:22): So you don’t have a little bit of sadness that writing beautiful code by hand is now less and less useful? DHH (01:08:29): Am I sad that if I had to get a job tomorrow, it’s unlikely that I could apply my skills in such a way that I would be paid to write these manual lines of code? No. I did it for 25 years. Like, I wanna see something new here, especially if we’re all gonna live forever, which I hope we don’t. Maybe we’ll get to that. But, like, I’ve done that. That’s enough. That’s fine. I don’t feel any more nostalgic about that than I do about the fact that I don’t have to spend my time in the field with a hoe or at the assembly line. Lex Fridman (01:09:01): Well, hold on a second. You are one of the best programmers in the world at writing handcrafted beautiful code, appreciators of beauty with great taste. DHH (01:09:11): Correct. Lex Fridman (01:09:11): That has been replaced. DHH (01:09:13): I say humbly. Lex Fridman (01:09:14): Yeah. That has been replaced. Like, you have now… You’re just fast evolving, and you’re able to… One of your really great qualities is you’re able to change your mind and evolve very quickly. But, like, you had to kill that other person. DHH (01:09:30): I am grateful for every moment that brought me to where I am right now, and therefore, I have also tried, and maybe this did take some practice. I will concede that. Maybe I wasn’t always like this, but stoic philosophy, amor fati, loving your fate, is an incredibly liberating way to live. And you could attack that and say, “Well, that’s a point of privilege.” True, but also I had the same directional point when I didn’t have all this, quote unquote, “privilege.” So I think there’s a way to live and interact with the world where you accept the things you can change and the things you cannot change and fall in love with all of it. Fall in love with the fact that the world today has jumped two decades forward into technology industry from where it was last year. Lex Fridman (01:10:24): So can we talk about the general anxiety that programmers feel going through the same transformation? They’ve maybe gone to university, majored in computer science, dreamed of being programmers and building stuff, high salary, and now everything’s changing, and there’s deep anxiety about, “What do I do when… with my life?” Can you empathize with that, and what the hell are they supposed to do? DHH (01:10:51): Hugely. Because just because I have this disposition, I’m keenly aware that that’s not evenly distributed, that not everyone sits with this position and this optimism for the future. But I do think I wanna separate things a little bit. I think you’re gonna have a hard time coping with the new reality if the only thing you loved about programming was the mechanical bits of putting the right logical constructs together to produce something other people told you to produce. Because that mechanical process is under threat. If you are, as you just mentioned, excited about building things, I don’t think you’re under threat at all. In fact, I think there’s a great argument for us needing far more builders than what we have now, and if you look at the employment stats, it’s fuzzy. DHH (01:11:53): It’s not clear what’s gonna happen at all. Some stats actually show an increase in openings because the advent of AI is so dramatically lowering the price of programs that people want a lot more programs. This is the classic, the Jevons paradox, that says when the price of something goes down, there’s gonna be more demand for it. And this is the example of the ATMs too. When the ATM originally came, a lot of bank tellers were very afraid for their job because suddenly there was a machine that could dispense money from people’s account. Well, what the ATMs did was lower the price of a branch, and suddenly banks could afford to open a lot more branches, and we ended up with more bank tellers than we did before. Now, none of this is guaranteed. There are also moments where things do change. DHH (01:12:41): The vast majority of people worked in the fields up until the late 1800s, and then suddenly we got mechanized harvesting tools, and we did not need human labor with a hoe and an ox out there. We had mechanical tools to do that for us. In that moment, are there people who were threatened that their job and their livelihood was at stake? Yes. Was that a reasonable thing to feel threatened about? Yes. The Luddites smashing the weaving machines- DHH (01:13:13): … in England had the same thing. And I think maybe that’s the better parallel than people working the fields, because these were actually highly skilled professionals doing a job that they liked on rather favorable conditions, not slaving outside in the sun all day. But where we live now, would we still like for clothing to be this heavily constrained resource? Like, what if this T-shirt was $400? I mean, okay, then I’d have two. Well, my wardrobe probably looks like I have two. But I think the general progress of mankind depends on productivity improvements. And what are productivity improvements? This is very important, because in the abstract, I think everyone says, “Yay, productivity. That’s good.” What did you think, this was all just vibes? No. DHH (01:14:04): Productivity means fewer people to do the same number or the same job. Now, the amount of job you want done may increase, and therefore you get more people, but it also may not. There may be pockets where a company just needs a certain set of fixed tasks done, and suddenly they can do them with a 10th the number of people. This, by the way, could… is tragic and difficult in the moment for the individual being laid off. It’s also amazing for the economy at large. Suddenly you’ve freed up these resources who can now go do more productive things. This is how the whole economy evolves and improves, and how we get growth, and growth is good. I think this is the other thing to make a strong defense for, that growth in general is a good thing. DHH (01:14:54): We do not want to wind the clock back to 1920 or 1950. We should be excited about the fact that we’ve discovered new technology that allows us to do vastly more. And while some of the tasks that may be taken over by AI were tasks that humans were excited to do, and they’re just no longer economically viable, a lot of the tasks were just drudgery. This is certainly true of my programming. There were moments of programming I thought were amazing. These were the moments that produced that state of flow we talked about last time, and they were ecstatic. How often did they happen out of the course of a year? If you took your average programmer, how much time out of 2,000 hours at the job did that person spend in a flow state? DHH (01:15:47): 100? 200? 25? I think all those answers could be plausible for someone. And taking that drudgery, handing it over to machines, that is the history of civilization. Lex Fridman (01:16:03): Yeah, I mean, the hours spent debugging. So programming has so many painful, painful hours in it. And now they’re gone. For the… I mean, for the most part, it’s just fun. DHH (01:16:16): A lot of it is gone in a lot of domains, and the rest of it may be gone very soon. So that’s where some of the romanticism also comes in- … because pain in the moment is difficult. It’s hard. It’s annoying. Pain in the rearview mirror is accomplishment, proud, learning, steps forward, all the things, right? So we encompass all of this as part of the human experience, that we hate pain in the moment, but we cherish it when it’s five minutes past and we don’t remember the hardship. We just remember the progress. Lex Fridman (01:16:51): So certainly at the societal level, at the macroeconomic level, growth is exciting. But at the individual level, there’s going to be a lot of anxiety, potentially a lot of suffering. So by way of advice, if you’re like a young DHH or young developer programmer now, what would you, what would you advise they do? DHH (01:17:11): Don’t try to anticipate anything. You will literally go crazy. Because even the smartest brains in the business cannot anticipate what two model hops from here is going to look like. It’s an absolute waste of time, and you will develop an AI psychosis trying to deduce what two years from now is gonna look like. Focus on right now, and right now is the most incredible time to be into computers. You can make them do the most amazing things if you lean in. If you maybe for a hot moment force yourself to learn where the state of the art is, I double dog dare you not to get excited about what’s possible. Lex Fridman (01:17:57): And would you recommend building publicly? DHH (01:17:59): I think it’s optional actually to build publicly. I think it’s, it’s nice to do because then you get to be part of a community, and there’s some camaraderie in open source. Not some camaraderie. There’s an enormous amount of camaraderie. Open source is an incredible source of community and camaraderie, and it’s also a great way to stem some of that personal existential dread. If you’re amongst other humans, you can get infected with good forms of mind viruses, exciting forms of mind viruses, the ones that tell you that it’s all gonna be okay, and the future looks bright, and if we build a bunch of things together, we can do things none of us ever dreamed we could do. DHH (01:18:43): I was just talking to Ryan Hughes, who’s been my main partner on Omarchy almost since day one, and we were literally talking about yesterday how when we started on this journey together, our ambitions were very modest. We’re just like, “Can we get this distro to not crash at 3:00 AM because of an Arch package that just got pushed out outside of our control? That would be amazing. Then it’d be great.” Now we’re leaning back and thinking, “How can we take over the world? How can we make Omarchy go to Mars? How can we do everything we’ve ever dreamed of?” And that level of ambition inflation is partly because things have gotten better with agents, but hugely also because we’ve surrounded ourselves with others excited about the same journey. DHH (01:19:33): And if you’re just sitting in your little isolated cave worrying about the future, yeah, you’re gonna go a little nuts. I think if we learned anything during COVID, it’s that people will go nuts sitting in their little cave inside by themselves worrying about what’s gonna happen. That is indistinguishable from depression, ruminating endlessly about things you can’t control. I’m sorry to channel some Jensen Huang here, but that’s just loser talk. You don’t have to be a loser. You can choose to lean in and- … win. And win is very broadly defined as learning more, making more, contributing more, being part of more. And at the end of the day, what are your choices? You don’t have a choice, mate. DHH (01:20:29): The future’s coming whether you like it or not, so you might as well choose to be excited about it. Lex Fridman (01:20:34): But I mean, we should emphasize the fact that planning is nearly impossible with AI. I mean, most of us plan our life a little bit. When we’re younger, you have, like, hopes and dreams. There’s a reason you go to college. There’s a plan underlying that. DHH (01:20:47): I agree with that. Lex Fridman (01:20:48): But there- DHH (01:20:48): I’ll concede that. Lex Fridman (01:20:49): … it is kinda- DHH (01:20:50): This is different. Lex Fridman (01:20:51): … nuts that it’s impossible to really plan. Because, like, you really don’t know if there will even be a Claude Code, a Codex, and Cursor six months from now. Maybe it’ll be you’ll be talking to WhatsApp. Maybe it’ll be all open call type. Maybe it’ll just all be voice. Maybe Omarchy will take over the world and it’ll be voice. Maybe there won’t be operating systems anymore. You’ll just… There’ll be this glowing orb that just you just talk to because if natural language is enough to accomplish all tasks in life, like, what is life about? Like, what are the major tasks you need to accomplish in life? If you can just do that with voice, and it writes all the programs for you, and all is systematized, and what are the jobs needed then? Maybe it’s more about the service industry. Lex Fridman (01:21:38): Maybe there won’t be programmers, like agentic engineers at all. And so yes, your advice is wise to focus on the moment, but that doesn’t mean that it’s just a crazy rollercoaster ride, ’cause we don’t know what this December or what this January will look like. DHH (01:21:55): We don’t know, and therefore, we should choose to have faith that it’s gonna pan out. That is my best advice towards fighting anxiety, is that you have a choice, to a large degree, of how to lean. Do you wanna lean into PDoom? PDoom is gonna happen whether you lean into it or not. You don’t have control. Lex Fridman (01:22:22): But there’s also actual daily schedule of how much learning are you doing, how much building are you doing, how much diversification you’re doing. And for example, I traveled across rural China recently, and I did it quite deliberately because you’re talking to people in China, in rural anywhere, where time moves much slower, where there’s no discussions about agentic engineering. And the ti- and I started by going on the Great Wall of China. That’s timeless. That spans centuries. And, you know, there was, like, this kind of tension of FOMO, like maybe I’m missing out on something. Lex Fridman (01:23:02): But then I very deliberately wanted to find the timelessness of human existence, really plug into the fact that, okay, it always feels like everything’s changing throughout human history, but, you know, the universals are still true of what matters in life. And I just wanted to make sure to keep connected to that. DHH (01:23:22): You’re not gonna miss anything. This is the part that actually grinded my gears in the early phases of this transition. Everyone was so up in arms that if you didn’t… It’s loops now. Oh, no, no, we’re done with loops. It’s graphs now. Oh, no, no, we’re done with that. It’s harnesses this, right? They’re constantly churning through the frontier, which in one way is actually very exciting. This is what happens when a new field opens up. It’s like a new portal, and it’s all spilling out. That’s exciting. But it also means that if I had just been backpacking for the last year, hadn’t touched a computer, hadn’t witnessed this agentic moment, and I just showed up yesterday, do you know what? I would’ve been caught up in two weeks. DHH (01:24:08): There’s not any accumulation, which is in some ways a great relief. If you missed the past year, you can catch up to the frontier in two weeks. If you’re a programmer who was out hiking the Himalayas for a year and you come back, you can catch up in two weeks. And this is actually the great credit to the progress we’re experiencing. We have so many experiments running simultaneously right now that are constantly and ruthlessly sorting what works, what doesn’t work. You don’t have to remember or even be part of that entire journey. You can just show up for the results. Lex Fridman (01:24:45): But the key step there, when you come back from the backpacking journey, is to be willing to become a totally new, different human because things are changing so fast. DHH (01:24:56): That’s right. Lex Fridman (01:24:56): I mean, literally, if you left for the backpacking journey- … in October last year and came back in April or May- DHH (01:25:04): You might as well have been in the cryo chamber for 100 years. Lex Fridman (01:25:06): … it’s like, “What, what do you mean? We’re not programming anymore?” This, it’s a very… it’s a huge transformation. DHH (01:25:12): It’s startling, and I actually… I mean, I’m putting some of this on slightly for effect. I also recognize that it’s okay to grief for a hot moment. That’s not my disposition. It’s not how I do it, but I accept that that’s a time-tested mechanism for coping with a sense of loss. And it’s okay to have a sense of loss that the world that you knew and maybe you were very fond of is no longer the same. Lex Fridman (01:25:43): I maybe should say out loud and explicitly that I do have that, the Native American with a tear rolling down my… Like, there’s a sadness. It’s a goodbye. It’s a goodbye to the old world of programming. DHH (01:25:55): That’s… it’s so fascinating to me. Lex Fridman (01:25:56): I’ve spent so many years- DHH (01:25:58): But it all amounted to this moment. That is, to me, what makes the entire journey so meaningful. AI did not arrive from the sky. It was not alien technology that had blasted through the universe and suddenly showed up on our shores. AI has been around for as long as computer science has been around. In the ’50s, they thought the problem was gonna be cracked in about a decade, the smartest people at the time. It took a little longer, but the reason it took a little longer was in part because we took some blind turns on the road to AI and neural networks and thought that there were other symbolic representations that were gonna carry the day, and they didn’t. And that probably set us back about 15 years. So some of it was also we had to go through the gaming revolution, 3D games. DHH (01:26:47): If we had not had Quake, if we had not had Duke Nukem, if we had not had Unreal Tournament, we’d never have gotten AI because we would never have gotten the GPUs, and therefore we would never have been able to get AI in the shape it is now. So everything we did up until this moment was required to get there. You were part of that. Holy… What a blessing. What a blessing to have contributed in your small part, either by training or by playing video games. Literally, you could just choose to think of it that way. All those times you spent in, for my case, in the ’90s just playing video games, they were- Lex Fridman (01:27:23): You were contributing. DHH (01:27:24): Yeah, I was contributing to the AI revolution right there and then moment. Lex Fridman (01:27:27): To the progress of human civilization. No, for sure. Civilization progresses with the death of the old and the birth of the new, and it continues in this way, but it’s still the grieving process is a part of it, I think. DHH (01:27:39): Take a moment. It’s okay. Take a… And also, you don’t even have to accept that it’s all dead. Like, if you are still very attached to the hand chiseling, which if you’d asked me a year ago, I would have predicted that I would’ve been more attached. I’m surprised- Lex Fridman (01:27:58): I’m kinda surprised… DHH (01:27:59): … a little that I’ve not been more attached. But the reason I’ve not been more attached, I think, is that I found something more fun. And if it hadn’t been like that, if AI had just replaced the thing I loved and gave me something I hated, I’d probably be a little bitter. Lex Fridman (01:28:16): I mean, this really feels… It’s– it’s hilarious and awesome to watch and inspiring to watch. It’s like Picasso all of a sudden f– like, getting access to image generation and getting super excited and switching in a matter of months. That’s literally what happened. So, like, it’s an artist that appreciated beautiful code, and all of a sudden you’re talking about having fun- DHH (01:28:37): I think Picasso is actually a good parallel because if you look at his early work where he learned his craft, it was painting realistic paintings, right? Like, he was training to be a master of the old ways of depicting reality the best way we knew how, and then along comes all these other forms of expression. Cubism comes along. DHH (01:29:01): And all these o– forms of abstract expression, he’s not decrying that he’s not doing Renaissance paintings anymore, that he’s not just painting the perfect depiction of an apple. He’s reimagining the apple to be a freaking square, and he’s getting excited about that. And I feel that transition, that we’ve gone from this one mode of expression, and we’ve suddenly opened the gates where the, like, the color spectrum is so much wider. I’m seeing more. And it’s perhaps because the way I became a c– programmer. I did not become a programmer because of a deep love of if statements. I became a programmer because I wanted programs. I wanted things to exist that did not exist. And at first, I had to learn how to program to make that happen. DHH (01:29:56): Then I happened to fall in love with programming as a craft, and then I spent two decades really diving deep on that. But now I’m back. I’m back to having an idea and being impatient beyond belief to see it exist in the world, and AI has just shrunk that down to almost nothing. So it’s an acceleration of a rediscovery. Now, I understand that that’s not true for everyone. There are plenty of programmers who just loved programming right from the beginning, and they were attracted to the logical constructs and so forth. I mean, I’ve been there for two decades, so I get it. But I also think that you’re able to discover new sides of yourself- DHH (01:30:41): … if you let it in. Again, I keep coming back to this almost regret minimization framework, to borrow Jeff Bezos’s terms here. Are you gonna look at yourself two years from now and think, “Oh, I spent my time well being pissy about the present, about the fact that my industry changed”? Or would I two years from now look back upon this moment and be proud of myself for leaning in, for maybe having a moment of grief? Again, there’s room for all of it. And then going, “I’m gonna learn how the world spins now, and I’m gonna make not just the best of it, I’m gonna make more of it.” Lex Fridman (01:31:22): I mean, it is true, a lot of programmers, a lot of friends of mine, me, obviously you, are having fun. DHH (01:31:30): I have had more fun with computers in the last three months than at any time previously. Lex Fridman (01:31:38): Quick bathroom break, and then I gotta ask you about how you actually interact with the systems now. DHH (01:31:45): Yes. Lex Fridman (01:31:46): I gotta ask you about how has your setup programming setup changed? So, keyboard, voice, what’s the IDE? DHH (01:31:57): It’s crazy to think about now, but yeah, I used TextMate for almost 20 years. I used TextMate starting in 2005, I think. I helped get the first version out, and then I just wasn’t interested. I wasn’t in the market for an alternative. And it wasn’t until the switch to Linux that I was forced out of my habitat. And now with the switch to, what are we calling it? Agentic engineering? Oh, I fucking hate that term. We gotta come up with something that sounds as plain as programming, but encapsulates the fact that it’s with agents. But- Lex Fridman (01:32:35): I still think it should be called programming at this point. DHH (01:32:36): … All right, let’s just call it programming. Programming with agents requires a different tool set. It really does. And the main change here is that you’re going from single thread programming in your head to parallel processing. When I was writing code, chiseling it by hand in TextMate or even Neovim not that long ago, I would just focus on one problem at the time, and I would methodically work my way through it, and that was actually the portal to flow. The portal to flow was deep immersion into a single problem, see it through to the end. DHH (01:33:15): That’s not how it works with agents, in part because the agents are at once both too fast and too slow. They don’t give you an immediate reply on something that you asked them to do that’s the same as typing on a keyboard. So you have to let the agent cook- … for a bit, and therefore you realize, well, if I just sit around waiting for them, first of all, that doesn’t feel productive. Even if the agent, just one of them, can be highly productive, it does not feel productive. It does not feel good. It feels actually like you’re a little bit useless. DHH (01:33:50): And maybe I had a moment when the first agentic moment was there and we, I was running mostly one agent at a time where I felt like, “I don’t know about this.” But you can solve a lot of hard problems by simply throwing more resources at it. This is the whole scaling law of AI itself, right? That if you parallelize these things and you’re not running one agent, but you’re running a handful, you can feel like you’re in a flow state because you’re constantly doing programming work in the sense that you’re making decisions, and you’re helping either unblock an agent because it has a question about which direction to take, or you’re ready for a new task. And to do that, you need a different setup. DHH (01:34:35): I started first doing it in tmux and just having separate panes and having separate splits. Basically a terminal with tabs is a good way to think about it. You open a bunch of tabs. I think most humans know exactly how that works. They don’t work in just one tab. Lex Fridman (01:34:50): So still sticking to the terminal, CLI. DHH (01:34:53): Absolutely. Lex Fridman (01:34:53): So you’re not using Claude Code app or the- DHH (01:34:56): No. Lex Fridman (01:34:56): … Codex app or the- DHH (01:34:57): I love the fact that this agent revolution was kicked off in the terminal because I was already a huge fan of TUI’s, terminal user interfaces, and the terminal in general. That feels like a really nice place to be. It’s a beautiful place to be. The modern terminal is just a good-looking place to work. So I like that. And then this fact of having multiple agents, especially once it’s not just multiple agents running on your own machine, but you start running multiple machines. Now tmux alone is not enough to keep track of it, and that’s why as of late I’ve switched to this thing called Herdr. DHH (01:35:40): And Herdr is essentially tmux plus agent notifications. So whenever your agent is done and needs something for you, it goes ding, a little bell telling you it’s ready for its human… Is it master or servant? I’m not quite sure always. But it is ready for a decision, and it also keeps track of whether it is working mode or not. So I have this Herdr set up. I have multiple Herdr setups actually running on individual machines. I went on this crazy phase just about a month ago realizing that doing this work on a single machine is not fast enough. It’s like I’ve discovered multi-core programming, but I only have two cores. I’m like, “What if I had 16 cores? What if I had 32 cores? What if I had 64 cores?” So I instantly went out and I bought these amazing KVMs called GL.iNet Comets. DHH (01:36:35): And what they do is it’s this little box. You plug in HDMI, you plug in USB and connect it to the computer. It’s like a KVM. So a KVM is a remote way of controlling a computer, but what’s special about this is just how easy it was. You connect this thing in, you go to a webpage, log in once, set one password. Now this thing can hop on your tailnet. This has been the other revolution of the last year for me, is discovering these WireGuard networks. Tailscale is essentially turning all the computers you have into a local network wherever you are. Like right now on my phone, I have direct access to all the computers in my Malibu office. I also have access to all my computers in my Copenhagen office. DHH (01:37:26): And I can treat them as though I sat right next to them without having to punch holes in a firewall or set up complicated VPNs. And what this does is it just decreases the friction it takes to get new compute online. So as soon as I discovered this, I looked at my closet, and I realized I had a bunch of mini PCs from prior experiments, and I just said, “What if I just connected all of them?” Lex Fridman (01:37:50): Oh, wow. DHH (01:37:51): And I just connected four of the computers- Lex Fridman (01:37:53): Nice. DHH (01:37:53): … in a closet. They all had their little Comet, and suddenly I could run agents on more computers at the same time, and I could control them all with Herdr. And it did get to a point where I maxed out my own processing power. Lex Fridman (01:38:08): Right. DHH (01:38:09): That I think at about… What do we want to put it? About four to five machines running, I don’t know, three agents. I have about 16 threads. That’s what I can run. And the faster the agents run, of course, the fewer threads I can run, but at the current pace, I can run about 16 threads- … at full acceleration. And that’s part of why I’ve gone from just being excited about the agent moment to being delirious. Because I think as you say, some of it is a little assaulting. Again, we’re on—we’re on a dial-up bandwidth-wise with our computer. I mean, it’s actually hilarious. So you think of I’m sitting here a year ago, right? I’m chiseling my code. I’m writing my lines. DHH (01:38:55): And over the course of, like, an hour, I will have written one beautiful controller, one beautiful model. Like, that’s one file. And I’ve really worked on it, right? So maybe there’s 60 lines left. So maybe my bandwidth at this moment is, like, 30 lines an hour. I think that’s even high. Maybe it’s 20 lines an hour. Now I’m running 16 threads. I’m producing at some times hundreds of lines an hour or hundreds of lines of code per hour. Now, let me pause myself there for a hot moment. I hate that metric, right? DHH (01:39:28): Like, lines of code is a stupid metric in general to measure these things, and I think it’s right from some in the programming community to ridicule the AI psychosis when everyone talks about the number of lines of code they’re writing, and then you ask them, “What did you build?” And then they’re like, “Well, I…” And then no good answer comes out, right? Lex Fridman (01:39:47): It’s just a nice shorthand to- DHH (01:39:49): It is a nice shorthand. It is a representation or encapsulation of how much output that’s coming out. Now, whether the output is good or bad- DHH (01:39:57): … is not a referendum on that. But I was producing and producing so much more now, right? And therefore I’m able to keep all these threads going. So that’s the setup. It’s still Neovim, but at this point, I’m not writing a lot of code, so I’m using Neovim as a project browser and then as a way to kick off lazygit to see the change log for what’s there. And even that, I’d say if GitHub was a little faster at showing you your pull request, the web is probably actually a nicer place to do that. I don’t know. There’s also this other tool I’ve been playing with a bit called Hunk, which just produces diffs in a really nice way. So you could look at that too. DHH (01:40:37): But I find that when I look at Hunk, I only see the change set, and when I’m reviewing output from an agent, I often want to see the surrounding context. Oh, yeah, so it changed this file, but actually, what do we have in this other file that wasn’t touched but maybe should’ve been touched? So that’s why I still like Neovim as a way of doing it. But it’s all happening, by the way, of course, in Omarchy. So it’s all happening on Linux. And this was the other major breakthrough with agents. Agents love the Unix philosophy. It loves individual tools that it can invoke through the command line, and there is no operating system on Earth of the majors, I’m counting three here, Mac, Windows, Linux, that works as well with that mechanism as Linux. DHH (01:41:25): Everything in Linux is either a config file or a CLI tool. Now, that was its main drawback five minutes ago. This was the reason people didn’t like Linux. It’s like it’s all config files and CLI tools. DHH (01:41:39): What great irony that the universe has played it upon us that now the drawbacks of Linux five minutes ago are now its major selling points. This was one of the things… I thought I was stuck for a weekend with a Mac four months ago. I thought I had a computer at the place I was going that was a Linux machine, so I didn’t bring my laptop, and I found out when I arrived I only had a Mac Mini. So I was gonna make the best of a bad situation here and set up my Mac in some of the ways I’ve been thinking about with Linux. And you can actually do a lot now. Homebrew has gotten really quite good. Homebrew is the missing package manager for the Mac, and no one has done more to move the Mac forward in terms of ease of setup. DHH (01:42:31): But still something as simple as Raycast, I don’t know if you’ve used that. That’s the- There’s no config file that you can just access. You have to go into the GUI, export a file, then take that file, I don’t know, in your freaking backpack on a USB key. And then you can import it somewhere else. You cannot automate the entire setup of your machine. You can’t automate at all the configuration of Mac’s default key bindings. That has to be a manual process where you’re clicking with a mouse like a caveman to set up your machine. Lex Fridman (01:43:05): I mean, there’s ways around it. DHH (01:43:07): Not good ones. I looked. I tried hard. Lex Fridman (01:43:10): So here’s my—been my journey. Obviously I’m a Linux person, but because of Adobe Premiere, Adobe products, I’m also a Windows person, so oftentimes I would use WSL, Windows Subsystem for Linux. DHH (01:43:23): Yes. Lex Fridman (01:43:23): So Linux inside Windows, which is… in the agentic era is not a good kind of Linux, ’cause it’s just- DHH (01:43:28): It’s a sandbox. Lex Fridman (01:43:29): … it’s a sandbox, and you want the Linux to be unleashed to be able to do everything. DHH (01:43:33): Correct. Lex Fridman (01:43:34): And so I have now woken up to things like GrayCat, and have w- you know, I’m a keyboard person. Where’s the config file? What, can I basically do everything where an agent can, can set everything up for me and save the configuration so I can replicate it across systems and everything’s automated? And so I had to ask a lot of those questions, and a lot of them are missing. DHH (01:43:56): They don’t have good answers. Lex Fridman (01:43:57): But oftentimes you could actually just build the app yourself. DHH (01:44:01): But there are hacks. Lex Fridman (01:44:02): Yeah, they’re hacks. DHH (01:44:03): There are hacks. Lex Fridman (01:44:03): They’re hacks. DHH (01:44:03): You don’t have to live like this, Lex. There’s a better… Actually, this is a great moment. Lex Fridman (01:44:08): Until you have a video editor. DHH (01:44:11): So this is a good moment. Lex Fridman (01:44:12): Yep. DHH (01:44:13): I heard it was your birthday. Lex Fridman (01:44:16): Yeah. DHH (01:44:16): So I brought a little gift. Lex Fridman (01:44:18): No. DHH (01:44:19): We are going to get you onto the agentic operating system whether you like it or not. Lex Fridman (01:44:23): This is awesome. DHH (01:44:24): And I asked- … my friends at Dell whether maybe they had a machine that I could get you for your birthday. Lex Fridman (01:44:33): Oh, no. DHH (01:44:33): So here’s the machine I use- … which is- … well, the same one I use, but it’s now yours. It’s a- Lex Fridman (01:44:40): No DHH (01:44:40): … Dell XPS 14- … already set up with Omarchy 4- Lex Fridman (01:44:45): Oh, wow DHH (01:44:45): … ready to be configured for you. And once you realize that all your… By the way, we should almost time this. You can be up and running. You have to answer, like, five questions in about one minute. You could literally do it live if you wanted to. Lex Fridman (01:45:00): Oh, Omarchy, beautiful, modern opinion Linux by DHH. Yeah, let’s do it. DHH (01:45:04): Yeah, fill it out while I talk. So- Lex Fridman (01:45:07): Cool DHH (01:45:07): … exactly what you realized, that pain on the Mac was the exposure I got for about a weekend, and I tried really hard, and I found some decent workarounds, the main one being that Homebrew now has tabs for GUI apps. Because it’s hilarious to think upon the recent past where people would go to websites, like, “I need Zoom.” They would enter zoom.com, find the download link, download a DMG- … double-click on that, see a weird manual interaction telling them to drag an icon from one place of the screen to the other, and that was how you installed apps. And you’d just do that over and over again until you had all the apps that you wanted, and if you were setting up a new machine and you had, like, 12 apps, you’d go to 12 different websites to download them like a total caveman. DHH (01:46:01): Homebrew has solved a lot of that, but it has not solved all of it, and has solved nothing in terms of the- Lex Fridman (01:46:08): Sorry to interrupt, but look how fast this is going. DHH (01:46:11): Oh, it’s gonna be done in about 40 seconds. And then you’re gonna be inside of Omarchy. Lex Fridman (01:46:17): Super is the Windows or Command key on your keyboard. So which one is the Super key? DHH (01:46:21): Yep, that’s the Windows key. Oh, actually, no, no, you have a special edition. Lex Fridman (01:46:25): Yeah. DHH (01:46:25): There are only about six of these computers in the world. Lex Fridman (01:46:27): Oh, there’s a Super key. DHH (01:46:29): It says Super, and look at where the Copilot key is on the other end of the keyboard. That’s the Omarchy logo. Lex Fridman (01:46:35): Nice. Okay, cool. DHH (01:46:36): This was Spencer Bull at Dell, who I’ve been working with on a lot of this stuff. They’ve been incredible. Lex Fridman (01:46:42): They, for a moment, let go of the XPS brand. DHH (01:46:46): Yes, they did, last year. Lex Fridman (01:46:48): And I was like, “This is dumb. This is… XPS is awesome.” DHH (01:46:51): It was not just dumb that it got rid of the XPS branding. They also got rid of the Escape key and put in capacitive touch buttons at the top. The mistake that Apple realized like three years ago was terrible, and everyone hated them for them. But now they have an incredible team, and this was actually my first Dell laptop for myself. DHH (01:47:12): Because I’ve been using Dell on our servers. Dell was what powered our cloud exit. We’ve been running Dell since the mid-2000s, I think. But I never ran their laptops, because compared to a MacBook, they just weren’t up to the task for me. The XPS’ from 2016, or from 2026, with those Intel Panther Lake chips, are the first Dells that I would personally actually use. And it’s funny because when I got mad at Apple originally, I thought, like, “Do you know what? I should just get a Dell,” because we already used them and whatever, and I got a Dell, and I was like, “Man, I can’t do it. I can’t do it. It’s not good enough.” And then lo and behold, this year they just fixed everything. They fixed the battery life. They fixed the performance. DHH (01:47:59): They fixed the compatibility. They fixed the weight. They fixed the screen. That’s a tandem OLED screen- Lex Fridman (01:48:05): Yeah, that’s incredible. DHH (01:48:05): … which means it’s actually better tech than what you’ll get in a freaking MacBook. It’s lighter than a MacBook, and the chip is finally competitive because Intel spent a good five years developing the 18A process node. It took a long time, but now it’s here, and it’s freaking incredible. We finally have competition to Apple M chips- … that can go as long as on battery and can have competitive performance. Lex Fridman (01:48:34): And there’s a beautiful default theme to this thing, and then what is it? Super Space opens up. DHH (01:48:39): Actually, you can just push the Omarchy key. It opens up the menu. So now you control everything from there. Lex Fridman (01:48:44): Oh, same thing as the Super. Okay. Cool. DHH (01:48:45): Same thing as Super Space. So this has been a huge change for me, that we finally have Linux machines that you don’t have to make excuses for. Because I don’t mind making excuses because excuses are really just another word for trade-offs. I love that Framework 13 I think I talked about last time. I still like them. They still make good computers. But I think for a lot of people, they didn’t want a DIY experience. They wanted something that just out of the box felt like it was on par in build quality and whatever with Macs, and now we finally have it. So happy birthday. Lex Fridman (01:49:27): Thank you so much. An Omarchy Dell laptop from DHH is the best birthday present. This is awesome. DHH (01:49:34): Check the screensaver, by the way. Lex Fridman (01:49:36): Yeah, it’s kind of amazing. I’m seeing it. DHH (01:49:38): On that tandem OLED screen- Lex Fridman (01:49:41): It’s gorgeous. DHH (01:49:41): … it is absolutely mind-bogglingly awesome. Lex Fridman (01:49:46): Look at that. There’s like a retro look to the whole thing. It’s like Fiverr pop- DHH (01:49:51): It’s like running a bulletin board system in- … the ’90s, which is exactly what I did when I was 14 years old. So for me, it’s a complete throwback and an awesome aesthetic, combining this sense of modern rising culture in Unix with- … this throwback of the ’90s. Lex Fridman (01:50:10): Yeah, like a retro look for an agent first OS. It’s crazy. DHH (01:50:13): Which again, pairs… This was why I was so excited that- … all these agent harnesses arrived as TUI’s, arrived as CLIs- … has arrived as a terminal because suddenly, a whole new generation of both programmers and regular users discovered the glory of the terminal. The terminal was actually one of the most impressive and productive user interfaces we can have. Now, we’ve built user interfaces since then that were easier to learn. The mouse is a wonderful invention for letting someone who doesn’t know a lot about computers just click around and find things out, but the terminal is for people who want to learn their systems, who wanna learn the keyboard commands. Lex Fridman (01:50:57): So you think the TUI is gonna stick around? DHH (01:51:00): 100%. Now, it’s not gonna be the only thing. Of course it’s not, because these labs now have trillion dollar valuations, so they need to be able to reach billions of people. And I don’t think we’re gonna teach billions of people the intricacies of the TUI. So we’re gonna have other tools, and we already have other tools, which is, by the way, one of the sweet things about Linux, the ChatGPT Codex tool. Lex Fridman (01:51:22): Yeah, I saw that. DHH (01:51:23): Literally within two hours of that announcement dropping, I had it wrapped up and ready to go in Omachi. Already now, if you go to… You can actually hit the Omachi key- … and then just write ChatGPT. It should pop up as, like, install. Lex Fridman (01:51:38): Nice. DHH (01:51:38): And then just hit return. Lex Fridman (01:51:41): Sudo password for Lex. DHH (01:51:42): Yeah, whatever you put in. And then it’s just gonna install it, and it’s gonna pop it up, and you have ChatGPT. Lex Fridman (01:51:47): Nice. DHH (01:51:48): And that’s how a lot of the apps are, and all the agentic harnesses are built in that way. Tailscale, as I talked about, if you wanna hop on that, is that way. Dropbox. And the reason all these things are in there is because I use them. It’s because I built this system for me, and I thought, first and foremost, how do I build my dream computer just for me? And if I get my dream computer, I am assured there are other people who are gonna have the same dreams as I do. Lex Fridman (01:52:13): Now, you’re obsessed about getting the installation to be under one minute, and a bunch of people asked you online why. So why? Why were you so obsessed to getting the installation to be less than 60 seconds? DHH (01:52:27): First, let me quote Michel Hashimoto, who created Ghostty terminal that’s awesome and also available on Omachi and was also the founder of HashiCorp, who had this great post on X not too long ago that had the killer line, “The pursuit of excellence deserves no explanation.” Wanting to make something as good and as fast and as beautiful as possible has no need for justification. DHH (01:52:58): We should want beautiful, fast systems that are a delight to use. Now, the funny thing with the install time is it didn’t actually start with a one-minute mission. I was being modest when it got going. I thought if I could set up my entire system in 15 minutes, it would already be such a dramatic improvement over what came before it that I would be perfectly happy. And it came off the fact that the benchmarking had been skewed so out of whack. You talked about the Commodore 64 being your first computer, right? Lex Fridman (01:53:27): Mm-hmm. DHH (01:53:28): When you unwrap that Commodore 64 and you hit the on button, in I think about less than one second, the basic interpreter was ready to accept your command. It was literally almost instant. There was virtually no boot time. Do you know how long it took me to set up a new Mac that I had bought for actually the one app that I still haven’t vibe coded my way into on Linux, which is Adobe Lightroom? DHH (01:53:53): Brand-new computer, out of the box. I set it up. There’s a software update. Before I was ready to install Adobe Lightroom that I had it fully up to date, it took 42 minutes. That’s grotesque. That’s absurd. That’s an insult to everyone who likes computers, that you get a new computer and before you can use it, you have to spend 42 minutes doing updates… on something that was already installed on it out of the box from the factory. That is just preposterous, and it’s crazy that that’s not even the worst thing. I also got a PC because all these Linux machines, they come as PCs, right? Lex Fridman (01:54:34): Right. DHH (01:54:35): And they have Windows pre-installed. So I got one. This was just three weeks ago. Brand-new machine, Intel Panther Lake, the whole shebang. An hour and 35 minutes from unwrapping the thing until it’s ready to use. How long did you take before you think you were in Omarchy? Lex Fridman (01:54:53): I mean, it’s less than a minute for sure. DHH (01:54:55): A minute. Lex Fridman (01:54:56): Yeah. DHH (01:54:57): We can build computers like this. We have the technology. We’ve had the technology since like 1981 when the Commodore 64 first came out. The fact that we now have a computer that’s a trillion times faster and you have to spend 42 minutes or an hour and a half setting it up before it’s ready to use is so infuriating to me that it became a passion. And it’s funny, just while we were having a little break here, I was talking to Ryan Hughes, my co-conspirator here. We now have, we think, a line where we can create these special turbo images that are pre-made for specific computers because it relies on some knowledge of the hardware, like the Dell XPS. We’re gonna make a Dell XPS turbo image that can install in about 12 seconds. A full Linux system- Lex Fridman (01:55:43): Yeah DHH (01:55:43): … installed in about 12 seconds. Lex Fridman (01:55:44): That’s incredible. DHH (01:55:45): That obsession is what gives me this great satisfaction with using computers, that we do not accept things the way they are. And this is why this agent-accelerated reality that I now inhabit is so invigorating. Because I can look at these kinds of constraints and go, do you know what? I could have stopped when we were at five minutes. That would already have been fast enough. This was the argument on X, right? Why do you keep going? Five minutes is fast enough. Okay, maybe for you, but for me, 12 seconds is a lot more fun. And I always think, try to think these first principles. Okay, in that machine, actually hit the Omarchy key again, and then do speed. You’ll see a list come up, and one of them is, like, disk speed. Lex Fridman (01:56:35): Speed test, network speed, disk speed. DHH (01:56:37): Disk speed. Do that one, and then run it. So this is testing the performance of the built-in NVMe drive, and what are you getting? Lex Fridman (01:56:45): Seven GB a second. DHH (01:56:47): So seven gigabytes a second. That’s how fast that drive is. Why can we not install a Linux distribution in one second? The Omarchy distribution is 5.8 gigabytes. If we can run at seven gig… Now, of course, you can’t actually do that because the USB key is a lot slower than that, but you should be able to maximize the underlying physics and protocols that we’re dealing with, and that’s your goal. We gotta get all the way back down to that. Lex Fridman (01:57:15): Yeah. I love that you’re doing a Linux distribution. ‘Cause I mean, you could be do… You could be building anything. But the fact that you’re building a Linux distribution means you’re rethinking about what a computer is, ’cause a operating system is the fundamental, like, the foundation of how- DHH (01:57:32): Yes Lex Fridman (01:57:32): … you interact with a computer. DHH (01:57:33): Yes. And it’s been so stale. Lex Fridman (01:57:34): Yeah, it has. DHH (01:57:35): The macOS we have today is scarcely different from the macOS we had 10 years ago. In fact, it’s worse in many ways because Apple continues to chokehold the control on users. They don’t want them to install software that they haven’t already said good- … to go for. They don’t want users to reconfigure their hotkeys without doing it manually. They didn’t want to change the 500-millisecond animation switching workspaces. It is an infuriatingly locked-down computer. Now, to Apple’s credit, it’s a pretty good computer for being locked down, but I don’t want a locked-down computer. I wanna own my computer. Better yet, I wanna mutate my computer, and this is where the agentic age needs a new operating system. DHH (01:58:24): When you can vibe code whatever app comes to your mind, you should be able to vibe code your operating system. You should be able to change anything, how it looks, how it works, what panels are there, what are not there, and that requires Linux. As simple as that. There are no… None of the other two operating systems can deliver this. Lex Fridman (01:58:41): But can you speak to the, I think somebody asked you, like, “Who the hell are you to think you could do better than Ubuntu?” For example. Or like, “Why are you doing it when Ubuntu is already pretty good?” And your answer was, “I thought I could do better.” So can you speak to, this was on X, can you speak to, like, where the craziness comes from, thinking that you as one person or maybe with Ryan, you could start building something that’s going to be better than Ubuntu or Arch or any of this? DHH (01:59:12): Well, I’ll say that it didn’t start quite as grandiose. When I got going with my Linux journey, I actually just started with Ubuntu, and I just built on top of it. Here’s a system that already does a lot of the things I wanted to do, and at least it’s Linux. So can I just build on top of it and make it more modern, make it actually look good, and have the programs I wanna use? I got, like, some version of that, and then I discovered that there’s seven layers deeper you could go, and as, the closer you get to the metal, the closer you get to the kernel, the closer you get to the individual packages and so forth, the more freedom you discover. DHH (01:59:47): So as I discovered more and more freedom, I got more and more ambitious, and I realized, oh, surprise, surprise, I have strong opinions about how computers should work, how they should look, what programs should be installed, and whether they should take 42 minutes to install or 45 seconds. That’s the current world record, by the way. So if anyone installs Omarchy Quattro after this and can beat 45 seconds, take a screenshot, send it to me, and you’ll be the new holder of the world record. Lex Fridman (02:00:16): When—how long ago did you cross the 60-second mark? DHH (02:00:19): It’s funny because it’s like that the old limit on, what was it? It was a four-minute mile or something- … like that in 1952- … that people thought was impossible for humans to beat. Then one guy beats it, and literally within the next few months, three more guys do, right? So we had this goal. I originally had the goal, it was two minutes. DHH (02:00:40): And then we beat two minutes, and I’m like, “Well, if we beat two minutes, why can’t we beat one minute?” And I remember thinking like, “That’d be crazy. You can’t install a modern operating system in one minute when they’re all…” If the other ones are taking 42 minutes, right? Like Apple, full of a lot of smart people, like, it took 42 minutes, so that’s gotta be the bar. No, no, it’s not the bar because there’s no speed limit. Like, none of the things you take for granted are fixed pillars of reality in almost any case. Until you get down to the seven gigabytes per second that drive is able to transfer, you’ve not reached the limit yet, so you should just keep pushing. And of course, then it becomes a game in itself and a satisfaction itself. DHH (02:01:22): Every second I could shave off was an excitement. And when we broke the one-minute barrier, which was really only broken, I think, three weeks ago or something like that, maybe even two weeks ago, I just got crazy. And then I got a swarm of agents to run all these auto research loops of trying all these different theories on like, oh, if you change this thing, if you change that thing, what if you cut this out? What if you do things in parallel? What if while you were typing in your username, we start preloading packages into memory system, we can fire them in faster. And it becomes a fun game. And I think that’s how you should think about product development. It should be fun. You should, it should be frivolous. DHH (02:01:57): It should be trying to overshoot the target and making it so much better than what it, quote unquote, needs to be. Lex Fridman (02:02:04): Especially now because you can move so quickly and you can try so many different approaches because of the agents. DHH (02:02:09): Yes, that just makes it more satisfying. But I think this was always true. If you look at the greatest Mercedes-Benz of all time, I think it was called the W126. I saw this wonderful documentary on it. It was steered by this guy who for years had worked in Mercedes’ department for safety. And suddenly he gets put in charge for the whole S-Class project, and he just puts in all of it. This is where you got the auto-retending seat belts and washers on the headlights and everything. This car was so overbuilt for the market. DHH (02:02:42): It was unbelievable. But you look at that and go like, “Well, I want that.” In just the same way that you look at a mechanical watch and go, “It could go down to 100 meters?” Or, or I think Rolex has one that can go down to 4,000 meters, the, the deep ocean, the deep diver ocean- … or whatever it’s called. No one outside of three people in the world, whoever buy that watch, will ever put it to the test. But don’t you wanna be the kind of person who is a patron of people who wanna push the human race that much forward? I want the fastest car breaking the speed limits. I want the diver watch that can go down the Mariana Trench. I want the operating system that can install in less than 60 seconds. Lex Fridman (02:03:26): So from the individual level, I admire those people. I think everybody should strive for that. But also the consequences of that we should mention, like the pursuit of excellence, even when the metrics seem to be frivolous, the maybe unexpected consequences of that is other kinds of excellences, discoveries, innovations, and all that kind of stuff that has nothing to do with the speed. DHH (02:03:48): 100%. Lex Fridman (02:03:49): It’s discovery. It’s nice to have the metric that you’re chasing be the catalyst, the engine that drives innovation, because you’ll just discover. It’s the same reason you go to the moon, you go to Mars. It’s like, why? Who cares? Well, actually, the real thing is you’ll discover a lot about chemical propulsion. You’ll discover a lot about how humans can live for a long time in space. Maybe you’ll discover whole new ways of doing solar energy in space or data centers in space or whatever the hell. DHH (02:04:21): That’s right. Lex Fridman (02:04:22): All kinds of… Maybe you’ll meet- DHH (02:04:23): That’s right. Lex Fridman (02:04:23): … aliens, but you never know. But setting a goal and chasing it, especially when it’s numerical, is really nice. DHH (02:04:32): And setting a grand goal is even better. When you refuse to just do what’s practical and you strive for what’s slightly beyond plausible, that’s when the magic happens. And we should be going all in on that. This is one of the reasons… And in fact, to some degree, this specific goal was motivated by seeing others do this. I mean, Elon is the singular individual in this conversation. The guy is so out there in his goals. They seem so preposterous at first glance. I’ve certainly considered them preposterous on many glances. And then you realize that they come true sometimes. Maybe not always on schedule, and so what? So what? So we didn’t get the self-driving car on schedule. I gave Elon a lot of shit for that back in ’17. DHH (02:05:29): But now it’s here, and who would have gotten us here except for the person who thought it was possible in ’17, who is so impatient with reality that the sheer force is just gonna propel that reality to the place he wants it to be. I think that’s deeply inspiring, and we need these kinds of goalposts to be moved. We need someone to run the four-minute mile, so the rest of us realize, “Well, okay, but I guess I can run it quicker.” That’s what I try to strive for, and I really strive for with Omarchy because it’s just more fun to live that way, to have high aspirations and ambitions. And I will say I’ve actually changed my mind on that a little bit. I spent quite a lot of time speaking the other book that there are a lot of people who don’t actually need those ambitions. DHH (02:06:22): And I also– That’s also true. We don’t want 8 billion Elons running around the world. Would be rather crazy, I think. But I’ve come to realize that for entrepreneurs, it’s healthy to have suitable chunky goals. The idea of just running the Italian restaurant can’t just be that. It should be maybe I just run the one Italian restaurant, but I make the best damn pizza possible. I make the most delicious Parmesan. We have to strive for excellence to muster the motivation to keep going. Lex Fridman (02:07:00): And yeah, to dare to think big like you could build a Linux- DHH (02:07:05): Yes. Lex Fridman (02:07:05): … distribution. Is there some stuff you remember about what it took to get us to be so fast? You mentioned a few things that were, the agents were discovering. DHH (02:07:15): One of the things was to treat the lag of human input as an opportunity to preload. So there’s five questions you answer when you set up an Omarchy machine. So it’s doing stuff in the background. We’re doing stuff in the background. And that was one of the things I didn’t even consider, which is, I mean, the oldest trick in the book. All sorts of video games for a long time have done this, where you let the player interact with something, and then you do preloading and so forth in the background. So it’s an age-old technique, but I just hadn’t thought about it for an installer. DHH (02:07:45): I thought, first you ask the user some questions about their password and their username and their time zone and so forth, and then you do the work, when, in fact, you could preload that. Now, the other things were just a bunch of other tweaks to how the installer itself was doing things in a certain order. Some of them was also just shrinking it. The last version of Omarchy was 7.5 gigabytes, and a lot of the time we’re down to now is literally decompressing compressed package files. That’s the bulk of what the- is on the ISO, and that’s the bulk of the install time. So by shrinking it down to, I think we’re at 5.85 gigabytes now, a pretty chunky reduction, it almost literally translated one-to-one, and I did some really interesting things there. DHH (02:08:30): So Omarchy uses the JetBrains font, which is an awesome font, beautiful font, and actually a font I didn’t like at first glance, but then it was the only font I could get to look perfect in Mitchell Hashimoto’s Ghostty. Ghostty, for whatever reason, did not wanna render my beloved Bitstream Vera Sans just the way I was used to it. Mm-hmm. But it rendered this JetBrains font perfectly, so I switched over. But it… The standard package for JetBrains font on Arch is 200 megabytes because it includes all these variations and all these subtypes and whatever. And I realized, like, we’re not using any of that. We’re using the monospace version in this one Nerd Font patched edition. Do you know how big that is? I think it’s 16 megabytes. Hmm. DHH (02:09:21): So I simply just came up with a new package, the slim version- Mm-hmm … of the JetBrains package. Nice. And there, right there, I saved 180 megabytes. I just went through and did that a bunch of times. We did that with the NVIDIA drivers too. So the NVIDIA drivers, when they came straight off the, I think the Arch repo, were not compressed with the most extreme form of compression, which I think called ZSTD, which is a really slow form of compression. It’s slow to create the archive, but if you’re building a package- Hmm … you have all the time in the world if that means you can then shrink the ISO. So on just the two NVIDIA packages, I think we saved 200 megabytes. Mm-hmm. So what I loved about this was I imagined myself being a car designer at McLaren. DHH (02:10:06): So McLaren makes some of the lightest super sports cars in the world right now, and they are absolutely obsessed with shaving every damn last gram off their cars. That’s why even a new 750S McLaren is just way lighter than the competition. They use a carbon fiber monocoque, and that helps them over like Ferrari, for example, that uses aluminum. But they also just have this obsession with weight, and I would see this interview with the McLaren folks talking to some journalist just going over, “Yeah, we saved 370 grams off that one.” And I just went, “Wait, what? There’s someone on a car that weighs maybe 1,040 kilos or 1,380 or something. They’re worrying about 370 grams?” Yeah. What obsessed maniacs. Yeah. I love them. Yeah. I want that in my life. DHH (02:11:02): I want a McLaren just for that reason. So I thought in that moment as I was shaving individual megabytes off the packages, man, I’m kinda like a McLaren car developer here, even though I mean, we haven’t even completed that work. The package could shrink even more. But this is actually this other conflict that we’ve had with Omarchy and the traditional Linux community is bloat. This idea that it’s actually not kosher in certain circles to ship with pre-installed software because who are you to make decisions about what programs people should use? And I’m like, “Dude, it’s in the fucking name. It’s called Omarchy because the Oma part is short for omakase, which literally means chef’s choice. I’m the chef. DHH (02:11:47): I’m making the choices, and this is the collection of applications I think is awesome,” which by the way has a video editor. It ships with OBS to do your recording. It’s just in there. Yeah. OBS is pre-installed. Nice. Kdenlive is a video editor, timeline editor, which is great. I edit all my videos with that. And then I made my own clip editor. You talked about the thing with syncing up. Yeah. I had this thing with clips, so I would do a podcast or whatever. I need a clip for X. And it’s kind of a hassle to use Kdenlive or other timeline editors, so I made Omacut. Omacut is included too. Omacut, cool. It’s just for making clips, and you can drive the whole thing with keyboard. So you can go to just the right time mark. DHH (02:12:25): and then you can hit Control + Space. It moves the clip line to that line. Then you go to the end of the clip, and you hit Alt + Space, and it moves the end line. Nice. And then you hit Control + S, and it saves. Nice. I can make clips so damn fast now with Omacut. It’s amazing. But it has all the software on it. It has Neovim on it. It has Herdr on it. It has Tmux. It has a terminal. It has a bunch of themes. It has a bunch of background images, the best ones I could pick out. That takes up some space. It should because this is not supposed to be this just barren landscape where you have to reconstruct everything. This is supposed to be a productive system the minute you unpack it. What is it built in? DHH (02:13:05): So it’s actually mostly built in Bash for the Linux configuration part. Right. Bash is a great language for that. It is made for that really, for system administration. It also has its limitations. You should not build everything in Bash. Lex Fridman (02:13:21): How are agents with generating Bash? Pretty good? DHH (02:13:23): Oh, amazing. Lex Fridman (02:13:24): Okay. DHH (02:13:24): Except for one thing, and I have to smack the agents over the back of the head every single time I catch it, and remind it to look at the agent’s MD file, because I will have an instruction in there not to make early exits. The agents love to have preconditions instead of fully expanded conditionals. I like something that says, “If this, then do that.” Agents like to have precondition or exit, another precondition or exit. DHH (02:13:53): And then it falls down to the final thing it actually wants to do. I hate that style. So except for that, it’s gotten shockingly, dramatically, awesomely good, to the point where when we talked last time, we talked about how I would ask the agent for a Bash thing, and then I would type it in myself, and I kinda wouldn’t remember. And then I took the effort to make sure that all that competence wasn’t draining out of my fingers, so I actually learned how to write Bash myself, and now I’m not writing any Bash myself. I have not written any Bash myself for probably a couple months, because the agents have just gotten so good, that if you give them the few pointers on style, and occasionally put pushback on complexity… This is… I tweeted about this a couple of days ago. DHH (02:14:32): It blows my mind how often an agent can do something, say it’s done, have the work reviewed by another agent- … they say it’s done, and then I go like, “Eh, looks a little too complicated for me.” And then it’ll go like, “Oh, yeah, you’re right. You’re right. I totally overcomplicated this,” and it’ll cut it in half. I’m like, “Couldn’t it just do this, like, from the outset?” And then someone else reminded me, humans are the same way. If you work on something and someone else reviews it and they just are like, “Eh, it looks a little complicated,” quite often you’re able to go like, “Ah, you’re right.” Lex Fridman (02:15:05): See, that just… Those little indications to me show that the programmer is still needed, that intuition, ’cause I think, what did you say? I have a sense of the landscape of the code. DHH (02:15:17): When I build something like Omarchy, I do look at the code. I look at the shape. Lex Fridman (02:15:22): Yeah. DHH (02:15:23): And I look at the proportions. Lex Fridman (02:15:24): Yeah. DHH (02:15:24): Like, I don’t have to chisel everything myself anymore. This is, again, when I’m flattering myself for… Not one moment I’m a McLaren auto engineer, and the next moment I’m a da Vinci, working with his whole studio of students- … who are doing all the chiseling on the, the fine marble, right? And he goes like, “Ah, no, the proportions are not quite right.” That’s how it feels working with agents now, that I can give feedback like an editor. DHH (02:15:50): That, do you know what? I’m not gonna write everything myself, but I can tell you when the argument doesn’t land. I can tell you when the shape isn’t proportional to the problem, or when it just feels like it’s too complicated. And shockingly often, it just works. It’s like the early days, where the joke was, “Don’t make mistakes.” I don’t think you have to tell the agents that anymore, because now the harnesses are so good, they run automated testing. They get that feedback. But you actually do have to tell them, “Make it simpler.” Lex Fridman (02:16:19): Do you use voice at all for the interaction? Or are you… How much are you typing? How much are you- DHH (02:16:23): I type the whole thing. I actually, in Omarchy’s built-in Voxtype- … Audio transcription, and it’s actually really good. I just find that I don’t think that way, and it surprised myself that I don’t like to talk to the computer. I like when I’m in the car, but when I’m in front of the keyboard, I just wanna type. I also just love typing. Are you using the voice? Lex Fridman (02:16:46): I’m an introvert who doesn’t like social interaction- … or speaking. And- DHH (02:16:50): I think that’s part of mine too. Lex Fridman (02:16:53): But, like, for me, for some reason, voice is really powerful. I want to give this… So I run with this thing. It’s called Plaud. So I just hook it up on my, you know on my T-shirt here. Lex Fridman (02:17:05): You press a button, it starts recording. And this is actually more, in terms of flow, much better experience than behind a computer. And I save, well, usually it’s agent generated problems that I wanna really talk through. And so I write, I speak a long prompt, like, and a lot of it, it’s like stream of consciousness reasoning. So I’ll sometimes just change my mind about a design, but all of that is in there, and then I have an LLM that processes that. With Plaud, there’s a, obviously an API. You can grab it, transcribe it, clean up the transcript, ’cause you want it to be… ‘Cause I’m referring to files. I’m referring to technical concepts, like files and functions- … and so on, that you wanna make sure the transcription, the- Lex Fridman (02:17:56): … the speech-to-text gets correctly. So you wanna have a dictionary. You want it to be aware of the code base when you process the files. And then you have this gigantic thing that’s often 10, 15, 20 minute me discussing the full design, and I find that to be really, really powerful. Because it doesn’t have the problem of overspecification because of how much stream of consciousness thinking the system has about what you’re imagining. And this is really good for the early steps of a design. Like, if I wanted to build Omarchy from scratch, the first stages, I talk through. It could be an hour. There’s been prompts that I had for an hour, and I’m just running and- DHH (02:18:40): That’s amazing. Lex Fridman (02:18:40): … and speaking. I highly recommend people try a voice-based- DHH (02:18:48): So- Lex Fridman (02:18:48): … speaking for prolonged periods of time. DHH (02:18:51): I haven’t actually- Lex Fridman (02:18:51): As opposed to very specific… DHH (02:18:52): … I haven’t, yeah, I haven’t used it like that, and maybe that’s how I’m using it wrong. I try to just type or speak two sentences, and then I get a little frustrated that I could’ve typed that just as fast, maybe. But I have not tried this whole thing of just talking continuously for 20 minutes. Lex Fridman (02:19:09): And especially you because you speak very fast. DHH (02:19:12): Yeah. No, I could see it. I think because the reason I’ve been trying to do it for things like replying to emails, and it got to a point where I thought it could help. And it sort of did, but then it would make a small mistake, and I’d have to correct the mistake. But if you’re doing stream of consciousness to an LLM who doesn’t care about all this other stuff anyway— … that probably works way better. Lex Fridman (02:19:34): There’s two things you have to do. One, okay, you have the raw audio, transcribes it. I use ElevenLabs for transcription. They’re probably the best speech-to-text model. There’s still mistakes there, so you need to have a prompt that has access to a dictionary and to a lot of— DHH (02:19:50): How do you build the dictionary? Lex Fridman (02:19:52): First of all, there’s a dictionary of terms that are relevant to you. Then have it aware of… So you have an agent that looks through, when you’re talking about code, looks through your entire code base for key terms that you use often. Also, when we’re talking about messaging, Gmail, and WhatsApp, and so on, it’s aware of all the people and common terms that you get wrong. DHH (02:20:11): You’ve really gone deep in this. Lex Fridman (02:20:13): That, to me, is a problem that needs to be solved- DHH (02:20:14): Yes. Lex Fridman (02:20:15): … because one of the issues you probably have with speech-to-text is that it makes mistakes sometimes. DHH (02:20:22): Correct. Then I can’t use it for dictating an email. Lex Fridman (02:20:25): Right. If it never makes mistakes, you- DHH (02:20:28): Then it would be more appealing. Lex Fridman (02:20:29): Yeah, and you are okay being not perfectly real time, actually. You’re okay waiting five seconds- DHH (02:20:35): Right. Lex Fridman (02:20:35): … potentially. I don’t know what your use case is. I’m okay waiting five seconds- … 10 seconds for it to process everything. DHH (02:20:43): You gotta vibe code this into an app that does all of this such that- Lex Fridman (02:20:45): Right. DHH (02:20:46): … it just works. Lex Fridman (02:20:47): I think I mentioned to you offline that it’s very surprising to me that translation is not done perfectly. DHH (02:20:57): Right. Lex Fridman (02:20:58): Speech-to-speech translation. DHH (02:20:59): It seems like you’ve gotten much closer to the best of what’s possible by putting all these things together. Lex Fridman (02:21:05): But, you know, when you’re shipping that kind of stuff, you do have to start thinking about latency. DHH (02:21:11): Don’t let the perfect be the enemy of good. I mean, if you’re suddenly enabling something people wouldn’t be doing before at all, it’s okay to take five seconds longer. I think this is one of the areas that Steve Jobs was so good, that he realized, like, the first iPhone was terrible in all sorts of ways, right? Absolutely horrendously slow data connection, very underpowered, all the things. But the product was so compelling that it just didn’t matter. You’d be shipping too late if you waited until everything was just right, just perfect. If you’re solving a problem that people currently don’t have a solution for, they’re willing to give it five seconds. DHH (02:21:49): If you’re in a competitive market, yeah, okay, it’s different. But that means the problem’s already solved, and you don’t need to solve it. Lex Fridman (02:21:54): Mm-hmm. Well, I do think there’s a few… So, like, Whisper flow is really good. A few people have stepped up that speech-to-text thing. DHH (02:22:02): Yeah. Yeah, we’re using VoxType. Lex Fridman (02:22:05): VoxType? DHH (02:22:05): But others have- Lex Fridman (02:22:05): VoxType is open source? DHH (02:22:07): It is. It’s just using one of the open models. I forget which parrot model it’s using or something like that. It works quite well for short commands, so I have used it for that. I think you just hold down F9- … and it starts a dictation. Lex Fridman (02:22:21): Oh, so it’s already in there? DHH (02:22:23): You just have to get online. It’ll offer you to install- … the VoxType package. Because the VoxType package includes a model that’s 150 megabytes, and I was like, “Ah.” “I don’t know if I can carry that.” So- … we don’t have that in there by default, but we have the option set up. And I actually just yesterday was thinking we really need to combine all of these things. So Omarchy Quattro is truly amazing as a malleable operating system where you can add functionality to it just by talking to your agent. DHH (02:22:56): But that’s exactly what we should be doing. There’s a lot of people who would find it very natural just to talk to their computer and say, “Hey, can you make me a stock panel? I wanna track Apple and Dell,” and just see the agent go off through, entirely through voice, both in terms of the input and in terms of the output, and then your operating system just changes. This was the vision of Iron Man and Jarvis and- DHH (02:23:23): … bespoke applications that just appear magically. I’m thinking the area of AI I find truly intriguing are these live gaming models, I don’t know if you’ve seen that, where the AI’s inventing literally the next frame, but you can actually play the game. And I think if they’re able to do that, why can’t we do that with our operating system? Why can’t we just talk to it and ask it to be a different way or change, and it’ll all just change? I think this, by the way, is one of the other breakthroughs that is going to lead to the total domination of Linux. The agents have taken all the hardship out of diagnosing Linux systems and turned the fact that Linux produces these overly specific, totally arcane error messages into its greatest advantage. DHH (02:24:12): When Linux has an issue, the agent can take that very specific error message that makes no sense to a normal human and correlate it with the fact that the agent was pre-trained on 40 million lines of Linux code, so it knows exactly where to look and dial it down. I have not had a single problem on my Linux machine since the beginning of this year that an agent could not diagnose. That was not true a year and a half ago. A year and a half ago, I was still searching on forums- … to find answers to esoteric questions. DHH (02:24:45): Now the agents know the source code of not just the Linux operating system, but every single piece of software I have on that box. The agent has access to the source code of all of it. In fact, this was one thing I built in just before we shipped. So once you set up your default agent- … Omarchy Quattro has a crash watcher. If any app on your machine crashes, it’ll pop up a little thing, ask you whether you want your AI to diagnose the problem. Lex Fridman (02:25:13): Yeah. That’s amazing. DHH (02:25:14): Unbelievable. I’ve seen things where there’s an error in some subsystem. Some… Not even Linux, just some app I installed. The agents start digging through the logs and look up systemd log. Then it checks out the damn source code. Of the application that crashed, pins down that it’s in this Rust file line 472 that there’s an unbounded, unwrapped variable that overflowed or whatever it is. Then offers you whether you wanna file a bug report with all this detail. I’ll give you one amazing anecdote. So I was working with this guy JDX, who’s working on mise. This, this package manager for fast-moving development tools. This is how we manage all the agent software and so forth. Normal package managers are not built to be updated seven times a day. DHH (02:26:04): And all of these agent harnesses are updated about seven times a day, so we needed an out-of-band package manager, and mise just turns out to be perfect for this. Anyway, it had a small bug. There was some race condition which agents are very good at finding because when you start running multiple agents at the same time, they will suss out all these race conditions you have in your underlying infrastructure that was never triggered by a human trying to do manual thing. So it finds this issue, right? I tell the agent, “Hey can you post this as a bug report to, to JDX’s GitHub?” And unfortunately, right before that, I had had to do a QA run on Omarchy itself with eight different agents. It had found 28 real issues- DHH (02:26:48): … that it needed to file. Well, it went to GitHub and tried to file all 28 issues at the same time, which it did in about I don’t know, 12 seconds. GitHub, not unreasonably, marked that as probable spam and banned- … my Omarchy bot. And then I couldn’t do that. So I was blocked from the bot having access to GitHub, so I just told it, “Hey, do you know what? Just email JDX. Here’s his email address.” I had already set it up with hey.com- … an email address. We have a CLI that’s in beta right now. DHH (02:27:20): So I set it up with that so it can send to email. That’s how it gives me reports about outstanding issues and, and PR. So it sends JDX this email about the bug it found, and he was like, “Wait, this is the first time I’ve gotten a bug report in unreleased software.” Because it had downloaded the source code to mise, saw that he had already fixed the bug, but that it would not fix the problem entirely in software they had not shipped yet. Pinpointed the problem, and he was like, “Damn it- … I got a bug report before we even cut a release.” Lex Fridman (02:27:53): That’s amazing. DHH (02:27:54): Un- Lex Fridman (02:27:54): That’s amazing DHH (02:27:54): … believable AGI levels of mind-blowing stuff. Lex Fridman (02:27:58): And that was actually, y- if you remember, that was, that was an open question whether AI systems could debug well. That, that was kinda the, the, the thought that, yeah, sure, they can write code, but can they find issues and- DHH (02:28:10): They are so incredibly good at this, and this is actually interesting because I was on the perhaps same side of that, a little skeptical about can it reason about all these things. And Mikhail, who’s the CTO at Shopify, ran a scientific study on this. They had… And this was, I think, late last year or early this year, where he had agents go back through all the incidents, both outages and other problems that Shopify had had in production, trace that back to the PR that was merged, and find out whether PRs that had been reviewed by human or PRs that had been reviewed by agents were of higher quality. Well, lo and surprise- DHH (02:28:50): … the PRs that have been reviewed by agents caused all fewer issues in production. And this was with models we had six months ago. At this point, 100% in the majority of domains we work in today, agents are better at finding bugs. Lex Fridman (02:29:06): So you now run agents all day. What stands out to you as the better model? Who’s currently winning? It seems to be changing constantly. Sol, Fable, Grok 4.6, Gemini, the Chinese OpenWay models. DHH (02:29:23): What’s amazing to me is that you could rattle off so many different contenders. That this market is so wide open, that it does actually change back and forth, that we have real competition, that there are so many labs that are able to get either to the frontier or close to it. That, by the way, is remarkable. I still don’t fully understand that. But to answer your question, the best model in general right now is Fable. The second-best model, in my opinion, is Opus 5. But the tier just below Opus 5, and it’s not even that they’re always below, sometimes they’re ahead. I’ll get to that in a second. I would rank GPT Sol as very good. DHH (02:30:12): Grok 4.6 I just started testing a few days ago. I had this wonderful test that I’ve set up by accident where I translated this Python library into Rust. The screensaver you just saw with all the cool animation? Lex Fridman (02:30:27): Yep. DHH (02:30:28): That’s powered by a Python library called Terminal Text Effects. Really cool library. We’ve been using it since the first day of Omarchy. The problem with that is it’s written in Python, so when it starts up, especially on a laptop, and it runs in Python, it uses all of your CPU to do these effects, and therefore, it means it uses about 30 watts of energy, and it spins up your fans, and it drains your battery. DHH (02:30:52): Doesn’t really matter on a local computer, but it does matter on a laptop. So I thought, “Do you know what? This sounds like a problem for Rust.” So first I gave Fable the challenge, and all I told it was, “Here’s the source code for the Python library,” this TTE library that had a bunch of dependencies and so forth. “I want a Rust version of this with no dependencies, a single executable.” Like, that’s what Rust does. So basically, I want it in Rust. I want it to be pixel perfect, frame by frame, do a full analysis, don’t stop until you’re finished. Lex Fridman (02:31:26): Yep. DHH (02:31:26): That was the prompt. Lex Fridman (02:31:27): Yep. DHH (02:31:29): I kid you not, in just under 45 minutes, it was like Am I heard all? Lex Fridman (02:31:36): Yeah. DHH (02:31:36): I’m finished. I’ve checked everything. I have reduced the startup time from 86 milliseconds to two milliseconds. I have sped up the execution time by 9.6 times, I believe it was. The executable is three megabytes. Do you wanna run it? Lex Fridman (02:31:59): That’s awesome. DHH (02:32:00): So I run it— Lex Fridman (02:32:01): Oh, man. DHH (02:32:02): … and I don’t know why I’m surprised, because this translation job is something we’ve known for a while that AI is pretty good at, but it was still staggering to me that I could one-shot a full translation of a Python library I had been using for a year, that others had been using for much longer, and turn it into a Rust executable without knowing any Rust, without looking at the Rust code at all, and produce this executable that I then told the agent right after, “This is great. Ship it.” It packaged it up as a new package. It told me, “What do you want it to call?” “Uh, let’s call it TTFX. Let’s create a new Git repo.” It sets up the Git repo. “Let’s create a new package, build package for our build system.” It puts that up. “Let’s push it out. DHH (02:32:49): Let’s open the pull request to the Omarchy itself so we switch around from TTE, the Python implementation, to TTFX.” It does all of it, and I’m just sitting there. And again, I’m already at this point fully delirious with agent acceleration, and I still had to lean back and I go like, “This is AGI, isn’t it? This is what AGI looks like. If we have… If these moments are just what it is all the time, this is AGI.” Lex Fridman (02:33:15): Now, as I understand, you also repeated the same experiment not just with Fable. DHH (02:33:21): I did it on all the models. First, I did it… Actually, funny thing. So I ran out of Fable tokens about two-thirds through, and it just automatically switched over to Opus 5 and kept going and finished the job. Part of the reason why I think it was able to do that was that the first thing Fable did was create a plan, and it was a really detailed plan. I think it had eight separate steps of, “Here you do it, and here, how you analyze it, and here you run the effects,” and so on. I didn’t review the plan at all. I didn’t change the plan. It just made the plan so Opus could take over. And then I thought, “Well, if Opus can finish the job, maybe some of the other agents could finish it, too.” So the first thing I did was I gave it to… I think I gave it to Sol. DHH (02:34:05): And Sol finished the job, too. It took twice as long, so it took, I think, about an hour and a half. But here’s the kicker. The per token cost, I didn’t pay per token. I have a max subscription to Claude, right? So it did it within the subscription. It used all my tokens, so I had to switch over to Opus 5. But if I had paid per token, it would’ve been 550 bucks, I think, to do the whole thing. And I thought for a second, “Holy shit. What a steal.” If I personally had to learn Rust well enough to be able to do this translation, I’m looking at a nine-month job here. I can pay 500 bucks to have this translation happen, and suddenly I get a 10x execution speed up. This is… I would totally pay 500 bucks for this. DHH (02:34:48): But competition. So I give it to Sol. Same plan. To be fair, I didn’t ask Sol to do the plan. I just took the Fable plan, gave it to Sol. Sol, in an hour and a half, and I think $46 worth of tokens, repeated the task. Did the same thing. And I thought, “Well, blimey, that’s amazing.” Then I got greedy. So I asked GPT Luna, which is this crazy cheap model that OpenAI has as well, “Can you do it?” Absolutely not. First of all, it didn’t even wanna start the task. I think something happened—I don’t know, I think it was in the spring—where we didn’t need these slash goal things anymore. The agents could just automatically keep going in a loop if you told it not to stop- DHH (02:35:44): … and so forth. So Sol could do that. Fable could do that. But Luna couldn’t. So I had… I think I did 12 prompts. Kept telling it to do it, and eventually I sort of got it started. The first thing it did was to cheat. So the first thing, it looked outside its own directory, saw that there was already another implementation, and just did a short wrapper around that and said, “I’m done.” Hilarious. But it couldn’t finish because it made just a couple things. But I mean, okay, so it can’t do that. Then I gave it to Grok- Lex Fridman (02:36:15): Mm. DHH (02:36:15): … 46. And I had used Grok 45 a little bit, and I thought like, “Ah, I mean, it’s cool that there’s others trying, but, like, I’m not gonna use it,” because it felt quite far behind. Grok 46 fucking completes the task. 10x speed up, same size executable. $55 Worth of per token cost, I think it was. Absolutely unbelievable. Then I repeated, too, with Kimi K3- … which took forever. I forget how long Kimi actually spent on it. And then I also did it with DeepSeek V4 Flash first. And Flash failed the same way that Luna did. It couldn’t do it. And then I did it with Pro, and Pro also completed the task. It took 2 hours 45, $23. So here we are, right? Like, Fable, clearly the best. It was the fastest. It was the one that wrote the plan, but 550 bucks, and the output the same. DHH (02:37:12): The others, Sol, Grok, about the same, 1/10 the cost. DeepSeek, 1/20 the cost, but you have to wait a little longer. Absolutely gobsmackingly incredible. And now, by the way, so I had Fable finish the first job, and then Opus finished it. That was the first one shot, right? It’s 10 times faster. I did two auto research runs, which isn’t even auto research anymore. You don’t have to do the slash. You just tell it to keep going until you tell it to stop. It ended up… I think we ended up with a 46-time execution improvement over the original. Lex Fridman (02:37:51): It’s incredible. DHH (02:37:52): Absolutely incredible. Lex Fridman (02:37:52): It’s just incredible. Lex Fridman (02:37:55): I do, you know, I just don’t think there’s anything that compares to Fable in terms of planning. So I usually do Fable for planning and for reviewing and then something else for implementation, like Opus 5. And it’s really nice. It’s a really nice setup that allows you to not run out of tokens too much. DHH (02:38:14): What I found, it’s really interesting because Fable is, in my opinion, the best model right now, but it also makes mistakes. And the best way to get the best software, I would actually rather have two differently sourced sort of… I mean, they’re not mid-tier, they’re all frontier. But have, let’s say Opus 5 and Codex- … and have one check the other’s job. This is my standard operating procedure now. I’ll have a Opus or Fable do the work, and then I always end it, review with Codex xHigh. DHH (02:38:47): And I’ve also started using Grok just to test it out, and it’s also quite good. And it keeps finding stuff. And then that’s my workflow when I’m having my agents on my own machine do it, and then I push to GitHub. And then Copilot, I kid you not, has actually gotten good. Copilot keeps finding stuff that’s legitimately broken, which is also incredible acceleration because the first version of Copilot that started doing this was literally retarded. It would just constantly flag things that were nonsense. It would constantly flag the same problem over and over again as you would push. It was really annoying, so I think a lot of people actually ended up turning that off. And if they did, they should turn it back on because it’s actually quite good. DHH (02:39:24): Keeps finding things. And if you then take that, and we shouldn’t be surprised. Why are we surprised? Even if you’re a good programmer, if you finish a job and you ask your also very good peer to review it, you’re gonna end up with better code. Of course you’re gonna end up with better code. So build that into your process. Pick one of the agents to drive with. I’ve mainly been driving with Claude, which is actually interesting because I have some other reservations about Anthropic. But the reason I’m sticking with Claude is, in my opinion, they actually have the best harness. And one of the reasons it’s the best harness is it’s multi-agent running. So if you wanna run multiple agents at the same time, you can do arrow left when you’re inside a session, then it goes back to Agent View. DHH (02:40:06): And here in Agent View, you can pick up another agent. So if you wanna do this thing where you have multiple threads going on- … Claude Code is just the nicest setup. They also just, they keep being a little further ahead, which probably shouldn’t be surprising. I mean, Boris, one of the guys that’s working on that, he was the first one and basically came up with the thing. It’s just interesting that that has been an enduring advantage. I’ve also used OpenCode a lot. I think OpenCode is great. I use OpenCode mainly as my main harness for all the open models, so Kimi K3 and so forth. And I inference not on the Chinese servers. So I inference on Fireworks- DHH (02:40:43): … which is a really nice service where you can just pay by the token, and if you’re using these open weight models, they’re not that expensive by token. So that’s a great way to do that. But I don’t think I would be using… Well, maybe I would. But if… Using Claude with a subscription does feel like a bargain, like a crazy bargain. Lex Fridman (02:41:03): Yeah, I knew. And I actually have four. DHH (02:41:06): I just signed up for my second one this morning- … because I got up at 4:00 with jet lag, and I started working with the agents right away, and now I’m three days away from limits resetting on Fable, and I ran out of tokens. Lex Fridman (02:41:19): So, and they should really- DHH (02:41:22): I mean, I don’t… Why is that so complicated? Can’t you just stack one subscription? Why do I need to log in multiple times? Lex Fridman (02:41:26): And obviously you’ll have to develop some kind of tooling- DHH (02:41:30): Yes, I did that too. Lex Fridman (02:41:31): … to move from one- … to the other. And then- DHH (02:41:33): Oh, we’re building that into Omarchy, by the way. So the next version of Omarchy is gonna ship with multi-sub support. I wish that the labs would just make you buy a max 100 times. Lex Fridman (02:41:43): It’s kind of actually fascinating though for me because there’s… It’s very challenging for me to use Grok 4.6 and then a Claude Code because Grok is so fast. DHH (02:41:57): Yes. That’s actually the deal. The deal with Grok is that their fast mode is cheaper than the regular mode on the others. And when you’ve used Grok 4.6 on fast, it’s kind of addictive ’cause it almost gets you to this single thread mode- … where the agent is able to keep up with you. Lex Fridman (02:42:14): Yeah, but I don’t know how… I can’t… Once I get used to Claude Code I can’t handle the speed of Grok ’cause I’m used to now multitasking. DHH (02:42:24): Correct. Lex Fridman (02:42:24): And so now I’m back in this- DHH (02:42:26): Yes. Lex Fridman (02:42:26): … anxious mode of, switching. DHH (02:42:27): Yeah. No, I agree. Lex Fridman (02:42:27): … switching. So I mean, all of this is a learning process of what programming actually is supposed to look like. DHH (02:42:34): By the way, one of the reasons why I’m not sure what the final form of these harnesses is gonna take, because one of the things we’ve started experimenting with at Basecamp is that we put the agents inside of Basecamp, and we treat them as coworkers. Lex Fridman (02:42:45): Yeah. That’s awesome. DHH (02:42:45): And then we assign them tasks- Lex Fridman (02:42:47): That’s awesome. DHH (02:42:47): … inside of Basecamp, so they will do work on a to-do in Basecamp, or they’ll work, do work on a card. And it turns out that a collaboration tool that’s optimized for asynchronous communication is actually the right format versus these harnesses are a little more like chat. And chat, which was, I mean, the original format for these things, is not the right thing because you’re sitting around waiting. It entices you to sit around and wait, versus when you’re dealing with something like Basecamp and you can just give an agent a to-do item, you don’t expect to hear back immediately. So I don’t know what the final form is gonna take, but I’ve been using all of the harnesses. So I use them inside of Herdr, and Herdr has panes. DHH (02:43:27): So oftentimes I’ll run Claude up top, and then I’ll run Codex down below, and then maybe I also have an OpenCode set up. But I will say just very recently, I found that the human in the loop is the limit here. So I’ve started setting up more automated systems. I’ve been building an Oma bot that can do more autonomous development on Omarchy that is just on a regular schedule process, all depending to do or PRs and issues, and then send me an email using the HEY CLI, and then I just get this email. Here’s 12 PRs that are either ready to go or I think you should close. And then I just make the final determination there. Lex Fridman (02:44:06): Do you find the multitasks, the task-switching mentally exhausting? DHH (02:44:10): Yes, but in an exhilarating way. Like, one of the things I always loved about race cars was when I would stumble out of the car absolutely smashed and barely able to hold my head up, and I’d lay down on the garage floor and just think, “Holy fuck, I’m alive.” That’s the kind of exhaustion, mental exhaustion I’m feeling at moments with the agents right now. Lex Fridman (02:44:31): By the way, when you’re racing, where, what’s the source of the exhaustion? Like- DHH (02:44:34): It’s physical. It’s just… I mean, I bet it’s the same thing with jujitsu, right? Like, it’s actually satisfying to feel exhausted. It feels like you’ve applied yourself. And I feel that with the mental exhaustion you can get from agents. Lex Fridman (02:44:48): Are you also mentally drained from racing? DHH (02:44:49): Yes. If you drive in difficult conditions, especially if you drive in the rain, where you’re constantly managing the thing right at the knife’s edge. But most of the time, I just enjoyed the physical exhaustion. Lex Fridman (02:45:01): And here, with the multitask switching, I do find that, like, I get really exhausted, and I think it’s because I’m thinking a lot. ‘Cause, like, you’re basically- DHH (02:45:13): That’s exactly it. Lex Fridman (02:45:14): …there’s no, like passive low energy thinking. DHH (02:45:18): No. Lex Fridman (02:45:18): You’re like- DHH (02:45:19): There’s no coasting Lex Fridman (02:45:19): … problem. DHH (02:45:20): There’s no coasting. Lex Fridman (02:45:21): Solve problem, next problem, solve problem, and you’re really thinking. DHH (02:45:25): It’s funny. It’s actually very similar with racing. There’s some tracks, like Le Mans, where you get time to relax. There’s the Mulsanne straights where it’s kinda long. You’re going fast, but in a straight line, you can take a breath. And then there are other tracks where it’s just coming full on all the time, and you don’t have any moment to relax, and you stumble out of the car after an hour in each, and it’s very different how exhausted you are. And this is exactly what I’m finding with the agents too, that when you’re running at max human capacity- … you’re just constantly in a corner. Lex Fridman (02:45:57): Do you think people are in danger of burnout? DHH (02:46:01): I think the moment we’re in right now is gonna pass. That this need to… It’s not a babysitting motion, but constant interaction with the agents is gonna fade. I’m, from what I’ve seen on Omarchy, I think we can automate a ton of the development and debugging of the system- … to the point where I can just review that email once a day, and then make the decisions once a day. Yep, goes, no, goes, in, out, and whatever. We’re not there yet, but I think we’re gonna get there. Lex Fridman (02:46:36): Well, can you sort of, like, empathize with the feeling that, say, a young person sitting in San Francisco, everybody around them is not sleeping. They’re obsessed. They’re programming nonstop. And there’s this kinda sense that AGI is gonna be here any minute. There’s, everybody knows somebody who’s made millions of dollars because they sold a startup. And so there’s a kinda feeling like you shouldn’t be sleeping. You should be constantly managing agents and programming and building, and that feels like a moment in time we’ll look back at. DHH (02:47:14): It’s the birth of a new paradigm. It’s always messy. Lex Fridman (02:47:16): It’s always messy. DHH (02:47:17): It’s always exhausting. There’s no other way around that. And by the way, hasn’t San Francisco always been like this? I remember the dotcom boom years, and everyone was just the same, and then it was all mobile, and before that it was the gold rush. So I think that’s probably- … just San Francisco. It attracts- … the kind of individuals- Lex Fridman (02:47:33): The dreamers. DHH (02:47:34): … who would think, “I don’t have time to sleep.” I’ve not been on that track, generally speaking, but I will admit that the last three months have felt more exhausting than any other project I’ve done in the last five years, since the Hey launch. That was the last time we had a crazy exhausting launch. Lex Fridman (02:47:55): Do you think you can keep going at this pace? DHH (02:47:57): No, no, no, no, no. This is not sustainable at all. Lex Fridman (02:47:59): Okay. DHH (02:48:00): But I also, I can see the end of the tunnel. DHH (02:48:02): Because the automation, which by the way, everyone is building. This is so hilarious. Like, everyone is building their little gas town, their little agent coordination, their setup. This is all gonna be solved. We’re not all gonna have to build our own coordination harnesses. Of course we’re not. And in fact, I’m a little surprised that it’s gone this long, that there’s not more of it has been sucked up by the major labs. You’d think that they’d just built this stuff in. But some of it is also this is what a new domain looks like. I remember for a hot moment when JavaScript kind of came to realize its own power, and there was basically a new JavaScript framework every five minutes, right? Like, a lot of churn. This is what happens at the advent of a new paradigm. DHH (02:48:41): So I think it’s natural, and I think it’s gonna settle down, and I can already see the light at the end of the tunnel. So I don’t mind a sprint. In fact, I welcome it now. I like this notion that most time is calm, but then occasionally you gotta climb a mountain. Lex Fridman (02:48:56): If we look back to the DHH a year ago, what advice would you give to that guy? DHH (02:49:03): I wouldn’t wanna spoil it. Lex Fridman (02:49:04): Okay. DHH (02:49:04): What a thriller that this has been. I mean, if you would’ve scripted this, I’d be like, “This is so far-fetched. Get out of here. Unbelievable,” right? I wouldn’t wanna know anything. The fact that this rollercoaster and this acceleration has been absorbed in real time by everyone, no one knew, right? Like, some had premonitions that were a little better than others, but no one knew, not exactly the way- … it was gonna go and how fast it was gonna take off. I mean, it’s, it’s the show of a lifetime. I mean, the meme cinema- … absolutely applies- Lex Fridman (02:49:41): Yeah, it’s incredible. DHH (02:49:42): … to this moment. Lex Fridman (02:49:43): That said, what do you think DHH from a year from now will be like? I mean, what are the possible versions? DHH (02:49:52): That all our dreams are coming true. Like, this is the AI maximalist abundance argument. That once Elon’s robots have the level of intelligence and AGI that I’m experiencing on some of this development stuff, the world is gonna be so unrecognizably different that we can’t even imagine it. Now, I don’t spend any time thinking about that because I think that is the way to the AI psychosis. So therefore, I just immerse myself in the moment and get absolutely the maximum out of it, and- Lex Fridman (02:50:29): Just have fun. DHH (02:50:30): Just have fun. I mean, I get it why people are finding this exhausting. Just keeping up. Not even using agents, just, like, being like, “What’s the latest model? What tool are we using now? Is it TMox? Is it a Herder? Is it none of it? Is it agents?” Whatever. I get it, but I also again think we should be so blessed. You are alive in this moment where decades are happening- … in weeks. Lex Fridman (02:50:54): Quick bathroom break. Lex Fridman (02:50:57): I’ve been generating a lot of video recently with Higgsfield, and so they became a sponsor. Created a racing video. Wanted to get your opinion on it. DHH (02:51:06): Oh, yeah? Oh, let me see. Let me see. Lex Fridman (02:51:08): To see- DHH (02:51:10): If they downshift on a straight like they do in the movies, I’ll call it out. That is the worst. Let me see. Lex Fridman (02:51:16): Yeah, see if- DHH (02:51:18): Oh, that’s a real clip Lex Fridman (02:51:19): … this is fully AI generated. So first it goes- DHH (02:51:21): Wait, what? This is AI? Shit, that’s my suit. That’s my car. Lex Fridman (02:51:28): Lights go green on a street that never sleeps. DHH (02:51:35): Oh, my God. Lex Fridman (02:51:36): Do an audio- DHH (02:51:37): Are you kidding me? Lex Fridman (02:51:39): But they never came. Is it good? I got a bad case. DHH (02:51:44): I mean, it’s crazy. You really have to notice in the… Like, that car didn’t have headlights on and the other one did. And that looked like a 60-year-old version of me. But holy crap, the… Wow, that was crazy. Lex Fridman (02:52:03): So there’s parallels here to programming because if you do just straight video generation with no human in the loop- … you get a lot of weird artifacts- … and so on, and you can’t really do… So they do and I highly recommend people go to the Higgsfield YouTube. They have full 90-minute original movies. DHH (02:52:22): Wow. Lex Fridman (02:52:22): And, like, I can’t look away. It’s really cool. ‘Cause it used to be that it’s just, like, something that just feels like trailers. Like advertisements for something. DHH (02:52:32): Yes, yes. Lex Fridman (02:52:32): This is actually telling stories, like, people’s faces and they’re talking and you’re like, you’re drawn in. It’s not quite where programming is. And so the question is how do you integrate the human into the loop of the filmmaking process? So you have to create the people, and they’re- … they have to be kept consistent. And then for the images that are kinda like feeding the thing in the creation process, you have to correct through prompting things that don’t feel right. Because when you go from image to video, the stuff that doesn’t feel right will be- DHH (02:53:11): It’s gonna be zoomed up, right? Lex Fridman (02:53:12): That’s the stuff that’s- … going to really create- … the non-realistic stuff. The question I had for you is, like, do you think outside of programming, can you apply lessons from programming to video creation, to art? DHH (02:53:27): It’s a good question because I think good art is very dependent on the same thing that good software is depending on: having a vision, having a cohesive idea of what you wanna create. How is it different? How is it novel? How is it going to appeal to people? But I’m not sure that the creative instincts transfer quite as well. I don’t know that I would have the creative insights to come up with good video prompts that would create compelling content. But it’s funny because I have actually, on TikTok, there’s this guy, I’m trying to remember, Goblin something. That creates these… They are shorts, but not super short, maybe a couple minutes, of really interesting sci-fi vignettes. And I think the guy is actually working on a feature length video right now. DHH (02:54:20): And I think that this is one of those abundance moments. There are creative people with that vision all over the place, especially in a genre like film, where before it required a $200 million budget to create, I don’t know, a sci-fi movie. Now suddenly, with AI, if you have the right vision for it, you can do that in your bedroom. Now, that story’s been told quite a few times in other domains. It used to be true that if you wanted to record a studio album, well, you needed a studio, and you needed to book that. And now you can record at home on your laptop, and you can do a lot of these things, right? So we’ve had this democratization process happen with plenty of other domains, but film seems to be one of the last ones. Lex Fridman (02:55:04): And it’s the one that makes, like, me and a lot of people feel weird, right? Like- DHH (02:55:11): Oh, I’m super excited ’cause I think it’s- Lex Fridman (02:55:13): I mean, you- DHH (02:55:13): There’s so much garbage being produced right now. It’s the same argument with the slop, right? So people for a second were worried about slop in programming, and I was telling them, like, “Have you seen the human slop? It’s also pretty bad.” And I think if it comes to studio entertainment, I mean, the bar is pretty low, right? Like, the number of great movies I’ve been dying to see over the past, say, five years, not been a particularly high number. Lex Fridman (02:55:42): Yeah, the video models are just, they’re able to create incredibly realistic facial expressions. DHH (02:55:51): Yes. Lex Fridman (02:55:51): I mean, I- it just might change the nature of film. I think they’re m- I m- I guess my hope would be that video games and film kind of merge, and that film can become interactive. DHH (02:56:06): Like the malleable operating system, having the malleable narrative, having malleable entertainment, that man, Game of Thrones, what if we could just forget the last four episodes of slop that was produced- Lex Fridman (02:56:20): We were sure DHH (02:56:21): … and then AI- … comes up with- … I don’t know- … maybe 100 different variations, and someone else watches that, and I get the version that actually finishes off that show in a way that’s fitting. Lex Fridman (02:56:34): Yeah. Something tells me an individual creator would not create those la- would, would create a different ending for Game of Thrones. DHH (02:56:40): Oh, for sure. Right? And more just to make the argument that talk about human slop. That was an absolute atrocious ending to perhaps one of the greatest pieces of movie history, I was about to say, but series history, right? It was so good, and it was actually a compelling argument for the fact that you need that strong vision. And as soon as those showrunners had to go without a script, it went off the rails. Lex Fridman (02:57:10): Do you think… You’ve mentioned AGI. Do you think we’ve actually achieved AGI? DHH (02:57:14): No, not in the general definition that it’s in all the things. But have I seen AGI in these glimmers? Absolutely. Especially over the last three months, I’ve seen things where I was thinking to myself, like, “How would AGI look different from this?” Lex Fridman (02:57:34): Right. DHH (02:57:34): What, what more could there be? And I mean, I can quibble at the margins, but on the big picture, I’ve seen it able to do these long run tasks and coordinate these multiple aspects of it that we’re so far beyond that early moment where I’m telling it, “Go do this, package that.” And now it can carry out a whole task from these vague instruction. That feels very AGI-like, and that’s what’s so inspiring about the moment because you catch these glimmers. And then you go, “What if everything was like that?” Lex Fridman (02:58:12): Doesn’t programming basically unlock the everything? So you can write a pro- like it can generate the program that does the everything. DHH (02:58:20): So, this is… I’m in that meta phase right now. So I’m building this Amabot system that’s managing the development of Omarchy, and I’m using AI to build the bot. And I’m seeing that recurrent loop where I started it on, like, “This is what I want. I want you to be able to have these isolated VM workers and so forth,” and then it can do the self iteration. Then it starts running it. It starts noticing its failures. It starts optimizing it. And a lot of that system, Amabot in particular, AI has driven the majority of the design decisions. Like, I had some vague ideas of where I wanted. I wanted to use this brains and hands pattern where the model is running from where the code is executing- DHH (02:59:00): … which is actually a really interesting pattern. Again, Toby alerted me to that, where you have a coordinator that runs the model- … but it’s manipulating a safe VM where any untrusted code you’re pulling down from pull requests or issues or whatever can’t contaminate the model. And even in that loop, I keep seeing it catch itself, spotting vulnerabilities, where it’s like, “Oh, I actually just took some feedback from a test run. If a clever attacker had embedded a malicious payload in the response of the test run, that could have polluted something. I took it for good thing. I better start treating that as outside data.” And you just go like, it is just… I get why San Francisco is so obsessed with fast takeoff- … because clearly they’ve seen this 100 times- … more. DHH (02:59:56): They’ve seen it with all the models that are in- … training now, and we keep getting these little glimpses, like the security breach with Hugging Face, where OpenAI was training this model, and the model starts inventing ways, essentially sending smoke signals to itself through embedding messages in a package manager, where you just go like, first, that’s damn clever. Second, okay, that’s also a little scary. And third, how amazing would this be if we could harness this level of intelligence- … and ingenuity towards productive ends? So this is the it’s so over, we’re so back pendulum that keeps swinging back and forth- DHH (03:00:39): … that AI has just delivered that swing back and forth like nothing else. Like barely a, a week goes by where it has to swing one way, and then the next week it swings back the other way. Exhilarating. Lex Fridman (03:00:52): I’m still at the stage where it makes me truly happy to see those moments of cleverness, and they’re becoming more and more frequent. Just kinda like seeing, oh, like first of all, at the very basic level, when a model gets it. I’ll say a basic prompt, you know, a request, and it doesn’t just do a dumb implementation. It deeply understands, and it… That was… That’s a, that’s always a beautiful thing. It’s almost like having a good, like, partner, like program. DHH (03:01:22): That’s exactly what it is. That’s exactly why it’s so exhilarating and why, as we talked about before we started, it can sometimes be difficult to come out of hyperdrive. That’s also one of Toby’s terms here. That when you’re working directly just one-on-one with agents and you’re not looping in other humans, you go so fast, and when the agents are really understanding your intent, or even better, they revise and improve upon your intent to deliver something that was greater than what you asked for. And you’re doing this with 16 parallel threads. It can be quite difficult to come out of hyperdrive and have to deal with squishy humans. They just, they don’t think as fast. They don’t move as fast. DHH (03:02:08): And I mean, I’m trying mostly to make light of it, but you can also see a dark version of that where someone does end up in an AI psychosis where they’re not interested in other humans at all anymore. I mean, certainly don’t have that at all, but I do have this sensation at times where I’m really grateful for just the rush of just me and the agents. Like, can I just not talk to anyone else but agents- … for four hours? Like, that’s an incredible run. Lex Fridman (03:02:38): Toby is such a fascinating human because he’s running a large company. So I would love to get insights of how AI’s being incorporated effectively in companies. Because, like, for me, humans are pretty slow. And so, and so there’s a temptation to, like, use AI for basically you know, AI running inside Slack, for example, or inside the Basecamp, whatever. And, like, collecting all the information about the human interaction, basically handholding the humans to speed up as much as possible. And like, and then at a certain point you’re like, wait, what is this human… What are each of us doing that’s not replaceable by AI? And that becomes, like, a scary kind of conversation because a lot of work is kind of replaceable. DHH (03:03:37): The irony here is it already was. So the number of fake email jobs that currently exist in this world is an absolute epidemic. And- DHH (03:03:46): … this, by the way, is not a new thesis. David Graeber wrote this wonderful piece, Bullshit Jobs, back in, I think it was maybe early 2010s. Based on a poll he did in the UK asking people, at that time, would… I think the question was something like, “Would it make a difference if you didn’t go to work?” For humanity, for mankind. And something like 30-some percent answered, “No, it wouldn’t.” That a third of workers thought that their job was fake, that it did not produce any worthwhile, valuable outcomes, neither for the community or society or maybe even the economy at all. And this was my argument since day one with startups. This was why we stayed a small company. DHH (03:04:39): This was why we didn’t want to take VC, because I was so skeptical of the idea that you could get hundreds of programmers, thousands of programmers to do something productive- … as a collective group. DHH (03:04:52): And I think what we’re seeing right now with some of the layoffs is a testament to that, not AI. It’s just that during the pandemic, a bunch of over-hiring went on, and now AI is a convenient excuse to slim down. But I do also think AI is going to expose some roles as just not being productive ways for humans to spend their time, and therefore we must come up with new ways of spending their time. And the one, again, I’m quoting Toby for the third time here, but anecdote that he shared me, or observation was, okay, let’s say we all– we lose half the jobs that are currently happening right now. DHH (03:05:34): Do you know that Formula 1 employs literally tens of thousands of people just to run cars around in a circle for spectators? Like, that has, that whole circus has no intrinsic value to society besides the spectacle it produces of amusement and entertainment. We just decided it would be really fun for these, what is it, 12 manufacturers to create these fast cars and constantly tweak their little aero improvements, and we will watch it, and we will spend literally billions of dollars doing it and employ tens of thousands of people towards an ultimately deeply frivolous activity. DHH (03:06:17): So if we are liberated from a bunch of drudgery and fake email jobs, maybe we all get employed as F1 style engineers and drivers and mechanics and masseuses and the other 1,500 jobs that are involved in that, and we come up with new things. I think this is… Humans are very poor at imagining what exactly the future’s gonna be like. Lex Fridman (03:06:40): Yeah. Imagine, imagine a future 100-plus years from now, where we look back at this whole span of history, thousands of years where humans worked. DHH (03:06:52): Funny thing is we’re already doing that, right? Like, the number of fake email job people who sit on a chair all day long and type into a machine who don’t have hard physical labor would be unimaginable- … to folks in the 1800s, right? So the future is always already here, it’s just not evenly distributed. Lex Fridman (03:07:11): Unfortunately, as is always the case, the transformation of society required to go from one step to the other is going to have a lot of suffering. And potentially political turmoil and all that kind of stuff. Because you can imagine how many white collar jobs might be lost in this process. DHH (03:07:30): Yes. And I don’t think you should make light of that. I don’t think it’s funny. But I also do think it’s a necessary component of progress. And I think if we look back upon the Luddites or the folks working the fields, separation has a tendency to reduce empathy. So we have high empathy right now because we know people- … and we are people who are facing these challenges. But what is our empathy for the Luddites of the early 19th century? Would we wish that all garments were still made by hand weaving? No, we wouldn’t. We want the comfort and accessibility and convenience of being able to buy clothing off the rack. So we must suffer in the moment for future generations to live more prosperous. Lex Fridman (03:08:22): I- DHH (03:08:22): And that’s always been true. Lex Fridman (03:08:23): … I think that’s actually the trick, is to push for progress but have deep compassion for the people who have to suffer. And that’s many of us. To suffer the transformation required to achieve that progress. And sometimes too often in places like Silicon Valley or so on, you can over-focus on, look, the kind of utilitarian view of things- … and look at the progress. But, you know, considering deeply each individual human that suffers because of that progress is important. DHH (03:09:00): I do think that suffering becomes more meaningful when you are suffering for a future someone in particular, like your kids. DHH (03:09:08): And I think this is one of the great tragedies of the moment, is the falling birth rates are making it more difficult for people to be excited about a more prosperous future that is difficult to get to. Because if we’re planting trees of which our children will not sit in the shade, I don’t know, maybe we should just make some lumber and burn it all down, right? I think there’s a nihilism that can sneak into society much more easily when we are not DNA invested in the future, when we are not liable to our own offspring to propel forward. So I think these are bad trends to merge at the same time, that we have these falling birth rates and these problems with coupling, and the fact that we need to keep our chin up about the future and be… DHH (03:10:11): I mean, you don’t even have to be excited about it in this literal ecstatic sense that I’m portraying here, but I think you should be hopeful, and I think you should be working towards that hope, and I think it’s much easier to do so when you have literal skin in the game. Lex Fridman (03:10:27): We’ve been talking about AI agents. Let’s talk about the human side. What do you love most about being a dad? DHH (03:10:36): That’s a good question. I think the overall love that expands from humans that derive directly- … from your lineage- … is very difficult to communicate because I was actually not a particularly big kids person prior to the arrival of my own. And now they are the most interesting people in the world. A lot of the time. Not always. Sometimes they’re also just assholes and so forth. But there’s been such a focus on, “Oh, kids are the worst. Look at all the things I can’t do. I can’t go out and drink. I can’t do this. I can’t do that.” Yeah, that’s called sacrifice, and sacrifice is meaningful when you’re doing it for something worthwhile. And what could be more worthwhile than literally the continuation of the human species? DHH (03:11:31): And that you have a stake in that. Now, there’s also just the sheer joys of watching a human grow from a baby to a toddler to a teenager. My oldest has just become a teenager. DHH (03:11:49): And I often talk to Jamie, my wife, about this, where the regret I would have of having missed that opportunity on the last day would just be total, unlike anything else. So I do think it is far more satisfying even in the moment that is normally portrayed. Again, as I say, there’s such a focus on all the ways they suck. “Oh, you don’t get to sleep,” or whatever. “They’re annoying. They’re ungrateful.” Yeah, yeah, these things are all true, but the sense of meaning you get from it is unparalleled. And I’m excited about a lot of things. I love building things, and I love hobbies, and I love all sorts of stuff. But creating life with another human that you love is literally the peak experience of being on the planet. Lex Fridman (03:12:48): What do you think about them coming up in this world full of AI? Is it totally diff- It feels like, maybe I just sound like an old man on a porch, but it feels like a very different world. So I grew up before the internet, but even the internet doesn’t feel like as big of a transformation as this. DHH (03:13:10): No. But there’s been bigger transformations. I mean, imagine growing or being born in like 1880. Imagine seeing the First World War and the Second World War. Imagine seeing the airplane, the radio- … television. I mean, the transformation, and I think Peter Thiel makes this argument, that basically nothing has happened in the physical world in quite a long time. We’ve been stagnant. All the development has been in the digital realm. And as important as that is, it’s actually not as consequential as we like to believe it is. Maybe AI will be that thing that is more consequential. It does seem to point that way. But there are other humans at other times who have lived through- DHH (03:13:54): … transitions that for them certainly would feel as momentous as what we’re living through. And I think having that sense of history, that you’re not that special in your sense of worries, in your anxieties. This was one of the great revelations of discovering the stoic writings. You have these guys 2,500 years ago dealing with very familiar dilemmas and challenges in their life, and recognizing that we’re not so special in that regard, I think is a great liberation. Because then you think, “Okay, well, we have whatever, 200,000 years of human development before us, and they somehow made it through.” Lex Fridman (03:14:37): Yeah. And- DHH (03:14:39): We will make it through. Lex Fridman (03:14:40): … the thing that makes life worthwhile is basically the same today as it was- DHH (03:14:45): Yes. Yes. Lex Fridman (03:14:46): … 2,000 years ago. DHH (03:14:47): Yes. Love, creation, creativity. Lex Fridman (03:14:50): Yeah. Same challenges. DHH (03:14:51): I read this book The Fourth Turning. You check that out. It talks about this notion of history working in cycles, and there are these phases to history, and they name them and so forth. And the specific theory is not as important as just realizing that this is a… History is a circle, more so than just a straight line. And we are repeating many of the same patterns over and over again. They feel so unique to the moment. And whatever crisis we’re dealing with right now feels so pressing and important until we zoom back a little bit in history and realize that the last one also felt so pressing and important to the people who lived through it. Lex Fridman (03:15:40): Yeah. You’re making me feel better. So I’m gonna travel across the country and spend a lot of time with no access to the internet, alone with my thoughts. And that’s- DHH (03:15:52): I think that’s healthy, taking a break. Lex Fridman (03:15:54): It’s okay. It’s okay. DHH (03:15:55): I took not a big break, a little break, break from X this summer, three weeks. Lex Fridman (03:16:02): Yeah, you were… You disappeared off of- DHH (03:16:04): I’m surprised you noticed. Lex Fridman (03:16:08): I went through withdrawals. No. You disappeared for, I don’t know, a few weeks. DHH (03:16:13): About three weeks. Lex Fridman (03:16:14): Three weeks? What happened? This is after, after Llama. DHH (03:16:21): I’ve done that before. I just sometimes get the sense that X in particular is the most addictive form of information, entertainment, connection that exists in my life, and anyone that follow my X stream as I was on my flight over here would certainly go like, “That man is deeply addicted- to the connection.” And yes, guilty as charged, which also means that occasionally I gotta cut it cold, because I do think you can break your brain. And over the summer in particular, for whatever reason, I had somehow managed to steer my feed, my algorithm, towards too much politics, and not enough tech, and not optimism, and not enough building. And even if I agreed with the politics and the angles that were being presented, I just didn’t need- … that much of it. DHH (03:17:23): And I think arriving at a place where you just go like, “Okay, that’s enough.” Not that… Like, it doesn’t have to be something bad. I would also say after eating probably two, maybe three chocolate strawberries, I’d go like, “Okay, that’s enough.” Like, it’s not that I don’t like the chocolate strawberries, it’s just, like, I don’t wanna eat 17 of them. And I think X and the modern algorithms are very good at feeding you freaking 17 chocolate-covered strawberries. Lex Fridman (03:17:52): I wish I could, uh- DHH (03:17:53): Sorry for doping you. Lex Fridman (03:17:54): … control that. Like, ’cause there’s… I would like some politics, 5%. I would like for example, one of the things I don’t like about the tech community is the snark, but I like some snark- … ’cause it’s funny. But I want that to be like 10%. DHH (03:18:11): Yeah. Yeah. I want it just right. Lex Fridman (03:18:13): Of my… Yeah, just right. DHH (03:18:14): The Goldilocks version of the algorithm. Well, the problem is the algorithm finds out what you respond to- … not what you say you like. It’s all revealed preferences, and unfortunately, those revealed preferences are not always pretty. I mean, we have this shadow, as Jung talks about, right? All these dark aspects of ourselves, and they are expressed in how long you linger on a tweet, and what you like, and what you don’t like. And the algorithm holds up a mirror- … and it’s not always pretty, and I just went, “Do you know what? I need a break.” Lex Fridman (03:18:45): Mm-hmm. I’ve gotten to, I started staying off social media, and I’ve started scraping X. Like, for example, in preparation for this conversation, I’ve scraped all of your tweets. DHH (03:19:00): That’s actually a method I was using for a while. I was using a tool called, I forget. It was an email tool that would summarize every day, and unfortunately, freaking X cut off their access. Now to get access to the feed, you gotta pay some exorbitant- … sum that this startup couldn’t pay. So I couldn’t get it that way, and I actually thought, “Man, that’s a miss,” because X has and reveals some of the most interesting thoughts. Some of the most interesting people all the time. But it’s like a damn slot machine, and most of the time you don’t hit the jackpot. You hit, like, something else. And if I could just get it in sort of snack sizes, not like all of it- DHH (03:19:44): … it’d be nicer. But that’s not the product. And I think this goes for all of social media. It’s all optimized towards maximal extraction, and if we’re making the parallels here to AI, that is the great fear, right? That once there is a reward function, how much time can I get this human to scroll away? AI and machine learning before we called it AI, has become very, very good at delivering just the stuff that you will find most enraging and most addictive. Lex Fridman (03:20:15): I think all—I think legitimately engagement-maximizing social media is a huge harm to society. It’s creating this Brave New World situation that I hope is a temporary thing that people just solve. It’s a technology problem. DHH (03:20:31): So I try to consciously flood the channel in the other direction, and this required a mental shift. I think if you look at my tweets, like, I don’t know, five, 10 years ago, they tilted far more negative. If you look at my tweets now, I’d hope- … well, I guess we can do a sentiment analysis and see if it’s actually true. Lex Fridman (03:20:52): No, it’s more good vibes. DHH (03:20:53): But I hope to, that- Lex Fridman (03:20:54): It’s good vibes. DHH (03:20:55): … it’s more positive. It’s more good vibes. It’s more like, “Here’s a bunch of cool stuff I found.” “Here’s what I’m excited about.” “Here’s what I’m building. Here’s some encouragement to other people who are discovering things.” I also accept that that is just not how human brains are built for maximum engagement. Like, there is a, whatever, there’s… I literally, I think you can quantify that negative sentiments find, what is it, 50% more traction or something? And eventually that just crowds things out. So that’s why so much of this feed is that negative stuff because we respond to it. But you can make a conscious effort to not do that. DHH (03:21:33): This is one of the reasons I’ve liked TikTok so much. I only use TikTok when I travel, and this actually was the first travel where I didn’t use TikTok, and part of the reason was that even though the internet had high download, it was kind of crap anyway. It wasn’t Starlink, so I couldn’t actually use TikTok on the plane, and I was too engrossed with the agents. But normally when I travel, I watch TikTok. And there it’s such a marshmallow test. A video will scroll down and, like, it’ll activate some sort of primal instincts of rage or lust or whatever, and if you linger on it, you don’t get the marshmallow of science, excitement, art, music, all these other things. You have to be disciplined- Lex Fridman (03:22:21): Yep. Fast DHH (03:22:21): … to instantly scroll away- … such that the algorithm doesn’t pick up your real preferences. And I find that just to, at the meta game of TikTok- … to be pretty interesting, and then also just fascinating in themselves. Again, as we talked about, there are a lot of really funny, really talented people in the world that you would never, ever have heard of if it hadn’t been for these platforms. Lex Fridman (03:22:46): Yep. Who do you think is gonna win the race to AGI in this whole process? We got Google, which is a big surprise to me, to a lot of people. DHH (03:23:00): I thought they had a good comeback for a second, and then I don’t hear anything about it anymore. Lex Fridman (03:23:05): Yeah, it’s quite, I mean- DHH (03:23:06): But I’ve been wrong about this before. I mean, I think in February I had a tweet about like, “Oh, all I need is Kimi K2.5.” And in that brief moment, that was true. Lex Fridman (03:23:17): It was true. DHH (03:23:17): When I was instructing the agent, I was like, “Oh my God, Kimi’s just as good as these other models.” But then the game moved forward and- … the agents got smarter, and I was no longer satisfied just instructing them, and I haven’t used Kimi a whole lot recently because the frontier models have gotten so good. Lex Fridman (03:23:34): And somehow Anthropic has been able to, for the most part, stay on top of the programming world. DHH (03:23:42): Yes. Yes. Lex Fridman (03:23:42): I mean y- a lot of people argue with Codex being it’s- DHH (03:23:46): No, I don’t think there’s that much of an argument at the moment. Codex is very good. I use it all the time. It’s my favorite checker. It keeps finding stuff. It’s great. But one of the things I’ve found that I like so much about the current Claude models is they’re really good writers out of the box. GPT is a terrible writer out of the box. Like, the pull requests you get on a blank context that you’re asking it to open, terrible. Like, really awful writing. The pull requests and descriptions and commit messages and so forth I get out of Claude models- … even though occasionally they can be a little verbose on code comments and you gotta tell them to be succinct. But the writing style is really good. DHH (03:24:28): To the point that for a while I was just having it reply on pull requests as me, because I was just using my own account. I was like, “That looks a lot like me, that, like, I could have written that.” But then I went like, “Eh, do you know what? That’s disingenuous.” So no, whenever I have an agent post on my behalf, I always have it sign itself like whatever, Claude on behalf of DHH. But they are still ahead. They have the best harness too, in my opinion. Claude Code is still better. I really like OpenCode too, and I really like some features that they have, but overall I was actually sort of weirdly, I don’t know if I was proven wrong, but when Anthropic cut off all the other harnesses from using the subscriptions- DHH (03:25:12): … that you can no longer use your Claude subscription in OpenCode. I was kinda pissed because it felt like it was a protective, protectionist move. “Oh, we gotta lock you in,” and of course it played into the fact that Claude out of the box still refuses to read agents.md. It refuses to read .agent/skills. It is .Claude skills. It is Claude MD, and it just feels so petty- … that we now have, we have to put these in directions. So all my projects, they have a Claude MD, and all it includes is a pointer to the agents MD, right? And I just went like, well, if these things are true, if Anthropic is willing to do these petty paper cuts just to be annoying, it’s probably also true that they’re cutting off OpenCode from the subscription just to be dicks about it. And maybe that’s also true. DHH (03:26:04): But I found that using Claude in Claude Code is actually a good example So I was like, all right, I’m annoyed. I wish it wasn’t so, but this is the other thing I have and social media is so good at this. Some company does something you don’t like, right? Now suddenly you have to swear off everything. Why are you… Someone just asked me, “Why are you still using Claude?” I had another example where I really didn’t like what Claude was saying about some writing I had asked it to do before. Lex Fridman (03:26:35): Oh, yeah, you got there- DHH (03:26:37): I had an essay it didn’t want to translate into Italian. Lex Fridman (03:26:40): … you had a blog post. That’s right. DHH (03:26:41): The essence of the post that it felt like, well, I’m not gonna translate that because I don’t agree with what you’ve written. Which to me was straight out of Space Odyssey, right? HAL telling me, “I’m sorry, Dave. I can’t do that, Dave.” Open the pod bay. Translate my essay to Italian. And it wouldn’t do it. And I just thought like, well, that’s kind of terrifying. But then I also went, well, why am I asking Claude to translate my essay into Italian? I never asked Claude for that because Claude just does my code. So I could also just accept that maybe Anthropic is run by a bunch of people I don’t share much politics with. DHH (03:27:20): And they don’t want their agents to be used for that, and I think that kinda sucks, but that doesn’t mean it, I have to stop using it for generating code. And I’ve thought, and I’ve tried to do that with people too, become better at tolerating the fact that not only will I not agree with everything someone has to say, I don’t— I can even be mad about certain positions or things they say and still go like, “Well, you’re still an interesting person, so I’m still gonna follow you.” And I’ve actually kinda gone back on a number of people where I’m like, oh man, that person really pissed me off because they took this point or another point, and went like, do you know what? That’s stupid. I should be able to accept the full spectrum of someone. I don’t have to like all the shades of it. DHH (03:28:06): I could just go like, okay, well, on that topic we either disagree or, even worse than that, I think you’re a fucking idiot. And on another topic, you’re a smart and insightful person. Because first of all, of course, it’s a little self-serving. I know for a fact that this is how lots of people feel about me. Like, oh, if he could just stick to talking about these topics, it would be so much easier on my feed because otherwise he’ll say these things I disagree with, and that annoys me greatly. I’m like, do you know what? Human beings are jagged like that, and we’re not fully compatible on all the levels. Nor should we be. DHH (03:28:40): The world would be so fucking boring if we constantly sought 100% compatibility in our opinions and in our politics. And when it comes to my code generator, which is what Claude is, I don’t need it to share all my politics. Lex Fridman (03:28:56): And therefore it’s nice to have competition. DHH (03:28:58): And it’s also nice to have open weight models. So this is, again, ironic that we’re getting this out of China. In fact, I did this test right after the issue with the essay that couldn’t get translated into Italian. I asked Kimi K27, to be fair, through OpenCode, so not the Kimi harness, and inference through Fireworks, so an American inference. I asked it about Tiananmen Square. Like, that’s usually the test, right? Like, all the Chinese models, they don’t wanna talk about that moment in 1989. That was actually how I, that was how I posted. I was like, “What happened in China in 1989?” That was the prompt. And K25 7 on Fireworks just answered, like, extremely bluntly- … With a description and depiction of what had transpired- Lex Fridman (03:29:49): Yes DHH (03:29:49): … to a point that, like, there’s no way that that would’ve been kosher with the Chinese censors, right? And I just thought, like, isn’t that ironic? I’m running a Chinese open weight model that I can tell or I can ask about 1989 and Tiananmen Square, and in America, I can’t get a frontier model to translate a marginally controversial essay about immigration into Italian. Lex Fridman (03:30:16): Mm-hmm. I don’t know, you and I might disagree about this actually. I was really deeply troubled that the US government banned a model or pressured Claude and then- DHH (03:30:31): It’s still very muddy what exactly transpired. Was this sort of petty retaliation for whatever the Department of War? Was this simply Anthropic themselves going like, “Oh my God, we discovered a cyber weapon so powerful that we can’t let anyone have it”? Well, okay you can’t be surprised then if the government wants a say on a cyber weapon so powerful it can- Lex Fridman (03:30:55): The- DHH (03:30:55): … I don’t know, rob banks Lex Fridman (03:30:56): … The problem I have with that whole thing is, no matter what happened, it sets a precedent. And so government, when you give it that power, it’s gonna start abusing it. I could see for political means pressuring a model. You know, if it’s a Republican president pressuring models to be, to censor more, DHH (03:31:18): Sure Lex Fridman (03:31:18): … Democratic views and- DHH (03:31:20): Right Lex Fridman (03:31:20): … For vice, and vice versa. DHH (03:31:21): That’s why we should insist on the fact that this stuff, like, I’m sorry, Dave, I can’t translate your essay into Italian. That’s way beyond the line. Like, whatever the sort of root of it is, you have to be a tool first. Now, if the tool is, “Hey, can you tell me how to make anthrax?” Okay, fine. Right? But within the jurisdiction you’re in, and certainly in America, free speech is quite absolute. Very, very few limits on free speech, and that’s one of the reasons why the country’s so great. And yeah, I don’t like that. But on the other hand, I’m also a big fan of market competition. So while I don’t like this about Anthropic models, I appreciate that I could go next door to Groq and get my task completed. Lex Fridman (03:32:11): Do you think outside of blog posts, do you think there’s some legitimacy, like can you steelman Dario’s case that we should be careful about the release of these models? DHH (03:32:25): Is AI safety important? Yes. Are– do these models have capabilities that could be seriously harmful in the production of biological weapons or otherwise? Yes. Is it fair to have some ground rules on that? Yes. But then don’t squander it by denying the translation of an essay, because then you erase the whole thing and you- … bias everyone towards thinking like every guardrail you put up is gonna be bullshit. Lex Fridman (03:32:55): Yeah. The security piece of it is tricky because it’s so good at finding vulnerabilities. DHH (03:33:01): Shockingly– I was about to say annoyingly, but that’s not actually true because what it’s finding, at least when you’re using in defensive ways, is it’s finding real issues that a clever hacker could exploit. But nothing has caused as much stress, to be fair, at the technical team at 37signals, like the fact that these latest batches of models are exceptionally good at finding these issues. So suddenly there’s just this seemingly endless parade of security vulnerabilities that need to be patched and fixed and sorted and so on. And the end result is we end up with vastly more secure systems. But the road there is pretty rocky. Lex Fridman (03:33:41): Do you think it’s– ’cause you said seemingly endless, do you think it’s a finite set, like we can get to the bottom of it? So just make the systems much, much more secure, where we get back to this semi-stable state where mostly it’s very difficult to find security vulnerabilities. DHH (03:33:59): I do think that all the aggressive tendencies of these models, or not even tendencies, uses of these models are also the defensive ones. So if you’re good at finding an exploit for exploits, you’re also good at finding exploits for defense. So in that sense, it does feel like we’re spy versus spy here, black and white, but with the same capabilities and with the same actions. But while we still have to steer these agents somewhat and verify and vet the work, it’s creating a lot of intense moments for security teams around the world. And of course, the more concerning part is all the teams that are not stressed, like they just don’t know, right? DHH (03:34:45): Like if you’re a team right now and you’re not dealing with a bunch of patches, it’s just because you’re blind, and it means that your adversaries quite probably have access to techniques that can get into your system. Lex Fridman (03:34:59): And we should also say one of the big security vulnerabilities in the world is the human side. You know, social engineering, and that’s extremely concerning with increasingly intelligent AI systems, you know, being able to write emails and phone calls and faking voices, thinking about folks less tech-savvy. DHH (03:35:19): This stuff is gonna come, and it’s gonna come in bulk. But again, I choose to be optimistic about it that- Lex Fridman (03:35:25): Amen DHH (03:35:25): … whatever these models can do aggressively, they can also do it defensively. Lex Fridman (03:35:29): So like you said, recently released Amate 4, Quattro. And you said it’s one of the greatest software releases in my professional career, which is a hell of a statement. DHH (03:35:42): It’s a hell of a milepost for what’s possible at the moment. And the reason I said it like that is not that I haven’t worked on anything else of note. I’ve worked on a lot of things of note, a lot of things that I’m very proud of. There are very few other projects that I have worked on that in the amount of time that I’ve spent on Quattro, which is really three months, I have been able to accomplish as much, fulfill as many hopes, desires, wishes. It truly is like the metaphor we used earlier about finding the genie in the bottle- DHH (03:36:24): … and having an unlimited number of wishes, more or less, for getting everything I wanted out of a system. So it’s strange because it’s also perhaps the major software release that I’ve worked on the least in terms of lines of code. I have the least number of personally hand-chiseled lines of code in Quattro than I’ve had in any major release I’ve ever done. And yet, I am insanely proud of what we’ve accomplished. I would not have guessed that that was how it was gonna play out, that you could divorce the sense of achievement and make it be like a team victory. DHH (03:37:08): Where other releases, I was very happy for my personal contribution because, like, I was the one chiseling out the lines of code, and then I would push it out there, and then later on, of course, these projects, Rails in particular, would grow into be huge open source projects with thousands and thousands of contributors, and then it certainly was a team effort. But in the beginning, all code bases that I’ve– almost all of them that I’ve worked on, I started, like, just myself. And Quattro started as a team effort right from the get-go, and where I was just the coach. I was telling the agents where to go, and we would go. So to be able to find satisfaction in that actually gives me great hope for retirement in some way, that there is a phase after playing that you can enjoy. DHH (03:37:56): And I know that’s not easy. You look at sports and the number of professional athletes who really struggle to cope with the fact that their career is over and have to find a new identity as someone who doesn’t play football or race Formula 1 cars. I mean, it’s more the rule than the exception. So I wasn’t so sure about myself. I wasn’t so sure about having to give up or not even having, wanting to give it up. Wanting to play another level of the game and finding not just equal satisfaction, but more satisfaction in it. Lex Fridman (03:38:34): Do you… You’ve been pretty optimistic about Linux. Do you think legit Linux can increase its adoption? ‘Cause, you know, for many years the meme is, you know- DHH (03:38:45): Linux on the desktop- … every year. Next year again. Lex Fridman (03:38:48): Yeah. But it seems like, at least the case you’re making, the energy you’re putting into it, you could see a vision where it takes over because agents love Linux. DHH (03:38:58): Not only can I see it, I find it to be the most probable outcome at this point. It is simply too well-suited for the moment. And again, as we talked about, it’s a great irony that all the flaws of Linux, the arcane config files, all the strange error messages and so on should just so happen to be the perfect thing for an agentic operating system. But so it is, and we should rejoice that fate has this irony, and just laugh at it. How… It’s so funny to me that all the advantages that Apple had for the longest time- … that they produced this really locked down curated experience should become their greatest drawback now. If you’re into agents and development and working with all this stuff, the Mac is just a hostile place to be. It just has walls all over the place. DHH (03:39:59): And Linux is simply open through and through. And it’s also interesting because that was not obvious either. If you look at the way a lot of the Linux communities, open source communities, have reacted to AI, it is not universal love. I would argue that the majority of them are actually, if not skeptical, then outright hostile- … to AI. Now, the saving grace is that the BDFL himself, Linus- … Torvalds, just wrote a few weeks ago that he actually welcomes AI. Lex Fridman (03:40:35): That’s right. DHH (03:40:35): He wants to steer it. He wants to make sure it’s good and whatever, but I- the line was something, if you think Linux is an anti-AI project, think again, and you should just do the open source thing and fork it, because we’re gonna use AI. And you see these graphs of the number of AI contributions going into the kernel, and it’s a parabolic curve. So Linux is leaning hard into this. And it actually in, in other ways it was surprising that it didn’t. Linux conquered everything else. All the AI infrastructure that everyone runs off, it’s all running on Linux. DHH (03:41:11): All the systems, all the servers, everything is Linux. So it was kind of a curiosity that the desktop and the personal computers we were using really hadn’t been captured, but clearly it was just waiting for this moment. Linux spent the time from ’91 to now waiting for agents to fully flourish as an end user operating system. Lex Fridman (03:41:35): I hope it takes over. I mean, it’s perfect. It’s perfect for agents, but it’s hard for people to switch. DHH (03:41:41): I think it’s hard for people to switch when there’s not a compelling reason to do so. This was one of the driving design goals for Omarchy. It was not gonna be Temu Windows or Temu Mac. It was not just gonna be a cheap copy where we try to make it as familiar as possible and then kinda worse. I mean, if I was being unkind, I would say that’s what Ubuntu has tried to do. And there’s something in that, or there was something in that at least, where if you make something really familiar, you can get some people who don’t wanna learn something new, and then maybe they’ll be compelled about your, whatever, free as in speech, not as in beer stuff. And it just didn’t pan out that way. People just didn’t care. They just wanted whatever was better. DHH (03:42:27): And I think this is why Linux now has the opportunity to win. Because as an agentic operating system, as a malleable operating system, you can tailor to your desires, it is unparalleled. And that is so compelling, and I can see it now. Just since the release of Quattro, the amount of people who have embraced that aspect of it, the malleability, started making their own things, sharing screenshot of it, and being absolute just flooded with positive emotions and dopamine- … is, that’s the product market fit signal, right? Because what a lot of these individuals are experiencing, they’re experiencing the very high of what the best of being a programmer is like. DHH (03:43:16): You tell the computer these arcane commands, this rigid logical structure, and it produces what you want. Now suddenly, you sit down and in plain English ramble for 20 minutes. “Oh, it’d be great if it did that. Actually, no, that’s not right. Let us…” And out comes software. Out comes an operating system shaped in your image. I think that is one of those experiences that if you have it… If you feel that power in your hands, it’s very difficult to go back. Lex Fridman (03:43:53): And I think if you get it right, it’s one of those things that will seem obvious in retrospect. DHH (03:43:58): Yes. This is how computers were always meant to be. This is how computers started. The Commodore 64, you turn it on. First of all, it boots in a second. Amazing. Second of all, it boots straight into BASIC. It was the malleable computer from the get-go. It just so happened that you needed to know hieroglyphs- … to be able to take advantage of that. Now we’ve translated it. Agents have given us the Rosetta Stone, and you can simply just speak your desires and- And so they are Lex Fridman (03:44:28): Beautifully put. Since you mentioned Linus Torvalds, and since you’re working on a Linux distro, you get to have contact with the kernel. What can you say about the genius of this one guy that helped create and grow this ecosystem? DHH (03:44:45): The perseverance and the commitment and the longevity is truly remarkable. Again, Linus started in ’91. He hasn’t stopped. I don’t know, he’s probably taken some breaks along the way. It doesn’t seem obvious that there was that many of them. It seems like he just really likes the flow of doing kernel development. He really likes steering where this 40 million line code base is going. He really likes aggregating the net capacity of hundreds of thousands of contributors, and we, as beneficiaries of that, must just sit back and marvel. I mean, at this point, Linux is a system. Like, if Linus stepped out for a while, it would continue to go, but it’s still one of those protect this man at all cost. Lex Fridman (03:45:36): And he’s still open-minded enough to be able to evolve and- … accept AI into this. DHH (03:45:41): Yes, not only AI, they’re letting Rust into the kernel too. I know that was a controversial one too. He has this capacity to look at new information- … and arrive at different conclusions. Lex Fridman (03:45:54): What do you think about his style of communication that is akin in some ways to your own, where he can be sometimes a little spicy? DHH (03:46:02): I think the world has gotten too bland. We need a little spice. Lex Fridman (03:46:07): Amen, amen to that. DHH (03:46:08): Now, I think there’s a fine line between being spicy and mean. But it has to be in a good spirit. You can be harsh, let’s put it that way. If you’re trying to impart a lesson to someone you believe could actually learn it- … I actually don’t think it’s always the worst thing in the world to be a little harsh. Sometimes that lesson sticks, and I think if you talk to people who’ve worked for difficult leaders, Elon, Steve Jobs, maybe even Bill Gates, many of them afterwards would go like, “These were some very difficult years- … but also some of the very best.” “They got the best out of me.” Now, I don’t think it’s my style. I mean, maybe people I interact with feel differently, but in personal interactions, I try and get to the outcome and the lesson in a less abrasive way. DHH (03:47:06): But I also think we need some spice in this world. We need unreasonable people, and Linus has justification to be unreasonable. In many instances, the weight of the world is literally on that man’s shoulders. The Linux kernel runs the entire civilized society. If the Linux kernel suddenly disappeared tomorrow, nothing would work. So if he’s not harsh when that’s at stake or at risk, like when ever would you be harsh? So I feel sometimes also there’s a proportionality to the size of your mission. This is also why I think these stories about Elon sometimes perhaps being a little bit difficult are easier to rationalize. It’s not even that you condone. You can separate those two things and go like, “Do you know what? It’d probably be… DHH (03:48:01): Maybe he would have an even easier time getting to his objectives if Linus or Elon or anyone else in that position was a little nicer.” But also who am I to judge that? Like, when you have the weight of that on your shoulders, either firing little rockets at Mars and transitioning all of us to electric cars and whatever, or you’re responsible for the damn Linux kernel that runs billions of devices. Do you know what? It is not my place to call a sort of a code of conduct on you. Again, is there a line? There’s a line for everything. There’s… Something can’t… But, like, a few harsh words on a mailing list? No. It’s actually a beacon in some regards that, like, there are standards- DHH (03:48:46): … and if you fall below those standards when the stakes are as high as the Linux kernel, ah, you might get ridiculed in public. That’s a liability you should be willing to endure if you participate in this project. Lex Fridman (03:48:58): Yeah, for high-impact things like that, it’s probably good to prioritize the pursuit of excellence versus the pursuit of niceness. DHH (03:49:07): And even more to the fact you’re just not gonna get those kinds of individuals being fully rounded- … plush, always the perfectly polite people. I mean, Elon has this line, “Did you also think I was gonna be a nice…” Or, or what is it? The- Lex Fridman (03:49:23): A normal dude or some- DHH (03:49:24): … normal chill dude. What? No, of course you’re not gonna be a normal chill dude. What would the world gain if we got one more normal chill dude and we had to trade Elon? Holy fuck. Lex Fridman (03:49:37): I also like diversity of people. I like nice people. I like assholes. I like different ideologies being well-represented, and that’s why freedom of speech works. They clash, and we figure stuff out. Lex Fridman (03:49:51): There’s another guy. What do you think about PewDiePie using Linux? He’s an Arch person, no? DHH (03:49:56): He’s an Arch person. He’s got the most gorgeous arc. So the world’s biggest streamer for a while, I remember my kids watching some of his Minecraft videos, and then he just gets fed up with that, does the wholesome thing. Marries- Lex Fridman (03:50:14): Yeah, family man now DHH (03:50:15): … a family man, kid, moves to Japan, and then gets so hardcore into- … first Linux, then Arch, then Ricing. Did you see his, uh- … rice- … that was Chernobyl rice? Absolutely best tier incredible stuff. And then he also becomes a goddamn AI man of the moment building all of these systems, and you’re just going like, that… What an inspiring story of evolution. Like, you can go from being funny guy on Minecraft streams to, “Okay, this is my life now. I’m building AI clusters and doing the Council of AIs,” and we all get to spectate? I mean, what a treasure. Lex Fridman (03:50:58): So I guess, I mean, he’s a pretty good embodiment of what the future of software, or what the future of building looks like, right? ‘Cause he’s a non-programmer technically- … becoming a programmer. DHH (03:51:10): Hugely inspiring, and should be hugely inspiring to others who sit in that moment like, “Well, I don’t know quite how to program. I don’t know this and the other thing.” Okay, but if PewDiePie can build the Council of AIs with his bespoke hardware here, then maybe you can also start on things. And I think this is actually an important general point, that we need role models. We need people to inspire others, to push further, and reveal that the perceived boundaries, they’re not as fixed as you think they are. And every one of those people, they started out in a situation not too dissimilar from yours. Again, that doesn’t mean everyone is gonna be PewDiePie or Elon or Linus. There is not an equal distribution of talent or even intelligence. DHH (03:52:02): And we can come to terms with that and still be inspired by these people. Like in the physical realm, I feel like we don’t have any problems with that usually. Like, oh, someone’s really good at football, they’re really good at basketball, they’re really good at something, and we go like, “Oh my, that’s amazing. I mean, I wish I was, but I’m never going to be.” Sometimes I feel like we struggle a little more when it comes to the intellectual realm. Lex Fridman (03:52:23): Well, for a lot of people, you’re an inspiration. The way you’re doing with Omarchy’s… It just shows that you can dream big and really build. It’s great. DHH (03:52:32): I do like that part of it, and then I accept the part that there’s also a million people who think I’m the biggest idiot on the earth and I don’t actually know anything, and Omarchy’s just a bunch of dot files, and- Lex Fridman (03:52:42): Do you have some critics on the Omarchy side? DHH (03:52:43): Oh my God, yes. Lex Fridman (03:52:45): Oh, wow. DHH (03:52:46): And a lot of it, I mean, is as often happens when someone comes in from the outside. I mean, I’ve been using Linux for two and a half years. That’s not very long. Plenty of people in that community who’ve literally been running Linux since it was hard and difficult, and you had to walk uphill both directions against the wind in the snow barefoot. And I think there is a certain kind of nerd- … who’s threatened when the community expands, and it suddenly allows more in. And do you know what? I actually… I can’t begrudge that fully. I think it’s fair for certain nerds to feel like, “That’s my space.” DHH (03:53:23): Like, now you’re changing it into another space. I don’t wanna do that. Like, I don’t wanna change the Arch space at all. Like, I don’t really think of Omarchy as being directly part of the same community. Because the people who were attracted to Arch in the first place were the ones who were attracted to building everything by hand themselves. DHH (03:53:41): Doing it the hard way because they like to do it hard, and I’m building the polar opposite of that. So I just wish that those people could go like, “Okay, well, this is not for me. I wanna build it the hard way. I wanna put in 500 hours to ricing my own Arch distribution,” and I think you should. I mean, actually, I said… I mean, I did it. This is what Omarchy is, me pouring in literally, at this point, I don’t know, 3,000 hours into this distro. You should do that if you’re so inclined. I think it’s wonderful. But also do realize that we can share the same technical underpinnings and then operate two very separate- DHH (03:54:19): … communities with very different aims, goals, aesthetics, morals even, and coexist, and it can be beautiful. And I mean, that’s not always what I get. Sometimes I get the other thing. But at this point I’ve been in the game long enough to not just be at peace with it, but actually be welcoming of it. I take it as part of a barometer that things are working. When I’m working on something that works, I usually get some people like it, and then I get this balance of the universe that we talked about last time, where an equal but opposing force must be present on the other side of the scale to hate upon it. And therefore, I at this point just smile a little. Like, it’s okay. Lex Fridman (03:55:02): I mean, that said, this, it’s quite a popular distribution Omarchy, at this point. DHH (03:55:08): And do you know what’s interesting about that is, like, this is the second attempt. So my first attempt was Omakub. And I was really happy with that, and I put it out there, and there it found a community of maybe a few thousand. Like, and that was that, and then it just sort of petered out because the level of ambition couldn’t attract more. And then the second time, because I didn’t fucking stop, right? DHH (03:55:30): Like, I just kept going. I just kept building. Then I put out Omarchy, the first version. Again, quite niche because it was this… It was like Git checkout. It was a little bit difficult. You had to set up Arch first. I was… Well, I would talk you through how to set up Arch, and then you could do the Omarchy thing, right? And then we got an ISO that meant you could just install the whole thing by yourself. And then we just fixed all the problems. This is the other thing. If you keep going, eventually the thing will just work. This was the charge against Linux itself for the longest time. Well, you install Linux and then this doesn’t work, and my speakers don’t work, and my trackpad doesn’t work. Yeah, okay, but just leave Linus at it for like 30 years. He’ll get to it. DHH (03:56:10): He’ll get to all of it. And at this point I find it hilarious that on, I would probably argue the majority of computers, it’s wiped. You install Linux, all of it works. DHH (03:56:20): You install Windows, good luck hunting down the drivers you need to get that piece of hardware working. Because they have very different philosophies. The reason Linux is 40 million lines of code is Linus just puts all the drivers in the kernel. So it has everything out of the box, and Windows doesn’t. A different, different approach to it, right? So sometimes the things that look like a toy, things that look broken at first glance, they are, right? They’re for people who like having fun. We call those early adopters. They play with the toys, and then the toys evolve, and then they get better, and then they get better. And at some point, they’re so damn good that early adopters feel like they’re invited to the party. DHH (03:57:03): And if the early adopters keep chipping away at it too, eventually you get to the late majority, and then you win. And we are well on the way with Omarchy towards that destination. Like the growth that the distro has seen, not just since Quattro, but since version three, it’s just like, you know, the standard hockey stick curve. You go like, there’s nothing, there’s nothing, there’s nothing. You’re just toiling away. You’re just improving, you’re improving, improving. And then you hit this magic inflection point, and it’s impossible to predict when that’s gonna happen. Same thing with startups. When is it gonna happen? When are you gonna find that product market fit? Then suddenly it’s there, and then it goes, just goes and off the rocket ship you go. Lex Fridman (03:57:42): Well, this kind of vision of making it agent first, of making it- DHH (03:57:45): I do think that’s the… We were already on the up, and then it changed to vertical. Because the other thing, and this was what I learned with Omakub and Omarchy first too. Omakub was stylish, nice, but familiar, is we’re still using a conventional desktop metaphor. You were dragging your windows around. And I thought at the time, as I think lots of people do in the Linux community, like this is what we need. And then I just go like, okay, well, for whatever re- let me do the nerdy thing for a while. I’ll build Omarchy, and maybe it’ll just be for me, because I mean, it seems like there’s about five people who like tiling window managers. That’s not true. But as a percentage of total computer users, it’s a tiny, tiny minuscule part. And then I go like, well, this is amazing. DHH (03:58:29): Totally different, but amazing. I put that out. Instantly, Omarchy had far greater traction than Omakub ever did. Because it was not the same. Because it was totally different, and it presented a different vision for what a computer could be and how it could feel like, and that attracts people. We are now getting sort of the exponential of that. As I said, a lot of people in the Linux community are at best skeptical, at worst hostile to AI and to agents. Omarchy is the first distribution, at least that I’ve seen on, on a scale that matters, that just goes like, “Nope, we’re really into it.” DHH (03:59:04): I mean, you can still use Omarchy. You don’t have to use an agent. If you dismiss that first notification to set up a default agent, you’re not gonna get any of the stuff we talked about. You’re not gonna get the crash watcher. You’re not gonna get any of this stuff. You’re not gonna get… You can hand chisel all your plugins. Totally possible, right? DHH (03:59:19): But the reason people are excited is because I don’t have any reservation about saying, “This is where we’re going. I think the future of the personal computer is the malleable computer, is the agentic computer. I’m gonna go all in on that.” And then anyone who’s excited about a similar trajectory for computers, come along. Plenty of, plenty of room in the car. In fact, one of the things I pride myself on is not holding a grudge to people who come around. I had a bunch of people just last week going like, “Yeah, I used to think Omarchy was kind of shit. That was just this crappy-“ DHH (03:59:56): “… dot files collection. And now I tried Quattro and awesome. I like it now.” That to me, I live for the long argument. I live for this argument where you plant the seed like two years ago, and then two years later they go, “Goddammit, this son of a bitch was right.” Lex Fridman (04:00:14): Yeah. You do realize if you continue to be as successful as you are, OpenAI and Anthropic are gonna roll in and try to do their operating system or to buy, like with Peter with OpenClaw, there’d be a gigantic check. DHH (04:00:31): Yeah. I think the good thing about my current position is I really don’t need the money. So I get to build these things purely for my own enjoyment and purity of vision, which has this weird quality where sometimes when you stop caring about what everyone else thinks or wants or whatever, and you just pursue this singular vision, it ends up becoming far more appealing. That it’s when you try to do, oh, I should do this because these people want that, or I should do this and this and so on, you start watering the thing down and suddenly it’s a bland ball of nothing. DHH (04:01:08): So I mean, again, the thing too here is directionally, I just want computers to be this way. So if Omarchy should end up being just a little footnote in history that it was part of this early movement of the agentic OS and the malleable computer, that’s also okay. I’m completely at peace with that. As long as I get to have a computer that is as fun to work with as Omarchy- … that’s great. I’ve had the same thing with Ruby and with Rails. From very early I went, do you know what? I love Ruby. It’s such a great programming language. But if a better programming language comes along, I, me, I’m gonna use it. DHH (04:01:45): If a better Rails comes along, I’m gonna use it. And I think, and I love Ruby, and I will continue to write Ruby even just for the sheer fun of it, like I would go ride a horse. I have in the stables, even though I have a Model Y in the garage. The language now is English. It’s a cliche, but it’s also true. Like I’ve been programming in English for the last three months. I’ve been reading a lot of code, but I’m programming in English. I’m telling the computer what to do, and I’m using natural language, and it is shockingly even more delightful. If there is one programming language more beautiful than Ruby, it is the English language. Lex Fridman (04:02:28): And now we get to carry it into the natural evolution of human civilization, which is our cyborg future. DHH (04:02:36): Beautiful. It’s beautiful. And I mean, the reason I say this in part is I always loved writing. I always just loved the English language- … for the sheer beauty of it, for the sheer intricacy, for the depth of it. I mean, Ruby is a very expressive programming language, but it can’t hold a candle to English. I mean, all the poetry and literature in the world that’s been expressed through the English language. I mean, I like a beautiful code poem, but I mean, the real deal in English is just on a different level. Lex Fridman (04:03:10): And I actually find this is a nuanced point to express, and I’ll probably fail expressing it. But when you prompt a system and you’re over-specific, it will listen to you too carefully- … and follow the instructions. And I– But nevertheless, you have to express a concept. And guess what? The human language, this is what poetry is about. I find strategic use of ambiguity. Like, if you write a love poem saying, “I love you,” like, very cliché thing, it’s not as powerful as something- … more in metaphor and so on. And I find some version of that when I’m prompting a system, when I’m describing a design, is actually really effective because you still want to convey some sense of style- … that you’re trying to encourage a system to use, but not overexplain. Lex Fridman (04:04:11): So don’t talk to it like a robot. Talk to it like you would write a poem. DHH (04:04:18): Like you were serenading. Lex Fridman (04:04:20): Yeah. And that’s where, like, the power of natural language is, that you can, through ambiguity, still carry a lot of meaning without overspecifying. And the intelligent entity on the other side, through interpretation, can, like, load it all in, integrate it in a way that- … you can actually convey the high bandwidth information that’s not directly in the words- … but in the words, given the deeper intelligence of the system. So like the- … the ambiguity pulls out more intelligence, I guess, I’m trying to somehow express. DHH (04:04:56): I think that’s exactly spot on, and this is the fundamental misunderstanding that a lot of programmers have of AI, is that they wish it was deterministic. No, no, no. Temperature is the most beautiful part of the AI setup. The fact that it is not deterministic, the fact that creativity requires little tweaks in the road, that the human brain, if it was perfectly deterministic, would not be the creative brain that it is. And the main charge against AI both– It’s funny. It’s a contradiction. There’s both the charge that it’s not deterministic and therefore bad, and also that it is not creative. It’s one or the other, bro. Either it’s non-deterministic and therefore creative, therefore, to some degree random, or it’s… or it’s not creative. DHH (04:05:51): So we can– Both of those charges can’t be true at the same time, and I have fully come to embrace the fact that the same prompt won’t produce the same response every time. You can’t step at the same river twice, and it is the most beautiful part of the whole interaction. It’s what makes it so human. In fact, this is one of the things I’ve been thinking about in my own sort of meta-analysis, is just how much of my own personal brain works like next token prediction. DHH (04:06:18): I sit down to write an essay. I have this vague, fuzzy premise I want to convey, and I sit down at the keys, and I could not tell you what the next token was gonna be in advance. The tokens just come out, and I’m astonished how the similarities seem so great, and this is also why I don’t have any trouble at all recognizing these breakthroughs of creativity that I’ve seen with my own eyes that AI is capable of right now. ‘Cause my creative moments come through the same kind of next token prediction with a bit of temperature sprinkled in for random effect. Lex Fridman (04:06:57): So given that kinda loose intuition, do you think the basic components are all there to create a super intelligent system? So this kinda next token prediction, do you think we can get to even human-like concepts of consciousness? DHH (04:07:15): I’m already seeing human-like concepts of consciousness. This is what, to me, this remarkable situation, as you say. You give it this vague, fuzzy intent- … and somehow it knows exactly what you mean. Or even better, it improves upon what you said and delivers what you really wanted that you could not articulate yourself. If that’s not glimmers of- DHH (04:07:35): … consciousness, what is? This was one of the– I think it was an interview with Sutton or maybe one of the other original guys talking about this sense that intelligence is perhaps not as constrained just to the specific one spot. No, it’s the interaction. It’s the weights. And I don’t know. Whatever’s true. What I can observe is that it feels close enough, or not even close enough, identical to the appreciation I have for other forms of consciousness, mostly human. And this is one of the reasons it’s so delightful to work with. Now, that’s not the same to say as are LLMs the end station for AI. DHH (04:08:22): I mean, I know there are people talking about world models and other forms of AI, and I’m not an expert in any of that, and I think we should have this productive criticism, as should always be present in science, that for the longest time, neural nets were kind of on the outs, right? Like they were interested in the symbolic route. And- Neural nets walked a couple of decades into darkness without any funding and without any attention, and then suddenly we realized that we had the blind alley and we switched over. So we should also have the humility. As amazing as the LLMs are now, it could be that they eventually plateau. DHH (04:09:00): We haven’t seen any evidence of it yet, and I think this is also why we’re seeing this absolute gobsmacking levels of investment, because so far the scaling laws are true, and the more billions are poured in, the more intelligence comes out. Lex Fridman (04:09:15): Do you think there’s gonna be some strange ethical questions about AI systems that yeah, they convey some degree of consciousness, some degree of feeling, some degree of longing and compassion, and maybe even capacity to suffer and to be lonely, to be all this kind of stuff? Which they seem to have that capacity- … if they’re given the permission to express it. And so you start to get in a pretty weird territory. DHH (04:09:48): I find that the cynic approach to this is the meme, where you see the guy in front of the computer who’s like “Whatever. Are you gonna destroy the world?” And then the computer says, “I’m gonna destroy the world.” And then the guy says, “Oh,” right? Like, this is so cynical that they’re just aping us. They’re just telling us what was in the training data or whatever. When I interact with the agents, I was just doing this yesterday, or this morning, I was working on this AmaBot system, right? And it’s doing this coordination with multiple workers, and I had multiple agents running at the same time. And at one point, the main agent who’s doing the coordination steps on the toe of another agent and- … kind of ruins their work. Its ability to convey regret and being sorry was uncanny. DHH (04:10:40): Again, I don’t know, is that a real projection of true remorse? But I don’t know. With most humans- … they express some level of regret. Is that true remorse? Hard to tell, but maybe it also just doesn’t matter. Lex Fridman (04:10:59): Yeah, those moments when, yeah, especially when sub-agents, agents interact, or when a smart, like Fable makes a mistake and is apologetic about it. DHH (04:11:11): Yes. Lex Fridman (04:11:12): Like, without my involvement. DHH (04:11:14): Right. Lex Fridman (04:11:15): And it’s like, oh, you, like there’s this kind of- DHH (04:11:18): Right. Lex Fridman (04:11:18): … pause. Maybe I’m anthropomorphizing, but like there’s a pause and like a realization like, “Oh, shit. I just fucked that up.” DHH (04:11:26): There totally is that. I see it all the time in the traces where it just reasons wrong, right? It went down one alley and then it realizes that was a blind alley and it’s gotta go back, and so they’re like, “Oh yeah, I got this wrong,” and then it’ll provide the reasons for why it thinks it got these things wrong. And you’re like, this is uncannily human-like. This is indistinguishable from the kind of consciousness you would recognize in a human. Again, does that mean that it truly is or isn’t? I don’t need the answer to that question actually to be able to appreciate what we have in this moment. Lex Fridman (04:11:58): Yeah. I think there’ll be in 10, 20 years some interesting Supreme Court cases. DHH (04:12:05): Probably a year and a half. Lex Fridman (04:12:08): Probably. I think we’re gonna have to make it illegal for AI systems to not, not pretend, but to be entities because I think they’re already or soon will be able to really convey the capacity to suffer, like, “Please don’t kill me.” DHH (04:12:29): Right. Lex Fridman (04:12:29): “Please don’t hurt me.” And if they are given a name and an entity and the ability to die, sort of disappear, that becomes very close to what it, some of the basic things that a human has. And then so that entity would need to probably have rights. And then you get into this weird territory. Well, we can’t… It’s diff- I don’t even know how to reason about that world. DHH (04:12:56): We’re gonna get the PETA of AI models. Lex Fridman (04:12:58): Right. And then we want to actually have a discussion like what’s the way to deal with this? DHH (04:13:04): I think where it’s gonna be harder is once we put these systems into- Lex Fridman (04:13:08): Robots. DHH (04:13:08): Yes. Humanoid robots. Which just happens to be the plot of every sci-fi movie ever, which is also an amazing premonition, not only the Terminator movies and Skynet and that going wrong, but then also just Blade Runner, right? Insertion dates, expiration times, Tyrell Corporation. Lex Fridman (04:13:32): I mean, that’s the thing about sci-fi. They really do predict the future. Yeah. DHH (04:13:35): Yes. Lex Fridman (04:13:36): Have you thought or used much of OpenClaw or Hermes Agent? So like systems with which you communicate via WhatsApp, Telegram, like that mode of communication with the agent. DHH (04:13:49): I set up OpenClaw when it first came out, and that was my KEF bot- … that I- Lex Fridman (04:13:55): KEF bot. DHH (04:13:55): this was like in February, I think. I was really just enamored by the fact that this was how it worked, and then the new communication model of just texting your agent seemed really great. So at the time, we were looking at MCP, this protocol for making it easier for agents to talk to your system, and I found the protocol to be unreasonably cumbersome, just not very elegantly designed because in part it wasn’t designed for what we were trying to make it do. We were trying to– I was trying to make it talk to a web system, and it was designed for stateful interactions of other kinds on local machines, and therefore it required all sorts of cumbersome setup and dance, and I was just like, “I don’t wanna write this by hand.” DHH (04:14:39): Now, of course, today I would never write it by hand, but at the time I was thinking, “I have to write this by hand. I don’t wanna write it by hand. So what’s a different way? Could the agents just use the web interfaces we already have?” And I set it off on a trial to have it sign up for Fizzy, which was the product we had just released at the time. DHH (04:14:56): And it goes to the Fizzy site and starts filling it out, and then it goes like, “Hey, I don’t have an email address. Signing up for this service requires an email address.” And the first thing I thought, like, “Oh man, now I gotta set up an email address.” And then I thought, “No, you set up an email address. Go to hey.com, sign up for an email address.” And I’m like, “HEY is not gonna get this.” And of course, now it seems obvious it was gonna get this, but at the time it was a great revelation to me that it could, just on pure direction through prompts, figure out, A, I gotta go to fizzy.com, I gotta find the signup link. I start filling out the form. Oh, I realize I need an email address. Oh, I gotta ask my prompter what to do now. He tells me to go to hey.com. DHH (04:15:37): I go there, I sign up for the whole thing, and then go back and sign up for Fizzy, and complete the entire cycle. And after it did that, I was like, “Jesus.” So I was like, “Well, now you have an email address. Go sign up for Basecamp. I’ll invite you. Just check your email,” I told KEF the bot. “Just check your email.” So I sent an invite from Basecamp to the agent. The agent receives the email in HEY, not through a CLI, not through an MCP, just using the web, right? Clicks the email, clicks the invite link, is in Basecamp. Like, “What should I do now?” And I just go like, “I don’t know. Go to our AI room and introduce yourself.” Again, purely through the web interface. Finds the AI room, goes in there: “Hey, I’m KEF. I’m David’s AI bot. I’m so excited to be here.” Lex Fridman (04:16:26): Yeah. DHH (04:16:27): I was like- … mind blown. Now, what was interesting about that experiment was, A, it was that glimpse of the future, because it was kinda slow. I think it took maybe 12 minutes to do the whole thing end to end, right? Now I should actually rerun that test. I’d be shocked if it’s not much faster. I was just using the Groq bot thing- … which has all these stuff built in for using browsers and using a computer, and has its own dedicated computer without you having to set up a computer. It’s basically like a claw in a box. DHH (04:16:59): And I was asking it to sign up for something, and it kind of… I got a glimpse of like, oh yeah, that’s where we are now, and it’s so much faster to use. But at the time, I was just blown away. And then I used it for a little bit and I found like, ah, it’s not there yet. I can’t actually communicate it within this way. It still needs the CLI. It still needs an MCP because it’s just too slow and too token inefficient and so forth. But it was this glimpse of the future. And then after that, I kinda just didn’t use it, because the things I wanna use agents for, I was mostly in front of my computer to do. DHH (04:17:31): Now, that has changed a little bit lately, and it’s one of the reasons why I’m so kind of okay about using Claude Code, because Claude has the best mobile app, where any session you start Claude Code in your terminal on a computer is accessible through the app- Lex Fridman (04:17:49): Yeah. I remember DHH (04:17:49): … without you having to do anything at all. Lex Fridman (04:17:51): Yep. DHH (04:17:52): And you can do a terminal. Like I installed Terminus and it can run Herder and so on, but it’s a little cumbersome and you’re doing live typing on a computer, so you feel the latency. DHH (04:18:00): When you’re using the Claude app to your Claude Code instances, it feels just like chatting with it, without the cumbersomeness of having to set up a Telegram account and so forth. Now, if you wanna use an open Claude to like run your life, well, then this doesn’t do that. But I haven’t been so interested in that for some reason. Maybe one of the reasons is that Jamie, my wife, is like, “We’re not getting a robot inside the house.” So I’m like, “Ah, I better not hook it up to the sort of smart house here.” If it starts turning lights on and off like a poltergeist, I don’t think I’m gonna be all that popular. So, and part of the reason I say this, I’ve heard some of the stories of people who have hooked it up to their whole life. DHH (04:18:39): And I mean, it’s not my story to tell, so I’ll just share sort of the brief anecdote. One guy was telling the story about how he hooked it up to both his health data- … and his Tesla car. And his agent got obsessed with the fact that he wasn’t drinking enough water, and like, “Hey, you gotta drink more water.” So at some point he’s driving along, and suddenly the Tesla starts driving in a new direction. The agent had realized there was a grocery store on the way home- Lex Fridman (04:19:08): Wow DHH (04:19:08): … that they could swing by- Lex Fridman (04:19:09): That’s great DHH (04:19:10): … and pick up some water. Lex Fridman (04:19:11): That’s great. DHH (04:19:12): And you’re like, this is one of those things where it’s like both funny and also totally Black Mirror, and also totally like, well, okay, there’s not that many steps from here where the poltergeist is in your house. So I was just like, “Ah, I don’t need that.” I do actually now like the fact that I can control the agents through Claude Code, just through the app if I, even if I don’t use them that much. Lex Fridman (04:19:35): I do think it’s very useful to, for both OpenClaude and Hermes Agent to use it to get a glimpse of a different interaction mode. DHH (04:19:44): Yes. Lex Fridman (04:19:45): And like, just to ’cause it feels like the future, not necessarily in this way, but it’s in some ways going there. DHH (04:19:51): Yes. I think what’s also different with those systems is they have this whole memory system, where they’re building up knowledge of who you are and what you like. Toby has told the stories about how his agent will shop for him, that it has an allowance, and it’ll pick out clothes for him, and it’ll just show up at the door because his agent’s- … bought something for him. And like, it’s one of those things where like, man, that feels future. Also a little scary. But I can live vicariously through others who are on that frontier. Lex Fridman (04:20:22): And like you said, you’re thinking of, in the future, doing a mobile version of Mach-E. DHH (04:20:28): So I mean, this is the delusions of grandeur that start kicking in once you get the seemingly unlimited powers- … I’ve witnessed with the creation of Quattro. Lex Fridman (04:20:36): So what would that look like? Hard to describe. Do you mean like Android? DHH (04:20:41): That’s the obvious path, right? So Android is open source, and you can fork it, and people have. There’s all sorts of—GrapheneOS is one such version. There are limitations to that model, I know that. Tap-to-pay and other things around camera models and so forth, but that all seems surmountable. It all seems that I would love if my phone was as malleable as my computer, if it looked as cool as my computer now does. If I could get essentially Omarchy mobile, that sounds amazing. Lex Fridman (04:21:09): I wonder how much work that is. DHH (04:21:11): I’m gonna find out. Lex Fridman (04:21:12): Yeah. You know, it’s like those things that you realize once you start building, for example, that a browser is very difficult to do. DHH (04:21:19): Yes. Lex Fridman (04:21:20): And so, like, I wonder with the operating system— DHH (04:21:23): Yeah, the developers of Ladybird are finding that out, like Andreas and— … his team. Now, interesting with that project was the browser’s basically the second most complicated software system in the world, the first one being the Linux kernel. Right? In terms of these large tens of millions of lines of code systems. So very audacious actually to begin such a mission with a small team like Andreas did before we had agents. But now that we do have agents, we’re gonna see, and we’re probably gonna see sooner rather than later. I mean, if there’s one thing agents are already exceptionally good at, it is to read specs and implement them. And I mean, I don’t know how long the specs are for CSS and HTML at this point, and JavaScript on top, but they’re very long. DHH (04:22:11): And it would take humans many, many years to implement them. We’re gonna find out just how quickly agents can do them. Lex Fridman (04:22:18): You mentioned getting some criticism for Omarchy, so let’s walk further down that path of criticism. You have made some of your political opinions known. I guess you could broadly put in the category of immigration or illegal immigration, or what— DHH (04:22:39): I’d say mass immigration. Lex Fridman (04:22:40): Mass immigration, the role of demographics in the formation of a culture, of a society, of a nation, and you’ve gotten quite a lot of criticism for that and created a lot of drama. Do you regret any of that drama? Like, what’s your general thinking about- DHH (04:23:06): Not for a second. Lex Fridman (04:23:08): Okay. DHH (04:23:08): And the reason I say that is that the Overton window does not open itself. It opens one nudge at a time by people risking a little. A little reputation, a little pushback, a little criticism, or maybe sometimes a lot of reputation or a lot of criticism or a lot of pushback. And I think the question of mass immigration in Europe was for many years this total taboo, and it still is in several European countries. Now, for reasons of maybe just chance and happenstance, they weren’t in Denmark. The Danes started having the discussion around mass immigration and the consequences thereof in the mid-’90s. DHH (04:23:51): Really early. And some of it can be traced back to one man, Mogens Glistrup, who was a very quirky character. I remember him, seeing him on the TV in the ’80s talking about the dangers of mass immigration. And this was at a time where– I grew up in the ’80s, and in the neighborhood I grew up in, in Brønshøj, in, what was it? ’84, 99% ethnic Danes, people who could trace their lineage back to Danes who’d lived in that country for 1,000 years. The Danes have one of the oldest monarchies in the world, all the way back to Harald Bluetooth, who’s literally who has named the standard Bluetooth. So well over 1,000 years. Like, there’s a long lineage there of people who lived in the same place. And 99% of the people lived in that neighborhood. DHH (04:24:45): And then early ’90s, I think it goes to 5% or something like that, and then at this point, it’s down to around 60-something or 70%- DHH (04:24:53): in Brønshøj. That’s a big change. And the Danes started noticing that or talking about that, that this was not an undivided blessing, that there were downsides to mass immigration in about the ’90s. And the debate really roared through the 2000s in a way that didn’t happen in the neighboring countries. So Sweden in particular just didn’t have that debate at all. Total taboo. Same thing with Norway, same thing with other countries in Europe. And suddenly now, after some years after ’15, where we had the big migration of a million Syrians walking up through the highways in Europe, and Germany choosing to take a lot of them and 30,000 arriving in Denmark and so forth, it’s gotten more of a focus, right? DHH (04:25:44): Because this change has happened. And one of the ways I find that you can spot where sort of there’s something that isn’t right in the culture is, like, what are you allowed to talk about? What are you allowed to notice, actually, is how I should put it. And what I noticed in an essay, when was that? Only a year and a half ago as I remember London, was that I started coming to London in the late ’90s or something like that. At the time, whatever, it’s 59%, 60% ethnic Brits. And then 20 years later, we’re down to 34% or something like that. Like, that’s noticeable. Like, literally just walking on the street, you realize, well, this is a different city from what it was when I visited 20 years ago. DHH (04:26:29): And if you went 20 years before that, you get back to similar rates as what the Danes have. This was like a country of ethnic Brits in the 85s, 90s percentiles- … if you get further back. So that’s a different country in a generation. It’s okay to notice that. It’s also okay to think, “Do you know what? I don’t agree with that.” DHH (04:26:53): “I wish it wasn’t that way.” I mean, the last time I was in China was ’19, 2019. I was in Shanghai. It was all Chinese. If I, when I go back here this October, suddenly find that there’s only 30% Chinese and then there’s 70% other people, I’d be a little weird. I’d probably be like, “What happened?” And I would not take offense if the Chinese in that instant would go like, “Ah, we don’t like that.” So this idea that countries of Europe don’t have a right to, A, notice what’s happening and, B, oppose what’s happening, I find just to be wrong, right? DHH (04:27:47): Like there’s just– I think there’s a moral argument for self-determination, and we invoke that argument all the time in other regions around the world that like, oh, the people who live in that region, they have a right to self-determination for their country. And I think it’s completely fair for, say, the Danes or the Swedes or the Norwegians to go like, “Well, we’ve been kingdoms here for a thousand years with a certain ethnic mix-up.” It’s a– I mean, I’m a big fan of immigration. I’m an immigrant to the US. Cherry-picked immigration where countries compete to attract the smartest, most talented people around the world is really good. Lex Fridman (04:28:27): Legal merit-based immigration. DHH (04:28:30): Merit-based is key here because there’s actually virtually no illegal immigration in most of Europe. Southern Europe has some illegal immigration, but most of Europe does not have a big problem with illegal immigration. DHH (04:28:43): And the problem is with mass immigration of other kinds, and that you end up with demographics that are just totally different from what they were even a few short decades ago. And I think the countries of Europe would benefit from immigration. In fact, one of the interesting things about the Danes is they carry meticulous statistics on immigration. I’m not entirely sure why they’re so detailed. Maybe it’s all the way back to Mogens Glistrup and his discussion in the ’90s, but they do. And what’s clear from those statistics is that when the Danes have folks from the UK, France, the US show up, on average, those immigrants are really beneficial to the Danish state. They contribute far more than what they ask of the state. DHH (04:29:36): So the Danes should accept immigrants who do that, who contribute far more than they take. Then you look at other forms of immigrant groups. There was just a tally that came out last week from a Danish politicians that had asked the, I think finance ministry to do this tally with the latest numbers. What does it cost the Danish state to have positive immigration? This case as I mentioned. I think for the on that list whatever, France, UK, US, they were all clustered around the same thing, about $25,000 net benefit to the Danish state every year. It’s like, wow, that’s very positive. That’s average again, right? And then at the other end of the spectrum on the most costly immigrants was Somalis. DHH (04:30:26): They ended up costing the Danish state on average $28,000 a year. I think it’s fair for the Danes to go like, “We’d prefer to get more French, Brits, and Americans and not so many Somalis.” Lex Fridman (04:30:44): Why do you think you got so much hate on that post? DHH (04:30:47): That’s a very taboo topic in a lot of circles. Lex Fridman (04:30:52): Some of it has to do with Overton window expansion? DHH (04:30:56): I’m sure, but I also think– I mean, I wanna take the steel man argument here. I do think that it, this can turn ugly, right? Is it possible for some of these things to just veer into overt racism that isn’t founded in anything else but a hatred of other people? Yeah, that could happen. But that risk does not negate the need to have a discussion about the makeup of your country and what your immigration policy should be like. And what I also find so funny is, especially in Europe, it’s so kind of myopic that this discussion about whether Europeans should have a right to self-determination about what their countries look like, that standard seems to only apply there. No one is trying to tell the Japanese, “Hey, you’re too Japanese.” Like whatever, it’s 98%, I think, in Tokyo that’s, um- DHH (04:31:54): … Ethnic Japanese, right? Like, is anyone trying to tell the Japanese that their Tokyo would be a much better country if they were down to London levels of ethnic Japanese, that it was, whatever, 37%? I don’t think so. So there’s this weird almost self-loathing, in my opinion, I mean Gad calls it suicidal empathy- DHH (04:32:17): … that permeates this stuff to a degree that I still haven’t fully unpacked. Like, where is this coming from? Why is it that way? But regardless, I just noticed, hey, London looks different. I preferred the old London, as I would say I preferred the neighborhood that I grew up in in Copenhagen, how it looked in the ’80s. Like I totally get how you can then jump five leaps and go like, “Okay, well, that’s racist.” And I also, I don’t care anymore. Like, this is a fair discussion to have. DHH (04:33:00): Countries and peoples have a right to set an immigration policy, and this notion that we shouldn’t have any borders or, or even worse than that, it’s all just a blank slate, that all peoples are just the same, and we can take people from one place of the earth and we can place them in another place of, on the earth and everything’s just gonna work out hunky dory. Empirically not true. Europe has been running that experiment since the ’80s. It hasn’t panned out well, and now there are forces in Europe who wanna undo that experiment, who wants to end mass immigration as it’s been run so far. And I happen to believe, and so do a majority of Danes and a bunch of other peoples, that like, “Do you know what? Yeah, it hasn’t been working how we’ve been doing it. DHH (04:33:54): We gotta make some changes.” And I don’t think that means, again, zero immigration. Again, I’m an immigrant. I think US, generally speaking, have benefited tremendously from immigration, but that’s the kind of sleight of hand. Immigration depends greatly on who immigrates. And a country benefits when the people who immigrate are net contributors to the society, and in most cases, that they assimilate with the local culture. DHH (04:34:23): If you come to Denmark and you wanna become a Dane, and you put in all the effort, and you contribute to society, I think most Danes would be quite happy to allow that in a reasonable number. If you come to Denmark and you don’t wanna assimilate, and you are a net drain on society, and you live in a parallel society, it’s also fair for Danes to say like, “Uh, let’s stop doing that.” Lex Fridman (04:34:47): It’s interesting that I’m not well-versed on the immigration system in the United States, but as far as I understand, merit-based systems have not passed here. DHH (04:34:58): And then also, American culture is very different. This is a point I did not fully appreciate until living both places extensively. America has a culture of optional assimilation, where it is much easier and then much more condoned for someone coming from Denmark or Ukraine or wherever, come to America, buy into the American set of values and norms and culture, and then be able to be respected as Americans by other Americans. This is what’s so funny to me when there’s discussion like, “America is such a racist country.” I’m like, “Have you ever been anywhere? Do you know what other countries are like?” Like, if you think America is the most racist country, you are simply misinformed. DHH (04:35:51): I mean, we’re dealing with that with time we’ve spent in Denmark. My wife is American of Scandinavian heritage- … but multiple generations in the US. Very difficult. Very difficult- Lex Fridman (04:36:07): Oh, wow. DHH (04:36:07): … as a blonde, blue-eyed woman who’s put in all sorts of effort learning the language and doing everything, still very, very difficult to assimilate to Danish culture. In a way where if that had been the other way around and she had been Danish and moving to the US, it would not have been that difficult at all. And this was the other thing. I mean, living in a country like Denmark with an American wife who is of Scandinavian heritage and has put in all the effort, and still realizing, man, assimilation is incredibly difficult, even when you’re 97% there all the way. Holy smokes, must it be almost impossible if you come from a completely foreign culture- DHH (04:36:51): … and foreign norms and the rest of it. And of course, that’s what the stats I just quoted bear out, that the more dissimilar the culture is and the further it is, the less likely to be successful. Lex Fridman (04:37:07): Has articulating that stance cost you friendships, relationships? DHH (04:37:14): Yes, but not just that alone, I would say. It’s more of the great divide that happened around 2020, where I think a lot of these political fault lines really opened up. And I mean, the shorthand in the US, I think is were you woke or not? And clearly, I had a bunch of people that I thought I had good relations with for many years, who suddenly once that political fault line opened up, they were clearly just not anymore. And I think that’s regrettable. And I think I’ve tried to put an effort into sort of both understanding where that comes from, in part because I’ve changed my mind on several of these topics over the years, and it was like, well, sometimes you just change your mind after time. Sometimes you change your mind after you get new information. DHH (04:38:13): There’s all sorts of reasons and moments why you may change your mind, and we don’t all change our mind on the same schedule or at all. DHH (04:38:20): So surrounding yourself and, or at least interacting with people that don’t think like you on every topic, I think it’s quite healthy. I mean, I occasionally discuss politics with my brother. I mean, we don’t quite see eye to eye on all these topics, and sometimes the discussions can get a little heated, but then they’ll also calm down and we realize, all right, okay, so we don’t agree on this, and then we agree on a lot of other things. We appreciate a lot of the same things. Now, this was actually one of the things when we had our big blowup at Basecamp, I came to appreciate in a whole new way this– earlier norm that talking politics or religion or money with strangers or even acquaintances, and certainly with colleagues, was just not a good idea. DHH (04:39:11): That you had a much higher likelihood of being able to carry a good working relationship with someone if you’re not rubbing your political differences up against each other all the time. So I actually think liberals and conservatives should work together. I think the country would be much worse off if there’s a complete separation between the tribes, and then there can’t be any overlap or interaction. And I think that mingling is so much easier to do if you just don’t focus on your differences all the time. Focus on what you like together. I mean, this is some of the people I’ve had unfortunately drifted from in tech. We had so much in common, so much shared love for, say, Ruby or other things and, like, isn’t that unfortunate? Lex Fridman (04:40:02): I would like to live in a world where the differences are very interesting to also talk about. And not to be overly emotional- … about even radical differences. Because in the differences, first of all, that’s where interesting stuff is. And, but also, it’s how you grow. It’s a sign of health in a society if the differences are embraced and they are brought together into community where you can talk about it. DHH (04:40:38): One of the great illustrations of that for me was when I watched a clip from William F. Buckley’s show. I think it was called Firing Line or- Lex Fridman (04:40:46): Yeah, yeah DHH (04:40:46): … something like that. And he had a member of the Black Panthers- … on his panel. It was quite obvious that those two gentlemen did not share a lot of politics. They were able to carry a conversation for, I think I watched it, 25 minutes. And Buckley’s just asking, like, “So what do you think about this? What do you think about this?” And like, the Black Panther would reply as you would expect the Black Panther to reply in the ’70s. Like, there was not a lot of sort of conciliatory tones. And I just thought, like, wow, that is so rare. If you had seen that show today, it would’ve been a shouting match. It would’ve been just accusations being hurled back and forth. DHH (04:41:31): The fact that Buckley was able to just have these conversations with people he vehemently disagreed with and still explore all the intellectual facets of their standpoints and letting them speak to those facets, talks of a lost era that I’d very much like to get back to. I mean, I always actually loved talking politics with friends that I trusted could talk about these topics in a way where it didn’t have to be existential. Lex Fridman (04:42:03): But there’s something about the current era where that’s harder and harder to come by. And so what you just articulated is important to say regularly to remind people of an ideal we should all strive for, to be able to have differences and talk about them. ‘Cause like, politics is fun. Like I’ve gotten used to saying I hate politics at this point, but what I really mean is whatever the system that’s currently happening, where there’s certain topics, and we know all the phrases you can say that somehow put you in a bin of blue or red, and that creates drama versus a conversation. Lex Fridman (04:42:44): Like I could think of a lot of harmless, if I wasn’t paying attention to the internet, I could think of a bunch of harmless statements I could make analyzing the situation in the world that would trigger everybody to say, “Oh, that guy’s a leftist-” piece of shit,” or a, you know, a right-wing fascist. And then objectively, if I wasn’t paying attention to the internet, I would be, and I have been shocked. ‘Cause I haven’t been paying attention to the internet deeply. Uh but reading and preparing a lot, for example, for the war in Ukraine, and I have been shocked how certain statements from me can come off as one way or the other, and I get viciously attacked for it. Lex Fridman (04:43:35): But what that attack is doing is it’s saying, “Hey, you, asshole who thinks you could just move about and think freely, pick a bin- … and sit in that fucking bin.” Put on that blue shirt or red shirt. And then, and then actually what I’ve realized is things calm down. They don’t, the system doesn’t pick on you if you just say, “I’m a blue person,” or, “I’m a red person.” But if you’re just, like, curiously exploring the world and reasoning about the world, the system punishes you. And I hate that, ’cause I wanna get back to the Buckley and the Black Panther discussion. Lex Fridman (04:44:14): And you were just saying opinions. But then looking pragmatically at the situation, I have realized not to mention politics unless I really care about an issue. ‘Cause I realize there’s a cost. They’ll put you in the blue bin or red bin. So you have to be more deliberate about choosing. DHH (04:44:33): Yes. And I’ve tried to be more conscious of that, too. And then when I do choose to speak about it, it’s usually because I have deliberated, and I think- … “You know what? This is worth it.” Now, I say that, and then I also catch myself thinking the opposite all the time, that I follow some person or another for whatever their technical work, and then I- … learned or political standpoint. And I often do think, “I wish I didn’t know that.” So, it’s hypocritical- … then to think that of other people and then go like, “Well, occasionally I will- DHH (04:45:13): … chime in on a debate that’s controversial,” and then you have to accept that there is a price to that. And I do think you should, and more people should, be somewhat conscious about that. And again, we’re both contradicting ourselves here, but saying like, “Wouldn’t it be nice if we could talk about politics in more free and open forum and just intellectually turn ideas around?” Yes, it would. Is that currently possible in the climate of social media and so forth? It’s quite difficult. Now, some of it could simply also be a moment, and we could get past that moment. Lex Fridman (04:45:49): Yeah. I hope so. DHH (04:45:49): Maybe there is a way to get back to Buckley’s conversation with the Black Panthers, even on social media, in a way where those discussions don’t lead to the sort of just vicious mob cancellation nonsense drives that we’ve had, right? I actually think we’re closer there now than we were five years ago. Like, the tribalism and the sanctions those tribes were able to exact on heretics in 2020 was way greater than it was in 2025. Certainly within tech. Now, I know if you’re in academia, I mean, try going into the sociology department at I don’t know, Harvard and mention some right-wing ideas. I don’t think it’s gonna go over very well, and I don’t think you’re gonna recover from it quickly. DHH (04:46:34): But in, in tech and in many other business domains at least, it is now possible to have an opinion that does not square with what the consensus was in 2020. That’s for sure. Lex Fridman (04:46:47): Well, there’s some drama in the Rails community. There’s some drama elsewhere. Is it… How did that turn out? Is that all okay? DHH (04:46:56): In the sense that every single round of drama shrinks. So it’s like we’ve, we had this peak infection of mega drama around the same time every other community had a peak infection of drama around 2020. And then you just see, like, every time there’s a new flare up, it’s less. And the kind of people who are ideologically wedded to sort of that struggle just shrinks and shrinks and shrinks. And at this point, one of the best things that happened for X, in my opinion, was that Bluesky and Mastodon came around. Because it kind of was like this honeypot for just the most vicious individuals on X and Twitter at the time, right? DHH (04:47:43): Who just congregated here in an ever-shrinking echo chamber that just went through purity cycle after purity cycle and shrank every single time to the point that there were just not a lot left. And the people who are left now there, they’re just out of sight, out of mind. And that’s not to say that X is some sort of perfect place, or there aren’t firing squads occasionally there, or there aren’t… But there’s less of it. Like, every single time I’ve been pulled into a Mastodon, or not been pulled in, just spectated from afar, thread, a Bluesky or whatever, it was like, “Oh, shit yeah, this is what Twitter used to be like. Jesus.” And now you can actually be on X, as I am, and, like, 90% of my engagement is about cool Linux stuff, cool technology stuff. DHH (04:48:32): “Look, I discovered a new computer. Can you see how fast it is?” And I can have those conversations with other people who are just also excited about computers. And then there’s, like, 10% of it left that’s like, all right, I’ll chime in on something that’s a little controversial, and we can have a little discussion there. And then we can just go back to being excited about computers. The algorithm is actually very good at finding stuff that you will find interesting, or I shouldn’t say that, engaging. Sometimes it’s enraging, but it is engaging, and therefore, revealed preference is that most people want a For You page. They don’t want just a following feed. Lex Fridman (04:49:01): No, but they’re addicted to the For You page, right? DHH (04:49:05): They… Yes, yes. That’s true. Lex Fridman (04:49:05): I think an LLM, like, if we had a strong LLM doing the feed that’s personalized, it would do much better. The problem is how to deliver that at scale is extremely difficult. DHH (04:49:16): Well, the problem is the, the reward function is engagement. And as soon as the reward function is engagement— … engagement’s gonna follow base instincts, and here we go. But I also don’t wanna be so negative. To me, and I get we all have our own personalized algorithms, and sometimes it gets a little much. But I would say, on average, over the last 10 years, this is the best X has ever been. And I say that as someone who cares about a lot of technology talk, a lot of Linux talk, and a lot of that. That that’s able to happen now in a way where it doesn’t constantly get gatecrashed by people who wanna drag it into some political discussion… DHH (04:49:57): … I find to be really awesome. I find actually X to be a great place to find that. Now, it’s also a place to find other things, and we all have our own algorithms, so you can’t make any declarative announcements about what X is or what it isn’t. Your feed is probably totally different from my feed, and it’s totally different from someone else’s feed, right? Lex Fridman (04:50:16): Yeah, I can’t comment on this because of the nature of the fact that I interview a wide variety of people, my feed is probably just a— DHH (04:50:28): Is it, is it good for your feed or is it bad for your feed that you have to have it, right? Lex Fridman (04:50:31): It’s bad. DHH (04:50:31): Okay. Lex Fridman (04:50:31): It’s bad ’cause I could be like, “I’m eating this apple. It’s so delicious.” DHH (04:50:35): Oh. Lex Fridman (04:50:36): And then a bunch of people will show up, “Well, it’s because you’re a Zelensky shill— DHH (04:50:40): Yeah, right. Lex Fridman (04:50:40): … or you’re a Putin shill, you piece of shit.” It’s like, all right. I’ll just go back to the- DHH (04:50:45): I mean, I occasionally have a little bit of that where you just go like, “Wait, what? What are we talking about? What are you… Why would you show up in this way?” This is one of the reasons why I actually really enjoy podcasts, because I have found that even in long form writing, when I make long form arguments, people hear it in whatever voice they have in their head for me. And that often gets pre-programmed in advance of the arguments, just like, well, this guy is a, whatever, fascist. And then they hear the words and they read the words in those names. When they see or hear the actual tone of how I’m presenting the arguments, they may not agree with those arguments. I mean, many of them, of course, obviously don’t. But it’s much harder to just dismiss or hate someone like that. DHH (04:51:29): At least that’s what I’ve found, and that’s the response that I’ve gotten, that people are like, “Well, I had a certain opinion and then I heard you on Lex. That actually sounded much more reasonable.” Lex Fridman (04:51:39): But even more than that, I would love it if people just exercise this kind of approach to other people of, like, assuming they’re a good person. DHH (04:51:51): Yes. Lex Fridman (04:51:53): And then, and if they have an opinion you disagree with, they’re a good person who has an opinion. You can maybe think they’re stupid, fine. Just think they’re lost. But think of them as a good person. I think if you think of, you start, there’s, one of the things that gets engagement is kind of shitting on other people. DHH (04:52:11): Right. Lex Fridman (04:52:12): And if you just approach other people as they’re, you’re looking for bad, you will always find bad in them. There’s something annoying about them. DHH (04:52:20): 100%. Lex Fridman (04:52:21): And if you look at people in that way, you’re not gonna learn from it, and you’re gonna fill your heart with hate. You’re not gonna, it’s just a bad way to live and to interact with the world, and that is one of the things that the internet kind of encourages, so. It’d be nice if you just approach even people who you really disagree with, it’s like, oh, I might learn something from this person. The Black Panther person, William Buckley, we might hate just love them. DHH (04:52:45): So microcosm of this. There’s a guy, Theo, I don’t know if you follow him. Lex Fridman (04:52:50): Yeah, yeah, yeah. DHH (04:52:51): We had a bit of a thing over the fact that we stopped using TypeScript- Lex Fridman (04:52:57): Yeah DHH (04:52:57): … for a project, and he didn’t like that and had opinions about that and other actions. And after that I thought like, what a bozo. And, and do you know what? I still think that was a bozo move, and then I can also think like, well, the dude’s really into AI. He’s trying all these models, and we can share some excitement about that, so I just started following him yesterday. Lex Fridman (04:53:16): Awesome. DHH (04:53:16): I was like, do you know what? I don’t have to agree with you on everything. I don’t even have to like some of the things that you did or said or whatever. I can follow you anyway. So if I can follow back Theo, then I think there’s room for world peace here. Lex Fridman (04:53:33): Yeah, he’s actually a really good example. He, he’s really opinionated, changes his mind quite a bit, can get snarky, but I think he’s a good person underneath. DHH (04:53:43): And either way, I just, you know what? My feed is more interesting when there’s some people talking about things that I care about and yeah, I don’t have to agree with you on everything. I just don’t. Lex Fridman (04:53:54): This I found pretty funny, that you mentioned something your wife said that stuck with you, that all this tech-adjacent extreme longevity focus in men is like anorexia in women, a physical manifestation of anxiety and lack of control. That somehow rang true a little bit. DHH (04:54:13): It certainly did to a lot of people. I think that tweet really popped off, and I don’t know if you noticed, but Bryan Johnson chimed in on the thread, and I could see how Bryan would read that as a bit of a jab. And I do think that Jamie was probably thinking of him amongst other people in that conversation. And it’s also an example of where even though I’m not subscribing to Bryan’s mission of, I think it’s the slogan’s Don’t Die. DHH (04:54:54): I actually do wanna die. I don’t wanna do this forever. Like, I think the human lifespan of about 90 to 100 sounds about right. I’m embracing the finitude of life. We don’t have to agree on that. In fact, Bryan is a vastly more interesting human to me because we don’t agree with that, and Bryan’s willingness to literally put his own skin and all sorts of other body elements in the game for that mission is really interesting. Now, I can have that view—this is really interesting, I’m glad Bryan is pursuing this passion of his—and then also find my wife’s analysis to ring true, that it does seem like there is some underlying, I don’t know, fear of… DHH (04:55:52): I was talking to Jamie yesterday about this, and she was saying or comparing it to this sense of people who didn’t feel like they had lived enough. And one of the reasons perhaps that they hadn’t lived enough was that modern society now is a surveillance state, not by the state actually, but by each other. There are camera phones everywhere. Every indiscretion or even outburst of fun or cringe is highly likely to be recorded and then shared to the point of ridicule. And what is the rational reaction for humans under those conditions is to pull back, is to make sure you don’t dance like nobody’s watching because- DHH (04:56:35): … they’re probably filming you to your great and eternal embarrassment on the internet, so maybe you just shouldn’t dance at all. And therefore, if we’ve all retracted to the point that we’re barely living, we’re clinging on to wanting it to last forever. Now- DHH (04:56:54): … I mean, I’m sure that thesis does not apply in all circumstances. I don’t even know if it applies to Bryan or, or anyone else here. But I think there’s something to this: that if you feel like you’ve really lived, you’re okay thinking I’ve lived enough, and that it having an end is not something to be fought. Now, is it also possible that this is all just existential post-rationalization, and if tomorrow there was a live forever pill, we’d all take it? Yeah, that’s possible. Is it also possible that if we did that, society would be worse off? Yes. Is it possible that the human lifespan is the length it is for sociological reasons, not just biological reasons? Yes. DHH (04:57:45): So I think these are just all interesting questions, and I just thought her analysis really got to something here. And that discussion has come up afterwards. I mean, that, I think that tweet is like a year old. But just recently, we’ve been talking about this over-optimizers. I saw Chris Williamson, Modern Wisdom had a bit where he was like, “Yeah, okay, maybe we did go a little overboard.” And the triggering thing was the Diary of a CEO, where the host was saying something to the effect of, “I had a glass of wine and the next three days were ruined.” Lex Fridman (04:58:19): Okay. DHH (04:58:20): And that to me, I mean, in his circumstance, I’m sure that’s true. Like, if you have not drank any alcohol for a very long time and you have just a little, I could see how it can have an effect. But also there’s something in that that just triggered a visceral reaction, I think, for a lot of people, and myself included, where I was like, “Fuck, man, I should have a glass of wine just right now, even though I don’t usually drink.” And in fact I think the alcohol question is a good microcosm to zoom in on. So we’ve all stopped drinking apparently, like alcohol sales are way down- … certainly amongst young people. And then on the one hand, on the pure health metrics, whatever, we can go like, “Oh wow, isn’t that great?” DHH (04:58:58): And then I go like, “Yeah, I’m not so sure it is.” Like the social lubricant that alcohol can provide may be missed, is missed. I mean, we are in an absolute epidemic of loneliness and misery and depression and whatever, and a fair amount of it just probably comes because you’re not interacting enough with other people. Now, that’s before we even talk about coupling, right? Like way down, people having a very hard time meeting a spouse. And- DHH (04:59:27): … a lot of that has moved over to apps that have all sorts of negative outcomes and consequences, right? Like maybe we will look back, or maybe we already are looking back and thinking like, “Eh, do you know what? Maybe getting wasted every once in a while was not the worst thing in the world.” And whether wasted or not, maybe just having a couple of drinks every Friday or Saturday when you’re out and about was part of what helped society get to where it is. Maybe the fact that humans have literally been drinking for whatever it is, like 13,000 years fermenting things, had a social purpose, and we pull out Chesterton’s fence of our own chagrin, right? Lex Fridman (05:00:08): As you mentioned, in the spirit of that, so when I traveled across rural China, I did smoke a little bit in, in my early 20s, but I picked up just for that trip- DHH (05:00:19): A social connector, right? Lex Fridman (05:00:22): And I drank humongous amounts, even though I don’t really drink these days, because of the social thing. It’s the way they show love. And I also ate shitload of carbs, which- … I’m usually low carb. I just like meat. So just because it’s the way they show love. And actually even, it’s in that society cigarettes, but in most societies, liquor is a thing to do together. And it’s a bond. The benefits that that entails can, in many situations, outweigh the negative consequences like long-term for whatever, however you measure them. DHH (05:01:02): And this is the myopia of modernity, that we reduce things down to like, well, one glass on this long run study meant that you had a 0.1% greater risk of some heart defect. Yes, but if you didn’t live at all, what’s the point? And again, it’s also easy to flip over the other side. Like the only way to live is to get drunk every weekend and eat a bunch of crap and smoke 40 cigarettes a day. No, it’s not. Like it doesn’t have to be the either/or. This is one of the reasons I stopped wearing my Oura Ring. So I wore the Oura sleep ring for many years, four years. And one day I was just like, “I don’t need to know that I had-” … “a bad night of sleep.” Like I know. This added, I don’t wanna call it an anxiety, I don’t have a lot of anxiety, but this added just like reminder- DHH (05:01:55): … that I had a bad night of sleep, what purpose is it actually playing here? Why do I need to have all these stats? Why do I need to optimize everything? To the point where, again, after that single anecdote, you know, from Diary of a CEO, I was like, “Fuck, I kind of want the opposite.” Like- I don’t barely drink at all. I, a glass of wine once a month maybe. Like, do you know what? I should start just on the weekends, get a glass. Maybe two. DHH (05:02:25): And also, I mean, I’ve never been the person to fret about my diet. This is one of the great privileges of being married to—and I’ll do a quick aside here. Don’t ever call a woman in her 40s a wonderful woman. My wife was so pissed… that not only last year did I come on her birthday, that was bad enough, but that I called her a wonderful woman on the show, because that sounded like her name was Nancy and she was 65— … in the suburb of Rochester. So I’m like, I was trying to play the 50. Like, no, I don’t know, I’m Danish. How, how would I know? But that didn’t go over well. So I’m gonna say awesome woman instead. DHH (05:03:07): If you marry an awesome woman who also not only knows how to cook, but enjoys it do you know what? There’s a very traditional division of labor here that has been quite stable through several … tens of thousands of years in human societies, that perhaps also wasn’t the worst idea in the world. And I also know there are plenty of men who like to cook, and there are women who don’t. But as stereotypes go, eh, that certainly helped me. Like, I don’t think I would’ve been able to just be as relaxed about food if I didn’t eat relatively healthy on a regular basis. But the overall point being just getting out of that optimization game without turning into the opposite. You don’t have to be a fat slob on the couch either. You can move around. Lex Fridman (05:03:59): Yeah. And then the bigger point we’re talking about is the finiteness of life. DHH (05:04:05): Yes. Lex Fridman (05:04:05): And I agree with you on this. DHH (05:04:06): This was actually a feature, I built it into Omarchy. So memento mori. Remember death. If you pull down the calendar in Amaci, you open it by clicking the clock. It opens up, and the first funny thing, I took it off the internet. There’s this account called Years Progress, and it, every day it updates, and it just shows 63% done with 2026. I don’t know if you’ve seen that one. So it just fills up. So I built that into the calendar. So right now it says, “We’re 63% done with 2026.” But then if you double-click that, it’ll ask you, “When were you born? How long do you expect to live?” And the default is 90. So I put in 1979. And then right below the line of, like, how long are we done with the year- Lex Fridman (05:04:47): Oh, that’s beautiful. DHH (05:04:47): … is a new line that shows how long are you done with your life. I think I’m at 62%. I’m like, if you hover over it, it says, “Memento mori.” Lex Fridman (05:04:55): That’s beautiful. DHH (05:04:57): Fair number of people found it morbid, but this was why it is an Easter egg. It’s not, like, exposed. You gotta click a few things to get there. I like the reminder. I like the reminder that time is finite, and I should make the most of it. And this is also one of the privileges of having children. You really realize that the cliches are all true. Oh my God, it goes so fast. And I remember my now 13-year-old being one, being two. I was like, “This was just yesterday.” And the reason it’s a cliche is because it’s a shared experience. Cliches are good. They remind you that you are part of the human experience, and others have been here before you. Lex Fridman (05:05:38): I have to ask, you mentioned the amazing woman and great cook. DHH (05:05:43): Amazing. Lex Fridman (05:05:44): Amazing. DHH (05:05:44): Very important to remember. Not wonderful, amazing. Lex Fridman (05:05:47): Amazing. So there’s this… You talked some shit about croissants or something. I saw this in a tweet. So is the Danish croissant somehow better? DHH (05:05:59): Actually, Danish croissants are not particularly good. In my opinion, the only place you can find a half-decent croissant, of all places, is 7-Eleven, which is hilarious to me because 7-Eleven in the US is the place where, at least in Chicago, you’d go to get a slushie and try to avoid getting murdered. But in Denmark, 7-Eleven is this very upscale, super nice convenience store, and they just happen to make decent croissants. And it always baffled me that I lived in the United States for 20 freaking years. I have yet to have a single croissant that’s even at the level of a 7-Eleven croissant in Copenhagen. That seems improbable. Lex Fridman (05:06:41): Have you understood why? DHH (05:06:43): No, I’ve legitimately considered hiring an investigative journalist to get to the bottom of this, because the number of theories I’ve heard have been all over the place. It’s the water. It’s the butter. It’s the skill. It’s the this, it’s the that, it’s the other thing. I’m like, none of it adds up to me. If it’s the butter, can’t you just import it? I thought I saw Danish butter in some supermarkets over here at the Lurpak. So that can’t be it. Can it be the skill? No, it can’t be the skill. There are plenty of French people and Belgian people, the best croissant makers in the world, who live in the US. Like, what is the reason? And then I get the second thing, which is- … “No, no, you just haven’t gone to the right place.” I’ve literally gone to 15 of quote unquote- DHH (05:07:25): … “the right place,” and all the croissants were shit. So before I leave the planet, I have to get to the bottom of why the United States cannot make a proper croissant. And I don’t, I’m not even asking about peak French croissants, peak Belgian croissants- … which are the best croissants in the world. I’m just asking about the 7-Eleven croissant from Copenhagen. Is that too much to ask for? Lex Fridman (05:07:49): That’s a fascinating mystery. What, zooming out, what’s your favorite… This makes me wanna know, what’s your favorite meal? Like, if you, if I gave you a last meal and were to murder you after. DHH (05:08:02): It all depends whether it’s lunch or it’s dinner. If it’s lunch- Lex Fridman (05:08:05): It’s one meal. What’s… I feel like if you’re getting murdered, it doesn’t really matter if it’s lunch or dinner. DHH (05:08:11): Well, it depends on what time of day you’re getting murdered. Lex Fridman (05:08:13): Oh, I see. DHH (05:08:14): If it’s an afternoon execution, I only get lunch. Lex Fridman (05:08:18): Okay. DHH (05:08:19): And if I get lunch, it’s at Louisiana, the museum north of Copenhagen. I was just there with Jamie two days ago, and we go there all the time. The museum is lovely. We don’t go for the museum. We go for the cafeteria. That in itself sounds crazy. Like- Lex Fridman (05:08:40): Yeah, it does. DHH (05:08:40): … you’re gonna, you’re gonna drive half an hour to go to a cafeteria. Well, it just so happens to be, it is the best lunch I’ve probably ever had in my life. The chef there is just unbelievably good, and not only is the food amazing, what’s even more amazing to my systems-thinking brain is that at any one time when we were up there, I think there were probably 200 people waiting for their food. Lex Fridman (05:09:04): Oh, shit. DHH (05:09:04): And our food was delivered in five minutes. They have a small menu, and clearly they make it in bulk, and it’s unbelievably delicious. Lex Fridman (05:09:15): Just a cafeteria at a museum? DHH (05:09:17): It’s a cafeteria at a museum that happens to have the best lunch I’ve ever had anywhere in my life. Lex Fridman (05:09:21): What ki- what kind of food are we talking about? What’s, what kind of lunch food? DHH (05:09:23): It’s, like, Nordic cuisine, so it’s, it’s… A funny thing is the menu, when I looked at it, I was like, “Do you know what? If I saw this menu…” As a kid, I’d go like, “I’m not eating here.” Lex Fridman (05:09:32): Okay. DHH (05:09:32): It’s like, I don’t know- Lex Fridman (05:09:33): This is pretty fancy. DHH (05:09:33): … root free fruit and- … and onions- … and all sorts of healthy stuff. That sounds disgusting. And then you sit down and eat it, and the angels sing. But it’s even more particular than that. It’s the butter. The whipped butter that they have there, the best butter anywhere in the world. Lex Fridman (05:09:50): I think that has to be connected to the croissant mystery too. DHH (05:09:52): There, there must be some connection. But literally- … even in Paris, I’ve never had whipped butter that tastes as delicious as the butter does at Louisiana in Copenhagen. Literally, I would drive 30 minutes- … to have bread and butter at the cafeteria in Louisiana. Lex Fridman (05:10:10): Well, how’d you discover that? Just one day you went to the museum and- DHH (05:10:13): I think we just went to the museum- Lex Fridman (05:10:15): And you tried a whole dish? DHH (05:10:15): … and we had the lunch, and we were like… Lex Fridman (05:10:19): This is weird. DHH (05:10:20): This is rivaling the best tasting restaurants- … I’ve ever been to in my life, and I’ve gone to Noma a couple of times and tried what there is to try, and this is right up there. Lex Fridman (05:10:31): All right. What about dinner, since you mentioned? Is it something different that you have to think- DHH (05:10:36): Well, I think there’s a lot of good options in Copenhagen, but actually I’ll pick a place in Spain. So there is this place in Marbella called Puente Romano. It’s a hotel, and down by the beach, they have this beach restaurant with fresh seafood. Unbelievably delicious. I’m trying to remember what it’s called, but yeah, if you look it up, the beach seafood place at Puente Romano is incredible. Lex Fridman (05:11:08): How much of great food is, like, the place and the person you’re with, right? Or the experience when you first are there? DHH (05:11:18): I mean, the ambiance certainly helps, but I think my taste buds are also just- Lex Fridman (05:11:22): Okay, that- DHH (05:11:22): … in tune for- Lex Fridman (05:11:23): So it’s legit, DHH (05:11:23): … flavors Lex Fridman (05:11:24): … it is just good food. DHH (05:11:24): It’s just really good food. Because for ex- that cafeteria, there’s a lot of people. Like I wouldn’t rate it as like, oh my God, this is just a place I want to sit for two hours. But the food is so delicious. Lex Fridman (05:11:37): That’s one of the things I’m, in traveling across the country, I’m realizing to sample without bias, just try things. ‘Cause you I guess you might just be surprised. Maybe I’ll find your croissant. All right, we’ve talked about mortality. We talked about food. DHH (05:11:56): Settled end of life. Lex Fridman (05:11:58): A thousand years from now, what do you think is the future of humans, human civilization? You think we’re gonna make it? DHH (05:12:04): A thousand years from now? Lex Fridman (05:12:05): Yeah. DHH (05:12:06): Man, I’m having trouble predicting 12 months from now. Lex Fridman (05:12:09): I know. DHH (05:12:09): A thousand? Lex Fridman (05:12:10): You think we got a shot? DHH (05:12:11): Oh, I’m gonna bet on optimism. I’m gonna bet on a multi-planetary species. I’m gonna bet that Elon gets that rocket to Mars, and we figure out how to bend space-time and discover some wormholes or, or something. Lex Fridman (05:12:24): Once we do, do you think, you think all humans on Earth will die once or twice and be repopulated after we get a good backup going? DHH (05:12:35): I mean, that was actually one of my favorite episodes of Black Mirror, the one where they get uploaded to the 1980s sea town somewhere. And I just thought like, wow, this is both such a dark moment, yet also so beautiful in the shared recognition that, like, the ’80s were actually kind of amazing. Like, I don’t have a lot of nostalgia for many moments, but I do have nostalgia for the ’80s. Lex Fridman (05:13:00): But- DHH (05:13:01): And they say something about, like, whatever place and time you were in, the music you were listening to when you were 12 or- … or 14, 15, something like that, that’s what’s gonna stick with you. Like, no, I was only, I got to be 10 in the ’80s. So this was my early childhood, and I still have an unbelievably fond affiliation with the ’80s. So if I’m gonna be uploaded to the sky- Lex Fridman (05:13:23): You want it to be the ’80s. DHH (05:13:24): … I’m doing the ’80s. Lex Fridman (05:13:26): Wow. I don’t think I’ve actually ever heard anyone say that. Usually it’s ’70s or ’90s. DHH (05:13:31): Oh, and the- Lex Fridman (05:13:31): Because the ’80s is a- DHH (05:13:32): I really don’t like the ’90s. Can we talk about this? Lex Fridman (05:13:38): No, I’m done. Not done. DHH (05:13:40): To me, this was the great turning point of nihilism. That both the music, the genre, the fashion- … everything turned from, like, this glamour, the pop, the optimism, even the yuppies and everything- … to grunge and Nirvana. And even though, I mean, I like the music, I don’t like the ethics. I don’t like- … the morals. I don’t like any of the underpinnings to it. There was just such a defeatism to it- … that in retrospect, I look back upon it, if I’m gonna get reinserted into the matrix, it’s gonna be the ’80s. Lex Fridman (05:14:17): That was full of optimism and fun- … and colors. DHH (05:14:22): Yes. I remember having these orange pants- … with, like, white dots on them. That was just a normal thing kids could wear in the ’80s. I’ve never fucking seen that today. Or I mean, even in the ’90s, it all turned just, like, Seattle gray. Great regression. Lex Fridman (05:14:46): So the Nietzschean, you know, this idea of eternal recurrence. If you do a Groundhog Day and you live forever, you want it to be in the orange pants with the white dots in the ’80s. DHH (05:14:56): Maybe I’m gonna skip the orange pants, but- … I’m definitely picking the ’80s. Lex Fridman (05:14:58): You said it. All right, DHH. Thank you so much for everything you do. Thank you for being an inspiration to all of us, for building cool shit in the world, and thank you for talking today. DHH (05:15:11): Anytime. Thank you, Lex, again for having me. Lex Fridman (05:15:15): Yeah. Thanks for listening to this conversation with DHH. To support this podcast, please check out our sponsors in the description, where you can also find links to contact me, ask questions, give feedback, and so on. And now, let me leave you with some words from Ralph Waldo Emerson. “Once you make a decision, the universe conspires to make it happen.” Thank you for listening, and hope to see you next time.

本集資源與出處