Lenny's Podcast with Lenny Rachitsky · 2025-05-01 · 双语整理

A World After Code

代码之后的世界 · Cursor 用两年做到 $300M ARR

"More and more being an engineer will start to feel like being a logic designer, and really, it will be about specifying your intent for how exactly you want everything to work."

Michael Truell 是 Anysphere 联合创始人兼 CEO,Cursor 背后的人。这家公司上线 20 个月做到 $100M ARR、两年做到 $300M ARR,团队却只有 60 人。这期他讲了三件事:Cursor 最初四个月在做机械工程工具、被叫作 GPT wrapper 的公司为什么自己训模型,以及他为什么认为这个市场里筑起的任何护城河都会被弯道超车。

来源:YouTube 官方字幕 + Lenny's Newsletter 官方文字稿(说话人标注)· 2025-05-01 · 71 分钟 · 约 13,000 词 · 12 章 · 逐字双语对照
TL;DR · 速读

Cursor 怎么看编程的下一站,以及它自己是怎么长出来的

  1. 工程师会变成逻辑设计师

    "More and more being an engineer will start to feel like being a logic designer, and really, it will be about specifying your intent for how exactly you want everything to work."

    "Our goal with Cursor is to invent a new type of programming, a very different way to build software."

    重心从「怎么实现」挪到「你要它怎么运转」,代码退成中间产物。

  2. 未来比两派设想都更怪

    "And we think it's going to look weirder than both."

    "One is, there's a group of people who think that software building in the future is going to look very much like it does today. And then there's another group that kind of thinks you're just going to type into a bot."

    既不是继续写 TypeScript,也不是对着聊天框喊话——那样精度不够,人就交出了控制权。

  3. 品味会取代小心翼翼

    "I think we will get to a place where you'll be able to be less careful as a software engineer, which, right now, is an incredibly, incredibly important skill."

    "We'll move a little bit from carefulness, and a little bit more towards taste."

    今天最值钱的技能是谨慎;他赌它会贬值,腾出的位置留给「知道该造什么」。

  4. 别挑无聊行业,挑最热的

    "It felt like they weren't being sufficiently ambitious about where everything was going to go in the future, and how all of software creation was going to blow through these models."

    "But eventually what happened was, we came to our senses, we realized we're not super excited about mechanical engineering, it's not the thing we want to dedicate our lives to."

    Cursor 头四个月在做机械工程工具,掉头才发现最拥挤的赛道反而没人做到位。

  5. 每个魔法时刻都有自研模型

    "And at this point, every magic moment in Cursor involves a custom model in some way."

    "We definitely didn't expect to be doing any of our own model development when we started."

    被叫作 GPT wrapper 的公司,把自动补全、代码库检索、diff 落地都换成了自研模型。

  6. 天花板太高,护城河不算数

    "And I truly just think that the ceiling is so high that no matter what entrenchment you build, you can be leapfrogged."

    "I think that there are ways to build in inertia and traditional moats, but I think by and large, we're in a space where it is incumbent on us to continue to try to build the best thing."

    他把 AI 编程当成消费级竞争:靠持续做到最好留人,不靠合同锁定。

  7. 旧编辑器市场小,是因为过去能做的少

    "There was only so much you could do building an editor in the 2010s for coders."

    "They looked at the IDE market of the past 10 years, and they said, "Who's making money off of the editors?""

    拿旧 IDE 市场推算天花板是刻舟求剑;今天能替程序员做的事深得多。

  8. 一次说清全部=灾难配方

    "I think that will be a little bit of a recipe for disaster right now. And so biasing toward chopping things up."

    "Instead what I would do is I would chop things up into bits, and you can spend basically the same amount of time specifying things overall, but chopped up more."

    总时间一样,但切碎着说;一口气把大任务交代出去,模型现在还接不住。

  9. 资深工程师低估了 AI

    "But by and large, I would say on average, as a group, the senior engineers underrate what AI can do for them, and stick to their existing workflows."

    "The junior engineers we see going a little too wholesale, relying on AI for everything, and we're not yet in a place where you can kind of do that end-to-end on a professional tool."

    两头都是反模式:新手全托,老手不碰。他的建议是在业余项目里刻意摔一跤。

  10. 我们招得太慢,不是太快

    "And I think that many people you hear hired too fast, think we actually hired too slow to begin with."

    "We actually waited a long time to grow the team because of that."

    60 人做到 $300M ARR;核心筛法是把候选人请来做两天真实项目。

  11. 对软件的需求远大于产能

    "There's still so much friction, I think that there's much more demand for software than what we can build today with things costing like a blockbuster movie to make simple productivity software."

    "And so I think long into the future, yes, there will actually be more demand for engineers."

    成本降下来,能做的软件会多出几个数量级——所以工程师会更多,不是更少。

  12. 这场变革比互联网更深远

    "I think it's going to be more consequential than the internet, I think it's going to be more consequential than any shift in tech that we've seen since the advent of computers."

    "And I think it's going to take a while, and I think it's going to be a multi-decade thing, and I think many different groups will be consequential in pushing it forward."

    他两头都不站:既不是「明天就变天」,也不是「全是炒作」,而是几十年的事。

Chapter 01

Cold Open: $0 to $300M in Two Years

开场 · 两年从 $0 到 $300M ARR
00:00 — 04:33 · 预告问答 · 主持人开场 · 赞助口播
Michael 00:00:00

...

……

our goal with Cursor is to invent a new type of programming, a very different way to build software.

我们做 Cursor 的目标,是发明一种新的编程方式,一种非常不一样的软件开发方式。

So a world kind of after code, I think that more and more being an engineer will start to feel like being a logic designer, and really, it will be about specifying your intent for how exactly you want everything to work.

所以在代码之后的那个世界里,我觉得做工程师会越来越像做一个逻辑设计师,真正要干的,是把你想让一切怎么运转的意图讲清楚。

Lenny 00:00:16

What is the most counter-intuitive thing you've learned so far about building Cursor?

到目前为止,做 Cursor 这一路上,你学到的最反直觉的一点是什么?

Michael 00:00:20

We definitely didn't expect to be doing any of our own model development.

我们完全没料到自己会去做任何自研模型开发。

And at this point, every magic moment in Cursor involves a custom model in some way.

而到今天,Cursor 里每一个让人惊艳的瞬间,背后多多少少都有一个自研模型。

Lenny 00:00:26

What's something that you wish you knew before you got into this role?

有什么事,是你希望自己在接手这个角色之前就知道的?

Michael 00:00:29

Many people you hear hire too fast, I think we actually hired too slow to begin with.

你听说的很多人都是招得太快,我觉得我们一开始其实是招得太慢了。

Lenny 00:00:35

You guys went from $0 to 100 million ARR in a year and a half, which is historic.

你们一年半就从 $0 做到 100 million ARR,这是历史级的。

Was there an inflection point where things just started to really take off?

有没有一个拐点,让事情一下子真正起飞了?

Michael 00:00:43

The growth has been fairly just consistent on an exponential.

增长基本上一直挺稳地沿着一条指数曲线在走。

And exponential to begin with feels fairly slow when the numbers are really low, and it didn't really show off to the races to begin with.

而指数增长在最初、数字还很低的时候,感觉是相当慢的,一开始并没有真的一路狂奔起来。

Lenny 00:00:51

What do you think is the secret to your success?

你觉得你们成功的秘诀是什么?

Michael 00:00:53

I think it's been...

我觉得是……

Lenny 00:00:55

Today, my guest is Michael Truell.

今天我的嘉宾是 Michael Truell。

Michael is co-founder and CEO of Anysphere, the company behind Cursor.

Michael 是 Anysphere 的联合创始人兼 CEO,Anysphere 就是 Cursor 背后的那家公司。

If you've been living under a rock and haven't heard of Cursor, it is the leading AI code editor, and is at the very forefront of changing how engineers and product teams build software.

如果你这阵子与世隔绝、还没听说过 Cursor:它是目前最领先的 AI 代码编辑器,也站在最前沿,正在改变工程师和产品团队做软件的方式。

It's also one of the fastest growing products of all time, hitting 100 million ARR just 20 months after launching, and then 300 million ARR just two years since launch.

它也是有史以来增长最快的产品之一,上线仅 20 个月就做到 100 million ARR,上线才两年就做到 300 million ARR。

Michael's been working on AI for 10 years.

Michael 做 AI 已经做了 10 年。

He studied computer science and math at MIT, did AI research at MIT and Google, and is a student of tech and business history.

他在 MIT 学计算机科学和数学,在 MIT 和 Google 做过 AI 研究,还潜心研究科技史和商业史。

As you'll soon see, Michael thinks deeply about where things are heading, and what the future of building software looks like.

你马上就会看到,Michael 对事情的走向、对未来做软件会是什么样子,都想得很深。

We chat about the origin story of Cursor, his prediction of what happens after code, his biggest counter-intuitive lessons from building Cursor, where he sees things going for software engineers, and so much more.

我们聊了 Cursor 的起源故事、他对代码之后会发生什么的预判、他做 Cursor 学到的最反直觉的经验、他眼里软件工程师会走向哪里,还有很多很多。

Michael does not do many podcasts.

Michael 很少上播客。

The only other podcast he's ever done is Lex Fridman, so it was a true honor to have Michael on.

他上过的另一档播客只有 Lex Fridman,所以能请到 Michael,真的是莫大的荣幸。

If you enjoy this podcast, don't forget to subscribe and follow it in your favorite podcasting app or YouTube.

如果你喜欢这档播客,别忘了在你常用的播客 app 或 YouTube 上订阅、关注。

Also, if you become an annual subscriber of my newsletter, you get a year free of Perplexity, Linear, Superhuman, Notion, and Granola.

另外,如果你成为我 newsletter 的年度订阅者,还能免费用一年的 Perplexity、Linear、Superhuman、Notion 和 Granola。

Check it out at lennysnewsletter.com, and click bundle.

去 lennysnewsletter.com 看看,然后点 bundle。

With that, I bring you Michael Truell.

那么,有请 Michael Truell。

This episode is brought to you by Eppo.

本期节目由 Eppo 赞助。

Eppo is a next-generation A/B testing and feature management platform built by alums of Airbnb and Snowflake for modern growth teams.

Eppo 是新一代的 A/B 测试与功能管理平台,由 Airbnb 和 Snowflake 的前员工为现代增长团队打造。

Companies like Twitch, Miro, ClickUp, and DraftKings rely on Eppo to power their experiments.

Twitch、Miro、ClickUp、DraftKings 这些公司都靠 Eppo 来跑实验。

Experimentation is increasingly essential for driving growth, and for understanding the performance of new features, and Eppo helps you increase experimentation velocity, while unlocking rigorous deep analysis in a way that no other commercial tool does.

想推动增长、想搞清楚新功能表现如何,实验越来越不可或缺,而 Eppo 能帮你提高实验速度,同时解锁其他商业工具都做不到的严谨深度分析。

When I was at Airbnb, one of the things that I loved most was our experimentation platform, where I could set up experiments easily, troubleshoot issues, and analyze performance all on my own.

我在 Airbnb 的时候,最喜欢的东西之一就是我们的实验平台,在上面我可以自己轻松搭实验、排查问题、分析表现。

Eppo does all that and more, with advanced statistical methods that can help you shave weeks off experiment time, an accessible UI for diving deeper into performance, and out-of-the-box reporting that helps you avoid annoying, prolonged analytics cycles.

Eppo 能做到这些,还不止:它有先进的统计方法,能帮你把实验时间缩短好几周;有好用的界面,让你更深入地看表现;还有开箱即用的报表,帮你躲开那种烦人又拖沓的分析周期。

Eppo also makes it easy for you to share experiment insights with your team, sparking new ideas for the A/B testing flywheel.

Eppo 还让你能很轻松地把实验洞察分享给团队,激发新的想法,转动 A/B 测试的飞轮。

Eppo powers experimentation across every use case, including product, growth, machine learning, monetization, and email marketing.

Eppo 支撑各种场景下的实验,包括产品、增长、机器学习、变现和邮件营销。

Check out Eppo at geteppo.com/lenny, and 10X your experiment velocity.

去 geteppo.com/lenny 看看 Eppo,把实验速度提高 10 倍。

That's getE-P-P-O.com/lenny.

也就是 getE-P-P-O.com/lenny。

This episode is brought to you by Vanta.

本期节目由 Vanta 赞助。

When it comes to ensuring your company has top-notch security practices, things get complicated fast.

要确保公司有一流的安全实践,事情很快就会变得复杂。

Now, you can assess risk, secure the trust of your customers, and automate compliance for SOC 2, ISO 27001, HIPAA, and more with a single platform, Vanta.

现在,你可以用 Vanta 这一个平台,就完成风险评估、赢得客户信任,以及 SOC 2、ISO 27001、HIPAA 等等合规工作的自动化。

Vanta's market-leading trust management platform helps you continuously monitor compliance, alongside reporting and tracking risk.

Vanta 这个市场领先的信任管理平台,帮你持续监控合规状况,同时做风险的报告和跟踪。

Plus, you can save hours by completing security questionnaires with Vanta AI.

另外,用 Vanta AI 填安全问卷,能帮你省下好几个小时。

Join thousands of global companies that use Vanta to automate evidence collection, unify risk management, and streamline security reviews.

加入全球数千家公司的行列,他们都在用 Vanta 自动收集证据、统一风险管理、简化安全审查。

Get $1,000 off Vanta when you go to vanta.com/lenny.

访问 vanta.com/lenny,就能拿到 $1,000 的优惠。

That's V-A-N-T-A.com/lenny.

也就是 V-A-N-T-A.com/lenny。

Michael, thank you so much for being here.

Michael,太感谢你能来了。

Welcome to the podcast.

欢迎来到这档播客。

Michael 00:04:30

Thank you.

谢谢。

It's great to be here.

很高兴能来。

Thank you for having me.

谢谢你邀请我。

Chapter 02

A World After Code

代码之后的世界
04:33 — 08:20 · 意图取代代码 · 伪代码层 · 两派设想都不对
Lenny 00:04:33

When we were chatting earlier, you had this really interesting phrase, this idea of what comes after code.

我们之前聊天的时候,你提到一个特别有意思的说法,叫“代码之后是什么”。

Talk about that, just the vision you have of where you think things are going in terms of moving from code to maybe something else.

聊聊这个吧,说说你心里那个图景:事情会往哪走,怎么从代码走向别的什么东西。

Michael 00:04:45

Our goal with Cursor is to invent sort of a new type of programming, a very different way to build software, that's kind of just distilled down into you describing the intent to the computer for what you want in the most concise way possible, and really distilled down to just defining how you think the software should work, and how you think it should look.

我们做 Cursor 的目标,是发明一种新的编程方式、一种很不一样的软件构建方式,归结起来就是:你用尽可能简洁的方式,把你想要什么的意图描述给计算机,真正归结下来,就是定义你认为这个软件该怎么运作、该长什么样。

With the technology that we have today, and as it matures, we think you can get to a place where you can invent a new method of building software that's [inaudible 00:05:16] higher level, and more productive, in some cases, more accessible too.

凭今天的技术,再加上它继续成熟,我们认为能走到那么一步:发明出一种新的软件构建方法,[听不清 00:05:16]层级更高、效率更高,某些情况下门槛也更低。

And that process will be a gradual moving away from what building software looks like today.

而这会是一个逐步偏离今天软件构建方式的过程。

I want to contrast it with maybe the vision of what software looks like in the future that I think...

我想拿它跟另一种对软件未来形态的设想比一比,我觉得……

A couple of visions that are in a popular consciousness that we at least have some disagreement with.

有几种设想在大众认知里挺流行,我们至少对它们有些不同意见。

One is, there's a group of people who think that software building in the future is going to look very much like it does today, which mostly means text editing, formal programming languages, like TypeScript, and Go, and C, and Rust.

一种是,有一群人认为未来的软件构建跟今天差不多,也就是主要还是文本编辑、正式的编程语言,比如 TypeScript、Go、C、Rust。

And then there's another group that kind of thinks you're just going to type into a bot, and you're going to ask it to build you something, and then you're going to ask it to change something about what you're building, and it's kind of like this chatbot, Slackbot style where you're talking to your engineering department.

还有另一群人认为,你只要对着一个机器人打字,让它给你造点东西,然后再让它把正在做的东西改一改,有点像聊天机器人、Slackbot 那种方式,你就像在跟自己的工程部门说话。

And we think that there are problems with both of those visions.

我们认为这两种设想都有问题。

I think that on the chatbot style end of things...

我觉得在聊天机器人那一端……

And we think it's going to look weirder than both.

我们认为未来的样子会比这两种都更怪。

The problem with the chatbot style end of things is that lacks a lot of precision.

聊天机器人那一端的问题在于,它精确度不够。

If you want humans to have complete control over what the software looks like, and how it works, you need to let them gesture at what they want to be changed in a form factor that's more precise than just, "Change this about my app."

如果你要让人类完全掌控软件长什么样、怎么运作,你就得让他们用一种更精确的形态去指出自己想改的地方,而不只是一句“把我 app 的这块改一下”。

In a text box, removed from the whole thing.

而且是在一个文本框里打字,跟整体是脱开的。

And then the version of the world where nothing changes we think is wrong, because we think the technology is going to get much, much, much better.

至于那种什么都不变的世界,我们觉得是错的,因为我们认为技术会变得好很多、很多、很多。

And so a world after code, I think that it looks like a world where you have a representation of the logic of your software that does look more like English, you have written down...

所以代码之后的世界,我觉得会是这样:你手里有一份对软件逻辑的表达,它确实更像英语,是你自己写下来的……

You can imagine in [inaudible 00:07:08] form, you can imagine in kind of an evolution of programming language towards pseudocode.

你可以想象成[听不清 00:07:08]形式,可以想象成编程语言朝伪代码方向演进。

You have written down the logic of the software, and you can edit that at a high level, and you can point at that.

你把软件的逻辑写下来,可以在高层级上编辑它,也可以直接指向它。

And it won't be the impenetrable millions of lines of code, it'll instead be something that's much Terser, and easier to understand, easier to navigate.

它不会是那种几百万行、根本读不进去的代码,而会是更精简、更好懂、也更容易在里面找路的东西。

But that world where the kind of crazy, hard to understand symbols start to evolve towards something that's a little bit more human-readable, and human-editable, is one that we're working towards.

但那个世界——那些疯狂的、难懂的符号开始朝人稍微读得懂、也改得动的方向演进——正是我们在朝它努力的。

Lenny 00:07:36

This is a profound point.

这一点很深刻。

I want to make sure people don't miss what you're saying here, which is that what you're envisioning in the next year essentially is kind of when things start to shift, is, people move away from even seeing code, having to think in code in JavaScript and Python, and there's this abstraction that will appear, essentially pseudocode, describing what the code should be doing more in English sentences.

我想确保大家别错过你在说的东西:你设想的是,未来一年左右事情就开始转向,人们连代码都不用看了,不用再拿 JavaScript、Python 那套去思考,中间会出现一层抽象,本质上就是伪代码,用更接近英语的句子来描述代码该做什么。

Michael 00:07:59

Yep.

对。

We think it ends up looking like that, and we're very opinionated that that path goes through existing professional engineers, and it looks like this evolution away from code.

我们认为最后会是这个样子,而且我们在这点上态度很明确:这条路要经过现有的专业工程师,走的就是这样一条逐步远离代码的演进。

And it definitely looks like the human still being in the driver's seat, and the human having both a ton of control over all aspects of the software and not giving that up.

而且它一定是人还握着方向盘,人对软件的方方面面都保有大量控制权,也不会把这份控制权交出去。

And then also the human having the ability to make changes very quickly, having a fast duration loop and not just having something in the background that's super slow and takes weeks, go do all your work for you.

同时人还能很快做出改动,有一个很短的循环周期,而不是在后台挂一个超级慢、要花好几周的东西替你把活全干了。

Chapter 03

Taste Becomes the Scarce Skill

品味成为稀缺技能
08:33 — 12:31 · 逻辑的品味 · vibe coding 的边界 · 谨慎会贬值
Lenny 00:08:33

This begs the question for people that are currently engineers, or thinking about becoming engineers, or designers, or product manager, what skills do you think will be more and more valuable in this world of what comes after code?

这就引出一个问题:现在已经是工程师的人、在考虑入行做工程师的人,还有设计师、产品经理,你觉得在“代码之后是什么”的世界里,什么技能会越来越值钱?

Michael 00:08:50

I think taste will be increasingly more valuable.

我觉得品味会越来越有价值。

And I think often when people think about tastes in the realm of software, they think about visuals, or taste over smooth animations, and coloring things, UI, UX, et cetera on the visual design of things.

我觉得人们一提到软件领域的品味,想到的往往是视觉——对流畅动画的品味、配色、UI、UX 等等,都是视觉设计层面的东西。

And the visual side of things is an important part of defining a piece of software, but then, as mentioned before, I think that the other half of defining a piece of software is the logic of it, and how the thing works.

视觉这一面确实是定义一款软件的重要部分,但像前面提到的,我认为定义一款软件的另一半是它的逻辑,是这东西怎么运转。

And we have amazing tools for specing out the visuals of things, and then when you get into the logic of how a piece of software works, really, the best representation we have of that is code right now.

我们有非常好的工具把视觉部分定义清楚,可一旦进入“一款软件的逻辑怎么运转”这一层,说到底,我们眼下最好的表达方式还是代码。

You can kind of gesture at it with Figma, and you can gesture at it with writing down notes, but it's when you have an actual working prototype.

你可以用 Figma 大致比划一下,也可以写点笔记大致描述一下,但真正说清楚,得有一个能跑起来的原型。

And so I think that more and more, being an engineer will start to feel like being a logic designer, and really, it will be about specifying your intent for how exactly you want everything to work.

所以我觉得,当工程师会越来越像当一个逻辑设计师,核心是把你的意图说清楚:你到底想让每一处怎么运转。

It'd be more about the whats, and a little bit less about how exactly you're going to do things under the hood.

重点更多在“做什么”,而稍微少一些在“底层到底怎么实现”。

I think taste will be increasingly important.

我觉得品味会越来越重要。

I think one aspect of software engineering, and we're very far from this right now, and there are lots of funny memes going around the internet about some of the trials and tribulations people can run into if they trust AI for too many things that comes to engineering, around building apps that have glaring deficiencies, and problems, and functionality issues.

我觉得软件工程有一个方面——我们现在离这一步还很远,而且网上流传着很多好笑的梗图,讲的是人们在工程上凡事都信 AI 会踩到的种种坑,做出来的应用有扎眼的缺陷、毛病和功能故障。

But I think we will get to a place where you'll be able to be less careful as a software engineer, which, right now, is an incredibly, incredibly important skill.

但我觉得我们会走到那样一个阶段:当软件工程师,你可以不用那么小心翼翼——而小心谨慎放在今天是一项极其极其重要的技能。

We'll move a little bit from carefulness, and a little bit more towards taste.

我们会从谨慎那一头挪开一点,再往品味那一头靠一点。

Lenny 00:10:40

This makes me think of vibe coding, is that kind of what you're describing when you talk about not having to think about the details as much, and just kind of going with the flow?

这让我想到 vibe coding,你说的“不用那么纠结细节、跟着感觉走”,讲的是不是这个?

Michael 00:10:48

I think it's related.

我觉得有关系。

I think that vibe coding right now describes exactly this state of creation that is pretty controversial, where you're generating a lot of coding, you aren't really understanding the details.

我觉得 vibe coding 现在描述的正是这样一种创作状态,而这种状态挺有争议:你生成了大量代码,却并不真的理解细节。

That is a state of creation that then has lots of problems, you don't really...

这种创作状态会带来很多问题,你并不真的……

By not understanding the details under the hood right now, you then very quickly get to a place where you're kind of limited at a certain point, where you create something that's big enough that you can't change.

就眼下而言,因为不理解底层细节,你很快就会走到一个受限的点上:造出来的东西大到你已经改不动了。

And so I think some of the ideas that we're interested around, how do you give people continued control over all the details when they don't really understand the code?

所以我觉得,我们感兴趣的一些想法就在这儿:当人们并不真的看得懂代码,怎么让他们对所有细节依然保持持续的掌控?

I think that solutions there are very relevant to the people who are vibe coding right now.

我觉得那个方向上的解法,跟现在做 vibe coding 的人非常相关。

I think that right now, we lack the ability to let the tastemakers actually have complete control over the software.

我觉得就眼下而言,我们还没有能力让那些真正有品味的人完全掌控软件。

One of the issues also with vibe coding, and letting taste really shine through from people is, you can create stuff, but a lot of it the AI making decisions that are unwieldy and you don't have to control over.

vibe coding 还有一个问题,也挡着人的品味真正显现出来:你能造出东西,但其中很大一部分是 AI 在做决定,那些决定既笨重,你也管不着。

Lenny 00:11:56

One more question along these lines.

顺着这个方向再问一个问题。

You threw out this word taste.

你抛出了品味这个词。

When you say taste, what are you thinking?

你说品味的时候,脑子里想的是什么?

Michael 00:12:01

I'm thinking having the right idea for what should be built.

我想的是:对该造什么东西有正确的想法。

It will become more and more about effortless translation of, here's exactly what you want built, here's how you want everything to work, here's how you want it to look.

以后会越来越变成这么一件事:把“我要造的就是这个、我要它这样运转、我要它长这样”毫不费力地翻译出来。

And then you'll be able to make that on a computer, and it will less be about this kind of translation layer of, you and your team have a picture of what you'd want to build, and then you have to really painstakingly, labor-intensive, lay out that into a format that a computer can then execute and interpret.

然后你就能在电脑上把它做出来,不再需要中间那个转译层——你和团队心里有一幅想做成什么的图景,却得极其费劲、极其耗人力地把它铺陈成计算机能执行、能读懂的格式。

I think less than the UI side of things, maybe taste is a little bit of a misnomer, but just about having the right idea for what should be built.

我觉得它跟 UI 那一面关系没那么大,也许品味这个词用得不太准确,但讲的就是:对该造什么有正确的想法。

Chapter 04

A Solution in Search of a Problem

拿着方案找问题 · Cursor 的起源
12:39 — 18:18 · Copilot beta · scaling laws · 走错的四个月
Lenny 00:12:39

Awesome.

太棒了。

Okay.

好。

I'm going to come back to these topics, but I want to actually zoom us back out to the beginnings of Cursor.

这些话题我等下会再回来聊,但我想先把镜头拉回到 Cursor 的起点。

I have never heard the origin story, I don't think many people know how this whole thing started.

我从没听过这个起源故事,我觉得知道这一切是怎么开始的人也不多。

Basically you guys are building one of the fastest growing products in the history of the world, it's changing the way people build products, it's changing careers, professions, it's changing so much.

你们正在做的基本上是世界历史上增长最快的产品之一,它在改变人们做产品的方式,改变职业、改变行当,改变了太多东西。

How did it all begin?

这一切是怎么开始的?

Any memorable moments along the journey of the early days?

早期这一路上有什么让你难忘的时刻吗?

Michael 00:13:05

Cursor kind of started as a solution search of a problem, and a little bit where it very much came from reflecting on how AI was going to get better over the course of the next 10 years.

Cursor 一开始算是拿着方案找问题,也有一部分是来自我们对接下来 10 年 AI 会怎么变强的思考。

There were kind of two defining moments, one was being really excited by using the first beta version of Copilot, actually.

大概有两个决定性的时刻,一个其实是用上 Copilot 第一个 beta 版本时的那种兴奋。

This was the first time we had used an AI product that was really, really, really useful, and was actually just useful at all, and wasn't just a vaporware kind of demo thing.

那是我们第一次用到一个真的、真的、真的有用的 AI 产品,是真的能用,而不是那种画大饼的 demo。

And in addition to being the first AI product that we'd use that was useful, Copilot was also one of the most useful, if not the most useful dev tool we'd ever adopted, and that got us really excited.

除了是我们用过的第一个真有用的 AI 产品,Copilot 也是我们上手过的最有用的开发工具之一,甚至可以说就是最有用的,这让我们非常兴奋。

Another moment that got us really excited was the series of scaling on papers coming out of OpenAI and other places that showed that even if we had no new ideas, AI was going to get better and better just by pulling on simple levers, like scaling up the models, and also scaling up the data that was going into the models.

另一个让我们非常兴奋的时刻,是 OpenAI 和其他地方陆续发出来的那一系列 scaling laws 论文,它们表明就算我们没有任何新想法,只要拉动几根简单的杠杆——把模型规模做大、把喂给模型的数据量做大——AI 也会越来越强。

And so at the end of 2021, beginning of 2022, this got us excited about how AI products were now possible, this technology was going to mature into the future.

所以在 2021 年底、2022 年初,这让我们很兴奋:AI 产品现在已经做得出来了,而且这项技术往后还会走向成熟。

And it felt like when we looked around, there were lots of people talking about making models, and it felt like people weren't really picking an area of knowledge work and thinking about what it was going to look like as AI got better and better.

当时环顾四周,感觉有很多人在谈做模型,但好像没什么人真的挑一个知识工作的领域,去想随着 AI 越来越强,它会变成什么样。

And that set us on the path to an idea generation exercise, it was like, "How are these areas of knowledge work going to change in the future as this tech gets more mature?

这让我们开始做一轮找点子的推演,问的是:“随着这项技术越来越成熟,这些知识工作领域在未来会怎么变?

What is the end state of the work going to look like?

这份工作的终局会是什么样?

How are the tools that we use to do that work going to change?

我们用来做这份工作的工具会怎么变?

How are the models going to need to get better to support changes in the work?

模型需要怎么变强,才能支撑工作方式的这些变化?

And once scaling and pre-training ran out, how are you going to keep pushing for technological capabilities?"

等 scaling 和预训练走到头了,你要怎么继续推进技术能力?”

And the misstep at the beginning of Cursor is we actually worked on...

Cursor 早期走错的一步是,我们其实去做了……

We sort of did this whole grand exercise, and we decided to work on an area of knowledge work that we thought would be relatively uncompetitive, and sleepy, and boring, and no one would be looking at it, because we thought, "Oh, coding's great, coding's totally going to change with this AI, but people are already doing that."

我们把这套宏大的推演走了一遍,然后决定去做一个我们认为相对没什么竞争、很沉寂、很无聊、没人会去看的知识工作领域,因为我们当时想:“哦,编程很棒,编程肯定会因为 AI 而彻底改变,但已经有人在做了。”

So there was a period of four months to begin with, where we were actually working on a very different idea, which was helping to automate and augment mechanical engineering, and building tools for mechanical engineers.

所以最开始有四个月,我们其实在做一个非常不一样的想法,就是帮助自动化和增强机械工程,给机械工程师做工具。

There were problems from the get-go in that.

这件事从一开始就有问题。

Me and my co-founders, we weren't mechanical engineers.

我和我的联合创始人都不是机械工程师。

We had friends who were mechanical engineers, but we were very much unfamiliar with the field.

我们有做机械工程的朋友,但我们对这个领域非常不熟。

So there was a little bit of a blind man and the elephant problem from the get-go.

所以从一开始就有点盲人摸象。

There were problems around, how would you actually take the models that exist to today and make them useful for mechanical engineering?

还有一些问题是,你要怎么把今天已有的模型拿过来,让它们对机械工程真的有用?

The way we netted out is, you need to actually develop your own models from the get-go.

我们最后得出的结论是,你从一开始就得做自研模型。

And the way we did that was tricky, and there's not a lot of data on the internet of 3D models of different tools and parts, and the steps that I expect to build up to those 3D models, and then getting them from the sources that have them is also a tricky process too.

而要做到这一点的路子很棘手:互联网上关于各种工具和零件 3D 模型的数据并不多,讲清楚做出这些 3D 模型要走哪些步骤的数据也不多,而且从手里有这些数据的来源那儿把它们拿到,同样是件棘手的事。

But eventually what happened was, we came to our senses, we realized we're not super excited about mechanical engineering, it's not the thing we want to dedicate our lives to.

但最后我们清醒过来了,意识到自己对机械工程并没有那么兴奋,那不是我们想投入一生去做的事。

And we looked around, and in the area of programming, it felt like despite a decent amount of time ensuing, not much has changed, and it felt like the people that were working on the space maybe had a disconnect with us, and it felt like they weren't being sufficiently ambitious about where everything was going to go in the future, and how all of software creation was going to blow through these models.

我们环顾四周,觉得在编程这块,过去了不短的时间,却没什么变化;感觉在这个领域做事的人也许跟我们不在一个频道上,感觉他们对未来一切会走向哪里、对整个软件创造会怎样被这些模型冲开,想得不够有野心。

And that's what set us off on the path to building Cursor.

这就让我们走上了做 Cursor 这条路。

Lenny 00:17:04

Okay.

好。

So interesting.

太有意思了。

Okay, so first of all, I love that...

好,首先,我特别喜欢……

This is advice that you often hear of go after a boring industry because no one's going to be there, and there's opportunity.

常听到的建议是去挑一个无聊的行业,因为那里没人,所以有机会。

And sometimes it works, but I love that in this journey, it's like, "No, actually, go after the hottest, most popular space, AI coding, app building."

有时候这招是管用的,但我特别喜欢在你们这段经历里,反而是:“不,其实要去做最火、最热门的领域,AI 编程、做应用。”

And it worked out.

而且它成了。

And the way you phrased it just now is, you didn't see enough ambition potentially, that you thought there was more to be done.

你刚才的说法是,你们大概是没看到足够的野心,觉得还有更多事可以做。

So it feels like that's an interesting lesson.

所以这感觉是个挺有意思的教训。

Even if something looks like, "Okay, it's too late, there's GitHub Copilot's out there."

哪怕某件事看起来像是“好吧,太晚了,GitHub Copilot 已经在那儿了”。

Some other products.

还有其他一些产品。

If you notice that they're just not as ambitious as they could be, or as you are, or you see almost a flaw in their approach, that there's still a big opportunity.

但如果你发现他们其实没做到本可以做到的那么有野心,或者没有你有野心,或者你几乎能看出他们的路子里有个缺陷,那机会依然很大。

Does that resonate?

这个说法你认同吗?

Michael 00:17:46

That totally resonates.

完全认同。

A part of it is, you need there to be leapfrogs that can happen, you need there to be things that you can do.

其中一部分在于,得有弯道超车的余地,得有你能做的事。

And I think the exciting thing about AI is, in a bunch of places, and I think this is very much still true of our space, and can talk about how we think about that and how we deal with that, but I think that just the ceiling is really high.

我觉得 AI 让人兴奋的地方在于,在不少领域——我觉得这一点对我们这个领域现在也仍然成立,我们可以聊聊我们怎么看待、怎么应对这件事——但我觉得,天花板真的很高。

And yes, if you look around, probably even if you take the best tool, any of these fields, there should be a lot more that needs to be done over the next few years.

是的,环顾一圈,大概就算你拿这些领域里最好的工具来看,接下来几年里也还有很多事要做。

Having that space, having that high ceiling, I think is unique amongst areas of software, at least the degree to which it is high with AI.

有这样的空间、有这么高的天花板,我觉得在软件的各个领域里是很独特的,至少 AI 把这个天花板抬到的高度是独特的。

Chapter 05

Why an IDE, Not an Agent

为什么做 IDE,而不是 agent
18:30 — 24:16 · 人在驾驶位 · dogfooding · 我们都在变成工程经理
Lenny 00:18:30

Let's come back to the IDE questions.

咱们回到 IDE 的那些问题上。

So there's a few routes you could have taken, and other companies are doing different routes.

你们当时本可以走好几条路,别的公司走的也是不同的路。

So there's building an IDE for engineers to work within and adding AI magic to it, there's another route of just a full AI agentic dev product, and then there's just a model that is very good at coding, and focusing on building the best possible coding model.

一条是做一个让工程师在里面干活的 IDE,再往里加上 AI 的魔法;另一条是干脆做一个完全 AI agent 化的开发产品;还有一条就是只做一个特别擅长写代码的模型,专心把编程模型做到最好。

What made you decide and see that the IDE path was the best route?

是什么让你判断出 IDE 这条路是最好的选择?

Michael 00:18:54

The folks who were from the get-go working on just a model were working on end-to-end automation programming.

那些一开始就只做模型的人,做的是端到端的自动化编程。

I think they were trying to build something very different from us, which is, we care about giving humans control over all of the decisions in the end tool that they're building.

我觉得他们想造的东西跟我们很不一样——我们在意的是,让人类掌控自己正在造的那个最终工具里的所有决策。

And I think those folks were very much thinking of a future where end-to-end, the whole thing is done by AI, and maybe the AI is making all the decisions too.

我觉得那批人心里想的未来是:端到端,整件事都由 AI 完成,可能所有决策也都由 AI 来做。

And so, one, there was a personal interest component.

所以第一,这里面有个人兴趣的成分。

Two, I think that always, we've tried to be intense realists about where the technology is today, very, very, very excited about how AI is going to mature over the course of many decades.

第二,我觉得我们一直努力做极度清醒的现实主义者,看清技术今天到底走到哪一步,同时对 AI 在未来几十年里会怎么成熟感到非常非常非常兴奋。

But I think that sometimes people...

但我觉得有时候人们……

There's an instinct to see AI do magical things in one area, and then kind of anthropomorphize these models, and think it's better than a smart person here, and so it must be better than a smart person there.

人有一种本能:看到 AI 在某个领域做出神奇的事,就把这些模型拟人化,觉得它在这件事上比一个聪明人还强,那它在那件事上肯定也比聪明人强。

But these things have massive issues, and we...

但这些东西毛病一大堆,而我们……

From the very start, our product development process was really about dogfooding, and using the tool intensely every day.

从最早开始,我们的产品开发流程就是围绕 dogfooding 来的,每天高强度地用自己这个工具。

And we never wanted to ship anything that wasn't useful to us, and we had the benefit of doing that because we were the end users part of our product.

我们从来不想发布任何对我们自己没用的东西,而我们有条件这么做,因为我们自己就是产品的终端用户。

And I think that that instills a realism in you around where the tech is right now, and so that definitely made us think that we need the humans to be in the driver's seat, the AI cannot do everything.

我觉得这会让你对技术当下的水平有一种清醒的现实感,所以这确实让我们认定:人必须坐在驾驶座上,AI 干不了所有事。

We're also interested in giving humans that control too for personal reasons, and so that gets you away from just your model company that also gets you away from just this end-end stuff without the human having control.

出于个人原因,我们也希望把这份掌控权交给人,于是你就不会只做一家模型公司,也不会做成那种没有人掌控的端到端产品。

And then the way you get to an IDE versus maybe a plug-in to an existing coding environment is the belief that programming is going to flow through these models, and the active programming is going to change a lot over the course of the next few years.

至于为什么最后走到做 IDE、而不是给现有编程环境做个插件,是因为我们相信:编程会流经这些模型,而编程这件事本身在未来几年里会发生很大变化。

And that the extensibility that existing coding environments have is so, so, so limited, so if you think that the UIs may change a lot, if you think that the form factor programming is going to change a lot, necessarily need to have control over the entire application.

而现有编程环境的可扩展性实在太有限太有限了,所以如果你认为 UI 可能会大变,如果你认为编程的形态会大变,那你必然得掌控整个应用。

Lenny 00:21:04

I know that you guys today have an IDE, and that's probably the bias you have of this is maybe where the future is heading, but I'm just curious, do you think a big part of the future is also going to be AI engineers that are just sitting in Slack and just doing things for you?

我知道你们今天做的是 IDE,这大概也让你们倾向于认为未来会往这个方向走,不过我挺好奇:你觉得未来会不会有很大一部分是 AI 工程师就待在 Slack 里,直接把事情给你办了?

Is that something that fits into Cursor one day?

这种形态有一天会进到 Cursor 里吗?

Michael 00:21:20

I think you'll want the ability to move between all of these things fairly effortlessly, and sometimes I think you will want to have the thing kind of go spin off on its own for a while, and then I think you'll want the ability to pull in the AI's work, and then work with it very, very, very quickly, and then maybe have it go spin off again.

我觉得你会希望能在这些形态之间相当轻松地来回切换,有时候我觉得你会希望让它自己跑出去干上一阵,然后你会希望能把 AI 干的活拉回来,非常非常非常快地接着往下做,然后可能再让它跑出去。

And so these kind of background versus foreground form factors, I think you want that all to work well in one place.

所以后台和前台这两种形态,我觉得你会希望它们在同一个地方都跑得顺。

And I think the background stuff, there's a segment of programming that it's especially useful for, which is type of programming tasks where it's very easy to specify exactly what you want without much description, and exactly what correctness looks like without much description.

我觉得后台那部分,有一类编程特别适合,就是那种不用多少描述就能说清你到底要什么、也不用多少描述就能说清正确长什么样的任务。

Bug fixes are a great example of that, but it's definitely not all of programming.

修 bug 就是很好的例子,但这肯定不是编程的全部。

So I think that what the IDE is will totally change over time, and our approach to having our own editor was premised on, it's going to have to evolve over time.

所以我觉得 IDE 是什么,会随时间彻底改变,而我们做自己的编辑器,前提就是它必须随时间演化。

And I think that that will both include, you can spin off things from different surface areas like Slack, or your issue tracker, or whatever it is, and I think that will also include the pane of glass that you're staring at is going to change a lot.

我觉得这既包括你可以从不同的界面入口把任务甩出去,比如 Slack、你的 issue tracker 或者别的什么,也包括你眼睛盯着的那块屏幕本身会有很大变化。

We just mostly think of an IDE as the place where you are building software.

我们基本上就把 IDE 理解成你造软件的那个地方。

Lenny 00:22:38

I think something people don't talk enough about with talking about agents and all these AI engineers that are going to be doing all this stuff for you, is basically we're all becoming engineering managers, with a lot of reports that are just not that smart, and you have to do a lot of reviewing, and approving, and specifying.

我觉得在聊 agent、聊这些会替你干活的 AI 工程师时,有件事大家谈得不够:我们其实都在变成工程经理,手底下一堆没那么聪明的下属,你得做大量的审查、批准和交代需求。

I guess thoughts on that, and is there anything you could do to make that easier?

想听听你怎么看,有没有什么办法能让这件事轻松点?

Because that sounds really hard.

因为这听上去真的挺难受的。

Anyone that has had a large team, being like, "Oh my god, all these junior people just checking in with me doing not high quality work over and over."

带过大团队的人都懂那种感觉:“天呐,这么多初级的人一遍遍来找我对齐,活儿还做得不怎么样。”

It's just like, "What a life.

就是那种:“这算什么日子啊。

It's going to suck."

这肯定得难受死。“

Michael 00:23:11

Yeah.

是啊。

Maybe you [inaudible 00:23:12] one-on-ones with [inaudible 00:23:15].

可能你[听不清 00:23:12]一对一,跟[听不清 00:23:15]。

Lenny 00:23:15

So many one-on-ones.

一对一多到爆。

Michael 00:23:17

Yeah.

是啊。

So the customers we've seen have most success with AI I think are still fairly conservative about some of the ways in which they use this stuff.

我们看到的那些用 AI 用得最成功的客户,我觉得在某些用法上还是相当保守的。

And so I do think today, the most successful customers really lean on things like our next edit prediction, where your coding is normal, and making the next into actions you're going to do.

所以我确实觉得,今天最成功的那批客户很依赖我们的下一步编辑预测这类功能——你照常写代码,它来预测你接下来要做的动作。

And then they also really lean on scoping down the stuff that you're going to hand off to the bot, and for a fixed percent of your time spent reviewing code, from an agent, or from an AI overall, you could...

然后他们也很依赖把要交给机器人的活儿范围收窄;而假定你花在审查代码上的时间比例固定——不管是审查 agent 的代码,还是整体上 AI 写的代码——你可以……

There's two patterns.

有两种模式。

One is, you could spend a bunch of time specifying things up front, the AI goes and works, and then you then go and review the AI's work, and then you're done.

一种是,你先花一大堆时间把事情说清楚,AI 去干活,然后你再去审查 AI 的成果,就结束了。

That's the whole task.

整个任务就这么完了。

Or you can really chop things up.

另一种是把事情切得很碎。

So you can specify a little bit, AI writes something, review, specify a little bit, AI writes something, review.

你交代一点点,AI 写一点,审查;再交代一点点,AI 写一点,审查。

Autocompletes all in the way of that spectrum.

自动补全就处在这个光谱的最末端。

And still we see often the most successful people using these tools are chopping things up right now, and keeping things fairly [inaudible 00:24:28].

而我们现在常看到,用这些工具最成功的人是在把事情切碎,并且把每一块都保持得相当[听不清 00:24:28]。

Chapter 06

Ship in Three Months, Then Never Stop

三个月上线,然后再没停过
24:27 — 30:14 · 手写编辑器 · 五周自用 · 指数曲线起初很慢
Lenny 00:24:27

That sounds less terrible.

这听着没那么糟了。

I'm glad there's a solution here.

我很高兴这事有解。

I want to go back to you guys building Cursor for the first time.

我想回到你们最早做 Cursor 的时候。

What was the point where you realized this is ready?

你们是在哪个时刻意识到,它已经准备好了?

What was a moment of, "Okay, I think this is time to put it out there, and see what happens"?

有没有那么一刻,你们心想:“好,我觉得可以把它放出去,看看会怎么样”?

Michael 00:24:41

So when we started building Cursor, we were fairly paranoid about spinning for a while, without releasing to the world.

我们开始做 Cursor 的时候,相当偏执地怕自己闷头空转很久,却一直不对外发布。

And so to begin with too, we actually...

所以一开始,我们其实……

The first version of Cursor was hand-rolled.

Cursor 的第一版完全是我们自己手搭的。

Now we use VS Code as a base, like many browsers use Chromium as a base, and hit foot off of that.

现在我们拿 VS Code 当底座,就像很多浏览器拿 Chromium 当底座,在上面接着往下做。

To begin with, we didn't, and built the prototype of Cursor from scratch, and that involved a lot of work.

一开始不是这样,我们是从零搭出 Cursor 的原型,这里头工作量极大。

We had to build our own...

我们得自己造……

There were a lot of things that go into a modern code editor, including support for many different languages, and navigation support for moving amongst the language, error tracking support for things.

一个现代代码编辑器要塞进去的东西太多了:得支持各种不同的语言,得能在代码之间跳转导航,还得能追踪报错。

There's things like an integrated command line, the ability to use remote servers, the ability to connect to remote servers to view and run code.

还有内置命令行、用远程服务器、连上远程服务器去看代码跑代码这些能力。

And so we kind of just went on this blitz of building things incredibly quickly, building our own editor from scratch, and then also the AI components.

所以我们就是一通闪电式猛冲,飞快地造东西,从零写自己的编辑器,同时还得做 AI 那部分组件。

It was after maybe five weeks that we were living on the editor full-time, and had thrown away our previous editor, and we're using a new one.

大概五周之后,我们就整天泡在这个编辑器里了,把之前那个扔掉,换成了新的。

And then once it got to a point where we found it a bit useful, then we put it in other people's hands, and had this very short beta period.

等它做到我们觉得有点用的程度,就交到别人手上,做了一段非常短的 beta 期。

And then we launched it out to the world within a couple of months from the first line of code, I think it was probably three months.

然后从写下第一行代码算起,几个月内我们就把它推向了全世界,我记得大概是三个月。

And it was definitely a, "Let's just get this out to people and build in public quickly."

当时的心态很明确:“先交到大家手里,快速地公开去做。”

The thing that took us by surprise is we thought we would be building for a couple hundred people for a long time.

让我们意外的是,我们原以为会有很长一段时间只服务两三百个人。

And from the get-go, there was an immediate rush of interest, and a lot of feedback too.

结果从一开头就涌来一波关注,反馈也一大堆。

That was super helpful, we learned from that.

那些反馈特别有用,我们从中学到了不少。

That's actually why we switched to being based off of VS Code instead of just this hand-rolled thing.

其实这也正是我们后来改成基于 VS Code、不再用那个手搭版本的原因。

A lot of that was motivated by the initial user feedback, and then had been iterating in public from there.

很大程度上是最初的用户反馈推着我们这么做的,从那以后我们就一直在公开迭代。

Lenny 00:26:44

I like how you understated the traction that you got.

我喜欢你把自己拿到的增长势头说得这么轻描淡写。

I think you guys went from $0 to 100 million ARR in a year, year and a half or something like that, which is historic.

你们好像用了一年、一年半左右就从 $0 做到了 $100 million ARR,这是历史级的。

What do you think was the key to success of something like this?

你觉得能做成这样,关键是什么?

You just talked about dogfooding being a big part of it.

你刚提到 dogfooding 是其中很重要的一块。

You built it in three months, that's insane.

你们三个月就把它做出来了,这太疯狂了。

Michael 00:27:03

The three-month version wasn't very good, and so I think it's been a sustained paranoia about, there are all of these ways in which this thing could get better.

三个月那版其实不怎么样,所以我觉得更多是一种持续的偏执:它还有这么多地方可以做得更好。

The end goal is really to invent a very new form of programming that involves automating a lot of coding, as we know today.

最终目标其实是发明一种全新的编程形式,把我们今天所知的大量编码工作自动化掉。

And no matter where we are with Cursor, it feels like we're very, very far away from that end goal, there's always a lot to do.

而不管 Cursor 走到哪一步,都觉得离那个终点非常非常远,永远有一堆事要做。

A lot of it hasn't been over rotated on that initial push, but instead is the continued evolution of the tool, and just making the tool consistently better.

所以很多东西并不是在最初那一下猛推上过度用力,而是靠工具的持续演进,靠把工具稳定地一点点做得更好。

Lenny 00:27:43

Was there an inflection point after those three months where things just started to really take off?

那三个月之后,有没有出现一个拐点,让事情真的起飞了?

Michael 00:27:49

To be honest, it felt fairly slow to begin with, and maybe it comes from some impatience on our part.

说实话,一开始感觉挺慢的,可能也有我们自己不够耐心的成分。

I think there's the overall speed of the growth which continues to take us by surprise.

我觉得整体的增长速度一直让我们感到意外。

I think one of the things that has been most surprising too is that the growth has been fairly just consistent on an exponential, of just consistent month-over-month growth, accelerated at times by launches on our part and other things.

我觉得最让人意外的一点是,增长一直相当稳定地走在一条指数曲线上,就是持续的月环比增长,偶尔因为我们的一些发布之类的事情提一下速。

But an exponential to begin with feels fairly slow and the numbers are really low, and so it didn't really feel off to the races to begin with.

但指数曲线一开始感觉是挺慢的,数字也真的很小,所以最初完全没有一飞冲天的感觉。

Lenny 00:28:27

To me this sounds like build it and they will come actually working.

在我听来,这就是“东西做好了,人自然会来”真的成立了。

You guys just built an awesome product that you loved yourselves as engineers, you put it out, people just loved it, told everyone about it.

你们就是做了一个自己作为工程师也喜欢的好产品,放出去,大家爱上了它,还到处告诉别人。

Michael 00:28:39

It being essentially all just us, the team working on the product, and making the product good in lieu of other things one could spend one's time on.

基本上就是靠我们自己——整个团队都扑在产品上,把产品做好,而不是把时间花在其他能花的事情上。

We definitely spent time on tons of other things, for instance, building the team was incredibly important, and doing things like support rotations are very important.

我们当然也在别的一堆事上花了时间,比如搭团队就极其重要,轮班做客服这类事也非常重要。

But some of the normal things that people would maybe reach for in building the company early on, we really let those fires burn for a long time, especially when it came to things like sales and marketing.

但早期建公司时大家通常会去抓的一些常规动作,我们是真的任由那些火烧了很久,尤其是销售和市场这类事。

And so just working on the product, and building a product that you like first, your team likes, and then also then adjusting it for some set of users, that can kind of sound simple, but then, as you know, it's hard to do that well.

所以就是专心做产品,先做一个自己喜欢、团队喜欢的产品,再针对某一批用户去调整,这听起来好像很简单,但你也知道,真要做好很难。

And there are a bunch of different directions one could have run in, a bunch of different product directions.

而且当时可以往很多方向跑,有一堆不同的产品方向。

I think focus, and strategically picking the right things to build, and prioritizing effectively is tricky.

我觉得聚焦、在战略上挑对要做的事、有效地排优先级,都挺难的。

I think another thing that's tricky about this domain is, it's kind of a new form of product building, where it's very interdisciplinary in that we are something in between a normal software company and then a foundation model company, in that we're developing a product for millions of people, and that side of things has to be excellent, but then also one important dimension of product quality is doing more and more on the science, and doing more and more on the model side of things in places where it makes sense.

我觉得这个领域还有一点难在,它算是一种新的产品做法,非常跨学科:我们处在一家普通软件公司和一家基座模型公司之间——我们在为几百万人做产品,这一面必须做到极好;但同时,产品质量的一个重要维度是在科学上做得越来越多,在合适的地方也在模型那一侧做得越来越多。

And so that element of things doing that well too has been tricky.

所以把这一块也做好,同样很难。

The overall thing would note is maybe some of these things sound simple to specify, but doing them well is hard, and they're a lot of different way you can run in.

总体上我想说的是,这些事说起来也许很简单,但做好很难,而且能跑的方向有很多。

Chapter 07

The GPT Wrapper That Trains Its Own Models

被叫作 GPT wrapper 的公司在自己训模型
30:26 — 38:31 · 自动补全 300ms · 代码库检索 · diff 落地
Lenny 00:30:26

I'm excited to have Andrew Luo joining us today.

今天很高兴请到 Andrew Luo。

Andrew is CEO of OneSchema, one of our podcast sponsors.

Andrew 是 OneSchema 的 CEO,这家公司也是我们播客的赞助商之一。

Welcome, Andrew.

欢迎你,Andrew。

Andrew Luo 00:30:30

Thanks for having me, Lenny.

谢谢邀请,Lenny。

Great to be here.

很高兴来到这里。

Lenny 00:30:38

So what is new with OneSchema?

那么,OneSchema 最近有什么新动向?

I know that you work with some of my favorite companies, like Ramp, and [inaudible 00:30:46], and Watershed.

我知道你们在跟一些我很喜欢的公司合作,比如 Ramp、[听不清 00:30:46] 和 Watershed。

I heard you guys launched a new data intake product that automates the hours of manual work that teams spent importing, and mapping, and integrating CSV in Excel files?

我听说你们上线了一款新的数据接入产品,把团队过去要花好几个小时手动做的导入、映射、整合 CSV 和 Excel 文件,全都自动化掉了?

Andrew Luo 00:30:52

Yes.

是的。

So we just launched the 2.0 of OneSchema FileFeeds.

我们刚刚发布了 OneSchema FileFeeds 的 2.0。

We've rebuilt it from the ground up with AI.

我们用 AI 把它从头重建了一遍。

We saw so many customers coming to us with teams of data engineers that struggled with the manual work required to clean messy spreadsheets.

我们看到太多客户找上门,他们手底下有一整支数据工程团队,却被清洗杂乱表格的手工活折磨得够呛。

FileFeeds 2.0 allows non-technical teams to automate the process of transforming CSV and Excel files with just a simple prompt.

FileFeeds 2.0 让非技术团队只用一句简单的提示词,就能自动完成 CSV 和 Excel 文件的转换。

We support all of the trickiest file integrations, SFTP, S3, and even email.

最难搞的那些文件集成方式我们都支持,SFTP、S3,甚至邮件。

Lenny 00:31:16

I can tell you that if my team had to build integrations like this, how nice would it be to take this off our roadmap and instead use something like OneSchema.

我太有体会了,这类集成要是得我的团队自己搭,那能把它从路线图上划掉、改用 OneSchema 这样的东西,该有多省心。

Andrew Luo 00:31:26

Absolutely, Lenny.

确实,Lenny。

We've heard so many horror stories of outages from even just a single bad record, in transactions, employee files, purchase orders, you name it.

我们听过太多惨案了,哪怕只有一条脏数据,也能把系统搞崩——交易记录、员工档案、采购订单,你能想到的都有。

Debugging these issues is often like finding a needle in a haystack.

排查这类问题往往就像大海捞针。

OneSchema stops any bad data from entering your system, and automatically validates your files, generating error reports with the exact issues in all bad files.

OneSchema 会把脏数据全部拦在你的系统之外,自动校验文件,并生成错误报告,精确指出每个问题文件里到底错在哪。

Lenny 00:31:47

I know that importing incorrect data can cause all kinds of pain for your customers and quickly lose their trust.

我知道,导入错误的数据会给你的客户带来各种麻烦,信任也会很快没掉。

Andrew, thank you so much for joining me.

Andrew,非常感谢你来这一趟。

If you want to learn more, head on over to oneschema.co.

想了解更多的话,去 oneschema.co 看看。

that's oneschema.co.

也就是 oneschema.co。

What is the most counterintuitive thing you've learned so far about building Cursor, building AI products?

到目前为止,做 Cursor、做 AI 产品,你学到的最反直觉的一件事是什么?

Michael 00:32:07

I think one thing that's been counterintuitive for us, [inaudible 00:32:14] added a little bit before, but is, we definitely didn't expect to be doing any of our own model development when we started.

有一件事我觉得挺反直觉的,前面 [听不清 00:32:14] 也稍微提过一点:我们一开始完全没想过自己会做模型研发。

As mentioned, when we got into this, there were companies that were immediately from the get-go going and just focusing on training model from scratch.

前面说过,我们入场的时候,已经有公司从第一天起就一头扎进去、专做从零训练模型。

And we had done the calculation for what it to train before, and just knew that that was not [inaudible 00:32:36] going to be able to do.

我们之前算过训练一个模型要花多少钱,很清楚那不是我们 [听不清 00:32:36] 做得了的事。

And also felt a bit like focusing one's attention in the wrong area, because there were lots of amazing models out there, and why develop all this work to replicate what other players had done.

而且也觉得那有点把力气使错了地方——外面已经有很多很棒的模型,何必费这么大劲去重复别人做过的事。

Especially on the pre-training side of things, taking a neural network that knows nothing, and then teaching it the whole internet.

尤其是预训练那一块:拿一个什么都不懂的神经网络,把整个互联网教给它。

And so we thought we weren't going to be doing that at all, and it seems clear to us from the start that the existing models, there were lots of things that they could be doing for us that they weren't doing, because there wasn't the right tool built for them.

所以我们当时以为自己根本不会碰这件事,而且从一开始就觉得很清楚:现有的模型本可以为我们做很多事,却没有做,因为没人给它们造出对的工具。

In fact though, we do a ton of model development, and internally, it's a big focus for us on the hiring front, and have assembled a fantastic team there.

但实际上,我们做了大量模型研发;在内部,这是招聘上的一个重点方向,我们也已经组建起一支非常出色的团队。

And it's also been a big win on the product quality side of things for us.

它在产品质量上也给我们带来了很大的收获。

And at this point, every magic moment in Cursor involves a custom model in some way.

到今天,Cursor 里的每一个魔法时刻,背后都多多少少有一个自研模型。

So that was definitely counterintuitive, and surprising, and it's been a gradual thing, where there was an initial use case for training our own model, where it really didn't make sense to use any of the biggest foundation models.

所以这件事确实反直觉,也很出人意料,而且它是一步步发生的:最初只有一个场景需要训练自研模型,在那个场景里,用哪个最大的基座模型都真的说不通。

That was incredibly successful, moved to another use case that worked really well, and had been going from there.

那次极其成功,于是我们换到下一个场景,效果也非常好,后面就这么一路走下来了。

And one of the helpful things in doing this sort of model development is picking your spots carefully, not trying to reinvent the wheel, not trying to focus on places, and maybe where the best foundation models are excellent, but instead kind of focusing on their weaknesses, and how you can complement them.

做这类模型研发,有一点很有用:切入点要挑得仔细,不要重新发明轮子,不要往最好的基座模型本来就很强的地方使劲,而是盯住它们的弱项,想清楚自己能怎么跟它们互补。

Lenny 00:34:01

I think this is going to be surprising to a lot of people hearing that you have your own models.

我觉得很多人听到你们有自己的模型会很惊讶。

When people talk about Cursor and all the folks in the space, they would kind of call them GPT wrappers, they're just sitting on top of ChatGPT or Sonnet.

人们聊起 Cursor 和这个赛道里的公司,往往会叫他们 GPT wrapper,说他们不过是在 ChatGPT 或 Sonnet 外面套了一层。

What you're saying is that you have your own models, talk about just the stack behind the scenes.

而你说你们有自己的模型,能不能讲讲幕后这套技术栈?

Michael 00:34:17

Yeah, of course.

当然可以。

So we definitely use the biggest foundation models a bunch of different ways, they're really important components of bringing the Cursor experience to people.

那些最大的基座模型,我们确实在很多地方都在用,它们是把 Cursor 体验交到用户手上的重要一环。

The places where we use our own models, so sometimes it's to survey a use case that a foundation model wouldn't be able to serve at all for cost or speed reasons.

用自研模型的地方,有时是为了撑起某个场景——基座模型出于成本或速度的原因根本撑不起来。

And so one example of that is the autocomplete side of things.

自动补全就是一个例子。

And so this can be a little bit tricky for people who don't code to understand, but code is this weird form of work, where sometimes, really, the next 5, 10, 20, 30 minutes of your work is entirely predictable from looking over your shoulder.

这一点不写代码的人可能有点难体会:代码是一种很奇怪的工作,有时候你接下来 5 分钟、10 分钟、20 分钟、30 分钟要做什么,别人从你背后看一眼就完全能猜出来。

And I would contrast this with writing.

可以拿写作来对比一下。

So writing, lots of people are familiar with Gmail's autocomplete, and the different forms of autocomplete that show up when you're trying to post text messages, or emails, or things like that.

写作这边,很多人都熟悉 Gmail 的自动补全,还有你发短信、写邮件时冒出来的各种自动补全。

They can only be so helpful, because often, it's just really not clear what you're going to be writing just by looking at what you've written before.

它们能帮上的忙就那么多,因为很多时候,光看你前面写了什么,真的猜不出你接下来要写什么。

But in code sometimes, when you edit a part of a code base, you're going to need to change things, and in other parts of code base, and it's entirely clear how you're going to need to change things.

但在代码里有时候不一样:你改了代码库的一部分,代码库的其他地方也得跟着改,而且该怎么改一清二楚。

So one core part of Cursor is this really suit to autocomplete experience, where you predict the next set of that you're going to be doing across multiple files, across multiple places within a file.

所以 Cursor 的一个核心,就是这套打磨得很到位的自动补全体验:预测你接下来要做的一连串动作,跨多个文件,也跨同一个文件里的多个位置。

And making models good at that use case, one, there's a speed component of, those models need to be really fast, they need to give you a completion within 300 milliseconds.

要让模型在这个场景上做得好,第一是速度——这些模型必须非常快,得在 300 毫秒内给出补全。

There's also this cost component of, we're running tons, and tons, and tons of molecules, every keystroke, we need to be changing our prediction for what you're going to do next.

还有成本——我们要跑的量大得惊人,你每敲一个键,我们都得重新预测你下一步要做什么。

And then it's also this really specialty use case of, you need models that are really good, not at completing the next token, just a generic tech sequence, but are really good at autocompleting a series of diffs, looking at what's changed within a code base, and then creating the next set of things that are going to change, both deleted and added and all of that, and we found a ton of success in training models specifically for that task.

再有,这是个非常专门的场景:你要的模型不是擅长补下一个 token、补一段通用文本序列,而是擅长补一连串 diff——看代码库里改了什么,再生成接下来要改的东西,删掉的、加上的,全都要,而我们发现,专门为这个任务训练模型效果好得出奇。

So that's a place where no foundation models are involved, it's kind of our own thing.

所以这块完全不涉及基座模型,算是我们自己的东西。

We don't have a lot of labeling or branding about this in the app, power is a very core part of Cursor.

我们在应用里没怎么给它打标签、做宣传,但它是 Cursor 非常核心的一部分。

And then another set of places where a user own models are to help things like Sonnet, or Gemini, or GPT, and those sit both on the inputs of those big models, and on the output.

另一类用到自研模型的地方,是去辅助 Sonnet、Gemini、GPT 这些模型,它们既在这些大模型的输入端,也在输出端。

On the input side of things, those models are searching throughout a code base, try to figure out the parts of a code base to show to one of these big models.

输入端这边,这些模型在整个代码库里做检索,想办法找出该把代码库的哪些部分喂给其中一个大模型。

You can kind of think about this as a mini Google search that's specifically built for finding the relevant parts of the code base to show one of these big models.

你可以把它想成一个迷你版的 Google 搜索,专门用来挑出代码库里相关的部分,拿给这些大模型看。

And then on the output side of things, we take the sketches of the changes that these models are suggesting, you make with that code base.

输出端这边,我们拿到这些模型给出的改动草稿,再把它落到代码库上。

And then we have models that then fill in the details of, the high level thinking is done by the smartest models, they spend a few tokens on doing that, and then these smaller specialty incredibly fast models, coupled with some inference tricks, then take those high level changes and turn them actually into full code diffs.

然后由另一批模型来填细节:高层次的思考交给最聪明的模型,它们在这上面花掉一些 token,接着这些更小、更专、快得惊人的模型,配合一些推理上的技巧,把那些高层次的改动真正变成完整的代码 diff。

And so it's been super helpful for pushing on quality in places where you need a specialty task, and it's been super helpful for pushing on speed, which is such an important dimension of product quality for us too.

所以在那些需要专门任务的地方,它对提升质量帮助很大;在提升速度上帮助也很大,而速度同样是我们眼里产品质量极其重要的一个维度。

Lenny 00:37:34

This is so interesting.

这太有意思了。

I just had Kevin Weil on the podcast, CPO of OpenAI, and he calls this the ensemble of models, that's the same way- Yes.

我前不久刚请 OpenAI 的 CPO Kevin Weil 上过播客,他把这叫作模型的合奏,做法是一样的——是的。

...

……

they work, to use the best feature of each one, and to your point, the cost advantages of using cheaper models.

……他们也是这么干的,把每个模型最擅长的那一面用上;而且照你说的,用更便宜的模型还有成本上的优势。

These other models, are they based on Llama and things like that, just open source models that you guys plug into and build on?

这些别的模型,是基于 Llama 这类东西吗?就是你们接进来、在上面继续做的开源模型?

Michael 00:37:56

Yeah.

是的。

So again, we try to be very pragmatic about the place that we're going to do this work, and we don't want to reinvent the wheel.

还是那句话,在哪儿做这件事,我们尽量务实,不想重新发明轮子。

And so starting from the very best pre-trained models that exist out there, often open source ones, sometimes in collaboration with these big model providers that don't share their weights out into the world, because the thing we care about last is the ability to read line by line, the matrix of weights that then go to give you a certain output.

所以我们从市面上最好的预训练模型出发,通常是开源的那些,有时也跟不公开权重的大模型厂商合作,因为我们最不在乎的就是能不能逐行读到那个最终决定输出的权重矩阵。

We just care about the ability to train these things, to post-train them.

我们在乎的只是能不能训练它们、能不能对它们做后训练。

And so by and large, yes, open source models, sometimes working with the closed source providers too to tune things.

所以总体来说,是的,主要用开源模型,有时也和闭源厂商一起把模型调好。

Chapter 08

Moats That Don't Hold

守不住的护城河
38:38 — 46:05 · 消费级壁垒 · 市场比想象大 · Microsoft 为什么掉队
Lenny 00:38:38

This leads to a discussion that a lot of AI founders always think about and investors, which is moats, and defensibility in AI.

这就引出了一个很多 AI 创业者和投资人一直在琢磨的话题:护城河,以及 AI 领域的壁垒。

So it feels like one is custom models, is a moat in the space.

感觉自研模型算是这个领域里的一条护城河。

How do you just think about long-term defensibility in the space, knowing there's other folks, as you said, launching constantly trying to eat your lunch?

你怎么看这个领域的长期壁垒?毕竟像你说的,还有别人在不断推出产品,想抢你的饭碗。

Michael 00:38:58

I think that there are ways to build in inertia and traditional moats, but I think by and large, we're in a space where it is incumbent on us to continue to try to build the best thing, and everyone in this industry.

我认为确实有办法造出惯性、造出传统意义上的护城河,但我觉得总体上,我们所处的这个领域,担子还是在自己身上,得持续努力做出最好的东西,这行里每家公司都一样。

And I truly just think that the ceiling is so high that no matter what entrenchment you build, you can be leapfrogged.

我是真心觉得天花板高到,不管你把根基扎得多深,都可能被人弯道超车。

And I think that this resembles markets that are maybe a little bit different from normal software markets, normal enterprise markets of the past.

我觉得这跟以往那些常规的软件市场、常规的企业级市场也许有点不一样。

I think one that comes to mind is the market for search engines at the end of 1999, or at the end of the '90s and beginning of the 2000s.

我想到的一个例子是 1999 年底的搜索引擎市场,或者说 90 年代末到 2000 年代初那段时间。

I think another market that comes to mind that resembles this market in many ways, it's actually just the development of the peripheral computer and many computers in the '70s, '80s, '90s.

我想到的另一个在很多方面跟这个市场很像的,其实就是 70、80、90 年代外围计算机和各类计算机的发展。

And I think that, yes, in each of those markets, the ceiling was incredibly high, it was possible to swish.

我觉得,在这几个市场里,每一个的天花板都高得惊人,是有可能一举拿下的。

You could keep getting value for the incremental hour of a smart person's time, the incremental R&D dollar for a really long time, you wouldn't run out of useful things to build.

多投入一个聪明人的一小时,多投入一美元研发,在很长一段时间里都还能换来价值,你不会没有值得做的东西可做。

And then in search in particular, not on the computer case, adding distribution was helpful for making the product better too, in that you could tune the algorithms, you could tune the learning based off of the data and the feedback you're getting from users.

而在搜索这个领域尤其如此——计算机那个案例不是这样——把分发做起来对把产品做得更好也有帮助,因为你可以调算法,可以根据用户给你的数据和反馈去调学习的效果。

And I think that all of those dynamics exist in our market too.

我觉得这些规律在我们的市场里同样存在。

And so I think maybe the sad truth for people like us, but then the amazing truth for the world is, I think that there are many leapfrogs that exist, there's more useful things to build.

所以我觉得,这对我们这类人也许是个悲哀的事实,但对整个世界是个了不起的事实:我认为还有很多次弯道超车的机会,还有更多值得做的东西。

We're a long way away from where we can compete in 5, 10 years, and it's incumbent in our state to keep that going.

我们离能在 5 年、10 年里同台竞争的那个阶段还差得远,而把这件事持续做下去,是我们自己的担子。

Lenny 00:40:50

So what I'm hearing, this sounds like a lot more like a consumer sort of moat, where it's just, be the best thing consistently so that people stick with you versus creating lock-in and things like that, where they're just...

所以我听下来,这更像是一种消费级产品的护城河:你得始终做出最好的东西,让人愿意留下来,而不是靠制造锁定之类的手段,那种就是……

Like Salesforce, where it's just contracts with the entire company, and you have to use this product.

比如 Salesforce,签的是整个公司的合同,你就不得不用这个产品。

Michael 00:41:06

Yeah.

对。

I think the important thing to note is, if you're in a space where you run out of useful things to do very quickly, then that's not a great situation to be in.

我觉得有一点很重要:如果你所在的领域很快就没什么有用的事情可做了,那处境就不太妙。

But if you're in a place where big investments, and having more and more great people working on the right path can keep giving you value, then you can get these economies of scale of R&D, and you can deeply work on the technology in the right direction, and get to a place where that is defensible.

但如果你所处的位置是,大笔投入、让越来越多优秀的人在正确的路径上做事,能持续带来价值,那你就能拿到研发上的规模效应,就能沿着正确的方向把技术做深,做到有壁垒的那一步。

But yes, it is...

但没错,这确实……

I think there's a consumer-like tendency to it, and I really think it's just about building the best thing possible.

我觉得它带着一点消费级产品的味道,而我真心觉得,关键就是把东西做到最好。

Lenny 00:41:43

Do you think in the future there's one winner in this space, or do you think it's going to be a world of a number of products like this?

你觉得这个领域未来会只有一个赢家,还是会有一批这样的产品并存?

Michael 00:41:50

I think the market is just so very big.

我觉得这个市场实在太大了。

You asked about the IDE thing early on, and one thing that I think a trip of some people that were thinking about the space is, they looked at the IDE market of the past 10 years, and they said, "Who's making money off of the editors?"

你前面问到 IDE 那件事,我觉得有些琢磨这个领域的人被一件事绊住了:他们看过去十年的 IDE 市场,然后说:“谁靠编辑器赚到钱了?”

It's this super fragmented space where everyone kind of has their own thing, with their own figuration, and there's one company that actually makes money off making great editors, but that company is only so big.

这是个极度碎片化的领域,每个人都有自己那一套、自己的配置,确实有一家公司靠做出色的编辑器赚到了钱,但那家公司也就那么大。

And then the conclusion was, it was going to look like that in the future.

于是结论就是,未来也会是这个样子。

And I think that the thing that people missed was that there was only so much you could do building an editor in the 2010s for coders, and the company that made money off of editors was doing things like making it easy to navigate around a code base, and doing some error checking and type checking for things, and having good debugging tools.

而我觉得大家忽略的是,在 2010 年代给写代码的人做编辑器,能做的事情就那么多,那家靠编辑器赚钱的公司,做的是让你在代码库里方便地跳转、做一些错误检查和类型检查、提供好用的调试工具这类事。

Which were all very useful, but I think that the set of things you can build for programmers, I think the set of things you can build for knowledge workers in many different areas just goes very far and very deep.

这些都非常有用,但我觉得你能为程序员做的事情、能为各个不同领域的知识工作者做的事情,可以延伸得非常远、非常深。

The problem in front of all of us is the automation of a lot of busy work and knowledge work, and really changing all the areas of knowledge work in front of us to be much higher level and more productive.

摆在我们所有人面前的问题,是把大量繁琐工作和知识工作自动化,真正把眼前这些知识工作的所有领域,都改造成更高层、生产力更高的样子。

So that was a long-winded way to say, I think the market's really, really big that we're in.

所以绕了一大圈,我想说的是,我觉得我们所处的这个市场真的非常非常大。

I think it's much bigger than people have realized than the other building tools for developers in the past.

我觉得它比大家意识到的要大得多,也比过去那些给开发者做工具的市场大得多。

And I think that there will be a bunch of different solutions.

我觉得会出现一批不同的解决方案。

I think that there will be one company, to be determined if it's going to be us, but I do think that there will be one company that builds the general tool that builds almost all the world's software, and that will be a very, very generationally big business.

我认为会有一家公司——是不是我们还不好说——但我确实觉得会有一家公司,做出那个通用工具,构建世界上几乎所有的软件,那会是一门非常非常大的、划时代的生意。

But I think that there will be kind of niches you can occupy in doing something for a particular segment of the market, or for a very particular part of the software development life cycle.

但我觉得也会有一些细分的生态位可以占,针对某个特定的市场区隔,或者软件开发生命周期里某个非常具体的环节去做东西。

But the general programming shifts from just writing formal programming languages to something way higher level.

但通用的编程会从只写形式化的编程语言,转向层次高得多的东西。

This is the application you purchase and use to do that.

而这就是你要买来、用来做这件事的那个应用。

I think that there will be generally one winner there, and it will be a very big business.

我觉得那里总体上会有一个赢家,而且会是一门很大的生意。

Lenny 00:44:04

Juicy.

有料。

Along those lines, it's interesting that Microsoft was actually at the center of this first, with an amazing product, amazing distribution, Copilot you said was the thing that got you over the hump of, "Wow, there could be something really big here."

顺着这个话说,有意思的是,Microsoft 其实一开始就站在这件事的中心,产品出色、分发出色,你说过 Copilot 就是让你越过那道坎、意识到“哇,这里可能有件非常大的事”的东西。

And it doesn't feel like they're winning, it feels like they're falling behind.

但现在感觉不像是他们在赢,反倒像是在掉队。

What do you think happened there?

你觉得那里发生了什么?

Michael 00:44:28

I think that there are specific historical reasons why Copilot might not have lived up...

我觉得有一些具体的历史原因,可以解释 Copilot 为什么可能没达到……

So far have lived up to the expectations that some people have for it, and then I think that there are structural reasons.

至少到目前为止没达到一些人对它的期待,然后我觉得也有结构性的原因。

I think the structural reason is...

我觉得结构性的原因是……

And to be clear, Microsoft, in the Copilot case, obviously a big inspiration for our work, and in general, I think they do lots of awesome things, and we're users of many Microsoft products, but I think that this is a market that's not super friendly to incumbents, in that a market that's friendly to incumbents might be one where there's only so much to do, it kind of gets commoditized fairly quickly, and you can bundle that in with other products, and where the ROI between different products is quite small.

先说清楚,Microsoft 在 Copilot 这件事上显然给了我们的工作很大启发,总体上我觉得他们做了很多很棒的事,我们自己也在用不少 Microsoft 的产品,但我觉得这个市场对在位者不太友好——对在位者友好的市场,可能是那种能做的事情就那么多、很快就被商品化、你可以把它捆进别的产品里、不同产品之间投资回报差距很小的市场。

And in that case, perhaps it doesn't make sense to buy the innovative solution, it makes sense to just kind of buy the thing that's bundled in with other stuff.

那样的话,买创新的方案也许并不划算,划算的是直接买那个跟别的东西捆在一起的。

Another market that might be particularly helpful for incumbents is one where there's...

另一种可能对在位者特别有利的市场是,那种……

From the get-go, you have your stuff in one place, and it's really, really excruciatingly hard to switch, and for better or for worse.

从一开始你的东西就都在一个地方,想换掉难上加难,不管这是好事还是坏事。

I think in our case, you can try out different tools, and you can decide which product you think is better.

我觉得在我们这个市场里,你可以去试不同的工具,自己判断哪个产品更好。

And so that's not super friendly to incumbents, and that's more friendly to whoever you think is going to have the most innovative product.

所以这对在位者不太友好,而对那个你认为会做出最创新产品的人更友好。

And then the specific historical reasons, as I understand them are the group of people that worked on the first version of Copilot have, by and large, gone on to do other things at other places.

至于具体的历史原因,按我的理解,做第一版 Copilot 的那批人,大体上都已经去别的地方做别的事了。

I think it's been a little hard to coordinate among all the different departments and parties that might be involved in making something like this.

我觉得在所有可能牵涉到这类事的部门和相关方之间做协调,一直有点难。

Chapter 09

How to Actually Use Cursor

怎么真正用好 Cursor
46:10 — 51:16 · 把任务切碎 · 刻意摔一跤 · 新手老手各自的反模式
Lenny 00:46:10

I want to come back to Cursor.

我想再把话题拉回 Cursor。

A question I like to ask everyone that's building a tool like this, if you could sit next to every new user that uses Cursor for the first time, just whisper a couple tips in their ear to be more successful, most successful with Cursor, what would be 1 or 2 tips?

对每个做这类工具的人,我都爱问一个问题:如果你能坐在每一位第一次用 Cursor 的新用户旁边,在他耳边悄悄说上几条建议,让他把 Cursor 用得更好、用到最好,你会给哪一两条?

Michael 00:46:25

I think right now, and we'd want to fix this at a product level, a lot of being successful with Cursor is kind of having a taste for what the models can do, both what complexity of a task they can handle, and how much you need to specify things to that model, but having a taste for the quality of the model, and where its gaps exist, and what it can do and what it can't.

我觉得眼下——这一点我们也想在产品层面解决掉——用好 Cursor 很大一部分靠的是对模型能做什么有品味,既包括它能扛多复杂的任务,也包括你得把事情向它交代到多细,总之是对模型的质量、它的短板在哪、它能做什么不能做什么有品味。

And right now, we don't do a good job in the product of educating people around that, and maybe giving people some swim lanes, giving people some guidelines.

而现在,我们在产品里没把这件事教好,也没给用户划出几条清楚的边界、给出一些指引。

But to develop that taste, would give two tips.

但要培养出这种品味,我会给两条建议。

So one is, as mentioned before, would bias less toward, trying in one go to tell the model, "Hey, here's exactly what I want you to do."

第一条,前面也提到过,别太想着一次性把话说完,告诉模型:“喏,我要你做的就是这些。”

Then seeing the output, and then either being disappointed or accepting the entire thing for an entire big task.

然后看它的输出,然后要么失望,要么就把一整个大任务的产出整个照单全收。

Instead what I would do is I would chop things up into bits, and you can spend basically the same amount of time specifying things overall, but chopped up more.

我的做法是把事情切成小块,总的时间基本一样,只是切得更碎。

So you're specifying a little bit, you're getting a little bit of work, you're specifying a little bit, getting a little bit of work, and not doing as much the, "Let's write a giant thing telling the model exactly what to do."

于是你交代一点,拿到一点成果,再交代一点,再拿到一点成果,而不是老想着“写一大段,把模型该做的全说清楚”。

I think that will be a little bit of a recipe for disaster right now.

我觉得现在这么干,基本是自找麻烦。

And so biasing toward chopping things up.

所以要倾向于把事情切碎。

At the same time, and it might make sense to do this on a side project and not on your professional work, I would encourage people to, especially developers who are used to existing workflows for building software, I would encourage people to explicitly try to fall on their face, and try to discover the limits of what these models can do by being ambitious in a safe environment, like perhaps a side project, and trying to kind of go around town, use AI to the fullest.

同时——这件事也许放在业余项目上做更合适,别拿正经工作试——我想鼓励大家,尤其是那些习惯了现有开发流程的开发者,我鼓励大家刻意去让自己摔一跤,在安全的环境里放胆一点,比如找个业余项目,去发现这些模型的边界在哪,撒开了用,把 AI 用到极限。

Because a lot of the time, we run into people who haven't given the AI yet a fair shake, and are underestimating its abilities.

因为我们常碰到一些人,他们还没真给过 AI 一次像样的机会,低估了它的能力。

So generally biasing towards chopping things up and making things smaller, but to discover the limits of what you can do there, explicitly just try to go for broke in a safe environment, and get a taste for...

所以总体上要倾向于把事情切碎、切小,但为了摸清自己能走到哪一步,就在安全的环境里刻意豁出去试一把,去体会一下……

You might be surprised in some of the places where the model doesn't break.

有些地方模型居然扛住了,这可能会让你吃惊。

Lenny 00:48:40

What I'm essentially hearing is build a gut feeling of what the model can do, and how far it can take an idea versus just kind of guiding it along.

我听下来,核心就是养出一种直觉:模型能做什么,它能把一个想法推进到多远,而不是一路牵着它走。

And I bet that you need to rebuild this gut every time there's a new model launch, when it's on...

而且我打赌,每次有新模型发布,你都得把这种直觉重建一遍,等到……

I don't know, 4.0 comes out, you have to do this again.

我也说不好,4.0 出来的时候,你又得重来一遍。

Is that generally right?

大体是这样吗?

Michael 00:48:59

Yes.

是的。

For the past few years, it hasn't been as big as I think the first experience people have had with some of these big models.

过去这几年,每次要重建的幅度,我觉得都没有人们第一次接触这些大模型时那么大。

This is also a problem we would hope to solve much better just for users, and take the burden off of them.

这也是我们希望能替用户解决得好得多的问题,把这个负担从他们身上拿掉。

But each of these things have slightly different quirks and different personalities.

但这些模型各有各的小怪癖,性格也不一样。

Lenny 00:49:22

Along these lines, something that people are always debating tools like Cursor, are they more helpful to junior engineers, or are they more helpful to senior engineers?

顺着这个话题,大家一直在争论 Cursor 这类工具:它们是对初级工程师帮助更大,还是对资深工程师帮助更大?

Do they make senior engineers 10X better?

它们能让资深工程师强 10 倍吗?

Do they make junior engineers more like senior engineers?

它们能让初级工程师变得更像资深工程师吗?

Who do you think benefits most today from Cursor?

你觉得今天谁从 Cursor 里获益最多?

Michael 00:49:37

I think across the board.

我觉得是普遍受益。

Both of these cohorts benefit in big ways.

这两个群体都获益很大。

It's a little hard to say on the relative ranking.

相对排序有点不好说。

I will say, they fall into different anti-patterns.

我可以说的是,他们掉进的是不同的反模式。

The junior engineers we see going a little too wholesale, relying on AI for everything, and we're not yet in a place where you can kind of do that end-to-end on a professional tool, working with tens, hundreds of other people within a long-lived code base.

初级工程师,我们看到的是有点过于全盘依赖 AI,什么都指望它,而现在还没到那一步——在一个专业工具里、在一个长期演进的代码库里、跟几十上百人一起协作,还做不到端到端交给它。

And then the senior engineers...

至于资深工程师……

For many folks, it's not true for all, and we actually often...

很多人是这样,但不是所有人,而且我们其实经常……

One of the ways these tools are adopted is, there's developer experience teams within companies, often those are staffed by incredibly senior people, because often, those are people who are building tools to make the rest of the engineers within an organization more productive.

这类工具被采纳的一条路径是,公司里有开发者体验团队,这些团队往往由极其资深的人组成,因为他们通常就是那些做工具、让组织里其他工程师更高效的人。

And we've seen some very, very boundary pushing kind of...

我们见过一些非常非常突破边界的……

We've seen people who are on the front lines of really trying to adopt the technology as much as possible there.

我们见过一些人站在最前线,拼命想把这项技术用到最足。

But by and large, I would say on average, as a group, the senior engineers underrate what AI can do for them, and stick to their existing workflows.

但大体上我会说,平均而言,作为一个群体,资深工程师低估了 AI 能为他们做什么,守着自己现有的工作流不放。

And so the relative ranking is a little hard, I think they fall into different anti-patterns, but they both, by and large, yet get big benefits with these tools.

所以相对排序有点难讲,我觉得他们掉进的是不同的反模式,但大体上,两边用这些工具都还是获益很大。

Lenny 00:50:58

That makes absolute sense.

这完全说得通。

I love that it's two ends of the spectrum, expect too much, don't expect enough.

我很喜欢这一点:是光谱的两端,一端期待过高,一端期待不够。

It's like the three bears allegory.

就像三只小熊那个故事(过犹不及)。

Michael 00:51:08

Yeah.

对。

Lenny 00:51:08

Yeah.

对。

Okay.

好的。

Michael 00:51:16

Yeah.

是啊。

Maybe the sort of senior, but not staff, right in the middle.

也许是那种资深、但还没到 staff 级别的,正好在中间。

Chapter 10

Sixty People and a Two-Day Work Test

60 个人,和一场两天的实操测试
51:18 — 58:56 · 招得太慢 · 画像跑偏 · 想不想跟这个人待在一起
Lenny 00:51:18

Interesting.

有意思。

Okay.

好的。

Just a couple more questions.

再问几个问题。

What's something that you wish you knew before you got into this role?

有什么是你希望在接手这个角色之前就知道的?

If you could go back to Michael at the beginning of Cursor, which was not that long ago, and you could give him some advice, what's something that you would tell him?

如果你能回到 Cursor 刚起步的时候——其实也没过去多久——给当时的 Michael 提点建议,你会跟他说什么?

Michael 00:51:34

The tough thing with this is, it feels like so much of the hard-won knowledge is tacit, and a bit hard to communicate verbally.

这个问题难就难在,那些辛苦换来的经验感觉大多是隐性知识,用嘴说不太好传达。

And the sad fact of life feels like for some areas of human endeavor, you kind of do need to fall on your face to...

而且人生有个挺无奈的事实:在人做的某些事情上,你好像真得自己摔一跤才……

Either need to fall on your face to learn the correct thing, or you need to be around someone who's a great example of excellence in the thing.

要么自己摔一跤才能学到对的东西,要么身边得有一个在这件事上做到极致的榜样。

And one area where we have felt this is hiring.

我们感受特别深的一个领域就是招聘。

I think that we actually were...

我觉得我们其实是……

So we tried to be incredibly patient on the hiring front.

我们在招聘上尽量做到极有耐心。

It was really important to us that, both for personal reasons and also for, I think actually for the company's strategy, having a world-class group of engineers and researchers to work on Cursor with us was going to be incredibly important.

这对我们非常重要,既有个人层面的原因,我觉得也是出于公司战略——能有一群世界级的工程师和研究员跟我们一起做 Cursor,会是极其关键的一件事。

Also, getting people who fit...

另外就是找到合得来的人……

A certain mix of intellectual curiosity and experimentation, because there can be so many new things we need to build.

要有智识上的好奇心,又有爱做实验的劲头,因为我们可能要造的新东西实在太多了。

And then also an intellectual honesty, and maybe micro-pessimism, bluntness, because if all the noise, and...

同时还要有智识上的诚实,也许还得有点微悲观主义、说话直接,因为面对这么多噪音,还有……

Especially as the company's grown, and the business has grown, keeping a level head I think is incredibly important too.

尤其是公司在长大、业务在长大,我觉得能保持头脑清醒也极其重要。

But getting the right group of people into the company was the thing that maybe more than anything else, apart from building the product, we really, really fussed over.

但把对的一群人招进公司这件事,除了做产品之外,大概是我们最最下功夫的一件事。

We actually waited a long time to grow the team because of that.

正因为如此,我们其实等了很久才开始扩张团队。

And I think that many people you hear hired too fast, think we actually hired too slow to begin with.

你会听到很多人说自己招得太快,我觉得我们一开始其实招得太慢了。

I think it could have been remedied, I think we could have been better at it.

我觉得这本来是可以补救的,我们本可以做得更好。

And the method of recruiting that we ended up eventually falling into and working really well for us, which isn't that novel, of going after people that we think are really world-class, and recruiting them over the course of, in some cases, many years, ended up working for us in the end, but I don't think we were very good at it to begin with.

我们最后摸索出来、并且对我们非常管用的招人方法,其实并不新鲜:盯住我们认为真正世界级的人,然后花很长时间去打动他们,有些人甚至追了好几年,这个方法最终对我们奏效了,但一开始我觉得我们并不擅长。

And so I think that there were hard-won lessons around both who was the right profile, who actually made sense in that team, what did greatness look like, and then how to talk with someone about the opportunity, and get them excited if they really weren't looking for anything.

所以我觉得这里有一些辛苦换来的教训:什么样的画像才是对的、谁真的适合这个团队、卓越到底长什么样,以及怎么跟一个人聊这个机会、在他其实没打算换工作的时候把他的兴趣勾起来。

There were lots of learnings there about how to do that well, and that took us a bit of time.

关于怎么把这件事做好,我们学到了很多,而这花了我们一些时间。

Lenny 00:54:07

What are some of those learnings for folks that are hiring right now?

这些经验具体是哪些?给现在正在招人的人说说。

What's something you missed or learned?

有什么是你当初没看到、后来才学到的?

Michael 00:54:15

I think to start with, maybe we actually biased a little bit too much towards looking for people who fit the archetype of well-known school, very young, had done the things that were high credential in those well-known school environments.

我觉得首先,我们当初可能有点过于偏向那种符合标准画像的人:名校出身、非常年轻、在名校那套环境里拿过一堆高含金量的成绩。

And actually, I think found...

而实际上,我觉得我们发现……

Were lucky early on to find fantastic people who are willing to do this with us who were later careered.

我们很幸运,早期就找到了一些愿意跟我们一起干的顶尖的人,他们职业生涯已经走得比较靠后了。

I think we should kind of spent a bunch of time on maybe a little bit the wrong profile to begin with, and part of that was a seniority thing.

我觉得我们一开始可能在一个略微跑偏的画像上花了不少时间,其中一部分跟资历有关。

Part of that was kind of an interest and experience thing too, we have hired people who are excellent, excellent, excellent and very young, but they maybe look in some cases slightly different from being straight out of central casting.

还有一部分跟兴趣和经历有关——我们也招过极其极其优秀、而且非常年轻的人,但他们有些跟那种标准选角模板长得不太一样。

Another lesson is just, we very much evolved our interview loop, and so now, we have a hand-rolled set of interview questions, and then core our...

另一条经验是,我们的面试流程演进了很多,现在我们有一套自己手工打磨的面试题,还有我们面试的核心……

Core to how we interview too, is actually, we have people onsite for two days, and do a project with us, a work test project.

我们面试的核心其实是:让候选人到现场待两天,跟我们一起做一个项目,一个实操测试项目。

And that has worked really well, that increasingly you're finding that.

这个做法效果非常好,而且你会发现越来越多人在这么干。

I think how to learn about what people are interested in, and put our best foot forward, and letting them know about the opportunity when they're really not looking for anything, and have those conversations.

我觉得还有就是怎么去了解一个人真正感兴趣的是什么、怎么把我们最好的一面拿出来、在对方压根没在找工作的时候让他知道这个机会,并且把这些对话聊起来。

There's definitely been...

这方面确实是……

Gotten better at that over time.

随着时间推移我们做得越来越好了。

Lenny 00:55:47

Do you have a favorite interview question that you like to ask?

你有没有特别喜欢问的面试题?

Michael 00:55:53

I think this two-day work test which we thought would not scale past a few people has had surprising staying power.

我觉得这个两天的实操测试,我们本来以为超过几个人就没法规模化,结果它的生命力出乎意料地强。

And the great thing about it is, it lets someone go end-to-end on it like a real project.

它最妙的地方在于,能让一个人像做真实项目那样端到端地走一遍。

It's not work that we use, it's canned list of projects.

这不是我们真要用的活儿,是一份预先准备好的项目清单。

But it gives you two days of seeing a real work product, and it doesn't have to be incredibly time-enhancing other teams from time.

但它能让你看到两天的真实工作产出,而且不用特别占用其他团队的时间。

You can take the time you would spend in a half day or one day onsite, and you kind of spread it out over those two days, and give someone a lot of time to do work on their projects, and so that can actually help it scale.

你可以把原本花在半天或一天现场面试上的时间,摊到这两天里,给对方留出大量时间去做他的项目,这反而让它更容易规模化。

It helps to enforce, do you want to be around this person type test, because you are around this person for two days, a bunch of meals with them.

它还能强制回答“你愿不愿意跟这个人待在一起”这道题,因为你要跟他相处两天,还要一起吃好几顿饭。

We didn't expect that one to stick around, but that has been really, really important to our value to process, and then also important to getting people excited at, especially the very early stages of the company.

我们没想到这个环节会一直留下来,但它对我们的评估流程真的非常非常重要,而且在公司非常早期的阶段,它对于把人的热情勾起来也很重要。

Because before, people are using the product, and know about it.

因为那还是在人们用上产品、知道有这么个东西之前。

And when the product is comparatively not very good, really, the only thing you have going for you is a team of people that some people find special and want to be around.

而当产品相对还不怎么样的时候,你唯一拿得出手的,其实就是一群让有些人觉得很特别、愿意跟他们待在一起的人。

And the two days would give us a chance to just have this person meet us, and in some cases, hopefully get convinced that they want to throw in with us.

这两天就给了我们一个机会,让这个人跟我们见上面,运气好的话,他会被说服,愿意跟我们一起干。

That one was unexpected.

这个是我们没料到的。

Not exactly an interview question, but kind of like a forward interview.

这算不上是一道面试题,更像是一场超前的面试。

Lenny 00:57:24

The ultimate interview question.

终极面试题。

So just to be very clear about what you're describing, you give them an assignment, like, "Build this feature in our actual code base, work with the team to code it and ship it."

我想把你说的弄清楚:你们给他一个任务,类似“在我们真实的代码库里做出这个功能,跟团队一起把它写出来并上线”。

Is that roughly right?

大致是这样吗?

Michael 00:57:36

Yes.

是的。

So we don't use the IP, not shift end-to-end, but it's like a mock...

我们不会把他做的东西拿去用,也不是真的端到端上线,更像是一个模拟的……

Very often in our code base, "Here's a real mini two-day project.

很多时候就在我们的代码库里,“这是一个真实的、两天量级的小项目。

You're going to do it end-to-end."

你要端到端地把它做完。”

Largely being left alone, there's collaboration too.

基本上让他自己做,但也有协作。

And then we're a pretty imprisoned company, in almost all cases, it's actually just sitting in office with us too.

而且我们是一家很讲究面对面办公的公司,几乎所有情况下,他就是跟我们一起坐在办公室里。

Lenny 00:57:58

And you've been saying that this has scaled to even today, so how big are you guys at this point?

你刚说这个做法一直沿用到今天,那你们现在有多少人?

Michael 00:58:02

So we are going on 60 people.

我们快到 60 个人了。

Lenny 00:58:07

So small for the scale and impact.

以你们的体量和影响力来说,这算小的。

I was thinking it'd be a lot larger than that.

我以为会比这大得多。

And I imagine the largest percent is engineers?

我猜占比最大的是工程师?

Michael 00:58:16

Yeah.

是的。

To be clear, a big part of the work ahead of us is building a group of people that is bigger, and awesome, and can continue to make the product better, and the service we give to customers better.

说清楚一点,我们接下来很大一部分工作,就是把团队建得更大、更强,能持续把产品做得更好、把给客户的服务做得更好。

And so you don't plan to stay that small for longer, wouldn't hope so.

所以我们不打算一直保持这么小,也不希望这样。

But part of the reason that that number is small is, the percentage of engineering and research and design is very high within the company, and so many software companies when they have roughly 40 engineers would be over 100 people, because there's lots of operational work, and often, they're very, very sales-led from the get-go, and that's just quite labor-intensive.

但这个数字之所以小,原因之一是公司里工程、研究和设计的占比非常高;很多软件公司有大概 40 个工程师的时候,总人数会超过 100,因为有大量运营工作,而且他们往往从一开始就非常依赖销售驱动,那是很耗人力的。

And here, we started from a place of being incredibly lean in product-led, and we now serve lots of our market customers, and it built that out, but there's much more to do there.

而我们从一开始就极度精简、以产品驱动,现在我们也服务了很多市场里的客户,也把这块搭起来了,但要做的还有很多。

Chapter 11

Signal, Noise, and the Next Few Decades

噪音、信号,和接下来的几十年
59:06 — 68:44 · 心态平稳的人 · 免疫系统 · 比互联网更深远
Lenny 00:59:06

A question I wanted to ask you, there's so much happening in AI, there's things launching every...

有个问题我一直想问你:AI 圈里发生的事太多了,天天都有新东西发布……

There's newsletters, many newsletters, whose entire function is to tell you what is happening in AI every single day.

还有简报,一大堆简报,它们存在的全部意义就是每天告诉你 AI 圈发生了什么。

Running a company that's at the center, the white-hot center of this space, how do you stay focused, and how do you help your team stay focused, and heads down, and just build and not get distracted by all these shiny things?

经营一家正处在这个领域最核心、最白热的位置上的公司,你自己怎么保持专注?又怎么帮团队保持专注、埋头做事,只管把东西造出来,不被这些亮闪闪的新玩意儿带偏?

Michael 00:59:29

I think hiring is a big part of it, and if you get people with the right attitude.

我觉得招聘占了很大一块,前提是你招到心态对的人。

All of this should be asterisked in, I think we're doing well there, I think that we'd probably be doing better there too, and it's something that we should probably talk even more about as a company.

这些话都得打个星号:我觉得我们在这方面做得不错,但大概也还能做得更好,而且作为一家公司,我们可能应该把这件事聊得更多。

But I think that hiring people with the right disposition, people who are less focused on external validation, more focused on building something really great, more focused on doing really high quality work, and people who are just generally level-headed, and maybe the highs aren't very high, the lows aren't very low.

不过我觉得,关键是招性情对路的人——那种不太在意外部认可、更在意做出真正了不起的东西、更在意把活干得漂亮的人,还有整体上心态稳的人:高点不会太高,低点也不会太低。

I think hiring can get you through a lot here, and I think that's actually a learning throughout the company, is that for any...

我觉得光靠招聘就能解决这里的很多问题,而且这其实是整个公司层面的一条经验,就是对任何……

You need process, you need hierarchy, you need lots of things, but for any kind of organizational tool that you're introducing into a company, the result you're looking to get from that tool also...

你需要流程,需要层级,需要很多东西,但你往公司里引入的任何一种组织手段,你想从这个手段里拿到的结果,其实也……

You can go pretty far on hiring people with the right behaviors that you want to resolve from that for organizational thing.

你本来想靠那套组织手段解决的东西,其实只要招到行为方式对路的人,就能走出很远。

And the specific example that comes to mind is, we've been able to get away with not a ton of process yet on the engineering front, and I think we need a little bit more process, but for our size, not a ton of process, by hiring people who I think are really excellent.

我想到的具体例子是,在工程这边我们到现在都没上多少流程,也扛下来了。我觉得我们需要再多一点流程,但以我们的规模来说,流程真的不多,靠的就是招到我认为非常优秀的人。

One is hiring people that are level-headed.

第一是招心态稳的人。

I think two is just talking about it a lot.

第二我觉得就是多聊这件事。

I think three is hopefully leading by example.

第三是,但愿我们自己能以身作则。

And for us personally, we've since 2021, 2022 been professionally working on this, and been working on AI, and we've just seen a sea change of the comings and goings of various technologies and ideas of...

就我们自己而言,从 2021、2022 年起我们就一直在专职做这件事、做 AI,我们眼看着各种技术和想法来来去去,变化天翻地覆……

If you're to transport yourself back to end of 2021, beginning of 2022, this is GPT-3, InstructGPT doesn't exist, there's no DALL·E, there's no Stable Diffusion.

如果你把自己拉回 2021 年底、2022 年初,那时候是 GPT-3,InstructGPT 还不存在,没有 DALL·E,没有 Stable Diffusion。

And then we've gone through all of those image technologies existing, ChatGPT and that rise, and GPT-4, all of these new models, all these different modalities, all the video stuff, and only a very small number of these things really kind of affects the business.

然后我们经历了那些图像技术的出现、ChatGPT 及其崛起、GPT-4、所有这些新模型、这些不同的模态、所有跟视频有关的东西,而其中真正影响到业务的只有极少数。

So I think we've kind of just built up a little bit of an immune system, and know when an event comes around that actually is really going to matter for us.

所以我觉得我们多少建立起了一点免疫力,知道什么时候来的事件才是真正对我们要紧的。

This dynamic too of there being lots, and lots, and lots of chatter, but then maybe only a few things that really matter, I think has been mirrored in AI over the last decade, where there have been so many papers on deep learning in academia, so many papers on AI in academia, then the amazing thing is there are really a lot of...

这种噪音特别特别多、真正要紧的却可能只有几件的规律,我觉得在过去十年的 AI 里也是一样:学术界有那么多深度学习的论文,那么多 AI 的论文,而神奇的是,真正……

A lot the progress of AI can be attributed to some very simple elegant ideas that have stayed around, and the vast majority of ideas that have been put out there haven't had staying power, and haven't mattered a ton.

AI 的很多进展可以归功于少数几个非常简单优雅、并且一直留了下来的想法,而绝大多数抛出来的想法都没能站住脚,也没起到多大作用。

And so the dynamic is a little bit mirrored in the evolution of deep learning as a field overall.

所以在深度学习这个领域的整体演进里,也能看到同样的规律。

Lenny 01:02:29

Last question.

最后一个问题。

What do you think people still most misunderstand, or maybe don't fully grasp about where things are heading with AI in building in the way the world will change?

关于 AI 的走向、关于做产品、关于世界会怎么变,你觉得人们最容易误解、或者说还没完全领会的是什么?

Michael 01:02:39

People are still a little bit occupied too much, either end of a spectrum of it's all going to happen very fast, and this is all bluster, and hype, and snake well, and I think we're in the middle of a technology shift that's going to be incredibly consequential.

人们还是太纠结于两个极端:要么觉得一切都会飞快发生,要么觉得这全是虚张声势、炒作和江湖骗术。而我认为,我们正处在一场影响极其深远的技术变革当中。

I think it's going to be more consequential than the internet, I think it's going to be more consequential than any shift in tech that we've seen since the advent of computers.

我觉得它的影响会超过互联网,会超过自计算机诞生以来我们见过的任何一次技术变革。

And I think it's going to take a while, and I think it's going to be a multi-decade thing, and I think many different groups will be consequential in pushing it forward.

而且我觉得这需要很长时间,会是一件跨越几十年的事,会有许多不同的群体在往前推它,他们都举足轻重。

And to get to a world where computers can increasingly do more, and more, and more for us, there's all of these independent problems that need to be knocked down, and progress needs to be made on them, and some of those are on the science side of things of getting these models to understand different types of data, be faster, cheaper, smarter, conform to the modalities that we care about, take actions in the real world.

要走到计算机能替我们做越来越多事情的那个世界,有一大堆彼此独立的问题要一个个攻克、一个个往前推。有些属于科学层面:让这些模型理解不同类型的数据,变得更快、更便宜、更聪明,适配我们在意的模态,能在现实世界里采取行动。

And then some of it's on how we're going to work with them, and what's the experience that a human should actually be seeing and controlling on a computer, and working with these things.

另一些则关乎我们要怎么和它们协作:人在计算机上究竟应该看到什么、控制什么,该怎么跟这些东西一起干活。

But I think it's going to take decades.

但我觉得这会花上几十年。

I think that there's going to be lots of amazing work to do.

我觉得会有大量了不起的工作要做。

I think that also, one of the most...

我还觉得,其中最……

A pattern of a group that I think will be especially important here, not to talk our own book, but I think is the company that works on automating and augmenting a particular area of knowledge work, builds both the technology under the surface for that, integrating the best parts from providers, sometimes doing it in-house, and then also builds the product experience for that.

有一类公司我觉得在这里会格外重要——不是给自己贴金——就是那种专门去自动化、去增强某一个特定知识工作领域的公司,它既做水面下的底层技术,把各家提供方最好的部分整合进来、有时自己在内部做,同时也做这块的产品体验。

I think people who do that, and...

我觉得做这件事的人,还有……

We're trying to do it in software, people do that in other areas, I think those folks will be really, really, really consequential.

我们在软件领域这么做,别人在其他领域这么做,我觉得这些人会非常非常非常重要。

Not just for the end value that users see, but then I think as they get to scale, they'll be really important for pushing forward the technology, because I think they'll be able to build...

不只是他们给用户带来的最终价值,我觉得等他们做到一定规模,对推动技术往前走也会非常关键,因为我觉得他们能做出……

The most successful of them will be able to build very, very big businesses.

其中最成功的那些,能做成非常非常大的生意。

So, excited to see the rise of other companies like that in other areas.

所以我很期待看到其他领域也涌现出这样的公司。

Lenny 01:04:50

I know you guys are hiring.

我知道你们在招人。

For folks that are interested in, "Hey, I want to go work here, and build this sort of stuff."

有人可能会想:「嘿,我想去你们那儿工作,做这类东西。」

What kind of roles are you looking for right now?

你们现在在找什么样的岗位?

Anyone specifically you're trying...

有没有特别想招的人……

Any roles you're most excited about filling ASAP?

有哪些岗位是你们最希望尽快招满的?

What should people know if they're curious?

如果有人好奇,他们该知道些什么?

Michael 01:05:08

There are so many things that this group of people need to do that we are not get equipped to do.

有太多事情是这群人需要做、而我们目前还没配备好去做的。

Generic across the board, first of all, and so if you don't think we have a role for something, maybe you should reach out, that won't actually be the case.

首先,各个方向都缺人。所以如果你觉得我们这儿没有适合你的岗位,不妨还是来找我们聊聊,实情可能并不是这样。

And maybe we can actually learn from you, and decide that we need something that we weren't yet aware of.

而且我们说不定还能从你身上学到东西,意识到我们需要某个自己还没察觉到的角色。

But by and large, I think that two of the most important things for us to do this year are have the best product in the space, and then grow it.

但总体来说,我觉得我们今年最重要的两件事,一是做出这个领域最好的产品,二是把它做大。

And we're kind of in this land grab mode, where almost everyone in the world is either using no tool like ours, or they're using one that's maybe developing less quickly.

我们现在有点处在跑马圈地的状态,世界上几乎所有人要么还没在用我们这类工具,要么在用的那个迭代得没那么快。

So growing Cursor too is a big goal, and I would say, especially always on the hunt for folks who...

所以把 Cursor 做大也是一个大目标。我想说,我们尤其一直在留意这样的人——

Excellent engineers, designers, researchers, but then folks all across the business side too.

优秀的工程师、设计师、研究员,还有业务侧各个方向的人。

Lenny 01:06:06

I can't help but ask this question now that you talk about engineers, there's this question of just, "AI's going to write all our code."

既然你说到工程师,我忍不住要问一个问题,就是那个「AI 会把我们所有代码都写了」的说法。

But everyone's still hiring engineers like crazy.

但大家还是在疯狂招工程师。

All the foundational models, so many open roles.

所有做基座模型的公司,都开着那么多岗位。

Michael 01:06:21

Yeah.

是啊。

We're not out there tooting the horn of, people can learn to code.

我们可没到处吆喝说,大家还是可以去学编程的。

Lenny 01:06:24

Do you think there's going to be an inflection point of engineering roles start to slow down?

你觉得会不会出现一个拐点,工程师岗位开始放缓?

I know this is a big question, but just...

我知道这是个很大的问题,不过……

Do you see engineers being more and more needed across all these companies, or do you think at some point there's all these Cursor agents running building for us?

你觉得各家公司会越来越需要工程师,还是说到某个时候,会有一堆 Cursor 的 agent 在替我们做东西?

Michael 01:06:39

Again, we have the view that there's this both long messy middle of it not jumping to a, just you step back, and you ask for all your stuff to be done, and you have your engineering department.

还是那句话,我们的看法是,中间会有很长一段乱糟糟的过渡期,不会一下子跳到那种你往后一靠、开口要求把所有事情做完、这就是你的工程部门的状态。

And very much, you want to evolve from programming as it exists today, we want humans to be in the driver's seat, and we think even in the end state, that's giving folks control over everything is really important, and you will need professionals to do that, and decide what the software looks like.

我们非常希望从今天的编程方式一步步演进过去,我们希望人坐在驾驶位上。我们认为哪怕到了最终状态,让人对一切保持控制权也非常重要,你会需要专业人士来干这件事,来决定软件长什么样。

So both I think that, yes, engineers are definitely needed.

所以有两点吧:一是,没错,工程师肯定还是需要的。

I think that engineers will be able to do much more.

我觉得工程师能做的事会多得多。

I think the demand for software is very lasting, which is not the most novel thing, but I think it's kind of crazy to think about how expensive and labor-intensive it is to build things that are pretty simple and easy to specify, or it would look like it to the outside observer, and just how hard those things are to do right now.

我觉得对软件的需求非常持久,这算不上什么新观点,但想想还是挺离谱的:有些东西相当简单、也很容易讲清楚,至少在外人看来是这样,可造起来居然这么贵、这么费人力,现在想把它们做对有多难。

All of the stuff that exists right now that's justified by the cost and demand that we have now, if you could bring that down by [inaudible 01:07:56], I think you would have tons, and tons, and tons of more stuff that we could do in our computers, tons more tools.

现在存在的所有东西,都是由我们当下的成本和需求撑起来的;如果你能把这个成本再降 [听不清 01:07:56],我觉得我们能在计算机上做的事会多出无数倍,工具也会多得多。

And I've felt this, where...

这一点我自己有体会——

One of my early jobs actually was working for a biotechnology company, and it was building internal tools for them, and the off-the-shelf tools that existed were horrible, and did not fit their use case at all.

我早期的一份工作其实是在一家生物技术公司,给他们做内部工具。当时市面上现成的工具糟透了,完全不契合他们的使用场景。

And then the internal tools I was building, there was definitely a ton of demand there for things that could be built, and that far outstripped just the things that I could build in the time that I was with them.

而我做的那些内部工具,可以说有海量需求等着被满足,远远超出我在那儿的时间里能做出来的东西。

The physics of working on computers are so great, you should be able to basically just move everything around, do everything that you want to do.

在计算机上做事,物理特性实在太优越了,你本该可以随便挪动一切、想做什么就做什么。

There's still so much friction, I think that there's much more demand for software than what we can build today with things costing like a blockbuster movie to make simple productivity software.

可摩擦还是太多。我觉得对软件的需求远大于我们今天能造出来的量,毕竟现在做一个简单的效率工具,花的钱堪比拍一部商业大片。

And so I think long into the future, yes, there will actually be more demand for engineers.

所以我觉得放到很久以后,答案是肯定的,对工程师的需求其实会更多。

Chapter 12

Studying the Past to Build the Future

读过去,造未来
68:48 — 71:04 · 团队怎么持续造新东西 · 身后的那堆书 · 收尾
Lenny 01:08:48

Is there anything that we didn't cover that you wanted to mention?

有没有什么我们没聊到、但你想提一句的?

Any last nugget wisdom you wanted to leave listeners with?

有没有最后一点干货想留给听众?

You could also say no, because we've done a lot.

你也可以说没有,因为我们已经聊了很多了。

Michael 01:08:55

We think a lot about how you set up a team to be able to make new stuff, in addition to continuing to improve the stuff that you have right now.

我们花了很多心思琢磨:怎么搭一个团队,让它除了持续改进手上已有的东西,还能做出新东西。

And I think if we were to be successful, IDE is going to have to change a ton, [inaudible 01:09:18] looks like is going to have to change a ton going into the future.

我觉得我们要想做成,IDE 就得有巨大的变化,[听不清 01:09:18] 的样子未来也得有巨大的变化。

And if you look around, the companies we respect, there are definitely examples of companies that have continued to really ride the wave of many leapfrogs, and continue to actually push the frontier.

你环顾一圈,我们敬重的那些公司里,确实有一些一次次踩中跨越式突破的浪头,一直真正在推动前沿。

But they're kind of rare too, it's a hard thing to do.

但这样的公司也挺少见的,这件事很难做到。

So part of that is just kind of thinking about the thing, and trying to reflect on it in our good days, and the first principle side of things, part of it's also trying to get in and study past examples of greatness here, and that's something that we think about a lot too.

所以一部分就是琢磨这件事本身,在状态好的日子里去反思,从第一性原理这一面去想;另一部分是沉下去研究过去那些伟大的案例,这也是我们经常在想的事。

Lenny 01:09:52

Yeah.

对。

Yeah.

嗯。

Before we started recording, you had all these books behind you, and I was like, "What's that over there?"

我们开始录之前,你身后摆着一堆书,我当时就说:“那边那是什么?”

It's the history of some old computer company that was influential in a lot of ways that I've never heard of.

那是某家老计算机公司的历史,它在很多方面都很有影响力,但我从来没听说过。

And I think that says a lot about you of, where a lot of this innovation comes from, is studying the past, and study history, and what's worked and what hasn't.

我觉得这挺能说明你这个人的:很多创新其实来自研究过去、研究历史,看什么奏效、什么没奏效。

Okay.

好。

Where can folks find you online if they want to reach out and maybe apply?

如果大家想联系你、或者想投简历,可以在网上哪里找到你?

You said that there may be roles they may not even be aware of, where do they go find that, and then how can listeners be useful to you?

你刚说有些岗位他们可能压根不知道,那他们上哪儿去找?另外听众能怎么帮到你?

Michael 01:10:23

Yeah.

嗯。

If folks are interested in working on this stuff, would love to speak, they can find...

如果有人对做这些感兴趣,我们很乐意聊聊,他们可以去……

If they go to cursor.com, they can kind of both find the product and find out how to reach us.

去 cursor.com,既能看到产品,也能找到联系我们的方式。

Lenny 01:10:36

Easy.

简单。

Michael, thank you so much for being here.

Michael,非常感谢你来。

This was incredible.

这期太精彩了。

Michael 01:10:41

It was wonderful.

非常愉快。

Thank you.

谢谢你。

Lenny 01:10:44

Bye, everyone.

大家再见。

Thank you so much for listening.

非常感谢你的收听。

If you found this valuable, you can subscribe to the show on Apple Podcasts, Spotify, or your favorite podcast app.

如果你觉得这期有价值,可以在 Apple Podcasts、Spotify 或你常用的播客 app 上订阅本节目。

Also, please consider giving us a rating, or leaving a review as that really helps other listeners find the podcast.

也请考虑给我们打个分或者留条评论,这真的能帮到其他听众发现这档播客。

You can find all past episodes or learn more about the show at lennyspodcast.com.

你可以在 lennyspodcast.com 找到所有往期节目,或者了解更多关于本节目的信息。

See you in the next episode.

下期再见。