想法與洞見

探索 AI 優先開發、編碼護欄和可處置架構。

隕石開發真的存在。你的程式碼庫不必跟著一起垮掉

這個梗之所以好笑,是因為很多團隊真的活在「隕石開發」裡:不斷變動的目標、固定期限和半成形範圍一起砸下來。Autotomy 不能修復幻想式規劃,但它可以讓開發繼續往前走。

在華文語境裡,它更常被直接叫做「隕石開發」;這個說法本來就帶著日文工程圈裡 Meteo Fall 的梗味。終點先宣布,站點中途再改,預算默認你會自己吞下,而工程團隊必須在列車已經「快要發車」時繼續鋪軌。 這個工作流做成梗會好笑,是因為現實團隊裡它真的一直在發生。…

Stanford CS146S 對 AI coding 的判斷是對的。缺的科目是架構

這篇對 Stanford CS146S 的評論認為,它準確看見了 AI coding 的轉向,但真正決定長期品質的仍是 AI architecture:系統是否可替換、可約束、可持續演進。

Stanford 的課程代碼是 ,課名是 The Modern Software Developer,由 Mihail Eric 授課,是一門在 2025 年秋季首次開設的課程。想看課程的官方概覽和 syllabus 細節,可以直接到官方課程網站…

為什麼許多優秀的工程策略直到 AI 出現才真正變得划算

Design by contract、property-based testing、mutation testing、model checking 從來不是壞想法。真正的問題是它們長期需要太多專業判斷才能維持,而 AI 正在改變這筆帳。

軟體工程裡有很多方法,你一讀就會覺得「這本來就該這樣做」。 當然應該用 contracts 明確 function 能接收什麼、必須回傳什麼。當然 tests 不該只寫幾個人工挑選的例子,而應該驗證 properties。當然團隊不該把 coverage 當成品質代理,而應該真的去判斷 tests 能不能抓到…

從 Vibe coding 到 production:為什麼你的 AI 生成 React Native app 需要護欄才能 scale

AI 可以很快把你的 React Native MVP 推上線,但如果沒有 guardrails,每一個小改動都可能打壞無關的 flow。這裡會說明 declarative constraints 如何避免速度直接變成脆弱性。

Vibe coding 的前半段,效率高得離譜。Cursor 和 Claude Code 可以飛快生成 login、dashboard、settings、push notifications,快到一位單人創辦人幾天內就能把 MVP 推上線。 問題通常出在第二輪或第三輪修改。settings 裡一個小 tweak 會把…

Vibe coder 的 React Native App Lifecycle 指南

你的 app 在 dev 裡一切正常,但使用者午休後回來卻看到白畫面。這裡是能正確處理原生 lifecycle 的 resume status 模式。

你在 Cursor 裡做出了一個漂亮的 Expo app。Claude Code 生成了 auth flow、dashboard 和 settings screen。你把它發出去了。使用者也下載了。然後 DM 開始出現: "為什麼我午休後再打開 app 就是白畫面?" "為什麼我每天早上都得重新登入?" "為什麼我從…

為什麼你的 Vibe-coded React Native app 會在啟動時 crash(以及如何阻止它)

如果 optional SDK 用 core infrastructure 的方式初始化,它們完全可能在啟動時把 app 一起拖垮。這套 dependency tier system 能避免非關鍵工具把 production 也一起帶下水。

Vibe-coded mobile app 裡一個很常見的 launch failure 是:analytics、attribution、crash reporting 和真正 critical 的 service 被放在同一條初始化路徑上。如果這些 optional SDK 裡有一個在某個 device 或某種…

為什麼在 Cursor 裡用 NativeWind 做 Vibe coding,會在規模上拖垮你的 React Native app

你用 Cursor 一個週末就交付了 MVP,但現在只改一個 brand color 就會波及 47 個檔案。這套 styling contract 可以止血。

你打開 Cursor,輸入一段 prompt,看著 Claude Code 在幾秒內生成一整套 React Native UI。Flex layout、圓角 button、color theme,全都一次就跑起來。你把它送上 TestFlight。使用者開始下載。這是第一週。 到了第六週,你只是想改一個 brand…

為什麼不該讓 Claude Code 審你的程式碼(以及該改用什麼)

LLM code review 既不確定、又慢,還會漏掉架構違規。這套 O(1) guard stack 才真的能讓你的程式碼保持乾淨。

我認識的一位開發者,把 Claude Code 設成 CI 裡的程式碼 reviewer。「就讓 Claude 幫我看 PR,」他對我說,「它會抓到一些我可能漏掉的東西。」我請他把同一個 PR 丟給 Claude 跑兩次。 第一次 review 說 error handling 看起來很完整。第二次 review…

刪掉,不要遷移:Vibe-coded React Native app 的重構策略

重構 AI 生成程式碼,等於去逆向推斷一個你從來沒有擁有過的意圖。這個以介面為中心的 replacement pattern,能讓刪除變得安全。

在生物學裡,autotomy 指的是動物主動捨棄已經不再有用的身體部位。蜥蜴會斷尾來逃離掠食者。那條尾巴曾經有用,但想活下來,就得放手。之後還會再長出一條新的。 這就是你應該如何看待 Vibe-coded React Native app 的重構。 在 AI-coded 的早期 MVP 裡,第一版 auth flow…

Cursor 和 Claude Code 如何毀掉你的 React Native 架構(以及如何修好它)

AI 生成的 auth 在新 feature 把手伸進錯誤 service 之前,看起來都沒問題。這套 interface-driven 架構能避免 vendor swap 和功能迭代一起打壞 login。

Vibe-coded React Native app 裡一個反覆出現的 failure mode 是:新 feature 直接 import 現有 service,伸手去改不屬於自己的 state,然後把無關的 flow 一起打壞。auth 很容易成為受害者,因為它往往會變成所有人的 shared…