編譯 | 傅宇琪
5 月 6 日,AI 編程黑馬 Cursor 的母公司 Anysphere 完成了一輪 9 億美元(約合人民幣約 65 億元)融資,估值增長兩倍多,達到約 90 億美元(約合人民幣約 654 億元)。這款全球增長最快的 AI 代碼編輯器,推出僅兩年便達到了 3 億美元的年經常性收入,其背后成功的秘訣是什么?
最近,Anysphere 的聯合創始人兼首席執行官 Michael Truell 在播客節目中,與主持人 Lenny 詳細回憶了 Cursor 構建過程中的經驗教訓,團隊搭建的心得,以及如何為即將到來的 AI 未來做好準備的建議。基于該播客視頻,InfoQ 進行了部分增刪。
核心觀點如下:
未來工程師將更多地像是邏輯設計師,真正的工作將是明確表達你對軟件如何運作的意圖。
成功的關鍵在于持續的焦慮和對改進的不斷追求。
在模型開發過程中,不要集中精力在基礎模型已表現優秀的地方,而是要聚焦于它們的弱點,并思考如何補充它們。
軟件的需求超出現有技術,未來工程師的需求將更大。
Cursor 的構建
Lenny:Cursor 正在改變人們構建產品的方式、職業生涯、行業等等,這一切是如何開始的呢?初期有沒有什么難忘的時刻?
Michael:最初,兩個關鍵時刻讓我們對 AI 產品充滿興奮。其一是在使用 Copilot 測試版時,我們感受到 AI 從虛擬演示轉變為了真正實用的工具。另一個是 OpenAI 發布的關于技術擴展的研究論文,表明了 AI 可以通過簡單手段持續提升,如擴大模型規模和增加輸入數據量等。
到了 2021 年底,我們對 AI 技術的未來充滿期待,認為它將變得更加成熟。我們意識到,盡管許多人在構建模型,但很少有人思考 AI 如何改變知識工作領域。于是,我們開始思考:隨著技術的成熟,哪些領域會變化?工作狀態如何?工具與模型如何演變?
我們最開始的時候認為編程領域已被充分探索,AI 將改變這一領域,但大家依然在關注。因此,我們把目光放在了一個較為冷門且發展緩慢的領域——機械工程。然而,最終我們意識到這并非我們的興趣所在。盡管編程領域已有積累,但變化不大。許多人未能意識到新模型將如何改變軟件開發方式,這促使我們開始構建 Cursor。
Lenny:有時候人們會建議你進入一個“無聊”的行業,因為沒有人關注,反而有機會。這個方法有時確實有效,但我更喜歡你后來提出的想法:“實際上,我們應該追求最熱門、最受關注的領域,比如 AI 編程和應用構建。”這最終帶來了成功。你提到,你沒有看到足夠的雄心,覺得很多事情還沒有完成。這似乎是一個有趣的教訓。即使某個領域看起來已經被占領,例如 GitHub、Copilot 等產品已經出現,如果你發現這些產品缺乏雄心,或者它們的方式存在某些問題,你依然可以看到巨大的機會。
Michael:我認為 AI 的令人興奮之處在于,它在許多領域依然有巨大的潛力,技術上限非常高。擁有一個有如此高上限的空間,在是軟件領域的獨特之處。
Lenny:各大公司也在走不同的路線。一個是為工程師構建一個 IDE,并為其添加 AI 魔法;另一個是完全以 AI Agent 為基礎開發產品;還有一個則是專注于構建最優秀的編碼模型。那么是什么讓你們決定選擇 IDE 路徑,并認為這是最佳選擇呢?
Michael:從一開始,專注于只做模型的團隊是在追求端到端的自動化編程,而我們關心的是讓人類掌控他們構建的最終工具中的所有決策。那些團隊傾向于設想一個 AI 主導的未來,而我們更傾向于保持現實主義態度。
我們一直強調“自我使用”,作為最終用戶參與其中,使我們對當前技術有了更為現實的認知,也促使我們相信人類應該掌控一切,AI 不能做到所有事情。我們希望賦予人類這種控制權,因此我們避開了單純做模型的公司和沒有人類控制的端到端自動化方式。
至于為何選擇做 IDE 而非插件,我們認為編程將在這些模型的推動下發生巨大變化,而現有編碼環境的可擴展性極其有限。如果你認為 UI 和編程方式將有重大變化,就必須對整個應用程序擁有控制權。
Lenny:我很好奇,你認為未來會有“AI 工程師”在 Slack 里為你做事嗎?這是 Cursor 未來的一部分嗎?
Michael:我認為,未來你需要能夠在不同工作方式之間輕松切換。有時候,可能希望讓 AI 獨立運行一段時間,然后再將其工作拉入并快速處理,之后可能再次讓它獨立運行。因此,后臺與前臺的工作方式應該在同一平臺上順暢運作。后臺工作特別適合那些可以明確指定需求、且對正確性要求不高的編程任務,例如修復 bug,但這并不是編程的全部。
因此,我認為 IDE 的定義會隨著時間的推移發生變化,我們選擇自己的編輯器方式也是基于這個前提:它必須不斷發展。這包括可以從不同平臺(如 Slack、問題跟蹤器等)啟動任務,同時,界面也會發生很大的變化。目前,我們主要將 IDE 視為構建軟件的地方。
Lenny:我覺得,人們在談論 Agent 和這些 AI 工程師會為你做所有事情時,往往沒有充分討論的一點是,我們實際上都在變成工程經理,管理著很多不那么聰明的員工,需要做大量的審核、批準和指定。你對此有什么看法?有沒有什么方法可以讓這一過程變得更輕松?
Michael:我們發現最成功的客戶在使用 AI 時其實比較保守,他們非常注重縮小交給 AI 處理的任務范圍。無論是來自 Agent 還是整體 AI,對于需要審查的代碼有兩種模式:第一種是,你在前期指定任務,AI 完成后你再審查工作;另一種是,將任務拆分成多個小部分,先指定一些內容,AI 寫一些代碼并審查,接著繼續指定,AI 繼續寫和審查,自動補全通常是在這種模式下進行的。我們看到最成功的用戶往往采取拆分任務并保持靈活性的方法。
Lenny:回到你們第一次構建 Cursor 的時候,你們是在哪個時刻意識到這個產品已經準備好了?覺得現在是時候發布它了?
Michael:當我們開始構建 Cursor 時,我們對推向市場持謹慎態度,避免過早發布。最初,我們從零開始構建原型,并沒有以 VS Code 為基礎。我們必須自己開發許多現代代碼編輯器所需的功能,包括多語言支持、語言間導航、錯誤追蹤等,還需要集成命令行和遠程服務器功能。
我們迅速投入到開發工作中,五周后開始完全使用自己的編輯器,放棄了之前的工具。當我們發現它有用時,就讓其他人試用,并進行了短期測試。幾個月后,我們將其推向市場,大約是在寫出第一行代碼后的三個月。那時我們的心態是:“讓我們盡快發布這個產品,公開構建。”
令我們驚訝的是,我們本以為會長時間為幾百個用戶開發,但一開始就收到了大量興趣和反饋,這些反饋非常有幫助,并促使我們從手工構建的編輯器轉向基于 VS Code 的版本。從那時起,我們就開始在公開環境中進行迭代。
成功的秘訣是什么
Lenny:我覺得你們從零到一億的年經常性收入(ARR)只用了大約一年到一年半的時間,這真是歷史性的成就。你認為你們成功的秘訣是什么?
Michael:三個月的版本其實并不太好,所以我認為成功的關鍵在于持續的焦慮和對改進的不斷追求。我們始終意識到,產品有許多改進的空間。我們的最終目標是發明一種全新的編程方式,自動化大部分當前的編碼工作。盡管 Cursor 已經取得了一些進展,我們仍然覺得離這個目標很遠,仍有大量工作需要完成。
Lenny:你們構建了一個自己作為工程師非常喜歡的優秀產品,然后發布出去,人們喜歡它,再紛紛告訴別人。
Michael:我們也確實花時間做了很多其他工作,比如組建團隊和支持輪換等。但一些通常在公司早期階段需要關注的問題,我們選擇讓它們在一段時間內處于“燃燒狀態”,尤其是在銷售和市場營銷方面。我們專注于產品,先打造一個自己和團隊都喜歡的產品,然后再根據用戶反饋進行調整。聽起來簡單,但實際上要做得好非常難。
有很多方向和路徑可以選擇,專注于正確的事物并有效排序優先級是非常具有挑戰性的。在這個領域的另一個難點是,這種產品構建方式非常跨學科——我們既不是普通的軟件公司,也不是基礎模型公司,因為我們要為數百萬用戶開發產品。在保證產品質量的同時,還需要在合適的地方做更多的科學研究和模型開發。因此,如何在這方面做到平衡,一直是一個挑戰。
Lenny:到目前為止,你在構建 Cursor 和其他 AI 產品過程中,做過的最違背直覺的事情是什么?
Michael:最違背直覺的一點是,剛開始時我們完全沒想到會進行自己的模型開發。進入這個領域時,已有公司專注于從零開始訓練模型,我們也計算過訓練成本,知道這對我們來說難以實現。外面已經有很多優秀的模型,尤其是在預訓練方面,我們認為不必重復做別人已經完成的工作。
然而隨著發展,我們進行了大量模型開發,并專門招聘了一個優秀的團隊。到目前為止,Cursor 中的每個“魔法時刻”都與自定義模型相關,這個過程是逐步發展的。最初,我們訓練自己的模型是因為沒有合適的大型基礎模型可用,結果非常成功。在模型開發過程中,一個有幫助的策略是精心選擇合適的領域,不要集中精力在基礎模型已表現優秀的地方,而是要聚焦于它們的弱點,并思考如何補充它們。
Lenny:很多人聽到你們有自己的模型時會感到驚訝。人們談論 Cursor 和這個領域的其他公司時,會認為它們只是建立在 ChatGPT 或 Sonnet 之上。能談談你們的模型背后技術堆棧的情況嗎?
Michael:我們確實在多個場景中使用了最大的基礎模型,它們是 Cursor 體驗的重要組成部分。我們自己開發模型的地方,通常是為了處理一些基礎模型因成本或速度原因無法滿足的用例。例如,自動完成功能。在編碼中,有時你可以完全預測接下來的一段工作,就像寫作時的自動補全一樣。不同的是,編碼時,下一步修改的內容通常可以從之前的代碼中預測出來。
Cursor 的核心功能之一就是針對自動完成功能的優化,能夠預測你在多個文件或同一文件多個位置上的操作。要讓模型在這個用例中表現出色,首先需要解決速度問題,模型必須在 300 毫秒內提供自動補全,并且要控制成本,因為每次按鍵時都需要運行大量模型并不斷調整預測。另一個特殊用例是代碼差異的自動補全。我們訓練了專門的模型,使其能夠精準地預測代碼庫中的變化,包括刪除和添加部分。
此外,我們還使用自有模型來輔助像 Sonnet、Gemini 或 GPT 這樣的基礎模型,作用于輸入和輸出端。在輸入端,我們的模型遍歷整個代碼庫,找出與大模型相關的部分,像一個專門的小型搜索引擎;在輸出端,我們獲取大模型的修改建議,并通過我們自己的模型填補細節。這樣,我們能夠將高層次的修改轉化為完整的代碼差異,極大地提升了產品的質量和速度。
Lenny:我之前在播客上采訪了 OpenAI 的首席產品官 Kevin Weil,他稱之為“模型集成”,就是以這種方式運作——利用每個模型的最佳特性,并且如你所說,使用成本更低的模型帶來的優勢。其他模型是指基于 Llama 之類的開源模型嗎?
Michael:是的。我們從現有的最優秀的預訓練模型開始,通常是開源的,有時也會與這些大模型提供商合作,盡管他們并不公開分享模型的權重,因為我們最關心的不是逐行讀取權重矩陣來獲得特定的輸出。我們更關心的是能夠訓練這些模型,并進行后訓練。
Lenny:這引出了一個很多 AI 創始人和投資者總是思考的話題,那就是護城河(moats)和 AI 領域的防御能力。你如何看待定制模型的長期防御能力,特別是知道有其他公司,不斷發布新產品,試圖搶占你的市場份額?
Michael:我們處于一個必須不斷努力構建最好產品的領域,這對我們和整個行業都是如此。天花板非常高,無論構建什么樣的壁壘,都有可能被超越。尤其是在搜索領域,增加分發渠道能幫助改進產品,因為可以根據用戶反饋調整算法和學習方式。
我認為,這種動態同樣適用于我們的市場。雖然這對我們公司來說可能是令人沮喪的事實,但對世界而言卻是令人興奮的,那就是:有許多可以超越的機會,還有更多有用的東西等待被構建。我們離能夠在未來 5 到 10 年內完全競爭還有很長的路要走,而我們的責任就是保持這個進步。
Lenny:持續做到最好,讓人們一直使用你的產品,而不是通過創建“鎖定”機制之類的方式來留住用戶,像 Salesforce 通過與整個公司簽訂合同,迫使他們使用你的產品。
Michael:我認為,如果你所在的領域很快就會耗盡創新機會,那就不太適合。但如果你處在一個需要大量投資,并且通過讓更多優秀的人在正確的路徑上工作來不斷創造價值的領域,你就能獲得研發規模的經濟效益,并推動技術朝著正確方向發展,最終形成競爭壁壘。盡管如此,我相信最關鍵的還是要打造出最好的產品。
關于未來是否會有主導者,我認為這個市場非常龐大。我們面臨的挑戰是自動化大量繁瑣的知識工作,真正提升各領域的效率和生產力,遠遠超出了為開發者提供構建工具的市場規模。我相信會有多個不同的解決方案出現,最終會有一家公司構建一個通用工具,能夠構建幾乎所有軟件。但同時,市場中也會有細分領域,你可以為特定市場或開發生命周期中的特定環節提供解決方案。總體來看,編程將從單純的編程語言轉向更高層次的工作,最終會有一個主導者,這將是一個巨大的商業機會。
Lenny:沿著這個思路,微軟實際上最早站在了這一切的中心,推出了一個令人驚嘆的產品,擁有出色的分發渠道。然而,微軟似乎并沒有贏得這場競爭,反而感覺有些落后了。你覺得這是怎么回事?
Michael:我認為,Copilot 沒有完全達到一些人預期的原因,既有市場問題,也有特定的歷史原因。首先,微軟顯然是我們工作的一個重要靈感來源,通常他們做了很多出色的工作,我們也是許多微軟產品的用戶,但我認為這個市場對現有公司(incumbent)并不友好。
對現有公司友好的市場通常是那些有一定局限并很快商品化的市場,你可以將產品捆綁銷售,且不同產品之間的投資回報率差異不大。在這種情況下,可能并不值得購買創新的解決方案,而是選擇與其他產品捆綁的東西。
另一個有利于現有公司的市場是那種一開始就將所有內容集中在一個地方,且轉換成本非常高的市場,無論是好是壞。而在我們的情況下,你可以嘗試不同的工具,決定哪個產品更好。所以,這對現有公司并不友好,反而是對那些擁有創新產品的公司更有利。
至于歷史原因,參與 Copilot 第一版開發的團隊大多已經轉向其他項目。我認為,協調涉及這個項目的不同部門和團隊一直存在一些困難。
Lenny:如果你可以坐在每個第一次使用 Cursor 的新用戶旁邊,悄悄告訴他們一兩個成功的秘訣,讓他們能更好地使用 Cursor,你會說什么?
Michael:成功使用 Cursor 的關鍵之一是了解模型的能力。用戶需要明白模型能處理的任務復雜度,了解需要多大程度上指定任務給模型,同時也要認識到模型的質量、局限性以及它能做什么和不能做什么。
為了幫助用戶培養這種“taste”,我有兩個建議。第一個是避免一開始就直接對模型說:“嘿,做這個任務”,然后看輸出結果,結果要么失望,要么直接接受。我建議將任務拆分成小塊,分步指定,這樣可以逐步獲得反饋,而不是一次性給出一個大任務。這樣做能更有效地利用模型,避免可能的負面效果。
第二個建議更適合副項目,而非正式工作。我鼓勵開發者,尤其是那些習慣傳統開發流程的人,嘗試“跌倒”,在安全環境下探索模型的極限。大膽地使用 AI,很多人低估了 AI 的能力,所以在安全環境中進行大膽嘗試,你可能會驚訝于模型的表現。
Lenny:要培養對模型能做什么的直覺,了解它能帶領一個想法走多遠,而不是只是引導它走一段路。我敢打賭,每當有新的模型發布時,你就需要重新建立這種直覺,譬如當 4.0 版本發布時,你就得重新做一次。這種說法對嗎?
Michael:是的。過去幾年,這個問題并不像人們第一次接觸一些大型模型時那樣顯著。這也是我們希望能更好地解決的問題,減輕用戶的負擔。
Lenny:人們總是會爭論,像 Cursor 這樣的工具對初級工程師更有幫助,還是對高級工程師更有幫助?你認為今天誰從 Cursor 中受益最大?
Michael:這兩類人群都從 Cursor 中受益匪淺,很難確切說哪個群體更受益。
初級工程師往往有點過度依賴 AI,幾乎依賴它做所有事情,而目前我們還沒有達到能夠在專業工具中完全依賴 AI、與數十人、數百人合作并且在長期維護的代碼庫中工作的階段。至于高級工程師,我認為平均而言,高級工程師往往低估了 AI 對他們的幫助,仍然堅持他們現有的工作流程。因此,比較這兩者的相對受益是有些困難的,我認為他們都陷入了不同的反面做法。
Lenny:這就像是光譜的兩端——一端期待過多,另一端則期望不足。
Michael:是的,也許是處于兩者中間地帶的高級工程師受益更大。
Cursor 招聘什么樣的人
Lenny:如果你可以見到剛開始做 Cursor 時的 Michael,你會給他什么建議?
Michael:許多寶貴的知識往往是潛在的,且難以用語言表達。生活中的一個遺憾是,在某些領域,你確實需要“跌倒”才能學到正確的東西,或者需要身邊有一個在某一領域非常出色的榜樣。
對我們來說,能夠組建一支世界級的工程師和研究團隊來共同打造 Cursor 至關重要。引入合適的人才,可能是我們最為關注的事之一, 我們因此等了很長時間才擴展團隊。我認為許多成功的公司都面臨“招聘過快”的問題,而我們一開始確實招聘得太慢了。我們在招聘過程中經歷了許多關于如何找到合適的候選人、如何判斷他們是否符合團隊條件、偉大是什么樣子的,以及如何激發他們興趣的教訓。
Lenny:哪些是你們的經驗教訓?有什么是你們錯過或學到的?
Michael:一開始,我們在招聘時過于偏向尋找“名校畢業、非常年輕、在名校環境中做過高認可項目”的典型人選。實際上,我們運氣很好,在早期找到了愿意和我們一起做這件事的非常出色的人,他們已經有了一定的職業經驗。我們花了很多時間尋找那些可能不完全符合我們需求的候選人,部分原因是資歷問題,另一部分則是興趣和經驗問題。
另外,我們的面試流程逐步演化,現在我們有一套自定義的面試問題,核心環節是讓候選人到現場待兩天,和我們一起做工作測試項目。這種方法非常有效,我們也越來越傾向于這種方式。此外,我們在了解候選人真正興趣方面也做得越來越好,我們學會了如何展示機會并展開對話。
Lenny:你有沒有一個最喜歡的面試問題?
Michael:我們最初認為這兩天的工作測試無法擴展到更多人參與,但它卻出乎意料地有效。它讓候選人完成從頭到尾的真實項目工作,而不是使用現成的項目清單。這種方式也不需要占用其他團隊太多時間,你可以將原本需要半天或一天的面試安排,分散到兩天內,給候選人足夠的時間展示工作成果,幫助面試流程擴展。
這個測試還幫助驗證你是否愿意和這個人一起工作,因為你們將共同度過兩天,甚至共享幾頓飯。我們原本沒想到這會持續下去,但它在我們的價值觀和流程中變得非常重要,尤其是在公司早期階段。當時,產品還不成熟,用戶也不多,唯一能吸引人的就是團隊成員。通過這兩天的相處,我們給候選人機會了解我們。這個做法出乎意料,更像是一次前置面試,而不是傳統的面試問題。
Lenny:你給候選人安排一個任務,比如“在我們的實際代碼庫中構建這個功能,并和團隊一起編碼、發布”?
Michael:對的,在我們的代碼庫中,我們會給候選人安排一個真實的小型兩天項目。基本上,候選人會被單獨安排,當然也有協作的部分。而且,我們公司是一個相對封閉的公司,幾乎所有的情況都是候選人實際坐在辦公室里和我們一起工作。
Lenny:你們現在有多少人?
Michael:我們現在大約有 60 人。
Lenny:對于如今的規模和影響力來說,60 人還是很少的。我猜工程師占了最大比例吧?
Michael:是的。未來我們的一大任務是組建一個更大、更出色的團隊,繼續改進產品和提升我們提供給客戶的服務。但這個數字目前較小的部分原因是,我們公司內工程、研究和設計的比例非常高。許多軟件公司,如果有大約 40 名工程師,通常員工總數會超過 100 人,因為有很多運營工作,且通常從一開始就非常依賴銷售。而我們從產品驅動、非常精簡的起點出發,現如今已經服務了大量的市場客戶,并且在不斷擴大團隊。
Lenny:AI 領域每天都有新的東西發布,作為一家位于風暴中心的公司,如何幫助你的團隊保持專注,低頭做事,而不被這些閃亮的新事物分心?
Michael:如果你能招到心態正確的人,許多問題都能迎刃而解。我們在這方面做得不錯。我們注重招聘那些專注于高質量工作、保持冷靜的人,他們情緒波動小,有助于保持專注。此外,更多討論這個話題,并通過以身作則非常重要。我們見證著 AI 領域技術的興起與消逝,形成了免疫機制,知道哪些事件會真正影響我們。
Lenny:你認為人們在理解 AI 的發展方向時,最常誤解或沒有完全掌握的是什么?尤其是在構建和改變世界的過程中
Michael:我認為人們對技術變革的看法有些偏激,要么覺得一切會發生得非常快,要么覺得這只是炒作。我認為我們正處于一個深遠的技術變革中,這場變革將比互聯網和任何自計算機出現以來的技術變革都要重要。這是一個跨越幾十年的過程,許多不同群體將推動這一進程。
為了實現計算機能做更多事情的目標,仍有許多問題需要解決,其中一些與科學相關,如如何讓模型理解不同類型的數據,使其更快、更便宜、更智能,能在現實中行動。另一些則與人與計算機的交互、如何控制技術有關。
我相信,這將是幾十年的長期過程。特別重要的是,那些致力于自動化和增強特定知識領域的公司,它們不僅要為該領域構建底層技術,還要整合各方最佳技術,并創造相應的產品體驗。這些公司,特別是在軟件領域,將變得極為重要。它們不僅能為用戶提供價值,還將推動技術進步,創造龐大的企業。
Lenny:我知道你們現在在招聘。你們目前在尋找哪些職位?有沒有特別急需填補的職位?如果有人感興趣,他們應該了解什么?
Michael:我們團隊還沒有完全準備好做所有事情。首先,如果你覺得某個職位沒有開設,可能應該主動聯系我們,實際上我們可能還沒有意識到需要這個職位。
總的來說,今年我們最重要的目標是:擁有行業最好的產品,并將其發展壯大。我們現在處于“領土爭奪”階段,全球許多人還沒有使用像我們這樣的工具,或者正在使用發展較慢的工具。所以,擴展 Cursor 是一個重要目標。我們尤其需要優秀的工程師、設計師和研究員,同時也需要各個業務領域的人才。
Lenny:“AI 會寫我們的所有代碼”,但是大家還是在瘋狂招聘工程師。你認為工程師職位會在某個臨界點上開始放緩嗎?工程師的需求會越來越大,還是最終會有很多像 Cursor 這樣的 Agent 為我們構建代碼?
Michael:這個過程是漫長而復雜的,不會立刻跳躍到把所有工作交給工程團隊完成。我們希望編程方式逐步演變,人類始終主導,即使在最終階段,專業人士仍需控制軟件的方向。我曾為生物技術公司構建內部工具,現有工具無法滿足需求,遠超我能完成的工作。盡管計算機性能強大,但當前仍有許多摩擦。我認為對軟件的需求超出現有技術,未來工程師的需求將更大。
代碼之后是什么
Lenny:你提到過一個非常有趣的概念——“代碼之后(what comes after code)”,你對從代碼到其他東西的轉變有什么愿景?
Michael:當前社會中存在幾種不同的愿景。一些人認為未來的軟件構建將與現在類似,依然是文本編輯和正式的編程語言,如 TypeScript、Go、C 和 Rust。另一種觀點認為,未來的軟件構建將是與聊天機器人進行對話式編程,你可以讓它幫你構建一些東西,之后再要求它修改你正在構建的內容。
我們認為這兩種愿景都有一定問題。我們想象的“代碼之后”的世界,是一個能夠以更接近自然語言的方式來表示軟件邏輯的世界,寫下的軟件邏輯可以以類似偽代碼的形式展示,也可以在高層次上進行編輯和指引。那時,軟件不再是幾百萬行難以理解的代碼,而是更加簡潔、易于理解的內容。我們正在朝著這個目標努力,使得那些復雜且難以理解的符號逐漸發展成更具可讀性和可編輯性的形式,讓軟件構建過程變得更加人性化。
Lenny:也就是說,你所設想的是人們將擺脫直接用代碼編程,取而代之的是一種抽象的形式——本質上是偽代碼,用英語句子描述代碼執行的功能。
Michael:我們認為最終會發展成這樣,而且我們堅信這個過程肯定是以人為主導,人在整個軟件構建中依然擁有極大的控制權。同時,人類也將具備快速做出改變的能力,能夠在短時間內進行調整,而不是依賴后臺運行的緩慢系統,花費數周時間才完成工作。
Lenny:對于那些目前是工程師、考慮成為工程師、設計師或產品經理的人來說,在“代碼之后”的世界里,哪些技能將變得越來越有價值?
Michael:我認為“taste(品味)”將變得越來越有價值。當人們談到軟件領域的“taste”時,往往會想到視覺效果,諸如流暢的動畫、色彩搭配、UI、UX 等設計方面,但定義軟件的另一半是它的邏輯和功能。我們目前擁有出色的工具來定義軟件的視覺效果,但一旦涉及到軟件如何運作的邏輯,實際上,代碼是目前最好的表現方式。
因此,我認為未來工程師將更多地會像邏輯設計師,真正的工作將是明確表達你對軟件如何運作的意圖。這將更多是關于“做什么”,而不那么關心“如何實現”。
Lenny:這讓我想到了“vibe coding(氛圍編碼)”,你是指不必過多關注細節,而是更傾向于順其自然,跟著感覺走的那種方式嗎?
Michael:我覺得“vibe coding”正好描述了這種創造狀態。這種狀態比較有爭議,雖然你在生成大量代碼,但并沒有真正理解細節。這種創造狀態會帶來很多問題,因為如果你不了解代碼背后的細節,你很快就會遇到限制,創造出一些大到無法修改的東西。
因此,我們正在探索的一個問題是:人們如何在不理解代碼的情況下,依然能夠持續控制所有細節。這對于現在從事 vibe coding 的人來說是非常關鍵的。
Lenny:你說的“taste”具體指什么?
Michael:我指的是擁有正確的構建理念。未來,用戶將會更容易地把“想要構建的內容、希望一切如何運作、希望它看起來如何”這些想法無縫轉化為現實。有了構建的藍圖后,用戶能夠在計算機上輕松實現這一點,不再需要艱苦地將其轉化為計算機可以理解和執行的格式。
https://www.youtube.com/watch?v=En5cSXgGvZM
聲明:本文為 InfoQ 整理,不代表平臺觀點,未經許可禁止對全文或部分內容進行轉載。
AICon 2025 強勢來襲,5 月上海站、6 月北京站,雙城聯動,全覽 AI 技術前沿和行業落地。大會聚焦技術與應用深度融合,匯聚 AI Agent、多模態、場景應用、大模型架構創新、智能數據基建、AI 產品設計和出海策略等話題。即刻掃碼購票,一同探索 AI 應用邊界!
特別聲明:以上內容(如有圖片或視頻亦包括在內)為自媒體平臺“網易號”用戶上傳并發布,本平臺僅提供信息存儲服務。
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.