在 AI 時代寫程式的一些反思

在最近準備公司內部分享的過程中,我也順勢回顧了自己這段時間使用各種 AI 工具的經驗。整理也有發現,這不只是工具的變化,而是一整個軟體開發工作型態的轉變。

從自動完成,到「一句話產生 PoC」

其實我算是蠻早接觸 AI 輔助寫程式,像是 GitHub Copilot、Tabnine、Codeium 等等。那時候的 AI 功能還很陽春:

一開始使用上很單純,大多停留在「自動完成」:

  • 幫你補幾行程式碼
  • 但一寫長一點就開始走偏、出錯

但隨著模型能力的提升,事情開始改變。

現在,只要幾句描述,就能快速產出:

  • 一個可執行的 PoC
  • 一個專案的初步結構
  • 甚至包含測試與基本文件

而工作流程也在改變,原本依賴的 IDE,逐漸轉向以終端機或對話介面為主。

這個進化速度,是我過去幾年親眼看到的

曾經的焦慮:寫程式會不會被取代?

老實說,這中間我也不是沒有焦慮過。

當你看到 AI 可以在不到一小時內,產出過去可能要寫兩三天的東西時,很自然會開始懷疑:

那工程師的價值到底在哪?

但隨著實際使用得越來越多,我慢慢發現一件事:
AI 並沒有取代工程師,而是改變了工程師在做的事情。

開發變快了,但問題也來得更快

AI 最大的影響,不只是「寫得快」,而是讓你更快完成一個版本。

問題是,接下來呢?

我開始頻繁遇到這些情況:

  • 產出的程式碼,我看得懂嗎?
  • 規格寫出來了,但正確嗎?
  • 出問題時,我到底該修哪裡?
  • 驗證與驗收,反而花了更久的時間

甚至有時候,重新自己寫,還比較快。

這讓我意識到一件很重要的事:

AI 可以把你推得很快,但也會讓你更快撞上自己的極限。

基本能力,在 AI 時代被重新放大

隨著使用 AI 越來越頻繁,我反而更清楚地看到自己的不足。

例如:

  • 對需求拆解是否夠清楚
  • 對系統邊界是否有清楚定義
  • 測試案例是否真的涵蓋反例與邊界
  • 是否具備驗證結果品質的能力

過去,很多問題會被「寫程式很忙」掩蓋掉;
現在,AI 把實作時間壓到極低,這些問題反而全部浮上檯面。

我也因此開始重新學習與整理:

  • 自動化測試與 TDD 的思維
  • 規格如何寫得讓「人與 AI 都能理解」
  • 如何把需求具體化、可驗證化

AI 在這裡很有幫助,但前提是:我必須知道我要驗證什麼。

AI 是能力的放大器,不是替代品

回顧這一年多的使用經驗,我最大的收穫不是某個工具,而是一個認知轉變:

AI 是能力的放大器

  • 基本能力扎實的人,會被放大得更快、更遠
  • 基本能力不足的人,也會更快暴露問題

寫程式這件事,未來只會越來越快; 但真正重要的,會是:

  • 判斷對錯的能力
  • 驗證品質的能力
  • 抽象與設計的能力

結語:更快遇到極限,也更快突破

現在我更清楚 AI 對我的幫助

透過 AI 反而可以

  • 更快嘗試想法
  • 更快完成雛形
  • 更快發現自己哪裡還不夠強

如果能善用這個速度,我相信它不是終點,而是下一個成長階段的起點
不只是寫得更快,而是走得更遠