AI 讓非工程師也能做軟體,但真正的門檻移到「判斷」
Techexploratory

AI 讓非工程師也能做軟體,但真正的門檻移到「判斷」

Nate B. Jones 用五種軟體形狀說明 personal software;外部研究則提醒,能生成 code 不等於能可靠交付。

August 21, 20262 min read

AI 讓非工程師也能做軟體,但真正的門檻移到「判斷」

AI coding 正在讓「為自己做一套小工具」變得可行,但它沒有消除軟體工程。它只是把最難的工作,從寫出第一版 code,往前移到選擇架構、管理資料、設定權限與驗證結果。

AI 產品策略創作者 Nate B. Jones 在一支 35 分鐘的影片裡,試著替 personal software 畫出一張非工程師也能讀懂的地圖。他列出的不是五款工具,而是五種軟體形狀:只在單一電腦運作的 local tool、用瀏覽器跨裝置使用的 web app、需要相機、通知或定位等手機能力的 native mobile app、在背景定期執行任務的 background service,以及連接感測器或 Raspberry Pi 的 hardware project。影片原始內容

這個分類值得注意,因為它把討論順序轉了回來:先問軟體要在哪裡運作、誰能使用、資料放哪裡,再決定要用 Lovable、Replit、Codex 或 Claude Code。工具不是起點,問題的形狀才是。

為什麼多數人可以先從 web app 開始

Jones 的建議是,多數 personal software 可以先做 web app。理由不是它最先進,而是它能同時在電腦與手機瀏覽器使用,也不必一開始就處理 App Store 上架與原生開發。只有當產品真的需要更深的手機功能時,native app 才可能值得增加的複雜度。這是 Jones 的經驗判斷,不是獨立產品評測。

例如,自己整理一批檔案,可能只需要 local tool;讓家人共同維護設備紀錄,才需要 web app、共享資料與登入權限;每天自動整理訊息,則更接近 background service。三者都能由 AI 產生 code,但部署、資料暴露與故障方式完全不同。

Jones 在影片說明中留下的一句話,剛好點出這個分界:

“the part that stays yours is the judgment.”

AI 可以替你寫出介面和函式,但什麼值得做、資料該放哪裡、誰可以看到,以及什麼情況算失敗,仍然是人的判斷。

能跑,不等於可以放心交付

外部資料讓這個判斷更清楚。Stack Overflow 的 2025 開發者調查顯示,46% 受訪者不信任 AI 工具輸出的準確性,信任者只有 33%;66% 的主要挫折是答案「幾乎正確,但不完全正確」。這不是對一般非技術人口的抽樣,卻說明即使熟悉開發的人,也沒有把生成結果直接視為完成品。Stack Overflow 2025 Developer Survey

另一個更直接的反例來自 METR。研究團隊讓 16 名資深開源開發者,在熟悉的成熟專案中完成 246 項真實任務;使用 2025 年初 AI 工具的一組,平均反而多花 19% 時間。這項研究不能外推到非工程師、全新小工具或今天的模型,但它足以推翻「用了 AI 就一定更快」的說法。METR 隨機對照試驗

METR 在 2026 年也主動更新限制:新一輪實驗受到參與者選擇偏差影響,對較新工具能帶來多少加速只能提供很弱的證據。換句話說,19% 不是 AI coding 永遠變慢的結論;真正值得保留的是,主觀感覺與 demo 都不能代替真實任務驗證。METR 後續說明

安全責任也沒有因為自然語言介面而消失。OWASP 已把對 AI 生成程式碼的不當信任列為需要注意的新風險,建議仍採用既有的 code review 與安全驗證方法。OWASP Top 10:2025

我會怎麼開始

如果是第一次做 personal software,我會挑一個結果容易核對、失敗也可逆,而且不碰付款、醫療或敏感個資的小問題。先選最簡單的軟體形狀,再做三件事:

  1. 寫清楚正常流程與至少三個失敗情境。
  2. 決定資料存放位置、備份方式與誰能存取。
  3. 用真實資料副本測試,保留人工確認,不讓第一版直接執行不可逆動作。

我看到的變化,不是每個人突然都成了工程師,而是最接近問題的人,第一次能用很低的成本參與架構與驗證。AI 降低的是產生第一版的摩擦;能不能成為可靠工具,仍取決於你是否願意承擔 Jones 所說的那部分:判斷。

來源

編輯註:本文整理公開影片與外部資料,未將講者的產品建議寫成作者親自實測。

#AI coding#personal software#Nate B. Jones#vibe coding