AI News HubLIVE
站內改寫3 分鐘閱讀

工程瓶頸已經轉移

AI輔助開發降低了編寫代碼的成本,使得工程瓶頸從編寫代碼轉向了判斷:知道該寫什麼、發現細微錯誤以及決定什麼是真正重要的。文章探討了這種轉變對工程實踐的影響,包括更積極的委託、風險導向的代碼審查、設計可逆依賴和可刪除模塊,並強調了人類判斷力仍然不可替代。

來源Hacker News AI作者: kadhirvelm

多年來,我一直將工程決策視為一旦做出就不可更改的刻在石頭上的東西。選擇錯誤的抽象層,你會為其付出多年的代價;選錯服務邊界,你得花幾個季度來理清。這種成本深刻影響了我做事的謹慎程度:規格説明的仔細程度、審查的次數、在承諾任何事情之前等待的時間。

我並不認為這種直覺完全錯了,但我覺得它如今已經變得不那麼相關了。AI輔助開發使第一遍編寫變得極其廉價,以至於瓶頸已經悄然轉移。昂貴的部分不再是編寫代碼,而是知道該寫什麼、發現什麼微妙地錯了,以及決定什麼才是真正重要的。

換句話説,過去謹慎很重要,尤其是在大規模場景下,但現在我認為判斷力取而代之。過去幾個月尤其改變了我的工程思維方式。

之前與之後的心態

在AI輔助開發之前,依賴變更和技術債務清理帶有特定的成本:注意力和風險,而不僅僅是時間。觸及一個接口意味着要首先審計每一個下游消費者。重構核心模塊意味着要映射所有調用點並吸收任何遺漏。

我保護着設計,推遲清理,維護抽象層的時間過長,因為破壞需要我無法在衝刺中合理化的努力。

但現在,AI使驗證、遷移和重構變得足夠廉價,可以嘗試、檢查並撤銷。我可以起草一條遷移路徑,審查差異,如果方向錯誤,一個下午就放棄。沒有真正的時間或精力損失。

我曾經無限期推遲的探索性重構,現在在暴露它們的特性工作的同一個會話中就完成了。

真正的轉變在於我們可以把注意力花在哪裏。當觸碰代碼昂貴時,你就保護它。當它廉價時,你可以探索它。

現在,謹慎只屬於那些真正難以逆轉的決策:沒有回滾的數據遷移、帶有外部依賴的API契約、嵌入拓撲的架構選擇。其他一切都可以靈活處理,這從一開始就改變了我對設計的思考。

三個具體轉變

舊的本能是追求純粹:鎖定精確版本,避免分支,把每個上游依賴都視為神聖不可侵犯。我的新本能更務實。AI輔助驗證使得在幾秒鐘內測試一個本地修補的依賴與你的關注區域變得廉價。而且更好的是,模型使得遷移出依賴同樣容易,因此你永遠不會真正被鎖定。“嘗試,然後繼續”總比等待上游要好,尤其是你可以讓模型在上游準備好時再把你遷移回去。

舊的本能是將清理工作囤積起來,留給專門的衝刺週期。債務太貴,所以你要麼批量處理,要麼忽視它。我的技術棧主要包括Devin、Cursor和Codex,這使重構和風格修改變得非常快。我仍然喜歡擁有對人類可讀的代碼,以防我們需要深入研究一個棘手的錯誤。這種增量清理現在可以在特性之間進行,而不僅僅是在專門週期內。這改變了成本核算:債務不那麼可怕,不那麼需要推遲。但它仍然是真實的——AI工具壓縮了努力,而不是判斷何時修復什麼所需的能力。

聊天和代理界面懲罰以屏幕為中心的思維。如果你的產品核心邏輯與特定的UI形狀緊密耦合,那麼每次交互模型發生變化時你都需要重建它——而目前交互模型正在快速變化。新的本能是將UI視為一個薄的、可丟棄的層,位於定義良好的行為之上。構建易於更改或刪除的系統。投資於你的系統做什麼的語義,而不是它如何顯示的像素。過度工程一個固定的界面是新的過早優化。

對團隊實踐的影響以及什麼仍然重要

AI輔助開發壓縮了迭代週期,這改變了我們在工程上的戰略制定方式,而不僅僅是編寫代碼的方式。

對我們團隊的影響到目前為止:

  • 更積極地委託。生成是廉價的,所以初級工程師可以擁有更多表面區域。你的工作從編寫轉向設置約束和審查結果。
  • 審查風險,而不是風格。代碼審查變成“什麼在大規模或負載下會失敗”,而不是“你是怎麼寫的”。
  • 選擇可逆的依賴。快速迭代會迅速暴露糟糕的鎖定。優先選擇可以在一個衝刺內替換的契約。
  • 為刪除而設計。AI生成的代碼被更頻繁地替換。模塊化、有邊界的設計不僅僅是優雅的——它比以往任何時候都更實用。
  • 教授品味,而不是語法。指導轉向幫助工程師識別看似合理但錯誤的輸出。

什麼仍然重要

AI可以比以往更快地編寫代碼,但這並不意味着它正確。它經常產生沒有錯誤但仍解決錯誤問題的代碼。仍然需要有人去閲讀、維護並發現這些錯誤。那個人就是你。

有些事情沒有改變:

  • 你仍然需要決定正確的解決方案是什麼樣子的。AI沒有像你那樣理解你的業務需求。
  • 代碼仍然應該可讀。如果出現問題,你需要自己介入調試,你會很高興能夠理解代碼在做什麼。
  • 只有真正的人才能理解用户真正在掙扎什麼。AI無法感知這一點。

更快地移動是好的,但最終決定權仍然屬於人類。工具加速了工作,判斷力仍然屬於你。

最後思考

AI並沒有消除工程中的艱難工作。它重新定位了它。曾經用於理清遺留代碼、修補脆弱集成以及維護沒人完全理解的系統的時間,現在可以用於更好的事情:理解用户、設計適應性強的架構以及構建真正重要的東西。

維護税並沒有消失,但它正在縮小。你用回收的注意力做什麼才是真正的問題,而能夠回答這個問題的工程師將定義軟件開發的這個時代。