機(jī)器之心報(bào)道
編輯:Panda
氛圍編程(vibe coding),這個(gè)由 Andrej Karpathy 帶火的熱詞,已經(jīng)成為了一種相當(dāng)流行的編程方式。但這種編程方式的流行程度究竟如何,目前還沒(méi)有什么比較可靠的統(tǒng)計(jì)數(shù)據(jù)。不過(guò),近日的一篇 Reddit 熱帖,卻可以讓我們窺見(jiàn)一些端倪:看起來(lái),氛圍編程可能比我們預(yù)想的更受歡迎,F(xiàn)AANG 等大型科技公司也不乏 vibe coder—— 雖然人們對(duì)這個(gè)工作流程算不算是氛圍編程存在很大爭(zhēng)議。
這篇帖子發(fā)布在 r/vibecoding,發(fā)帖者 u/TreeTopologyTroubado 自稱是一位擁有十多年工作經(jīng)驗(yàn)的 AI 軟件工程師,并且其有一半的時(shí)間都是在 FAANG(即 Meta、亞馬遜、蘋果、Netflix 和 Alphabet 五大科技巨頭)工作。他職業(yè)生涯前半段是系統(tǒng)工程師,而不是開(kāi)發(fā)者,不過(guò)他現(xiàn)在已有 15 年左右的編程經(jīng)驗(yàn)了。
然后,他分享了使用 AI 開(kāi)發(fā)產(chǎn)品代碼的方法。簡(jiǎn)單來(lái)說(shuō),就是始終從可靠的設(shè)計(jì)文檔和架構(gòu)開(kāi)始,然后在此基礎(chǔ)上逐步構(gòu)建。始終先編寫測(cè)試。
更具體而言:
- 你仍然需要從技術(shù)設(shè)計(jì)文檔開(kāi)始。這是工作的主體。一開(kāi)始,設(shè)計(jì)文檔是一份提案文檔。如果你能讓足夠多的利益相關(guān)者認(rèn)同你的提案有價(jià)值,你就可以開(kāi)始開(kāi)發(fā)系統(tǒng)設(shè)計(jì)本身。這包括完整的架構(gòu)、與其他團(tuán)隊(duì)的集成等等。
- 在開(kāi)始開(kāi)發(fā)工作之前進(jìn)行設(shè)計(jì)評(píng)審。這指的是讓高級(jí)工程師徹底揉碎評(píng)估團(tuán)隊(duì)的設(shè)計(jì)文檔。這是個(gè)很好的做法。我認(rèn)為這可以減輕開(kāi)發(fā)過(guò)程中的痛苦。
- 如果通過(guò)審核,就可以開(kāi)始開(kāi)發(fā)工作了。最初的幾周,我們會(huì)針對(duì)各個(gè)開(kāi)發(fā)團(tuán)隊(duì)即將構(gòu)建的各個(gè)子系統(tǒng)編寫更多文檔。
- 待辦事項(xiàng)開(kāi)發(fā)和沖刺規(guī)劃。開(kāi)發(fā)人員需要與項(xiàng)目經(jīng)理和技術(shù)項(xiàng)目經(jīng)理協(xié)作,確定各個(gè)開(kāi)發(fā)人員需要處理的獨(dú)立任務(wù)及其執(zhí)行順序。
- 軟件開(kāi)發(fā)。終于,我們可以拿起鍵盤,開(kāi)始處理任務(wù)單了。這正是 AI 展現(xiàn)強(qiáng)大實(shí)力的地方。我們使用的方法是測(cè)試驅(qū)動(dòng)開(kāi)發(fā)(Test Driven Development),也就是讓 AI 編程智能體先為要構(gòu)建的功能編寫測(cè)試。之后,我才會(huì)開(kāi)始使用這個(gè)智能體來(lái)構(gòu)建這個(gè)功能。
- 代碼提交審核。在將代碼合并到人工代碼之前,我們會(huì)有兩個(gè)開(kāi)發(fā)人員進(jìn)行審批。AI 在協(xié)助審核方面也展現(xiàn)出巨大的潛力。
- 在預(yù)發(fā)布版本中進(jìn)行測(cè)試。如果預(yù)發(fā)布版本一切正常,我們就會(huì)將其推送到生產(chǎn)版本。
該帖在 Reddit 和 X 上都引起了廣泛討論。其中一個(gè)很大的討論點(diǎn)是,F(xiàn)AANG 等大型科技公司竟然允許員工氛圍編程!
即便谷歌曾宣稱其現(xiàn)在大約一半的代碼都是 AI 編寫的,但這一說(shuō)法也備受質(zhì)疑,一些開(kāi)發(fā)者還曾表示谷歌可能把自動(dòng)代碼補(bǔ)全的部分也算成 AI 生成的代碼了,也有不少人質(zhì)疑谷歌究竟在生產(chǎn)環(huán)境中部署了多少這些 AI 生成的代碼。
不過(guò),也有人認(rèn)為,根據(jù)該帖子的描述,這個(gè)流程其實(shí)不能稱之為「氛圍編程」,因?yàn)槠渲幸廊挥写罅勘仨毴祟悈⑴c的環(huán)節(jié) —— 這或許是該帖子最引人爭(zhēng)議的地方。
Hyperbolic 聯(lián)創(chuàng) & CEO Yuchen Jin 也認(rèn)為這樣的工作流程對(duì)人類工作者來(lái)說(shuō)很痛苦,不夠 vibe。
同時(shí),這也表明,即便有 AI 加持,大型科技公司繁瑣的流程還是會(huì)拖延研發(fā)速度 —— 這似乎對(duì)獨(dú)立創(chuàng)始人來(lái)說(shuō)是好事。
盡管如此,也有不少開(kāi)發(fā)者從中看到了可取之處。
比如開(kāi)發(fā)者 Frank Lin 認(rèn)為這可以成為使用 AI 的最佳實(shí)踐,即詳細(xì)的技術(shù)規(guī)格,在編程之前先審查解決方案,并首先編寫測(cè)試代碼。
而其中,編程是最輕松和乏味的階段,工程師的價(jià)值則是體現(xiàn)在「設(shè)計(jì)、頭腦風(fēng)暴、編寫規(guī)范、測(cè)試等」方面,也就是要弄清楚需要編寫什么代碼。
也有人分享了自己的經(jīng)驗(yàn)。
對(duì)此,你怎么看?或者有什么經(jīng)驗(yàn)與我們分享嗎?
https://www.reddit.com/r/vibecoding/comments/1myakhd/how_we_vibe_code_at_a_faang/
https://x.com/Yuchenj_UW/status/1959661025319608603
https://x.com/rohanpaul_ai/status/1959414096589422619
特別聲明:以上內(nèi)容(如有圖片或視頻亦包括在內(nèi))為自媒體平臺(tái)“網(wǎng)易號(hào)”用戶上傳并發(fā)布,本平臺(tái)僅提供信息存儲(chǔ)服務(wù)。
Notice: The content above (including the pictures and videos if any) is uploaded and posted by a user of NetEase Hao, which is a social media platform and only provides information storage services.