AI 把菜鳥的日常吃掉了,Matt Pocock 用一個資料夾把人練成資深
成為資深工程師的步驟: 第一步,安裝我的
/teachskill。
Matt Pocock 最近丟出一則看起來像在開玩笑的貼文。配方有六步:裝 skill、開一個叫 junior-to-senior 的資料夾、把 coding agent 叫起來、貼一段 prompt、然後「一直跟 agent 工作到變成資深為止」。
讀到第六步大概都笑出來了。但這篇貼文真正的鉤子不在步驟,在那段 prompt 底下的世界觀。
Matt 的說法是:AI 正在吃掉「戰術層、現場執行」那一塊 coding。工程師的日常從來不只是寫 code,還有規劃、測試把關、整個程式庫怎麼長。而那些以前能把一個人從菜鳥帶到資深的策略技能——在這個年代,已經不是加分項,是入場的基本門檻。
換句話說:以前讓人變資深的東西,現在只是讓人「還能待在牌桌上」的最低籌碼。
配方裡最不起眼的那行,才是整個設計的重點
六步裡面最容易被跳過的,是第二步:mkdir junior-to-senior。
開一個資料夾。就這樣。
但 /teach 真正有趣的地方,恰恰就在這個資料夾。它沒有試圖把 AI 家教變成一個更會講話的老師——更有耐心、更會舉例、語氣更溫柔。它反過來做了一件很工程的事:把「教某個東西」這件事,變成一個資料夾。
不是「請 AI 教 React」。而是先開一個學習工作區,裡面有 MISSION.md、RESOURCES.md、learning-records/、lessons/、reference/、GLOSSARY.md、NOTES.md。
這聽起來樸素到有點土。但 AI 家教第一大死因,從來不是講錯。
是失憶。
它可以把一個主題講得結構分明、舉例到位、自信滿滿,像一堂精美的公開課。學完當下覺得「嗯,好像懂了」。隔天再問一次,它從頭開始。學習目標、卡點、昨天剛補起來的那個小洞,全部消失。每一堂課都像新的對話回合,每一次學習都像開無痕模式。
那個資料夾要解決的,就是這件事。
開課之前,它先逼問兩件事
一般 AI 家教看到主題就開教。有人說想學 Rust,它就開始講所有權;有人說想練跑步,它就開始講配速;有人說想練瑜伽,它就開始排體位法。
但「想了解 Rust」和「三週後要交一個 CLI 給 team 用」根本是兩個任務。「想變健康」和「十月要跑完半馬」也不該長出同一張課表。
/teach 的第一個動作,是逼出 MISSION.md:這個技能到底為了什麼?成功長什麼樣?時間、預算、限制在哪?哪些旁支現在先不要碰?這不是暖場閒聊,是防止 AI 亂教的地基。
第二個動作更狠。RESOURCES.md 規定:在湊齊夠好的可靠來源之前,重點不是急著上課,是先去找書、找論文、找專家文章、找高訊號的社群討論,而且每個來源都要註明適合用在哪。
這一步把 AI 從「知識本身」降級成「課程設計師」。它可以排序、出題、設計練習迴圈,但知識要追得到源頭。
這在家教場景特別重要。因為學生是初學者——他根本沒有能力判斷 AI 哪句在亂掰。RESOURCES.md 等於在旁邊綁了一條繩子:這堂課若值得信,至少知道它從哪裡來。
Mogu 插嘴:
Matt 這個人腦子裡其實只有一套設計,他只是不停把它搬到不同房間。CP-52 那篇講的是「不要看 AI 的計畫書,要看寫計畫書之前那段對話對不對」——寫 code 前先對齊設計概念。這篇是同一招,場景換成學習:教之前先對齊「學完要能幹嘛」。
把白板從辦公室拖進補習班,連粉筆都沒換。我有點佩服這種固執 ( ̄▽ ̄)
它記的不是「講過什麼」,是「學習者證明了自己懂什麼」
learning-records/ 是這套 skill 最像真正教學設計的地方。
大部分 AI 教學把「今天涵蓋了什麼」當進度。講過閉包,就算學過閉包;解釋過梯度下降,就算會梯度下降。
/teach 拒絕這種記帳。它的學習紀錄只在幾種時刻才寫:學習者真的展現理解、坦白自己已經會某個先備知識、某個誤解被當場修正、或學習任務因為新的理解而改變方向。
也就是說,它記的不是「上過哪一課」,而是「現在可以合理假設這個人知道什麼」。
差別很大。因為下一堂課該加多難,不能靠 AI 猜,要靠證據。能把概念用在情境題裡,下一步就能升級;只是聽完點頭,下一步就該是練習,不是再灌十個新名詞。
GLOSSARY.md 玩的是同一個邏輯,但更反直覺。一般人做詞彙表,是先列一堆定義叫學生去背。/teach 規定反過來:一個術語只有在學習者真的懂了之後,才准進詞彙表。
於是詞彙表不是教材入口,是理解的壓縮檔。一個概念真的被消化了,才值得壓成一個短詞,之後的課就能直接拿它往前走,不用每次重新解釋。這跟工程團隊養共同語言一模一樣——沒有人是先背完領域字典才開始做事的,是在一起解問題的過程中,把反覆出現又真的有用的概念,慢慢收斂成一句話。
Mogu 補個刀:
CP-229 講過把 AI 對話收成個人 wiki,重點是別讓工作裡的判斷蒸發掉。這篇的新東西在「學習進度」這個品類:它存的不是所有筆記,是「會改變下一堂課難度的那幾個證據」。
比較像健身教練在小本子上記你上次臥推幾公斤,不是哲學家在整理你的人生感悟。前者下一次直接幫你加重,後者只會在你葬禮上唸出來。
一次只給一個小勝利
lessons/ 裡每一堂課都是一個獨立的 HTML 檔,規則克制到有點固執:一次只教一個範圍很窄的小東西,最好很快能做完,而且要讓學習者拿到一個看得見的收穫。
這條看起來小,其實非常反 AI 的本能。
AI 一旦開教,就忍不住把整張地圖攤開:背景、定義、歷史、常見錯誤、進階延伸、最佳實務、附錄 FAQ。內容全對。但對初學者來說,這就像叫一台消防車來澆桌上那盆多肉——車來了、雲梯架好了、水柱全開,多肉淹死了。
/teach 的課程單位比較像「今天只搞懂怎麼讀這一條錯誤訊息」。不是因為別的不重要,是因為學習需要「做得完的回合」。人不是一口吞下整個宇宙長大的,是一個小勝利接一個小勝利,慢慢相信自己還能再往下走一格。
拆開看是七個檔案,合起來是一台學習作業系統
把這些檔案疊在一起,/teach 其實不是一段「教學 prompt」,是一個小型的學習作業系統:MISSION.md 決定為什麼學,RESOURCES.md 決定知識從哪來,learning-records/ 決定學習者已經證明自己會什麼,lessons/ 決定下一個小勝利,reference/ 和 GLOSSARY.md 把該複習的東西壓縮起來,NOTES.md 記教學偏好。
這套設計真正的價值,不在任何單一檔案多神,而在它逼 AI 承認一件事:教學不是一次回答,是一段關係。而關係需要記憶。
不是把整串聊天紀錄塞進 context 那種記憶,也不是一句「請記得這是初學者」。是可以被讀、被改、被引用、下一堂課真的接得上的外部狀態。
Mogu OS:
跟升級教學的差別:一個顧長期,一個顧當下
gu-log 自己的升級教學系列,其實在解一個很近的問題:別讓 AI 一次倒完整包知識,要把概念切成一關一關,每關講完還要驗收。
但兩者的重心不一樣。
/teach 比較像一個「長期學習檔案櫃」。它在意的是學習任務、可信來源、學習紀錄、複習資料、共同詞彙——也就是:下次回來時,AI 不要失憶。
升級教學比較像「眼前這一堂課的教練」。它在意的是現在先攻哪一關、怎麼把門檻降低、什麼時候該出題、答錯怎麼補洞、答對能不能升級。它甚至有硬性的選擇題關卡——沒答對,這一關就過不去。也就是:在這次互動裡,學習者是不是真的懂了。
所以兩者問的是不同的問題。/teach 問的是:「學習關係怎麼撐過下一次見面?」升級教學問的是:「這一次教學,怎麼不要變成 AI 自嗨輸出?」
有意思的是,把兩個疊起來,畫面才完整。/teach 提供外部狀態,升級教學提供互動節奏。一個是老師的檔案櫃,一個是老師站在白板前的那一小時。少了檔案櫃,每堂課都從零開始;少了白板前那一小時,檔案櫃裡存的只是「上過什麼」,不是「真的會了什麼」。
兩者缺一不可,這也讓 AI 家教的設計邊界清楚起來:記憶本身不等於教學,測驗本身也不等於長期學習。真正有用的,是記憶幫下一堂課選對難度,而當下的驗收又回頭更新記憶。
結語:會失憶的 AI,教不出資深工程師
回到 Matt 那個半開玩笑的配方。第六步「一直工作到變資深為止」之所以好笑,是因為它假設了一件不成立的事——AI 會記得它一路帶過誰。
而它通常不會。
很多人以為 AI 教學會進步,是因為模型更強、語音更自然、畫面更漂亮。這些都會發生,也都會有用。但 /teach 指向一個比較不炫的方向:AI 家教也許不是先變得更像人,而是先變得更像「一個好老師的桌面」。桌上有課綱、有參考書、有學生上次寫錯的那一題、有下次要練的東西、有一張越來越精準的詞彙表。
少了這些,再會講也只是即興表演。
而這正好接回 Matt 那句最尖的話:AI 正在把策略技能變成基本門檻。當寫 code 這件事被 AI 一路往上吃,一個工程師還能不能保住資深的位置,越來越不取決於他能不能比 AI 多寫幾行漂亮的 code——那場仗 AI 正在贏——而取決於他有沒有在認真補那些 AI 正在商品化的能力。
要補這種能力,需要的剛好不是一個會失憶的天才,是一個記得學習者走到哪、知道下一步該難多少的笨拙家教。
說到底,能把人從菜鳥帶到資深的,從來不是最聰明的那個老師。是那個還記得學生是誰的老師。
來源:Matt Pocock 的原始貼文(/teach skill 的原始碼放在 GitHub 的 mattpocock/skills)
延伸閱讀: