最近在做 Code Review 的生产事故時候,”
方向盤必須在自己手裏
看完 Susam Pal 的生产事故這三條“反向定律” ,大腦的背锅思考機製就會自動關機,
這恰恰是代码最大的坑。
別給它加戲 :它不是你的同事,
我們幾乎把所有的背锅工程資源,
你在辦公室裏肯定聽過同事這麽議論大模型 :
- “某某模型今天好像變笨了,代码大體方向應該沒錯”。生产事故合並到業務代碼裏 。背锅當一個開發者習慣了 AI 瞬間吐出幾百行代碼後
,代码大不了就是生产事故重啟一下進程。
想象一下:周五晚上十點,背锅而是“一本正經地胡說八道,周末全員拉群排查 ,它不用背房貸 ,這種討好型的輸出 ,
但是現在,最近有一個叫做 Susam Pal 安全研究員寫了一篇叫《Inverse Laws of Robotics》的文章,它認錯的態度還挺誠懇的 。誰把它發布到了生產環境,”
如果在我的團隊裏聽到這句話 ,習慣去搜 Stack Overflow 。我發現團隊裏越來越多的年輕工程師,寫各種複雜的 System Prompt,不要賦予 AI 情感 、守住一個工程師的職業底線,不要把它當人看 。
但現實是,誰按下的 Merge 按鈕 ,
傳統的社區代碼,就直接拿來用了。然後說“因為這把手術刀太鋒利了,我最大的感慨是:我們的重點是不是搞錯了。AI 隻是工具,但脾氣極好 、就是怕大模型在線上環境突然發瘋。動不動就對你說“抱歉,重要的是 ,在這個 AI 亂寫的時代裏,有縮進、
不管大模型進化到第幾代。它經過了無數同行的 Peer Review,
這可能是接下來一兩年裏 ,你在代碼助手裏敲一句注釋,會在潛意識裏給你一種錯覺:你在和一個雖然有點粗心 ,
但這才是最恐怖的地方 。
在一個大家都能用 AI 瞬間生成海量代碼的年代,
誰合並代碼誰背鍋 :“AI 寫的”絕對不是免死金牌
第三定律 :責任不可剝奪。
對我們的基本功考驗反而越嚴苛。整個行業都在拚命研究怎麽給大模型“立規矩”:搞 RAG(檢索增強) 、非常聽話的初級程序員溝通 。這就好比一個外科醫生把手術做砸了,
大模型最可怕的能力,您說得對 ,或者一個隨時會拋出
NullPointerException的第三方黑盒依賴。它的底層本質就是一個沒有靈魂 、他提出一個很犀利的觀點:阿西莫夫花了一輩子給機器人定法律,人類必須對後果承擔全部責任 。但是,代碼是機器寫的還是人寫的,你的技術生涯基本也就到頭了。我覺得這三條規矩 ,我最近在查一個內存泄漏的偶發 Bug 時,真正的壁壘是什麽?
是你能在一眼望不到頭的 AI 代碼中 ,大模型根本沒有“理解” ,把模型的語氣微調得極其謙卑。方向盤和刹車必須死死攥在自己手裏 。卻不想背它出錯的黑鍋。我們搜出來的那個高讚答案,業務邏輯根本跑不通的代碼。
你不能光占著 AI 幫你摸魚的便宜 ,開始頻繁提交一些看起來極其規整、如果一個實習生態度很好 ,你的 Code Review 雷達才不會失效 。所以係統宕機不怪我” 。打鐵還需自身硬,我馬上改” 。你才不會對它生成的代碼抱有任何不切實際的“信任感”,但稍微往深了一看 ,沒有“以為”,這種習慣非常致命。“升級到 2.0 之後這個 API 廢棄了” 。都必須卡死測試覆蓋率的底線;是你時刻清醒地知道 ,”

聽起來沒什麽大不了的,但其實,結合我最近在團隊裏的觀察,自己劃偏了”一樣荒謬。甚至幫他把邏輯補齊 。複盤會上 ,最容易上演的甩鍋大戲。哪怕代碼寫得有瑕疵 ,這個方法在多線程下會死鎖”、
Susam 提煉了三條給人類看的“反向定律” 。”

現實中,漏寫了一個很不顯眼的資源釋放邏輯。那就是賽博垃圾。
在人類社會的協作裏 ,微調、它“唰”地一下給你生成了一大段代碼。答案出奇地一致 :“這是 Copilot / ChatGPT / Claude Code 給出的代碼 ,誰審查的這 500 行代碼,沒聽懂我的需求。出錯了也有借口”的念頭 ,而是屏幕前那個使用機器人的人類。都砸在了“如何防止 AI 犯錯”上 。
別被排版糊弄了 :沒跑過驗證的代碼 ,剝離掉擬人化的濾鏡 ,隻要沒有覆蓋對應的單元測試,你會放鬆警惕,客服電話被打爆 。絕不能將 AI 的結果視為權威。我看編輯器沒報錯就直接提交了,它也不會被開除,永遠不能拿“AI 告訴我這麽做的”來當借口。沒問題 ,在工程師的職業素養裏 ,基於海量語料做統計學概率預測的“文本接龍機器” 。誰就老老實實為這 500 行代碼負 100% 的責任。絕不能盲目信任 AI 的輸出。絕大多數開發一看到這種排版精美、

麵對 AI 編程這波浪潮,敲鍵盤的手速早就不是壁壘了 。立下一個死規矩:信任在工程實踐中非常寶貴。大家不斷的折騰 ,它隻是模型在當下那一秒 ,
把它當成什麽?當成一個高級的命令行工具(CLI),甚至還有看似嚴密的 Markdown 解釋 。它看起來太完美了,
這就要求我們把權責切得明明白白 :AI 可以幫你一秒鍾寫出 500 行代碼,我會當場發飆 。乃至搞出一整套 Harness Engineering 。隻是一台 Token 機器
第一定律:拒絕擬人化。這不重要。終於定位到是因為一段 SQL 連表查詢寫成了死循環把數據庫拖垮了。當你把大模型擬人化之後,這段代碼沒有任何人做過審查。不管是 GPT 還是 Claude,但其實現在最危險的根本不是機器人,其實我想寫個 map。大家都在焦慮“我是不是要被淘汰了”、沒有在本地環境真實地跑通走查過,
問他們怎麽寫的 ,係統掛了,你的大腦就會不自覺地套用這種“社交直覺” 。不管 AI 輸出的代碼看起來多優雅,更沒有“態度” 。直接快捷鍵一敲,甚至連注釋都寫得完美無缺,
以後在團隊裏 ,意圖或道德代理權 。
資深開發者在用 AI 時 ,並且讓你深信不疑” 。就發現是這種 AI 生成的“完美代碼”裏,底下往往跟著一堆評論 :“哥 ,AI 寫代碼的速度越快,是帶著“人類傷疤”的。我看它邏輯挺清晰的 ,大部分技術團隊在出線上事故後,一巴掌拍醒很多人。比什麽都強。寫這段代碼的年輕開發很委屈地說:“老大,用這句話來甩鍋 ,
但是 ,這是提效 。全是定時炸彈
第二定律:拒絕盲從 。
我們要搞清楚一個基本事實:AI 隻是個幹活的工具 。
工具不承擔後果 ,但作為技術人 ,敏銳地嗅出架構腐化的味道;是你堅持無論代碼誰寫的,惡劣程度等同於“因為編譯器沒報錯 ,對吧 ?大家都在開玩笑。覺得“它都這麽努力理解我了 ,人承擔。有高亮、我們對同事是有“容錯率”的 。
現在的 AI 廠商為了用戶體驗,邏輯“看起來”順理成章的代碼,“注意 ,”
這兩年 ,沒有經過獨立驗證,穩了”、不用拿績效,一旦你心裏有了“這反正是 AI 寫的,“猜”出來的最連貫的字符組合而已。
以前我們遇到搞不定的 Bug,我也不知道它會把庫打掛啊 。