上個月,我的個人專案出現了一個 Bug。也不是什麼驚天動地的大事——只是某個值沒有照理更新。

我打開檔案,從頭讀到尾,卻完全不知道自己在看什麼。

不是因為程式寫得很糟。它很乾淨、很有條理,而且確實完成了我要求它做的事。

問題在於,我從來沒有真正建立起這段程式為什麼能這樣運作的心智模型。我生成了它、掃過一眼、確認能跑,就接著做下一件事——這樣重複了幾十次,卻從未真正停下來理解它。

我甚至無法修掉自己專案裡的 Bug,因為我從來沒有真正「擁有」我正在修的程式碼。

就是在那一刻,我開始用不同的方式看待 AI 生成的程式碼:它不是禮物,而是一筆貸款。

那是一個個人的 side project——沒什麼花俏,就是我在那種放鬆的晚間模式下替自己做的東西,讓 AI 比我預期中更主導一些。我描述我想要的功能,它就產生函式;我草草看過,確認它能執行,然後就往下一步走。好幾個星期裡,這種感覺都像超能力。我建造的速度,前所未有地快。

那個 Bug,就是第一張到期的帳單。


沒人告訴過我,我其實是借了這筆貸款

這是我希望自己更早就知道的心智模型。

每次 AI 幫你生成程式碼,它都不是免費送你什麼。它是在把東西借給你。這段程式今天能跑;而你需要付出的理解——那個能讓你除錯、擴充、向別人解釋它的部分——就是利息,而且不管你有沒有編列預算,它都會到期。

AI 產生 你要付出
10 行 幾分鐘的閱讀
100 行 真正理解它的結構與形狀
200 行以上、跨整個功能 一場除錯會議——不管你喜不喜歡

這筆債不會立刻浮現。這正是它危險的地方。它會晚一點才出現——像是你無法診斷的 Bug、你無法回答的 PR 註解,或是你害怕去動的功能,因為你不確定它依賴了什麼。

我在沒察覺的情況下借了這筆貸款好幾個星期。那個 Bug,只是第一張到期的帳單。


這不只是「感覺」而已,資料也支持這件事

事後我去查資料,原本還以為只是自己想太多。但不是。

近期針對 AI 輔助提交(commit)的研究發現,與人類撰寫的程式相比,AI 生成程式在正確性與安全性問題上的比率明顯更高——這類問題通常不會在第一時間出現,而是要等到真的有人去執行那條從未被完全理解的程式路徑時,才會冒出來。

另外,也有越來越多開發者問卷資料指出一件更不技術、也更個人的事:對 AI 程式工具依賴較高,與較高的倦怠感回報呈現相關。這也和那天晚上我真正的感受相符——當生產力的亢奮退去後,剩下的不是輕鬆,而是對某個我再也無法完全掌握的程式碼庫,產生一種低度但持續的焦慮。

這些都不代表 AI 輔助寫程式不好。它只代表這筆債是真的,哪怕它是看不見的;假裝它不存在,也不會讓它消失。


我實際做了什麼——慢慢來,而且一點也不戲劇化

我想誠實一點,因為很容易把這件事講得比實際更大。我沒有把整個專案刪掉重寫,也沒有從此發誓不再用 AI 工具。那樣做只是另一種形式的矯枉過正。

我真正做的事比較慢,也比較不好寫成漂亮故事:我逐段檢查那個檔案,逼自己把它真正弄懂。不是掃過去而已,而是實際追蹤每個部分在做什麼、為什麼要這樣做——就像如果是同事寫的、而且已經離職時,我會怎麼理解它一樣。

這比修掉一個我自己寫的 Bug 花了更久。這正是重點。當初我「省下」的時間,並沒有消失,只是延後到某個我選擇的時刻再付出。只是我其實沒得選,那個時刻是 Bug 幫我選的。

一旦我真的理解了這段程式,修復只花了大約十分鐘。


我真正保留下來的習慣

這件事到現在還留在我身上的,不是一條戲劇性的規則,而是一個很小、很普通的習慣:

在我離開任何 AI 生成的內容之前,我會先誠實問自己一個問題:我現在能不能不再看它一次,就直接把它解釋給別人聽?

如果答案是否定的,我就不會把這件事當作完成。我會再讀一次,追蹤它的邏輯。有時我甚至會重寫一小部分,只為了逼自己真的理解,而不是讓理解只是被動地掠過。

我的規則: 在我離開任何 AI 生成的內容之前,我會先問:我現在能不能不再看它一次,就直接把它解釋給別人聽?

如果答案是否定的,這件事就還沒完成。

當下會比較慢。但也只有這件事,真正讓那筆債沒有悄悄越積越多。

我現在還是持續大量使用 AI。我不想假裝不是這樣,我也不認為答案是少用它。對我來說,答案是不要再把「它能跑」當成終點,而是把「我理解它」當成真正的終點。


這個教訓的誠實版本

我不會在最後下什麼關於五年後誰會有工作、誰不會有工作的戲劇性結論。我不知道。

但從一個個人專案裡的一個 Bug,我確實知道一件事:AI 幫你寫的程式,不會因為不是你親手打的,就真的免費。總有一天,某件事會要求你為它負責——可能是 Bug、可能是一個問題、可能是某個你需要修改它的時刻,而你突然發現自己其實不確定改了之後會發生什麼。

你可以提早還這筆債,一點一點地付,方法是實際理解你交付出去的東西。或者,你也可以一次還清——在晚上 11 點,盯著你自己專案裡的 Bug,想著自己怎麼會走到這一步。

我會推薦前者。我是用比較慢的方式學到這件事的。


你是否也有過這樣的時刻——你交付出去的 AI 生成程式碼,後來證明是一筆你根本不知道自己借下的債?我真的很想聽聽你是怎麼發現的,以及你發現之後做了什麼。👇


原文出處:https://dev.to/harsh2644/every-ai-generated-line-of-code-is-a-small-loan-and-eventually-you-have-to-pay-it-back-30a6


精選技術文章翻譯,幫助開發者持續吸收新知。

共有 0 則留言


精選技術文章翻譯,幫助開發者持續吸收新知。
🏆 本月排行榜
🥇
站長阿川
📝7   💬2   ❤️4
224
🥈
我愛JS
📝2   💬6   ❤️3
110
評分標準:發文×10 + 留言×3 + 獲讚×5 + 點讚×1 + 瀏覽數÷10
本數據每小時更新一次
📢 贊助商廣告 · 我要刊登