This article argues that current AI coding assistants, while popular, are focusing on superficial tasks like code generation rather than addressing deeper, more complex challenges in software development. It suggests they are solving the wrong problem for developers.
關於 AI 是否能取代人類開發者的核心職能,社群中存在顯著的分歧。支持者認為,AI 是一個強大的賦能工具,能讓開發者跨越語言與框架的障礙,處理原本需要數週學習才能上手的任務,例如修復陳舊的驅動程式或重寫過時的 API。他們主張,只要開發者具備足夠的架構知識來引導 AI,整體的開發效率與測試覆蓋率都能獲得提升。然而,批評者則指出 AI 缺乏「批判性思考」與「預見未來」的能力。人類工程師在動手寫程式時,往往會因為思考邏輯而突然意識到與其他系統進程的潛在衝突,這種直覺式的發現是目前的 AI 難以模擬的。AI 傾向於無條件服從指令,即使開發者提出的是次優甚至錯誤的方案,它也會盲目地沿著錯誤的方向執行。
此外,許多使用者反映了 AI 在處理複雜邏輯時的侷限性。儘管模型宣稱擁有極大的上下文視窗,但在實際操作中,隨著對話輪次增加,AI 往往會遺忘最初的約束條件,甚至在修正錯誤時引入新的問題。這導致了一種被稱為「土撥鼠之日」的循環:開發者必須不斷重啟對話並重寫提示詞,以確保 AI 維持在正確的軌道上。更有留言者犀利地指出,目前的 AI 程式助理本質上是預測下一個詞的「客廳戲法」,雖然看起來聰明,但並不具備真正的理解力。如果將軟體開發比作醫學,那麼僅僅因為 AI 能在舞台上表演把人切成兩半的魔術,就認為它能成為優秀的醫生,顯然是過於樂觀的誤判。
最後,社群達成了一個微妙的共識:AI 的效用高度取決於使用者的水平。對於經驗豐富的架構師,AI 是加速繁瑣任務的槓桿;但對於依賴 AI 給出答案的初學者,它可能成為產生「視覺垃圾」程式碼的工廠。在缺乏良好架構設計與嚴謹測試流程的組織中,過度依賴 AI 可能會導致系統在表面上快速擴張,實則在內部逐漸崩塌。
延伸閱讀
Leslie Claret 的影片:關於流體結構動力學積分原理中「Crème de la crème」一詞起源的趣味側寫。
Why AI Swarms Cannot Build Architecture:一篇分析 AI 代理群體在產出連貫軟體架構時所面臨結構性限制的文章。