Martin Fowler博客近期披露的數據顯示,AI生成代碼的規模正在快速超出人工評審的承載能力。據DX數據,Meta人均落地diff的顯著代碼行數一年內增長106%,PR體積中位數同步增長64%。這一變化引發技術社區對代碼評審模式是否面臨重構的討論。
數據揭示評審壓力
上述數據來自Martin Fowler博客文章《Maybe We Shouldn't Be Reviewing All This Code》的引述。文章作者在Code Remix活動的一場小組討論中與DX的Brian Houck就代碼評審問題展開辯論,雙方立場明顯分歧。Brian Houck隨後撰文《What are code reviews even for?》闡述觀點,該文成為此次回應文章的由頭。
文章指出,AI正在產出超出人類實際評審能力的代碼量。Brian Houck援引的數據顯示,Meta人均落地diff的顯著代碼行數一年增長106%,DX自身數據則顯示PR體積中位數增長64%。這些數字共同勾勒出評審環節面臨的數量壓力。
| 指標 | 數據來源 | 一年增幅 |
|---|---|---|
| Meta人均落地diff的顯著代碼行數 | Brian Houck援引數據 | 106% |
| PR體積中位數 | DX數據 | 64% |
評審功能的爭議
爭論的核心在於代碼評審究竟應該解決甚麼問題。Brian Houck的擔憂是,簡單地將代碼評審自動化,可能丟失評審承載的其他功能。文章作者對此表示認同,並進一步指出,代碼評審不只是找bug,它還是團隊分享知識、培養初級工程師、建立集體所有權和傳播架構理解的途徑。
Code review isn’t just about finding bugs. It’s how teams share knowledge, teach junior engineers, build collective ownership and spread architectural understanding.
但文章作者同時提出不同看法:問題或許不在於AI破壞了代碼評審,而在於團隊一直用代碼評審來解決錯誤的問題。這一觀點將討論從“AI是否讓評審失效”轉向“評審本身是否被過度負載”。
驗證成本與測量陷阱
Martin Fowler博客另一篇文章《Fragments: September 8》引述Christian Catalini的觀點,為理解這一困境提供了更宏觀的視角。Catalini指出,當前的情況是大幅降低了生成事物的成本,卻沒有降低驗證它們的成本。
We’re in a situation where we are vastly reducing the cost of generating things, but not the cost of verifying them.
Catalini認為,這解釋了為何首批主要AI產品出現在聊天、圖像生成和代碼輔助領域——並非因為這些是人類最難的問題,而是因為它們的輸出相對容易檢查。用戶可判斷消息語氣、查看圖像或對代碼運行測試。他進一步提出,舊的自動化邊界是常規工作與非常規工作,新邊界正日益變為可測量工作與不可測量工作。
在軟件行業,代碼行數與生產力之間存在巨大差異,而衡量生產力方式的失敗屢見不鮮。Catalini警告,危險在於人們大量使用AI自動化,卻對其有效性採用不完整的測量,導致短期儀錶盤上升,但長期尺度上出現災難。他將這種虛幻的短期收益稱為“counterfeit utility”(偽效用)。若在公司與機構層面推廣,結果將是“Hollow Economy”(空心經濟):非凡的測量活動建立在削弱的人類能力、隱藏的技術債務、相關性錯誤以及無人能自信背書的結果之上。
後續關注
這場爭論尚未形成共識。代碼評審模式是否需要重構、如何重構,以及如何在AI生成代碼規模激增的背景下平衡評審的效率與功能,仍是技術團隊需要持續關注的議題。Martin Fowler博客的討論為理解這一問題的多個側面提供了參考。
