自從2014年踏入軟件行業(yè)以來,經(jīng)常聽到 “程序員即將要被淘汰” 的說法,而且每隔一段時間,就會換一種說法,然后推出一項“耀眼”的新技術,并宣稱要淘汰程序員。它們的口號往往都是“未來不需要程序員”、“只需拖拽,就能開發(fā)完整應用”、“人人都是開發(fā)者”、“讓業(yè)務人員自己構建系統(tǒng)”、“用自然語言開發(fā)應用”等等,然而時至今日,十幾年過去了,程序員依然沒有被淘汰,反而是數(shù)量暴增了。下面我來按時間線,梳理一下那些年,它們喊過的口號,和最終(短暫)的結(jié)果。
1958年
IBM 推出 FORTRAN 語言,宣稱將讓科學家和工程師無需依賴專業(yè)程序員,自己就能編寫程序。這是最早一次“開發(fā)者將被替代”的預言。FORTRAN 的確是一次技術進步,讓人們擺脫了匯編和機器碼的束縛,但也迅速暴露出一個現(xiàn)實:即便語言更友好,編程本身仍需要結(jié)構化思維、調(diào)試能力和系統(tǒng)性的理解。結(jié)果是程序員需求不降反升,軟件工程成為獨立學科。
1980年代
專家系統(tǒng)成為 AI 熱潮的代表,很多學者和企業(yè)高管宣稱‘AI 將像專家一樣構建系統(tǒng)’,無需人工編碼。這些系統(tǒng)試圖用規(guī)則和知識庫代替人類的決策過程,理論上可以自動完成業(yè)務邏輯建模,程序員的角色似乎不再必要。但專家系統(tǒng)在實踐中遇到瓶頸,規(guī)則維護困難、場景不泛化、對變化適應力差。開發(fā)依然離不開人類的思考和判斷。
1990年代初
CASE 工具風靡,許多廠商喊出‘只需拖拽,就能開發(fā)完整應用’的口號。這類工具承諾自動生成代碼,大大降低技術門檻,甚至在企業(yè)高管眼中預示著“程序員被淘汰”的未來。但現(xiàn)實很快讓人清醒:這些工具復雜笨重,適配性差,開發(fā)流程反而更受限制。它們更像是“加速器”,而非“替代品”。
2004年前后
外包浪潮興起,一些企業(yè)開始相信‘印度工程師能做一樣的工作,成本只有五分之一’的邏輯。這一次不是技術,而是成本驅(qū)動的“替代”。外包確實重塑了全球軟件開發(fā)的格局,但很快發(fā)現(xiàn),僅僅編碼并不能構成完整的開發(fā),需求溝通、上下文理解、技術架構等核心工作無法簡單移交。關鍵崗位依然掌握在原有團隊手中。
2016年
低代碼和無代碼平臺興起,打出‘人人都是開發(fā)者’的口號,許多企業(yè)寄希望于業(yè)務人員自己搭建系統(tǒng)。在流程標準、需求清晰的場景下,這些工具確實提高了效率。然而,它們很難勝任跨系統(tǒng)、定制化、數(shù)據(jù)敏感性強的場景。開發(fā)不只是組件拼接,更是權衡與創(chuàng)造,復雜的判斷仍需人類介入。
2020年
GPT-3 橫空出世,大量文章開始討論‘用自然語言開發(fā)應用’的可能性。AI 生成代碼的能力第一次引發(fā)主流關注,看似任何人說句話就能出程序。但很快,人們發(fā)現(xiàn) GPT-3 只能生成片段,無法完成真實項目的組織、調(diào)試與維護,離“替代開發(fā)者”還差一整座橋。
2022年后
GitHub Copilot 成為第一個被廣泛使用的 AI 編程助手,隨后 AutoGPT、AutoDev 等嘗試構建“自動完成整個項目”的代理系統(tǒng)。人們再次宣稱“只說需求,AI 自動完成項目”,這或許是替代程序員最接近現(xiàn)實的一次嘗試。它們確實能協(xié)助開發(fā)流程中的很多環(huán)節(jié),但仍然無法處理需求不明確、系統(tǒng)復雜、多人協(xié)作、實時反饋等關鍵難題。AI 可以生成代碼,但不能理解上下文,更無法對結(jié)果負責。
2024年后
AI 編程代理崛起,炒作“講人話就能開發(fā)”,GPT-4、多代理系統(tǒng)(如 AutoDev、Trae、Cursor 等)讓 AI 編程能力大幅躍進。一些創(chuàng)業(yè)公司宣稱只需寫需求文檔,AI 就能自動生成應用,炒作“自然語言驅(qū)動開發(fā)”的未來。盡管 AI 能完成更多任務,但仍難處理復雜邏輯、需求變更與系統(tǒng)集成問題。開發(fā)者角色沒有被替代,而是逐漸轉(zhuǎn)向“提示設計、流程監(jiān)管與協(xié)作指揮”。
2026年后
未來會發(fā)生什么我們也不知道,但是可以肯定的是,絕對少不了繼續(xù)炒作。或許它們會宣稱 “無程序員開發(fā)”,也未可知。
寫在最后
未來不是“開發(fā)者被替代”,而是“低階開發(fā)勞動被重構,高階開發(fā)能力被放大”
從 1958 到 2030,這一連串的技術浪潮形成了一個經(jīng)典循環(huán):
技術突破 → 替代幻想 → 現(xiàn)實挫敗 → 工具融合 → 程序員角色升級
技術一直在進步,但程序員沒有消失。每一次“替代”預言的失敗,都不是技術的失敗,而是對“開發(fā)”這件事本質(zhì)的誤解。
就算到了未來某一天,技術真正強大到可以自動完成所有工作,程序員也不會真正意義上的“被淘汰”,畢竟工具(某種技術)無法背鍋。工具沒感情、沒責任、沒主體,背不了鍋。出了問題,鍋往下傳:CTO 對董事會說:“技術有瑕疵”;技術經(jīng)理對 CTO 說:“是團隊執(zhí)行的問題”;最后輪到程序員,只能對著報錯信息說:“這不是我寫的,是 AI 寫的!”可惜,老板不信,鍋還是你的。