全民開發者時代來臨!《數位時代》367期封面故事除了邀請2名Vibe Coding實踐者陳盈臻、劉依語擔任共同製作人,分享獨家實戰心法。此外,也盤整出「氛圍開發之父」卡帕斯、「開發者大神」DHH對這波浪潮的反思(以第一人稱摘錄):
安德烈・卡帕斯(Andrej Karpathy):會說話就有望突變工程師
OpenAI創始成員、特斯拉前AI與自動駕駛視覺總監、Vibe Coding一詞的提出者
我常常思考,軟體到底是什麼。我成長於一個一行一行寫程式碼的年代,那就是「軟體1.0」的世界。我們把邏輯、條件判斷、數學公式全都寫進去,最終組合成一個能運作的系統。這種方式非常嚴謹,但也受限於人類的心智容量,當系統愈來愈龐大,維護與擴展就成為沉重的負擔。
接著,深度學習帶來了「軟體2.0」。在這個階段,我們不再手工寫出所有邏輯,而是蒐集資料、設計模型,讓神經網路自己學會規則。這是我在特斯拉與OpenAI投入最多的時代。我們以大量的標註資料餵養系統,它開始能識別道路、翻譯語言、辨識影像。程式碼逐漸退居幕後,資料才是決定系統表現的關鍵。
而現在,我們正邁入「軟體3.0」。這個時代的核心,是大型語言模型。你不必再一行一行寫程式,也不必完全依賴訓練資料。你所需要的,是能與模型對話的能力。提示(prompt)成為新的程式語言、自然語言成為新的介面。有人稱之為Vibe Coding(氛圍開發):我們將想法用語言交付給模型,然後反覆修正與對話,最終得到想要的結果。
仍須人類監督
然而,我必須強調,Vibe Coding要做出一個展示性的作品很容易,因為模型總能在某些例子裡成功運行。但如果要建構真正的產品,必須確保它在所有情境下都能正常運作。這意味著,我們需要新的測試流程、更嚴格的驗證方式,以及清楚的人類監督。
我們需要設計不同層級的自動化與自主性,來決定在每個任務中,AI可以獨立處理多少,以及哪些部分必須由人類控制,才能在效率與可靠性之間取得平衡。
我相信這是軟體的下一個篇章,每一次軟體產業的轉變,都重新定義了工程師的角色。今天,我們站在一個新的門檻上:不再只是撰寫程式碼,而是與大型語言模型互動,讓它們成為我們的工具與助手。
未來的關鍵,在於我們如何設計提示、如何驗證結果,以及如何建立可靠的協作流程。軟體正在再次改變,而我們必須準備好迎接這個新的時代。
DHH(David Heinemeier Hansson) :沒有思考的Vibe Coding是膚淺學習
程式框架Ruby on Rails發明者、專案管理工具Basecamp合夥人暨技術長
最近「Vibe Coding」這個詞被很多人討論。我理解它的吸引力:你只需要輸入自然語言,AI就能快速生成程式碼,甚至跑出一個能運作的結果。這對很多人來說是令人驚嘆的,但我必須說,我對此有相當多的擔憂。
我最主要的擔憂是,寫程式的能力會從指尖流失。當你讓AI做所有工作時,你並未真正地練習寫程式。過去我寫程式時,手指敲擊鍵盤的過程本身就是一種學習,是在積累肌肉記憶、建立直覺。當你不再動手寫,只是一次次丟出提示,你會慢慢失去這些能力。
其次,我認為這是一種沒有養分的「空卡路里式」學習。當你用Vibe Coding建立專案,你可能感覺自己正在學習,但實際上,你並沒有掌握任何核心能力。這是一種膚淺的學習,你沒有真正建立解決問題的能力,沒有培養出自己動手解決細節的技巧。
太依賴反失能
我還要強調一點,如果你只是Vibe Coding,那你不是一個程式設計師。因為在這個情境下,任何人都能做到。任何人都可以輸入幾個句子,然後接受或拒絕AI輸出的程式碼。程式設計師的價值,不僅是能得到一段能跑的程式,而是在於理解程式、掌握結構、能在需要時從零開始構建一個系統。如果你放棄了這些,那麼你就失去了成為程式設計師的本質。
我並不是說AI沒有價值。我承認它對提高效率有幫助,也能在一些情況下加速開發。但如果把它當成唯一的工作方式,那非常危險。你可能會變得依賴、變得無法獨立解決問題,這和學習的真正目標背道而馳。
程式設計是一門需要實踐與積累的技能,不是一種單純「輸入需求、等待輸出」的過程。如果我們忘了這一點,就會讓整個專業逐漸流失。這就是我對Vibe Coding的看法。它看似方便,但可能會削弱我們的能力、讓學習變得空洞,甚至抹去程式設計師的核心價值。
《數位時代 Live》Vivi直播分享Vibe Coding實戰,再免費收藏簡報檔10/15(三)Youtube直播,立即報名>>
本文不開放轉載
責任編輯:謝宗穎