我已經寫了 12 年程式碼了,但我的程式設計技術卻越來越差。這不是誇張,這是軟體開發人員現在面臨的新現實。
前幾天,當 ChatGPT 出問題時,Cursor 也用不了了。我盯著電腦螢幕,看到一堆討厭的紅色錯誤資訊。AWS 的錯誤提示也跳了出來。我不想在沒有 AI 幫忙的情況下解決問題。
首先,我不再讀文件了。既然 AI 能馬上解釋一切,我為什麼還要費勁去讀呢?
然後,我的除錯能力也變差了。
現在,如果沒有 AI,那些錯誤資訊看起來就像天書。我甚至都不讀錯誤資訊了,直接複製貼上。
我變成了一個人體剪貼簿,只是在我的程式碼和 AI 之間傳遞資訊。
以前,每一條錯誤資訊都能讓我學到點東西。現在呢?解決方案突然就出現了,我卻什麼都沒學到。那種快速得到答案的興奮感,取代了真正理解問題的滿足感。
接下來受影響的是深度理解。還記得以前花幾個小時去弄明白為什麼某個解決方案有效嗎?現在,我只需要按照 AI 的建議去做就行了。如果建議不管用,我就調整一下問題,再問 AI。這是一個越來越依賴的迴圈。
然後是情緒上的變化。以前,解決新問題是程式設計的樂趣之一。
現在,如果 AI 不能在 5 分鐘內給我答案,我就會覺得煩躁。
最可怕的是什麼?
我正在開發一個 AI 驅動的開發工具,但我卻覺得自己在加劇侵蝕我們集體技能的問題。
康復
康復計劃我不是說要採取什麼極端措施,比如完全不用 AI——這不現實。相反,我打算從“無 AI 日”開始。每週有一天:
- 認真讀每一條錯誤資訊
- 重新使用除錯工具
- 從頭寫程式碼
- 讀原始碼,而不是問 AI
說實話,這感覺糟透了。我覺得自己變得更慢、更笨、更沮喪。
但我也看到了變化。我感覺自己和程式碼的聯絡更緊密了,有了一種歸屬感,而這種感覺在 AI 出現後逐漸消失了。而且,我學到了很多東西。
(令人不安的)事實我們不會因為 AI 變成 10 倍效率的開發人員。
我們對 AI 的依賴正在增加 10 倍。這是有區別的。
每當我們讓 AI 解決我們自己能解決的問題時,我們就是在用長期的理解換取短期的效率。我們為了今天的任務,犧牲了明天的能力。
我不是說我們要放棄 AI 工具——這已經不可能了。但我們需要一些規則。以下是我的想法:
- 如果你還沒嘗試理解問題,就不能用 AI
- 閱讀並理解所有 AI 提供的解決方案
- 定期做一些不需要 AI 幫助的程式設計
- 關注學習過程,而不僅僅是解決眼前的問題
我不會撒謊,我覺得我可能沒法一直遵守這些規則。但這是一個開始,而且我堅信,任何剛學程式設計的人都應該遵守這些規則。
現在,某個地方有一個新程式設計師正在學程式設計。他們可能永遠體會不到獨立解決問題的滿足感。他們可能永遠體會不到花幾個小時和 bug 搏鬥後得到的深刻理解。
我們正在培養一代開發人員,他們知道怎麼向 AI 提問,但無法理解答案。每次 AI 出問題,他們就會顯得越來越無助。
到目前為止,AI 還不足以完全取代程式設計師,但隨著 AI 的進步,情況只會變得更糟。
真正的問題不是 AI 是否會取代程式設計師,而是我們是否在取代我們自己。
試試一天不用 AI 程式設計。結果可能會讓你大吃一驚。