在 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 反而可以
- 更快嘗試想法
- 更快完成雛形
- 更快發現自己哪裡還不夠強
如果能善用這個速度,我相信它不是終點,而是下一個成長階段的起點
不只是寫得更快,而是走得更遠