LLMs and the Future of Malleable Software
打开互动全文版(中英对照 + 朗读 + 问答)→设计工程师 Jeffrey Lit 探讨 LLM 如何推动数字产品设计向个性化、用户可控的软件转变,超越传统 SaaS 模式。
Design engineer Jeffrey Lit discusses how LLMs are shifting digital product design towards personalized, user-controlled software, moving beyond traditional SaaS models.
LLM 如何改变我们对数字产品以及设计师核心交付物的思考方式?
How do LLMs change the way that we think about digital products and the core deliverables that we're bringing to the table as designers?
我意识到,我们现在正处于一个剧烈波动的时期,AI 正迫使每个人重新构想事物的运作方式,未来几年实际上将发生一次重大的平台转变。
What I realized was I think we're in a time of such volatility right now with AI just kind of forcing everyone to reimagine how things work that there's actually going to be a serious platform shift over the next few years.
创造用户能随时间弯曲和塑造的个性化软件,会是什么样子?
What does it look like to create personalized software that users can bend and shape over time?
自然语言文本非常适合人类与 AI 的输入,尤其是语音,感觉很好。但对于 AI 返回给我们的信息,我认为我们可以用非文本表示和数据可视化来发挥更多创意。
Natural language text is really good for human AI input, especially with voice. It feels really good. But for the AI coming back to us, you know, I think we can be much more creative with non-textual representations and data visualizations.
AI 交互模式的下一步是什么?
What's next for AI interaction patterns?
问 ChatGPT 或 Notion 比如我退休时会有多少钱?我想得到一个可以自己摆弄的交互式图表,而不仅仅是一个数字。
Ask ChatGPT or Notion like how much money am I going to have when I retire? I want to get back like an interactive chart that I can mess with myself, not just like a number.
欢迎来到 Dive Club。我是 Rid,这里是设计师永不停歇学习的地方。本周的嘉宾是 Jeffrey Litt,他是 Notion 的设计工程师,也是可塑软件领域的领军人物之一。本期节目将深入探讨 AI 界面的未来,以及支撑 Jeffrey 设计哲学的一些核心思想。但为了理解这些,我们首先得回到起点,了解他的设计之旅是如何开始的。
Welcome to Dive Club. My name is Rid and this is where designers never stop learning. This week's episode is with Jeffrey Litt, who's a design engineer at Notion and one of the people really leading the charge on malleable software. So, this episode's going to be a deep dive into the future of AI interfaces and some of the core ideas underpinning Jeffrey's design philosophy. But to understand that, we first have to go back to the beginning to understand where his design journey started.
我大学毕业后的第一份工作是在一家教育科技初创公司做工程和设计。我们做的是典型的 SaaS 产品,坐在办公室里想象用户想要什么,然后交付他们喜欢的软件。问题是我们向全国成千上万所学校交付产品,而我从未当过老师或在学校工作过。我发现,要真正知道什么好用实在太难了。即使你用尽所有招数——实地考察、做民族志研究、持续用户测试、聘请前教师加入团队——但如果没有真正站在用户的立场上,依然极其困难。这让我很困扰:为什么我们要替所有用户做这些选择?然后我开始注意到一个有趣的模式:有时我们问用户对产品的看法,他们会说:“哦,我其实不用你们的数据报告,我把数据导出到 Excel 自己处理。”我们有点受伤,但让他们继续说。他们会展示那些乱七八糟的电子表格,很丑,可能有 bug,但完全符合他们自己的需求——数据组织方式不同,颜色配合学校的主题等等。我开始想,某个学校的校长居然能在某种意义上为自己构建一个可用的软件工具,而不是由我们决定每一个细节,这太酷了。在自己的电子表格里,默认你掌控一切,这恰恰是典型 SaaS 模式的翻转。这个想法一直萦绕在我心头:为什么不能让更多人在自己的本地环境中为自己构建软件工具?从那以后,我的整个职业生涯就像一条漫长的兔子洞,痴迷于这个问题。于是我去了 MIT 读研究生,研究如何用更好的工具和界面让人们做到这一点。后来我在一个独立研究实验室 Incan Switch 工作,通过研究原型探索一些非常前沿的想法,现在我在 Notion,公司的使命正是这个。这就是我的历程。
My first job out of college, I was doing engineering and design at an education tech startup. And you know, we did typical SaaS stuff, right? We would sit in our office and try to imagine what our users wanted and ship them software that they like. The problem is we were shipping to thousands and thousands of schools across the country and I had never been a teacher or worked in a school, right? What I found is man it is so so so hard to really know what's going to be good. No matter you can do all the tricks in the book. Go visit and do ethnography. Do user testing all the time. You can hire former teachers to be on your team. And yet I found it was just really really difficult without having been in my users' shoes in a really substantial way. And so this was kind of plaguing me. Why are we making these choices for all our users? And then I started noticing this really interesting pattern where sometimes we would ask users, you know, what do you think of our product? And they would say, oh, I actually don't use your data reports. I just export the data to Excel and do it myself. And we're like, "Huh, okay, that kind of burns a little bit, but tell us more." And they would show us these crazy spreadsheets. They're really ugly. You know, maybe had bugs, but they would do exactly what that user wanted them to do, right? They would organize the data differently. They would use different colors that fit their school's colors, whatever. And I started thinking, man, it's so cool that a random principal at some school can actually in some sense build their own software tool that works for them rather than having us dictate every little decision. When you're in your own spreadsheet, the default is that you have the control over everything, right? And it's sort of a flip of the typical SaaS model. And so I just couldn't get that idea out of my head of like why can't more people build software tools for themselves in their local context. The rest of my career since then has kind of been like a really really long rabbit hole on being obsessed with that question. So I ended up going to grad school at MIT to do research on how do we enable people to do this with better tools and interfaces. I worked at an independent research lab called Incan Switch where we also explored that through research prototyping very kind of out there ideas around this stuff and then now I'm at Notion where the company mission is to do exactly this. So, that's kind of been my journey.
快速插播一条消息,然后我们继续。Granola 刚刚发布了一个名为“recipes”的新功能,我已经无法想象没有它的生活了。这是一种在 Granola 笔记的所有上下文中运行高级提示的简单方法。它们还提供了一些开箱即用的优秀默认设置。你甚至可以使用我为 Inflight 制作的提示“收集产品反馈”,它会查看你所有的用户访谈或客户电话,提取出带有清晰可操作主题的产品相关反馈,包括直接引用,这是我最喜欢的部分之一。我一直在用,这也是我完全痴迷于 Granola 的另一个原因。如果你还没试过,他们为你和你的团队成员提供 3 个月免费试用,访问 dive.club/granola 即可。
Real quick message and then we can jump back into it. So, Granola just launched a new feature called recipes. And I already can't imagine life without it. It's a simple way to run advanced prompts across all of the context of your Granola notes. And they have some pretty great defaults out of the box, too. You can even use the prompt that I made for Inflight called gather product feedback, which looks at all of your user interviews or customer calls and pulls out product related feedback with clear and actionable themes, including direct quotes, which is one of my favorite parts. I use it all the time and it's just another reason why I'm completely obsessed with Granola. If you haven't tried it yet, they're offering 3 months free for you and anyone on your team if you head to dive.club/granola.
Lovable 已经发布了一些重大更新,但最近这次可能是最大的,因为他们刚刚推出了 Lovable Cloud 和 Lovable AI。这意味着你只需通过提示就能交付全栈 AI 原生应用。不再需要设置数据库、认证、文件存储、API 密钥等。你可以通过一个提示就让整个后端启动并运行。没有外部仪表盘或配置界面,一切都能正常工作。你还可以通过简单要求来为应用添加 AI 功能,比如文档搜索、图像生成或任何你能想到的功能。所以,如果你是一位设计师,有想要构建的想法,请访问 dive.club/lovable 开始吧。
Lovable's had some pretty big releases, but this last one might be their biggest yet because they just launched Lovable Cloud and Lovable AI. It means you can ship full stack AI native apps just by prompting. No more setting up databases, authentication, file storage, API keys, things like that. You can get an entire backend set up and running in a single prompt. No external dashboards or configuration screens. Everything just works. And you can add AI features to your app just by asking for them. Things like document search or image generation or anything else that you can think of. So if you're a designer and you have ideas that you want to build, head to dive.club/lovable to get started.
好了,回到正题。能聊聊你在 Incan Switch 做的一些实验吗?以及这些实验如何继续塑造了你现在的想法?
Okay, now on to the episode. Can we dig into some of the experiments that you were doing at Incan Switch and how that continued to shape these ideas that you have?
当然。我跟你讲几个。我们构建的一个实验叫 Embark,它的想法是:当你做旅行规划时,你会用到各种应用——Google Maps、日历事件、Notion 文档或 Apple 笔记来思考行程、存放航班信息的邮件等等。每个应用单独用起来都不错,但它们无法很好地组合在一起协同工作,这往往令人沮丧。比如,为什么你的天气应用不知道你下周要去伦敦?为什么即使邮件里有这个信息,你还要手动选择?我认为这是一个例子:当我们把应用视为软件的单元,每个团队只专注于自己那一小块问题时,你会得到很好的局部解决方案,但无法获得能解决你实际问题的组合方案。
Sure. I'll tell you about a couple of them. One experiment we built is called Embark and Embark was this idea of when you do travel planning, you have all of these apps that you tend to use like Google Maps, calendar events, a Notion doc or an Apple note where you're thinking through what you want to do, your email where your flights live, and there's all these apps, right? In isolation each of the apps can be pretty nice. But there are all these ways in which they fail to combine and work together with one another that tends to be really frustrating. So, for example, why doesn't your weather app know that you're going to be in London next week? Why is it that you have to manually select that even though it's in your email, right? And I think this is an example of where when we think of apps as the unit of software and there are these teams each focused on their little part of the problem, you get really good solutions for the parts, but you don't actually get the composition of parts that works for your problem that you're trying to solve.
人们尝试过构建超级旅行应用,但结果大多数都很糟糕,因为很难把所有这些部分都做得非常好,而且每次旅行都不一样。比如你的商务出差和我的家庭长假,需求就完全不同,对吧?所以我们想,能不能构建一个未来主义的软件操作系统,当你去旅行时,软件感觉就像是为那次旅行量身定做,你可以根据旅行来塑造它。我们最终得出的方案,有点出乎意料,其实是先从一张笔记开始,就像 Notion 文档那样。你开始写东西,比如写你的计划,就像平常一样,但我们的想法是,你可以直接把各种功能模块拉进你的笔记里。所以不用去查天气,你只要在笔记里输入天气,天气预报就神奇地出现了,而且它知道你要去哪里,因为笔记里写了,对吧?路线和地图也是一样。我们想象了这个叫 Embark 的系统,你可以在文档里做所有这些事情。这就是文档中心计算。然后我们亲自用这个系统去了很多次旅行,非常酷,我们学到了很多,并不断迭代。我们从未把它作为产品发布,但写了一篇非常深入的文章来解释思路并展示演示。你知道,我没有切换,这就是我们的方法论:通过避免今天向用户交付产品的需求,我们有了更多自由去想象,如果放眼十年后,这个东西应该是什么感觉。
People have tried to build the mega travel app, but turns out most of them are terrible because it's hard to build really good versions of all those parts and every trip is different. So like your business trip to a conference and my week-long vacation with my family just have kind of different needs, right? And so we thought we tried to think about like how could we build a futuristic software operating system where when you go on a trip, software just kind of feels like it works for that trip for you and you get to mold it around your trip. What we landed on somewhat surprisingly actually was starting with just a note like a document sort of like a notion document actually. You just start writing stuff like write your plans just like you would you know normally but then our idea was you could start pulling in bits of functionality into your note directly. So instead of going to look up the weather, you just type weather in your note and magically the weather forecast appears and it knows where you're going cuz it's in your note, right? Same thing with like routing and maps. And so we imagined this system called embark where you could do all this stuff from within a document. It's like document-centric computing. Then we used it to go on a bunch of trips ourselves which was really cool and we we learned a lot and iterated from that and we never released it as a product but we wrote a a really in-depth essay explaining the thinking and showing the demos. You know I didn't switch that was sort of our methodology is like by avoiding the needs of shipping to users today we had a little more freedom to imagine like what should this thing really feel like if we think a decade out.
我想深入探讨如何弥合十年期构想与当今界面的实际下一步之间的差距,但也许先为这类讨论做个铺垫。你能继续讲讲你的故事吗?你加入 Notion 才几个月,对吧?我觉得为什么 Notion 有吸引力,答案可能很明显。它就像一盒乐高积木,你可以随意塑造和组装。但你能谈谈你加入的动机,以及你在那里的角色性质吗?
I want to get into what it looks like to close the gap between like decade long ideas and practical next steps for today's interfaces, but maybe to set the stage for that type of discussion. Can we just continue your story a little bit? You're what only like a couple months into notion, right? I think the answers for why that was attractive are probably pretty clear. It's literally just the box of Legos that you get to shape and assemble, but can you talk a little bit about your motivations for joining and then also just the nature of what your role will look like there?
我加入 Notion 时非常兴奋的一点是,我关心的很多关于可塑软件的事情,并不是任何一个应用程序能轻易解决的。它们更像是平台层面的东西,需要思考一种新的操作系统或一种新的软件基本思维方式。而这种转变并不常见,它们会持续十年甚至更久。我意识到,我们现在正处于一个剧烈变动的时期,AI 正在迫使每个人重新思考一切如何运作,未来几年内将会发生一次重大的平台转变。我觉得每个人都感觉到了它的到来。板块正在移动。
One thing that I was really excited about joining Notion is that a lot of the things that I care about around malleable software aren't things that any one application so to speak can easily solve. They're more platform level things that really require thinking of like a new operating system or a new fundamental way that we think about software. And those shifts don't happen very often. They they last a decade or more. And what I what I realized was I think we're we're in a time of such volatility right now with AI just kind of forcing everyone to reimagine how things work that there's actually going to be a serious platform shift over the next few years. I think everyone feels it coming. There's the the tectonic plates are shifting.
完全同意。
Totally.
我觉得从时机上看,这是一个非常独特的机会,短期内不会再有。我想找一个地方,能帮助利用这些转变,实现我对自己使用的软件所期望的价值。我认为 Notion 处于非常有利的位置,可以竞争成为这些平台之一。它已经是一个非常成功的产品,也是一个人们在其上构建的平台。而且它还有一个非常有趣的新 AI 角度,正在成长并改变我们对产品的思考方式。所以我非常兴奋能参与其中,希望能帮助推动真实软件世界朝着我梦想的方向发展。当你在平台转变的另一端,畅想 Notion 这样的产品的未来时,你会想到什么?
And I felt that timing wise that was a really unique opportunity that's not necessarily going to come around again anytime soon. And I wanted to find a place where I could help take advantage of these shifts to enact the values that I want in the software that I use. And I think notion is in really good position to be competing for being one of those platforms. It already is a really successful product and it is a platform where people build on top of it. But it's also has this really interesting new AI angle that's growing and kind of changing how we think about the product. And so um I was just really excited to participate in that and you know hopefully help have uh help nudge the world of real software towards what I want it to be when you daydream about the future of a product like notion on the other side of this platform shift. What are some of the things that come to mind?
嗯,有趣的是,回到我在 Switch 的工作,我们探索了很多文档中心计算,正如我提到的。在我看来,Notion 是文档中心计算的最佳体现。我的意思是,你进入 Notion 不会看到一个写着“构建应用”的空白框,因为实际上大多数人早上醒来并不想构建应用,他们只想把事情做完。如果你听 Ivan 和 Simon 讲 Notion 的起源故事,他们早期的探索更像“构建任何应用”,然后他们著名地转向了更文档中心的模式,我认为这是正确的方向。所以当我畅想 Notion 的未来时,我在研究工作中探索的很多东西,我觉得在 Notion 中是有意义的。例如,当你在 Notion 中计划一次旅行时,如果那个文档活了起来,包含了计划旅行所需的所有工具,会怎么样?真正思考如何把目前需要在不同应用之间跳转、手动复制粘贴的东西,全部集中到一个地方。它就像一个上下文中心,你工作或生活中关心的任何事情都可以放在那个地方,你可以在那里直接处理。
Well, you know, it's funny bringing it back to um my work at Switch like a lot of what we explored was this document-centric computing as I mentioned and notion in my opinion is the best incarnation of document-centric computing that's out there and when what I mean by that is like you don't go to notion and see a blank box where it says says like build an app because the reality is actually most people don't wake up in the morning wanting to build apps people just want to get stuff done right if you listen to actually the notion origin story of Ivan and Simon talking about how it came about. I think some of their earlier explorations looked more like build any app and they sort of pivoted famously to this more document-centric model which I think is really the right way to go about this. And so um when I daydream about the future of notion, there's a lot of things that I've explored in my research work that I think could make sense in notion. So for example, you know, when you plan a trip in notion, what if somehow that document came alive with all the tools you need to plan that trip living in that document? You know, really thinking about how can we um take things that currently require hopping between different applications and gluing things together and manually like copy pasting stuff and bring it all into one place. That's that serves as kind of a a context hub so to speak for like whatever you care about in your work or in your life can be in that one place and you can work with it right there.
这不算一个问题,但我最近一直在想,科技行业整体上自然有捆绑和拆分的周期。感觉我们可能正在进入有史以来最大的捆绑时代,因为这么多产品可以把大量功能外包给通用模型。每个人几乎什么都能做。所以突然之间,你在价值链中的位置以及核心外壳的质量变得至关重要。在这个世界里,天哪,我有点同意,所有箭头在某种程度上都指向文档。将所有上下文集中在一个地方的价值从未如此清晰。它一直很有价值,但有了 AI,我们现在看到,这个东西越了解我在乎的一切,它就能为我工作得越好。不过,我认为这里有一些细微差别。实际上,我认为没有一个应用程序能够或应该从根本上拥有所有功能并存储你所有的数据。必须要有与其他软件的桥接。我认为互操作性等方面还有很多空间。
This isn't really a question, but something I've been thinking about recently is how, you know, naturally tech as a whole has this cycle of bundling and unbundling. And it kind of feels like we're entering potentially the greatest bundling ever because so many of these products get to outsource a heck of a lot of functionality to the general models. And everybody can kind of do everything. And so all of a sudden it's like where you sit in the value chain and the quality of the core like not to use the word rapper but like shell for all of this functionality matters so much. And so in that world gosh I think I kind of agree like all arrows kind of do point toward a document in some ways. The value of having all of your context in one place has never been more clear. It was always valuable. But with AI, we just see now, oh man, the more this thing knows about everything I care about, the better it can work for me. Now, you know, I think there's some nuance there. Like, um, the reality is no one application, I think, can or should like fundamentally have every feature and all of your data in there. There there has to be kind of this bridging to other pieces of software. And, you know, um, I think there's a lot of room for interoperability and stuff like that.
我给你举个例子,比如在 Notion。我到公司的第一周,就体会到了 Notion AI 的价值,我们内部大量使用它。基本上,我入职时 80% 的问题,直接去问 Notion AI,它就会搜索我们内部的 Notion 工作区——显然整理得非常好——还有我们所有的 Slack,你知道,它还能搜索互联网。Notion、Slack 和互联网的结合就像一个巨大的上下文仓库。大多数问题都能通过这种方式得到解答。所以我认为这确实凸显了上下文的价值。
I'll give you an example like with Notion. My first week at the company, I was introduced to the value of Notion AI, which we use a lot internally. Basically, 80% of my onboarding questions I had, I just go to Notion AI and ask, and it searches our internal Notion workspace, which is obviously really well organized, all of our Slack, you know, it can search the internet. That combination of Notion, Slack, internet is like an insane repository of context. Most questions can be answered that way. So I think it really highlights the value of context.
你能谈谈你的角色吗?我特别感兴趣,因为你的背景很广泛。你可以扮演很多不同的角色。
Can you talk a little bit about your role? I'm particularly interested because your background is pretty wide. You can wear a lot of different hats.
这是我职业生涯中第一次头衔里正式包含“设计师”。我有软件工程背景,读了计算机科学博士,非常技术性,对吧?但我真正关心的是软件的概念设计:把基本构件做对,让东西好用。乔布斯有句名言:设计不只是外观,更是如何运作。我不是视觉导向的设计师,我更感兴趣的是设计工具包,让人们能自己构建东西。这对我来说是一个深刻而有趣的设计问题。所以我的头衔是设计工程师。我在通话前跟你说过,我觉得我的工作跟很多设计工程师不太一样。我不是那种精雕细琢动画每个细节或追求像素级完美视觉设计的人。我更关注的是:如何精心设计这盒乐高,让人们能搭建东西,他们知道乐高能做什么,而且感觉它们总能无缝拼接。某种程度上,这更接近设计编程语言,而不是设计典型应用。你必须非常抽象地思考构建块以及它们可能的使用方式,但你也必须非常具体地思考它们是否真的能拼在一起并合理。这种张力正是我所关心的所有有趣问题的所在。
This is the first time in my career that I've ever had 'designer' as technically part of my title. I have a software engineering background. I did a PhD in computer science, which is pretty technical, right? But I think what I really care about is the conceptual design of software. Getting the primitives right, making things that work well. There's a famous Steve Jobs quote: design is how it works, not just how it looks. I'm less of a visually oriented designer and more interested in thinking about designing toolkits that enable people to build stuff for themselves. That's a really deep and interesting design problem to me. Technically my title is design engineer. I was telling you before this call, I don't think what I do is that similar to what a lot of design engineers do. I'm not an expert at crafting every detail of an animation or pixel-perfect visual design. It's more: how do we thoughtfully design this box of Legos so that people can build stuff, they know what the Legos can do, and it feels like they always fit together seamlessly. In some ways, that's almost closer to designing a programming language than designing a typical application. You have to think very abstractly about building blocks and how they might be used. But you also have to think really concretely about whether they are actually going to fit together and make sense. That tension is where all the interesting problems I care about live.
这让我想到你在文章中提到的内容,我想问一下,你谈到暴露结构的重要性。我直接引用你的话:“好的设计暴露系统结构,并相信人们会自己学会如何使用它。”鉴于你对系统和基本构件的兴趣,你能多分享一些你的想法,以及它如何与更可塑的软件愿景联系起来吗?
It actually leads me to something that I saw in your writing that I wanted to ask about, which you talk about the importance of exposing structure. I'm just going to read the quote. You say: 'Good design exposes systemic structure and trusts that people will figure out how to use it.' So given your interest in the systems and primitives, can you share a little bit more about your thinking there and how it connects to this vision for more malleable software?
那句话出自一篇题为《噩梦自行车》的博客文章。我想分享噩梦自行车的故事,因为我认为它非常违背硅谷设计的常识,但非常重要。有一本我特别喜欢的书叫《改变思维》,作者是 Andy diSessa,出版于几十年前,讲的是如何在计算环境中教孩子思考深层问题。这不是一本设计书,更像教育书。书中的一个想法:他讲了一个噩梦,关于一辆自行车,不是有编号的齿轮可以换 1、2、3、4、5,而是有一些按钮写着“碎石模式”、“下坡模式”、“上坡模式”、“过铁路模式”。之所以这样,是因为某个产品经理或设计师说:“等等,人们不懂数字。人们不懂数学。你得告诉他们功能,写在标签上。”这种思维方式的问题是:当你想在碎石路上上坡时怎么办?你实际上不知道这些按钮具体做什么。你看不到任何连贯的结构。你只看到这些模式,神奇地应该在某种情况下表现良好。所以你没有通用框架。如果你的链条掉了怎么办?你怎么修?你甚至不知道那里发生了什么。这指出的是,人类其实非常聪明。孩子能弄懂齿轮的作用。也许他们不是用数字和数学来思考,但你通过感觉学习:“哦,好吧,当我这样做时,踩踏板更费力,有这种效果,现在我知道我可以在所有情况下使用它。”这并不难。当自行车的设计暴露了那种结构,人们就会学会并在很多情况下使用它。当你看看软件,我认为很多软件对我来说就像噩梦自行车。它教给人们非常具体的功能片段,而不是教他们更深层的结构,让他们自己去做更多事情。实际上,这正是 Notion 作为产品让我兴奋的一点:Notion 确实暴露了很多结构。我多年来一直使用这个产品,用于生活中各种不同的事情:规划各种项目、记录读过的书等等。现实是,让人们达到理解的程度需要非常深思熟虑的设计,但一旦他们达到了,你就真正赋予了他们更多能力。这就是我觉得非常令人兴奋的设计哲学。
That quote comes from a blog post titled 'The Nightmare Bicycle'. I want to share the story of the nightmare bicycle because I think it's really against the grain of common wisdom in Silicon Valley design, but it's really important. There's this book that I adore called 'Changing Minds' by Andy diSessa. It's published a couple decades ago, and it's about how to teach kids to think about deep problems in a computational environment. It's not really a design book, more of an education book. One of the ideas in the book: he talks about how he has this nightmare about a bicycle where instead of having numbered gears where you can shift 1, 2, 3, 4, 5, there are these buttons that say 'gravel mode', 'downhill mode', 'uphill mode', 'crossing the railroad mode'. The reason this came out is that some product manager or designer said, 'Hold on, people don't understand numbers. People don't understand math. You got to tell them what it does and put it on the tin.' The problem with this way of thinking is: what do you do when you want to go uphill on gravel? You don't actually know what these buttons do exactly. There's no coherent structure that you see. You just see these modes that magically are supposed to do a good job in some situation. So you have no general framework. And what do you do if your chain falls off? How do you repair it? You don't even know what's going on there. What this points out is actually humans are pretty damn smart. Kids can figure out what gears do. Maybe they're not thinking about it as numbers and math, but you just feel it and you learn, 'Oh, okay, when I do this, it gets harder to pedal and that has this effect, and now I know I can use that in all these situations.' It's not that difficult. When the design of a bike exposes that structure, people pick it up and learn to use it for a lot of situations. When you look at software, I think a lot of software looks like the nightmare bicycle to me. It's teaching people these very specific bits of functionality. It's not teaching them deeper structures that they can use to do more stuff themselves. That's one of the things that excites me about Notion as a product actually: Notion does expose a lot of structure. It's a product that I've used for many years for all sorts of different stuff in my life: planning many different kinds of projects, keeping track of books I've read, a lot of things. The reality is, it takes really thoughtful design to get people to the place of understanding, but once they get there, you've really empowered them much more. That's just a design philosophy that I find really exciting.
那么,在这样一个总体目标下,你认为需要什么来保持一定程度的简洁性?
What do you think it takes to maintain some level of simplicity given that overarching objective then?
嗯,我会说,那正是你获得简洁性的方式。噩梦自行车有一百万个按钮。你用的自行车可能只有一两个带数字的旋钮。那里其实有深刻的简洁性。我认为真正的简洁就是:暴露基本结构,让人们利用它。挑战在于如何让人们达到精通这些结构的境界。入门路径是什么样的?他们需要一些例子来开始吗?他们需要一些关于如何使用这些东西的结构化教育吗?也许在第一天,噩梦自行车可以说是“更容易使用”。但我认为 Don Norman 有一本很棒的书叫《与复杂性共存》,比他最著名的书名气小一些。他谈了很多像钢琴这样的乐器。钢琴实际上在某种程度上设计非常简单,但你不能走过去就弹。弹好它需要很多实际技巧。我喜欢的一个说法是“为使用的第 40 个小时而设计”。
Well, I would say that's how you get simplicity. The nightmare bicycle has a million buttons. Your bike that you use probably has one or two knobs with numbers on it. And there actually is deep simplicity there. I think that's what true simplicity is: when you expose the fundamental structure and let people take advantage of it. There is a challenge of how do you get people to the place of virtuosity with those structures. What's the on-ramp look like? Do they need some examples to start? Do they need some structured education around how to use these things? It may be the case that on day one, the nightmare bicycle is quote unquote easier to use. But I think Don Norman has a great book called 'Living with Complexity', lesser known than his most famous one. He talks a lot about instruments like a piano. A piano is actually a very simple design in a way, but you can't just walk up to it and play it. It takes a lot of actual skill to play that thing. One phrase that I like is 'designing for the 40th hour of use'.
我觉得很简单,就是当有人投入了整整一周的时间,他们会感到有能力和舒适,而不是刚开始的第一分钟。我脑子里自然就会想到 AI 聊天这种随处可见的原语,我实际上在 Notion 里用得更多。就在前几天,我有个行为转变,当时我想从几千条记录的数据库里找到好的线索,我就直接打开聊天说:“这是我的标准,帮我列个清单,这是我希望的格式。”然后我就想,“天哪,这太不一样了,但更好。”你知道,它更好。然而,这恰恰是你说的那种张力的完美例子——聊天本身暴露了原始系统,但我们在节目里也聊过很多次,这本身就有各种复杂之处,比如“我到底该拿这个闪烁的光标怎么办?”之类的问题。所以我不知道你怎么看这个问题,很多设计师都在努力创建系统,让用户能够有效地与 AI 协作,并思考在这个世界里需要什么样的 UI 层面。你有什么想法吗?
Real simple, I think, is when someone's invested that full-time week and they feel empowered and comfortable, not the first minute. My brain naturally goes towards like AI chat as a primitive that you see everywhere that I actually have been using in Notion much more. Even just the other day, I had this behavioral shift where I was trying to find good leads in a database of a few thousand and I just turned to chat and I said, "Here's my criteria. Create a list. Here's how you want me to format it" and I was like, "Oh my gosh, this is so much different, but it's better." You know, it's better. And yet, it's like kind of the perfect example of this tension that you're talking about where it's like the chat itself is exposing the raw system and yet you know, we've talked a lot about even on this show of just how that has all of its own complications and you know, what the heck do I do with this blinking cursor? That kind of a thing. So I don't know how do you even think about that in terms of like so many designers are working through how to create systems to enable users to collaborate with AI effectively and trying to think about the level of UI that needs to exist in that world. Do you have any thoughts there?
我觉得你说到了非常真实的一点,我完全同意你的看法:AI 聊天实际上是一个非常高级的用户界面。人们以为它是个简单的消费级界面,但实际上并非如此。从某些方面来说,你可以说它就像一辆展示齿轮的好自行车——你大部分时候就是在和原始机器对话。如果你真的技艺高超,知道如何获得好结果,你就能在雕琢与这个工具协作的细节上走得很远。而且你不需要有技术头脑什么的。你可以读网上的很多帖子,比如 Reddit 上那些找到了很好 AI 工作流的人。但另一方面,是的,当你没有按钮可点的时候,学习起来就难多了。比如如何使用这个东西的问题,入门并不容易。我觉得这正是我们在 Notion AI 中经常思考的——一旦你找到了适合自己的工作流,它就会变得极其强大,我每天都在用。但确实,当你看到一个带闪烁光标的文本框,以及这个既有点智能又有点笨的机器时,真的很难分辨其中的区别。尤其是如果你不整天捣鼓这些东西的话。我认为这在某种程度上是根本性的挑战。另外我想补充的是,聊天通常是一个好界面,但往往也非常受限。有两件事非常重要:你需要能够指向东西。所以当我们对话时,我可以指向某些东西,我们就能共同关注某个工件。我认为这是我们在 Notion 经常思考的。你看,你有聊天和共享工件,对吧?那么如何符合人体工学地使用它呢?
I think you're hitting on something really real which is that I think you're totally right that AI chat is actually a very power user interface. People think that it's like a simple consumer interface, but actually it is. In some ways, I think you could say, yeah, it's like a good bicycle that shows you the gears. Like you're just talking to the raw machine for the most part. And if you're really virtuosic and you know how to get good results, you can get really you can go really far towards crafting the details of how you work with this thing. And you don't need to be like technically minded or anything. I think you can read lots of posts on the internet, you know, people on Reddit who figured out great workflows for using AI. I think the flip side is yeah, it's a lot harder to learn when you don't have the buttons to click. Like the question of how to use this thing is not very easy to onramp into. And I think that's something we think about a lot with Notion AI actually is once you figure out the workflows that work for you, it's insanely powerful and I use it every day. But yeah, it's true. Like when you see a text box on a blinking cursor and this machine that is somewhat intelligent but somewhat dumb and it's really hard to know the difference. Especially if you don't spend all day tinkering with these things. I think in some ways that's the fundamental challenge. And another thing I'll add is I think chat is often a good interface, but it's often very limiting. Two things that are really important is you need to be able to point to stuff. So when we have a conversation, I can point to things and we can have shared attention on some artifact. And I think that's something we think about a lot at Notion. You know, you have a chat and a shared artifact, right? So how do you ergonomically work with that?
就像人们说话和指指点点一样。
Just like people talking and pointing.
而且这是双向的,顺便说一句。我需要向 AI 指出东西,AI 也需要向我指出东西。另一件事是,我认为文本作为一种数据抽象,在可视化信息方面非常有限。我们有一整个平面设计领域,对吧?我认为自然语言文本对于人类向 AI 输入来说非常好,尤其是语音,感觉很好。但对于 AI 返回给我们的信息,我认为我们可以用非文本的表示和数据可视化来更有创意。这并非新想法。比如我问 Siri 今天天气怎么样,它会显示一张带有太阳图标的天气预报卡片,对吧?所以我觉得真正让我兴奋的是进一步朝这个方向推进。想象一下,你问 ChatGPT 或 Notion“我退休时会有多少钱?”我希望得到一个我可以自己摆弄的交互式图表,而不仅仅是一个数字。
And it goes both ways, by the way. I need to point at things out to the AI. AI needs to point things out to me. The other piece is just text I think is a really limiting data abstraction for visualizing information. We have a whole field of graphic design, right? And I think natural language text is really good for human to AI input, especially with voice. It feels really good. But for the AI coming back to us, you know, I think we can be much more creative with non-textual representations and data visualizations. And this is not a new idea. Like when I ask Siri what the weather is today, it shows me a weather forecast card with like a sun icon, right? And so I think that's the sort of thing that gets me really excited is pushing into that direction further. What sorts of imagine, you know, ask ChatGPT or Notion like how much money am I going to have when I retire? I want to get back like an interactive chart that I can mess with myself, not just like a number, you know.
嘿,很快说一下,让我告诉你全新的 Dive Talent Network。我亲手汇集了超过一百位我所认识的最有才华的设计师和构建者,这样我就可以把他们推荐给我最喜欢的公司。所以如果你在听这个,并且对新的机会持开放态度,这个人才网络是匿名的,压力非常小,只是一个简单的方式来了解有什么机会,而不必在社交媒体上发帖。所以如果你有兴趣加入,或者你正在寻找下一个员工,请访问 dive.com/club/talent。
Hey, really quickly, let me tell you about the all-new Dive Talent Network. I've hand assembled over a hundred of the most talented designers and builders that I know so I can recommend them to my favorite companies. So if you're listening to this and you're open to new opportunities, the talent network is anonymous and super low pressure and it's just an easy way to see what's out there without having to post on social media. So if you're interested in joining or maybe you're looking for your next hire, head to dive.com/club/talent.
你在基于画布的 AI 界面方面做了多少探索?因为那是我自然而然会想到的方向。就像你刚才谈到空间上下文时,我几乎希望能够像 Figma 评论那样点击东西,然后把它推给 AI,然后让模型生成一些视觉化的东西,就像你说的那样,但也许我还可以分支,你知道,这在很多方面就像是终极的高级用户界面,但潜力巨大。我对此非常兴奋,但我脑子里有个小 bug,让我在想:我是不是大大高估了普通用户在与 AI 交互时想要的复杂程度?
How much exploration have you done with canvas based UIs for AI? Because that's kind of where I naturally go for this. Like even when you're talking about like the spatial context, I almost want to be able to like Figma comment style tap on things and then push it to the AI, but then have them maybe like have the model generate something that is visual like you're saying, but maybe it's also maybe I can branch, you know, it's like that is in so many ways like the ultimate power user interface, but it has so much potential. I get so excited about it, but part of me is like has this little bug in my brain where I'm just like, am I vastly overestimating the amount of complexity that an average user wants when interacting with AI?
我喜欢这个挑衅。画布不是我个人探索过的东西,但我认为它们非常有前景。我看到过一些工作,比如我们共同的朋友 Tyler Anger 与斯坦福的一些人合作的项目 Spellburst,他们基本上有一个画布,你可以与 AI 一起制作 Processing 中的动画草图,你可以创建现有草图的变体和替代方案,并在画布上分支,形成一棵探索树。我认为用视觉方式来表示思维过程,并在空间中看到它展开,这非常强大。你知道,人们在 Figma 中一直这样做,对吧?你缩小视图,会看到一系列画板,整个过程就铺展在空间中,我认为这是一个非常强大的模式,它既适用于人类独自创作,也适用于与 AI 共同创作。这实际上是我经常思考的一个主题,我发现一个非常有力的视角是:人类与 AI 的协作本质上是一个版本控制问题。
I love that provocation. Canvases aren't something that I've personally explored, but I think they are very promising. And I think some work that I've seen there's this project Spellburst by our mutual friend Tyler Anger who worked with some folks at Stanford on this and they basically had this canvas where you could work with AI to make these animated sketches in Processing and you could create variations and alternatives of existing ones and kind of branch out on this canvas and have this tree of exploration. And it's I think it's very powerful to have a visual way to represent that thought process and see it unfold in space in some ways. You know, people do this in Figma all the time, right? You have this like you zoom out and you see this kind of like trail of artboards and the whole process is just like laid out there in space and I think that's a very powerful pattern and I think it applies to both humans creating and co-creating with AI both. This is actually a theme that I think a lot about is one lens that I find very powerful is that human-AI collaboration is fundamentally a version control problem.
我所说的版本控制,不是人们通常理解的版本历史,而是指创意过程本身——探索不同的做法,尝试新东西,碰壁后回到某处再试。在 Figma 里你可以通过空间来做这件事,在 Git 里你有分支之类的工具。有一些很酷的研究项目,比如 Eric Ron 的 Quick Pose,他把这些想法融合起来,在画布上排列变体,你可以说“这些是好的,那些是坏的”。它们对应着某种底层的版本控制系统。所以即使没有 AI,我认为所有创意领域的人都应该拥有更好的版本控制工具。软件工程师目前拥有最好的工具,更多人可以用上分支和历史功能。但当你和 AI 一起工作时,这变得极其强大,因为 AI 大部分时候做的是坏事,偶尔做好事,但大多数时候做的是我不喜欢的事。对吧?如果我处在一个难以撤销、建议或审查的环境里,那感觉糟透了。而如果我处在一个像编码智能体那样的环境里,感觉就棒极了,因为 50% 的时间里我的小外星智能会带来很棒的东西,我很开心,另一半时间我就迭代或扔掉它。这也是我们在 Notion 思考的一个主题:如何通过强大的版本控制工具来实现真正符合人体工程学的人机协作。我喜欢和你聊天的原因之一是你有一个数据库,里面装满了不同的实验、产品或你用来寻找灵感的东西。所以我很好奇,在这个主题范围内,有没有其他你觉得有趣的东西,或者甚至是一些塑造了你对这类软件思考的个人实验?
And what I mean by that is not people think version control they think oh it's like version history or something but really when I say version control I mean the creative process is about exploring different ways of doing stuff and trying things out hitting dead ends coming back somewhere trying something new in Figma you can do this in space in Git you have tools to like make branches and stuff there have been some really cool research projects like a quick pose by Eric Ron where he kind of like um mashed these ideas up and had variations that you can arrange on a canvas so you can say like these are the good ones and these are the bad ones. They correspond to like some underlying version control system. And so even without AI, I think people in all creative fields deserve better version control tools. Um software engineers have the best ones right now and more people could use branching and history tools. But then when you're working with AI, it's insanely powerful because the AI mostly does bad stuff. Occasionally does good stuff, but mostly does stuff I don't like. Right? And if I'm in an environment where it's hard to undo or or suggest or review, that feels terrible. Whereas if I'm in an environment um like coding agents would get, it feels fantastic because 50% of the time my little alien intelligence shows up with awesome stuff and I'm happy and other half I just iterate or I throw it away. This is a theme that we're thinking about at Notion too is how do we enable really ergonomic human AI collaboration by having really powerful tools for version control. One of the reasons I like talking to you is you're you have this database of different experiments or products or things that you're like looking at for inspiration. So I I guess I'm kind of just curious if there are any others in this topical ballpark that you find interesting or maybe even personal experiments that have kind of shaped the way that you're thinking about this set of software.
我和团队一起做的最大项目之一叫 Patchwork。Patchwork 基本上是我们验证“版本控制才是关键”这个假设的产物。我们为自己构建了一个协作环境,目标(也实现了)是在浏览器中完成实验室里所有的工作。你可以把它想象成一个 Notion 的克隆。我们有 Markdown 编辑、白板、电子表格等各种功能。但核心是让创建替代方案、建议和审查变得非常容易。在 Patchwork 的任何文档上,你都可以点击一个按钮获得一个分支。不需要运行什么奇怪的命令,它就发生了。那是你私有的副本,可以在隔离环境中工作。你可以把链接发给别人,让他们审查你的分支,有点像 GitHub 的 Pull Request,但更简单。当你对分支满意时,就可以合并。Patchwork 运行在我们实验室开发的一个数据同步库上,叫 Automerge,这个库的要点就是优雅地合并不同分支上的工作,避免可怕的合并冲突。所以我们投入了全栈,从系统最底层一直到用户界面设计,比如如何展示分支?它们甚至应该叫分支吗?
One of the biggest projects I worked on together with the team there was called patchwork. And patchwork was basically us playing out this hypothesis that version control is the thing that matters. And so we built a collaboration environment for ourselves. Our our goal which we achieved was to do basically all of our work at the lab in this collaboration environment in the browser. You can think of it kind of like a notion clone in a way. And we had you know markdown editing, whiteboarding, spreadsheets, all sorts of stuff. But at the core was this idea that it was going to be really easy to create alternatives and suggest and review. So on any document in patchwork, you can hit a button and get a branch. There's no like weird commands to run. It just happens. That's your private copy off in the corner that you can work on in, you know, isolation, right? You can send a link to someone so they can review your branch. Kind of like a GitHub pull request but with less ceremony. And then when you feel good about your branch, you can merge it. and Incan switch patchwork runs on this data sync library that we developed at the lab called automerge where the whole point of the library was to help merge together work that had happened on different branches in a nice way so you didn't end up with these terrible merge conflicts that you have to fight with. And so we kind of invested full stack from like that lowest layer of the system all the way up to the thinking about the user interface of like how do you show branches? Should they even be called branches?
我们每天都用这个。它对于审查博客文章草稿或论文草稿来说太棒了。我们在上面写了很多东西。我们还测试了这些想法。有一些正在进行的工作是在孩子身上测试。我们为游戏开发做了一个 Patchwork 版本,现在正在教室里测试。12 岁的孩子能理解分支吗?结果发现,他们完全能理解。哦,还有最后一点我没提:某个时候我们突然意识到 AI 是个东西。所以我们加入了 AI 机器人,它们使用所有这些共享的分支基础设施。这非常契合,因为我们为人类设计了这套东西,它对 AI 也同样好用。如果你已经习惯了使用分支和审查,那么转向使用 AI 机器人就不是什么大跳跃。这实际上就是我们在编码中看到的。每个软件工程师都已经知道如何使用 GitHub,所以 AI 不是一个大跳跃。我认为,要真正实现 AI 协作,你需要这种特洛伊木马:让人们习惯于为任何类型的工作思考变体和审查,然后将其用于 AI。最后一点,作为 Patchwork 的收尾:这听起来可能很酷、很有野心,但实际上我所说的一切都只是通往一个更疯狂目标的手段。我们的想法是,Patchwork 中的任何软件都应该是可塑的。你应该能够从软件内部实时编辑软件。所以我们有各种自定义工具。在写文章的时候,我们会想出新的工具创意,用 vibe coding 的方式实现,然后实时部署到这个平台上。但猜怎么着?那里也需要版本控制。因为如果我们使用一个应用,比如这个播客录制应用,然后我们有了一个新功能的想法,我们实时编码,结果它坏了。那很糟糕,对吧?你不能像编辑 Google 文档那样实时编辑软件,因为它会经常坏掉。你需要的是能够克隆它、尝试新东西,当感觉不错时再与团队分享。同样的概念,只是分支而已。所以,如果你让非技术人员——只是普通文档编辑者——习惯于用版本控制的思维来思考,这实际上是让人们与团队一起编辑软件的关键基石。
You know, and we use this every day. It was awesome for like reviewing blog post drafts or essay drafts. We wrote a lot on it. We also tested the ideas. So there's some ongoing work to test them with kids. So we built a version of patchwork for game development and it's being tested in classrooms right now. Can you know 12-year-olds understand branches? Turns out actually yeah, they totally can. Oh, and then the last piece which I haven't mentioned is at some point we were like wait AI is a thing. So we added AI bots that use all this shared branching infrastructure, right? And so, and it was a really really beautiful fit because we'd nested in this for humans and it worked well for AI too. And if you're used to using branches and reviewing stuff, then moving to using AI bots with that isn't a big leap. That's actually what is we're seeing in coding. Every software engineer knows how to use GitHub already. So AI is not a big leap. I think this is the kind of Trojan horse that you need to pull off to really get AI collaboration right is get people used to thinking in terms of variations and review for any kind of work and then use that for AI. The last piece I'll mention just to kind of close out the patchwork thing is that this might sound cool and ambitious but actually this was all everything I've said so far was just a means to a much crazier end which is that our idea was that any of these bits of software in patchwork you should they should be malleable. You should be able to live edit the software from within the software. And so we had all these custom tools. You know, while we were writing essays, we would make up new ideas for tools and vibe code things and you could live deploy them into this platform. But guess what? You need version control there, too. Because if we're using an app, like let's say we're using this podcast recording app and we're, oh, I have a new idea for a feature and then we like live code it and it breaks. That sucks, right? Like you can't really like live edit software like you can a Google doc because it's going to break a lot. What you need is the ability to like go clone it, try out stuff, and when it feels good, share it with your team. Same concept. It's just branches, right? So, if you get people used to thinking in version control terms who are who are not technical, but just normal document editor of people, that's actually a key building block to getting people to the place of editing their software together with their teams.
有趣的是,看看你的职业生涯,当你开始做这类事情时,我想你主要是通过这样的视角:你可能需要一定程度的开发专业知识才能完成这些。然后突然之间,你迎来了 LLM 时刻。每个人都在谈论它,你心想:“哇,我一直在思考的东西居然适用于所有人。” 这正是我的感受。而且你知道,这远在我之前。人们已经思考这些东西几十年了。事实上,个人计算的起源——Alan Kay 从 80 年代就开始思考这些了。他对个人计算的愿景是:孩子们在玩电子游戏的同时实时编辑游戏规则。
It's interesting even just looking at your career and when you started working on this kind of thing. I'd imagine it was mostly through the lens of well, you probably have to have some level of development expertise in order to accomplish these. And all of a sudden, you had this LLM moment. Everybody's talking about it and you're like, wo, the thing I've been thinking about is applicable to literally everybody. That's exactly how it feels to me. And you know, it comes way before me. People have been thinking about this stuff for many decades. Like in fact, the origins of personal computing, Alan K has been thinking about this stuff for, you know, since the 80s, right? um his his vision for personal computing was kids are live editing the rules of a video game while they're playing it.
嗯,但我觉得你说得完全正确。
Um but I think you're you're you're totally right.
整个事情的核心有一个难题:如何让人们把头脑中模糊的意图翻译成计算机能够正式理解并执行的东西?事实证明,这是一个非常棘手的问题。人们一直在用 AppleScript、宏录制、示例编程和演示编程等方法在边缘试探,但都没有真正奏效。然后大语言模型出现了,轰的一下——这个领域里人们几十年来积累的所有好想法,今天大多数人还不知道,突然就变得相关了,因为大语言模型存在了。所以我思考的很多事情,就是把人们已有的、现在真正可行的好想法变成现实。
There was this hard question at the heart of the whole thing: how do you get people to translate the fuzzy intent in their head into something a computer can formally understand and run? It turned out to be a really difficult problem. People were nibbling around the edges with things like AppleScript, macro recording, or programming by example and demonstration. Nothing really worked. Then LLMs came along, and boom—all of a sudden, all these great ideas people had for decades in this field, which most people today don't know about, are suddenly relevant because LLMs exist. So a lot of what I think about is just taking good ideas that people had that actually work now and making them real.
有几个相关的话题经常一起出现。一方面,是那种本质上永久性的可塑或可变形软件。我们的朋友 Tyler,我记得他说过类似的话:就像你住进公寓的第一个月里搬动家具一样。另一方面,有一种观点认为,模型本身知道你想要完成什么,也许它们会为你生成甚至更一次性的界面。我很好奇你倾向于哪一边。你觉得哪个方向更有可能被引入像 Notion 这样更通用的主流工具?
There are a couple related topics that often come up together. On one hand, it's more like malleable or moldable software that is inherently permanent. Our friend Tyler, I think he said something along the lines of: it's like moving the furniture around in your apartment in the first month of living there. And on the other end, there's this idea that the models themselves know what you're trying to accomplish and maybe are spinning up potentially even more disposable interfaces on your behalf. I'm curious where you gravitate toward. Do you have any thoughts on what might have a more realistic possibility of being introduced into more general-purpose mainstream tools like Notion?
很高兴你问到这个,因为我觉得人们对此很困惑。我想澄清一点:当我说可塑软件时,我指的不只是一次性软件。我对可塑软件的主要思考,其实更接近你刚才提到的 Tyler 的观点:设计我家的室内空间。当我回到家,我不希望所有东西都被重新布置;我希望它保持原样。而如果我想移动家具或把东西挂到墙上,我希望有权这么做。所以我更把它看作是一种随着时间的推移打造环境的过程,这个环境实际上更稳定、更可预测——不仅对我自己,对我的团队也是如此。拥有我们共同工作的、可预测的共享环境也非常重要。讽刺的是,在某种程度上,我认为可塑软件反而带来更稳定的软件,因为我有更多控制权。远处某个公司办公室里的人不会每天给我推送奇怪的重新设计。我可以自己整理我的房子,让它保持我想要的样子。我把通过使用而逐渐演化的持久软件,作为思考可塑性的主要视角。
I'm so glad you asked about this because I think people are very confused about it. I want to clarify something. When I say malleable software, I do not mean only disposable software. The main thing I think about with malleable software is actually much closer to what you just brought up with Tyler's point: designing my interior space in my house. When I come home, I don't want everything to be rearranged; I want it to be the way it was. And if I want to move the furniture or put things on the wall, I want to have the right to do that. So I think of it more as crafting an environment over time that's actually more stable and predictable—not only for myself, but also for my team. Having shared environments that we all work in together that are predictable is also really important. Ironically, in some ways, I think malleable software results in more stable software because I have more control. People far away in some corporate office aren't pushing weird redesigns on me every day. I get to organize my own house and keep it the way I want. I think about long-lasting software that evolves gradually through use as the primary lens for thinking about malleability.
我能问一个澄清性问题吗?那么,你认为在多大程度上是用户有某种意图——比如,嘿,我想改这个或我想塑造这个——而多大程度上是底层模型自己在观察行为?也许它们会观察你一段时间内如何使用 AI 聊天,然后说,你知道吗,实际上,让我们为你做一个对应的界面,因为你经常试图完成这些事情。你觉得我们在这个光谱上可能处于什么位置?
Can I ask a clarifying question on that? So, how often do you think that is the user having some level of intent—like, hey, I want to change this or I want to mold this—versus the underlying models themselves observing the behavior? Maybe they look at how you're using the AI chat over time and you're like, you know what, actually, let's make you a corresponding interface because you're trying to accomplish these things frequently. Where do you think we might fit on that spectrum?
我认为主动建议的想法很酷,因为不是每个人都是那种倾向于思考或注意到这类机会的人。我关心可塑性的一个原因是,我认为它能培养人们的一种心态。这是一种能动性的心态——相信你可以改变你的环境和周围的事物。如果你是某种类型的人,你就会开始更多地注意到这些机会。我认为这种心态的开始方式是,有机会尝试某件事并看到它产生效果,感受到那个闭环。我现在有一个小宝宝,当我思考未来如何抚养她时,我会想:如果她想装饰她的房间什么的,与其说不行,我们来决定你房间的装饰,不如说可以,你可以在这些范围内做。这类事情会鼓励人们更多地做出那种行为。我认为主动建议很酷,我希望人们越来越能在整个生活中思考:我能改变什么?而不是:这就是交给我的东西。
I think the idea of proactively suggesting is cool because not everyone is the type of person who tends to think about opportunities like that or notice them. One of the reasons I care about malleability is that I think it cultivates a mindset for people. It's a mindset of agency—of believing that you can change your environments and your surroundings. And if you're a certain type of person, you start noticing those opportunities more. I think the way that starts is by having the opportunity to try something and have it have an effect, and to feel that loop close. I have a young baby now, and when I think about the future of how I want to raise her, it's like: if she wants to decorate her room or something, instead of saying no, we choose how your room is decorated, it'd be cool to say yeah, you can within these boundaries do that. That's the kind of thing that encourages people to do more of that behavior. I think proactive suggestions are cool, and I want people to increasingly live their entire lives thinking: what can I change? Not: here is what is handed to me.
我想回到一次性软件这个话题。也许它是可塑性的一个子类别——我不太确定。我认为它有其适用的时间和场合。我不认为所有软件都会变成一次性的、即时生成的。而且我认为这些快速、短暂的工具有真正的价值。在我自己的软件工程实践中,我经常使用它们。我会想:如果我有大量资金可以花在 token 上,有大量时间让它们通宵工作,我能从中得到什么?举个例子,我有一个项目,要把我的个人网站移植到一个新框架上。第一次尝试时,我想就让 Claude 给我写一个脚本来完成。它基本可行,但我必须审查这个很长的脚本,而且很难判断它是否真的做了我想做的事。于是我说:你能给我做一个指挥中心吗?它会引导我完成移植过程,同时可视化整个流程。结果就有了一个很酷的终端界面,有两列:旧网站和新网站的实时预览,然后我点击步骤,还有一个小文件预览。每一步它都会说我在做什么,然后我看到文件出现,再看到我的新网站版本重新加载。我就想,好的,这部分完成了。它引导我完成了整个过程。这几乎就像我让你做这件事,然后请你解释你的工作——你不会只把脚本发给我,你可能会给我展示一些东西并教我。那个工具本质上是一次性的,只用于这一个 PR。但我能够经济地构建它,因为 AI 存在。我把这些工具称为“夹具”,来自木工领域。你制作一个工具,只为了完成一个项目。我认为这也是一个非常酷的模式。
I just want to come back to the disposable software. Maybe it's a subcategory of malleability—I'm not quite sure. I think there's a time and place. I don't think all software is going to become disposable, generated on the fly. And I think there is real value in these quick ephemeral tools. I do a lot of it in my own software engineering practice. I try to think: if I have a lot of money to spend on tokens and a lot of time for them to work overnight, what can I get out of that? For example, I'll give you one concrete example. I have a project I'm working on to port my personal website to a new framework. The first attempt, I thought I'm just going to have Claude write me a script that does it. It kind of worked, but I had to review this really long script, and I found it hard to tell if it was really doing what I wanted. So then I said: can you make me a command center that will walk me through the process of doing this port myself but visualize the entire process? So there's this crazy terminal thing that has two columns: the old and new website preview running live, and then I click through steps, and there's a little file preview thing too. Each step it would say here's what I'm doing, and then I would see the files appear, and then I would see my new website version reload. I was like, okay, I see that that part is done now. It guided me through. It was almost like if I had you do it and then I asked you to explain your work—you wouldn't just send me the script, you might show me a bit and teach me. That tool is a one-time thing, just for this one PR essentially. But I was able to economically build that because AI exists. I call these tools jigs, from woodworking. You make a tool just for the purpose of making one project. I think that's also a really cool pattern.
所以这种熟悉感是不断累积的,对吧?你仍然感觉在使用这些产品,但好像你只是为某个你想附加的东西快速搭建了一个工具。
So there's this compounding familiarity, right? So it still feels like you're using the products but it feels like you did just spin something up for this one thing that you're trying to attach maybe.
是的,完全正确。拥有合适的工具包能极大地加速你构建夹具的过程。而且这不仅仅是熟悉度的问题,我认为还有互操作性。我的意思是,如果你已经有一堆现有工具和数据,我不会去创建一个新的一次性工具,如果那需要我完全迁移所有数据或从头开始的话。我需要我的新工具能适配我现有的生态系统。所以,我喜欢的一个类比是:如果我买了一把新刀,我可以把它带进我现有的厨房。我不需要换一把不同的刀,对吧?因为在物理世界的厨房里,东西通常就是这样互操作的。嗯,在比特世界里,你往往会遇到各种孤岛。我认为典型 SaaS 软件的最大罪过之一就是它让你很难用新的自定义工具来扩展你现有的世界。在 Notion 中,整个系统设计就是围绕这个理念构建的:当我有一种新的方式来查看、表示或处理我的数据时,它已经处于这种灵活的通用格式中,我可以引入新的工具来应用,无论是新的数据库视图、新的自动化,甚至是通过 API 自定义编码的工具,所有这些都能在这个生态系统中工作。
Yeah, absolutely. Having the right toolkit can accelerate you so much in building jigs. And not only it's not just about familiarity, it's also about interoperability, I think. And what I mean by that is if you already have a bunch of existing tools and existing data, I'm not going to make a new disposable tool if that requires me to totally like migrate all my data or like start over from scratch. I need my new tool to fit with my existing ecosystem. So, one analogy I like is like if I buy a new knife, I can bring that into my existing kitchen. I don't need to like move to a different knife, right? Because in the physical world of kitchens often things just kind of interop that way. Um, in the world of bits, often you end up with such silos. And I think one of the greatest sins of typical SAS software is it makes it really hard to extend your existing universe with new custom tools. In notion that's like kind of the whole system design is built around this idea that when I have a new way I want to see stuff or represent stuff or work with my data it's already in this flexible kind of universal format that I can bring new new tools to bear upon whether that's you know new database views new automations or even you could go as far as like customcoded tools through the API like it's all going to work with this one ecosystem.
好的,我们稍微拉远一点来看,因为你已经思考这个可塑软件有一段时间了。突然之间,随着语言模型的出现,可实现性大幅提升。当你思考这一切可能走向何方时,比如我们处于曲线的什么位置,以及这些概念要真正进入主流产品还需要什么?
All right let's zoom out for a second here because you've been thinking about this whole malleable software thing for a while. All of a sudden, the level of attainability has skyrocketed with LMS. When you kind of think about the vision for where this could all go, like where are we at on the curve, you know, and and what's it going to take for these concepts to actually make it into mainstream products?
所以,思考这个问题的一个框架是:现在的瓶颈在哪里?
So, one frame on this question is where are the bottlenecks now?
我喜欢这个观点:以前编码和技术能力是瓶颈,现在我们看到它正在打开。我认为其他瓶颈现在更多是基础设施层面的。我们构建和分发软件的整个方式都是基于一个旧的假设:大多数人不会编码。你知道,如果你回顾软件最早的历史,实际上大多数软件一开始都是定制的。比如,一家公司会雇佣一个开发团队来为你构建软件,然后某个时候他们意识到,开发时间真的很贵,而且等等,有 10 家公司有同样的需求。我们就把这个打包起来,我猜当时可能是软盘之类的,然后卖给你,天哪,我们在第 11 张 CD 或软盘上有很大的利润,对吧?
I like that coding and technical ability was the bottleneck before and now we see it opening up. I think the other bottlenecks are now infrastructural more. The entire way that we build and distribute software was built around an old assumption that most people can't code. You know, if you look back at the earliest history of software, actually most software started out custom. So like as a company, you would hire a dev shop to build software for you and then at some point they realized, man, like dev times are really expensive and actually wait, there's like 10 companies that have the same need. we're just going to package up I guess at the time it was like a floppy or something and sell it to you and holy we have great margins on you know the 11th CD uh floppy disc that we sell right
我认为我们已经把这种思维方式延续了几十年,在某些方面它已经走得很远了。比如,如果你有一部 iPhone,你无法在 iPhone 上为 iPhone 制作软件,即使你会编码,分发软件也变得非常困难,你必须通过为大型企业需求设计的应用商店,对吧?分发需要花钱。你必须通过很多保护措施,解决公司发货时的实际问题。但这并不是一个合适的机制,让你和朋友分享你做的某个奇怪的小工具,对吧?所以我认为我们必须做的思想实验是:当每个人都在不断编辑他们的工具并制作新工具时,我们如何分享这些工具?这就是我在 Switch 中大量探索的内容,也是我对 Notion 如此兴奋的原因,因为 Notion 是其中一个答案。Notion 的核心是一个平台,你可以为自己和团队制作自定义工具,并相互分享。当你在 Notion 中制作了一个新工具并分享给你的公司时,它不需要通过任何应用商店,对吧?它实际上就像分享一个文档。另一个类比是,当你在 Google Sheets 中为公司制作一个新的电子表格工具时,你不是通过应用商店分发,你只是发一个链接。砰。嗯。
And we've kind of played out I think many decades of that way of thinking and in some ways it's gone really far like um if you have an iPhone you can't make software for the iPhone on the iPhone it's become very difficult even if you can code to distribute software so you have to go through app stores which are designed for the needs of big corporations Right? It costs money to distribute. You have to pass a lot of like protects and you know solve real problems that companies have shipping. But that's not an appropriate mechanism for you to share some weird little tool that you made with your friend, right? So I think the thought experiment we have to do is when everyone's constantly editing their tools and making new tools, how do we share those? And this is what I explored a lot in Switch and why I'm really excited about notion which is that notion is one answer to that. Notion at its core is a platform where you make custom tools for yourself and your team and you share them with each other. And when you ship a new tool that you made in notion to your company, it doesn't have to go through some app store, right? It's literally it just feels like sharing a document. Another analogy is like when you make a new spreadsheet tool for your company like in Google Sheets, you don't ship through an app store. You just like send a link around. Boom. Mhm.
你有了一个新工具,而且该工具的编辑器对每个使用该工具的人都是可用的。这就像是实现可塑性的基本条件。我认为 Notion 有这个基础。所以我们必须看看这能走多远。我的长期观点是,最终我们应该让计算的每一层都围绕这个新假设来构建。所以无论是操作系统、应用商店,还是我们每天工作所依赖的平台,都必须面对这个现实。
You have a new tool and the editor for that tool is available to everyone using the tool. That's like the fundamental conditions that are required to enable malleability. And I think notion has that that foundation. And so we will have to see how far that plays out. My view of the long term would be that eventually we should have every layer of computing built around that new assumption. So whether it's operating systems, app stores, the platforms we live in every day to do our work are going to have to grapple with that that reality.
是的,思考在一个我们体验的更多软件是可塑的世界里,价值和用途发生在哪里,这很有趣。在我看来,有一种向操作系统层面靠拢的强烈趋势。
Yeah, it's interesting to think about where value and usage occurs in a world where more of the software we're experiencing is malleable. There's like a real pull towards the OS level in my mind.
我同意,但我想质疑一下我们所说的操作系统是什么意思?所以当我想到操作系统时,你可以从系统角度非常技术性地定义它是什么。对我来说,作为一个更偏设计的人,我认为它是人们在使用计算机时思考的基本概念和隐喻。今天,很多是由桌面操作系统定义的,但浏览器也定义了一部分,甚至当你大量计算生活在一个特定应用里时,它也可以成为一种操作系统。我认为操作系统这个词被过度使用了,但它确实适用于某些平台,你真正学会了用它们的概念来思考。所以我同意你的观点,我认为具有原语的通用平台在这个新时代会有优势。
I agree and I would question like what do we mean by OS? So when I think of operating system, you can define it in a systems sense very technically of what an operating system is. For me as a a more designoriented person I think of it as what are the fundamental concepts and metaphors that people think with when they use a computer today a lot of that's defined by the desktop operating system but also you know the browser defines some of it and even when you live a lot of your computing life in a particular app that sort of can become an OS. I think that the term OS is overused but it actually does apply to certain platforms that you really kind of learn to think in terms of their concepts. So I agree with you that I think general platforms with primitives are going to have an advantage in this new era.
是的。
Yeah.
让我们稍微展开一下。那么所有这些变化如何改变设计师的角色,以及我们在设计界面时对交付物的思考方式?这些界面正在变化,而且更加流动。
Let's play this out a little bit. So how does all of these changes change the role of designer and the way that we think about deliverables in a world where the interfaces we're designing, you know, they're they're changing and much more fluid.
我对此的一个最爱灵感是克里斯托弗·亚历山大。我认为他在软件设计师中有些名气,但他是一位相信每个人都能设计自己房子的建筑师。他写了一本非常著名的书叫《模式语言》,它与另一本书《建筑的永恒之道》相配套,他在书中阐述了这样一种哲学:如果你看看古老的欧洲城镇,它们并不是都由开发商建造的,对吧?但它们看起来很美,非常非常美。每个人都喜欢这些古老的欧洲城镇。你能感觉到那里有某种非常深刻的美。他一生致力于这个问题,他相信这种情况发生的原因是,在任何当地环境中都有一套模式,人们用这些模式来制作东西,或者在这种情况下设计房子。
One of my favorite inspirations for this is um Christopher Alexander. I think he's somewhat famous among software designers, but he is an architect who believed that everyone could design their own house. And he wrote this very famous book called a pattern language, which and and it's sort of paired with this other book called a timeless way of building where he lays out this philosophy around if you look at ancient European towns, they were not all built by like a developer, right? And yet they look beautiful, really, really beautiful. and everyone loves these old European towns. Like you can feel there's something there that's like very deeply beautiful. He dedicated his life to this problem and his belief about how that happened is that there was this set of patterns in any local context that people use to make stuff or to design houses in this case.
普通人会沉浸在那套模式中,他们会知道,“哦,我们这里用这种颜色的砖”,以及“我们做那种联排别墅”。但随后他们会根据自己具体的场地和家庭需求进行调整。他们会为自己创造东西。不会有千篇一律的复制粘贴,但也不会完全混乱。这就是模式。克里斯托弗·亚历山大作为建筑师或设计师的角色,不是设计你的房子,而是设计一套模式,并教你那套模式,然后你自己去设计房子。他确实这样做了:他写了一整本书,讲述他和团队如何前往墨西哥,帮助许多家庭设计自己的房子。他们为当地环境开发了一种模式语言,并与家庭合作,教给他们足够的建筑思维,使他们能够自己做出选择。我非常喜欢这种对设计师角色的思考方式,因为它更好地划分了用户最了解什么和设计师最了解什么。设计专业知识有其作用,但更多的是设计系统,然后教用户自己进行实际设计。
And normal people would be steeped in that set of patterns and they would know, 'Oh, we use this color brick here,' and 'We do town houses that look kind of like this.' But then they would adapt that to their specific site and their specific needs as a family. They would just make stuff for themselves. You would not have any cookie-cutter copy-paste, but you also wouldn't have total chaos. It would be patterns. The role of Christopher Alexander as an architect or designer isn't to design your house; it's to design a set of patterns and teach you that set of patterns, and then you go design your house. And he actually did this: he wrote this whole book about how he and his team went to Mexico and helped a bunch of families design their own houses. They developed a pattern language for that local environment and worked with the families to teach them enough architectural thinking so that they could then make their own choices. I absolutely love that way of thinking about the role of a designer, because I think it does a better job dividing the line between what users know best and what designers know best. There is a role for design expertise, but it's more about designing the system and then teaching the user to do the actual design themselves.
那我们能不能回溯到你职业生涯的起点,你的教育创业公司,你当时正在设计教师使用的软件?如果你遵循这种关注模式而非受限软件本身的理念,你会做出哪些改变?
Can we go all the way back to the beginning of your career then with your education startup and you're designing this software that teachers are using? What are some of the changes that you would make if you were following this idea of focusing on patterns rather than the constrained software itself?
我想到的一个想法是,学校里通常会有一些战略重点,对吧?那是他们真正关心的事情,他们会把这些映射到衡量的指标上。这在某种程度上类似于在公司工作,你知道,不同的 KPI,但可能是,“我们希望学生在学校感到投入,我们将进行季度调查来了解他们的感受。”我认为我们之前想的是,“我们能否围绕许多学校关心的关键主题制作五个很棒的仪表盘?”我认为现在有了可用的工具,我想更多地转向“构建你自己的仪表盘”。那么,我们能给你哪些构建模块?由你决定你关心什么,并决定如何衡量它,以及如何利用我们的工具来实现它。我们需要教育你了解哪些工具可用,同时我们也可以在你擅长的领域教育你,比如统计分析,这样你就不会得出错误的结论,或者利用我们拥有的全国数据进行基准测试。但最终,球在你这边。这是你的学校。弄清楚你关心什么。设计优先考虑你关心的指标的界面。我想这就是我的做法。
So one idea I have there is, very often in schools they would have some strategic priorities, right? That's really the things they care about, and they're going to map those to metrics that they're measuring. It's in some ways similar to working at a company, you know, different KPIs, but might be, 'We want students to feel engaged at school, and we're going to run quarterly surveys to see how they feel about that.' I think we thought of this as, 'Can we make five dashboards around key topics that a lot of schools care about that are awesome?' I think now with the tools that are available, I want to flip it more to 'Build your own dashboard.' So what are the building blocks we can give you? It's on you to decide what you care about and decide how you're going to measure it and how you can use our tools to achieve that. We need to educate you around what tools are available, and also we can educate you around things that we're experts in, like statistical analysis, so that you don't draw mistaken conclusions, for example, or benchmarks against national data that we have. But ultimately, the ball's in your court. It's your school. Figure out what you care about. Design the interface that prioritizes the metrics you care about. I think that's how I would go about it.
我现在正试图想象这个仪表盘。我认为很自然地会想到,“嗯,你必须要有好的默认设置,作为教人们某物可以是什么的方式。”然后我想,“默认设置基本上就是你一开始会做的产品吗?这就像是一种新的思考方式,产品设计或多或少是一套默认设置,然后你围绕它构建模块和系统。”这感觉,这有共鸣吗?
I'm trying to envision this dashboard now. And I think it's natural to go to this place of, 'Well, you got to have good defaults as a way to teach people what something can be.' And I'm like, 'Is the defaults basically the product that you would make to begin with? And is that just like the new way of thinking about it where the product design is more or less a set of defaults and then you have the building blocks and systems around it.' Does that feel, does that resonate?
完全有共鸣。我觉得大概有 70% 到位了。
Totally resonates. I think it's like 70% of the way there.
那另外 30% 呢?
Give me the other 30.
是的。首先,这绝对完全有共鸣,而且非常符合我所说的可塑软件,即不是每个人每次都从头开始。更多的是你从别人已经思考过的地方开始,然后当你想调整时,你可以调整,对吧?所以我想我基本上会像你那样说。但有一个问题,当你拿到一个大型软件时,并不总是清楚如何更改它。事实上,如果你对构建模块还不熟悉,你可能甚至不会想到要改变什么。我想你会看到这一点:更熟悉软件创建过程的人,作为用户往往有更强的意见,对吧?所以我认为这与 Notion 相关。如果你克隆了一个大型 Notion 模板,那是一个非常有用的软件,然后你有一个希望它实现的功能的想法,你如何实际实现它?这就是我认为 AI 可以发挥关键作用的地方,可以说,它可以成为你的开发者,在你想要做出改变时帮助你。但我认为还有更深层次的东西:AI 能否帮助你了解这些基本元素,并教你真正有创造力和技巧地在脑海中排列它们,为你做新的事情?因为最终,真正最好的工具只有在你真正熟练掌握这些基本元素时才会出现,对吧?所以……
Yeah. First of all, absolutely this totally resonates and it really fits what I think of as malleable software, which is it's not everyone starting from scratch every time. It's more that you start somewhere that someone else already thought about, and then when you want to tweak, you can, right? And so I think I would mostly say it the way you did. There's one issue though, which is that when you get a big piece of software handed to you, it's not always clear how to go about changing it. And in fact, if you're not as familiar with the building blocks already, you might not even think about what you would change. I think you see this: people who are more familiar with the creation of software as a process tend to have stronger opinions as users, right? And so I think this is relevant for Notion. If you clone a big Notion template that's a really useful piece of software and then you have an idea for something you wish it could do, how do you actually enact that? And this is where I think AI can play a really key role, which is that it can be your dev for you, so to speak, and help you make the changes when you want to make them. But I think there's a much deeper thing too, which is: can AI help you learn about the primitives and help teach you to actually be creative and virtuosic in arranging them in your head to do new things for you? Because ultimately, the really best tools are only going to come if you actually are becoming fluent in the primitives, right? And so...
我认为部分原因在于思考使用 AI 的方式,这些方式不仅仅感觉像自动化,尽可能远离细节,而是更接近于与 AI 合作,它教你如何自己完成,并为你扫清障碍,这样你实际上是在发展这些更深层次的思维模式。
I think part of that is thinking about ways to use AI that don't just feel like automation and getting as far away from the details as possible, and are closer to like working with the AI and it's teaching you how to do it yourself and unblocking you so that you are actually developing these deeper thought patterns.
我喜欢这个想法。这几乎感觉你必须放松对“价值实现时间”作为某种新用户体验核心衡量标准的执着,因为当你说话时,连我都在脑海中改变画面,从一套默认设置,到可能有一个更长的入职过程,AI 正在了解某人,你可以看到它从三四套不同的默认设置中提取,并在开始时为你塑造产品。你可以看到它在变化。所有这些都很有趣,但你知道,这会花费更多时间,但也许这实际上是件好事。
I like that. It almost feels like you have to loosen the grip on time to value as a core measuring stick for some kind of new user experience, because as you were talking, even I was changing the picture in my head from one set of defaults to maybe there's a little bit more of a lengthy onboarding where the AI is learning about someone and you can see it pulling from maybe three or four different sets of defaults and it's actually shaping your product for you in the beginning. You can see it changing. All of that is interesting, but it's like, you know, it's going to take more time, but maybe that's actually a good thing.
这是一个迷人的张力,对吧?我认为现实是,一些用户希望立即获得价值,如果你强迫他们进入一个缓慢的过程,他们就会离开,因为他们没有投入。另一方面,我觉得想象一下很有趣:想象你与一家设计咨询公司合作,你很投入。你说,“我想做最好的应用。”你来到他们的办公室,准备好了。然后他们只是说,“给你,”然后他们就把昨天做的软件给你,把你赶出去。你会说,“什么?”我希望你至少问我一个关于我想要什么的问题,对吧?我认为当你想象我们期望这个过程如何时,就像,“哦,我认为这需要几周时间,在第一次会议上,我们只是谈论我需要什么,你会理解我。”
This is a fascinating tension, right? I think the reality is some users want to get to value immediately, and if you force them into a slow process, they're just going to leave because they're not invested. On the flip side, I think it's funny to imagine: imagine you work with a design consultancy and you're invested. You're like, 'I want to make the best app.' And you show up to their office and you're ready to go. And then they just say, 'Here you go,' and they just give you the software that they made yesterday and they kick you out. You would be like, 'What?' Like I wanted you to at least ask me one question about what I want, right? And I think when you imagine how we expect that process to go, it's like, 'Oh, I think this is going to take a few weeks where in the first meeting, we're just going to talk about what I need and you're going to understand me.'
我想来个急转弯,因为你最近发了一条我很喜欢的推文,谈到了你像外科医生一样编程的做法。所以,我很想请你展开讲讲。你在思考些什么?你使用这些新 AI 工具的方式是如何演变的?
I want to take a hard left because you had a tweet that I loved recently and you talked about your practice of coding like a surgeon. So, I'd love for you to just unpack that. What are some of the things that you're thinking about? How have you evolved the way that you work with some of these new AI tools?
是的。所以,像外科医生一样编程,故意起个奇怪的标语,对吧?我是在回应当前关于 AI 的讨论中一种论调,大致是:“哦,每个独立贡献者都变成了经理,对吧?因为你会拥有所有这些智能体,我们都要过经理的生活,就像在 Slack 上不断跟下属沟通、帮他们扫清障碍之类的。”我在想,这种世界观让我觉得有两件事很令人沮丧。第一,我真的不想那样做。听起来好像我之所以不是经理是有原因的,对吧?那是个人偏好问题。但第二,我不确信那是一条能让我产出最佳工作的路径。即使 AI 变得更好,也许在某个时间点,但考虑到当前的能力,AI 对我来说非常非常有用,但我不想那样使用它。所以像外科医生一样编程的想法很简单。外科医生亲自动手术。他们不会坐在行政办公室里让别人做手术。他们就在手术室里。我不想讲得太血腥,但他们确实在动手,对吧?他们手术室里有助手帮忙处理很多辅助部分。他们走进手术室前有准备工作,因为他们的时间非常宝贵。他们可能不会花很多时间在低杠杆的事情上,因为他们有如此专业的专长,但从核心来看,他们就像是一个高水平的独立贡献者,我是这么看的。很多人有异议,比如有人回复我的推文说:“不,你没完全理解外科医生是怎么工作的。”我的意思不是字面意义上的。我只是想说,我们如何把 AI 看作一种更好地利用时间、保持与工作的联系、自己动手但让 AI 为我们做准备工作、有工具在当下帮助我们,这样我们就能真正专注于我们热爱的事情,少做其他事情。这就是我试图在今天用编码智能体来做我核心工作的方式:当我早上坐到办公桌前开始开发一个功能时,我希望已经准备好一份简报,关于我今天要接触的所有代码、它们如何工作、有哪些陷阱。也许我会看到 AI 通宵为我做的草稿,勾勒出编码的可能方向。也许还有一些想法给我。昨天原型中的所有 bug 都在一夜之间被修复了。我不需要做那部分。现在我可以去玩、去创造,进行那三个小时的冲刺,那才是我真正热爱并且作为拥有人类技能的我独一无二适合做的事情。
Yeah. So, coding like a surgeon, intentionally weird tagline, right? What I was reacting to is I think there's a bit of a strand in the discourse around AI right now that goes something like, "Oh, every IC is becoming a manager, right? Because oh, you're gonna have all these agents and we're all going to be like living manager life, which is like you're on Slack constantly like talking to your reports and like unblocking them and stuff." I'm thinking about, you know, two things I find frustrating about that worldview. One, I don't really want to do that. Sounds not like there there's a reason I'm not a manager, right? and and that's a personal preference thing, but two, I'm not convinced that that's actually a path to producing my best work. Even as AI gets better, you know, maybe at some point, but I think given the current capabilities that AI is really, really useful to me, but that's not how I want to use it. And so the idea of coding like a surgeon is very simple. A surgeon does the damn surgery. They don't like sit in some admin office while someone else does the surgery. They are in there. I don't really, you know, want to get into like gory details, like they're doing stuff, right? They're uh and they have assistants in the room who are helping them live with lots of auxiliary parts. They have prep that happens before they walk into the room cuz their time is really valuable. They're, you know, probably not spending a lot of their time on like less leveraged things because they have such specialized expertise, but in a way they're like a high-le individual contributor at the core is how I see it. And a lot of people have quibbles like I've people have responded to tweet being like, "No, you didn't quite like get how sources work." It's like I'm not I don't mean this in a super literal sense. I just mean how do we think of AI as a way to leverage our time better and stay connected to the work and doing it ourselves but having prep work done for us, having tools in the moment helping us do it so that we can really focus on the stuff we love to do and do less of everything else. And that's, you know, how I'm trying to use coding agents for my core work that I care about today, which is like when I show up, sit down at my desk in the morning and work on a feature, I want to be prepped with like a brief on all the code I'm going to be touching today, how it works, what the what the traps are. Maybe I'll see a draft that the AI did for me overnight, sketching out how the coding could go. Uh maybe some ideas for me. All the bugs that were there in the protype yesterday have been fixed for me overnight. I didn't have to do that part. And now I just get to go play and be creative and do that that you know that three-hour sprint that really is like what I love to do and what I'm uniquely like positioned to do as as me with my human skills.
这真的让我很有共鸣,因为我对用 AI 编程如何解锁了我自己感到非常兴奋——我本来对代码有不错的理解,但多年来大部分语法都忘了,突然间,哇,我真的可以参与了。话虽如此,有时感觉断断续续,我很难进入编程的心流状态。所以我想这可能就是你的帖子引起共鸣的原因,因为我不知道自己是否已经解决了这个问题。
It really resonates because I'm someone who is very excited about how like coding with AI has unlocked me as someone who kind of I had a decent understanding of code but I I most of the syntax has escaped me over the years and all of a sudden it's like wow you know I can really participate. That being said, sometimes it feels choppy like it's really difficult for me to get into a flow state coding. And so that I think was maybe why your post resonated because I don't know if I've cracked that yet.
完全同意。而且你会看到围绕这些不同工作方式的工具谱系。比如我编程时用 Cursor,因为 Cursor 是一个以与人类交互循环为理念的产品。他们优先考虑延迟和可见性。Cursor 的 Tab 补全非常灵敏,帮助我保持心流。编码智能体就不太行了,它更断断续续,感觉更像是委托,所以我确实会用它们,但我非常注意这些不同工具在我的创作过程中扮演的不同角色,因为就像你说的,保持心流对我来说是做出好作品非常重要的一部分。我认为有时人们对创作过程有一种误解,他们想象如果你做陶艺,这些人会认为你只要说:“哦,我想要一个那样的罐子。”然后机器人就能做出来,而且看起来就是那样。但不对,当你做陶艺时,你在感受黏土,你处于一个反馈循环中,对吧?你在塑造某样东西,随着它成形,你根据它现在的样子做出反应,并迅速用手操作。这是一种非常神奇的创造性体验,任何从事创造性工作的人都曾感受过,你处于这个循环中,事情不知怎么就契合了,我不想失去这种感觉。我认为失去它将无法让我做出最好的工作。
100%. And and you see this tooling spectrum around these different ways of working. Like when I'm coding like I use cursor because cursor is a product that's committed as their philosophy to this interactive loop with the human. They prioritize latency and visibility. Cursor tab complete is really snappy and helps me stay in flow. Coding agents not so much. it's more choppy and um feels more like delegation and so I do use them but I try to be very mindful of how these different tools play different roles in my creative process because like you said being in flow is a really important part of getting to good work for me. I think sometimes people have this really mistaken view of the creative process where they imagine like if you're making ceramics, these people would think you can just say like, "Oh, I want a pot that like looks like that." And then a robot could go make it and it looks it comes out. But no, like when you do ceramics, you're like feeling the clay and like you're in a feedback loop, right? And like you're you're shaping something and as it takes shape, you're responding to the way it is now and quickly acting with your hands. And there's this very magical creative thing that anyone who does creative work has felt at times where you're kind of like in this loop and things are just clicking somehow and I don't want to lose that. I think um losing that would not allow me to do my best work.
是的。我觉得摩擦驱动思考,而我们在系统层面试图做的很多事情就是消除摩擦成本。
Yeah. I was like the friction drives the thought and so much of what we try to do at a system level is eliminate friction cost.
完全正确。完全正确。
Exactly. Exactly.
在你离开之前,我想借鉴你的经验,你是一个真正能够跨越设计和工程这两个领域的人。你有丰富的编程背景,正在使用这些工具,推动事情向前发展。那么,对于在这条路上走得没那么远的设计师,你有什么经验教训或建议吗?也许他们刚刚开始尝试 Cursor 或 Claude Code,正在积极尝试将这部分作为设计师实践的一部分进行投资,但感觉还处于早期阶段。在我放你走之前,你有什么想对他们说的吗?
Before I let you go, I want to tap into your experience as someone who really is able to kind of straddle the the fence here of design and engineering. You have the rich coding background. You're working with these tools. You're pushing things forward. So, do you have any lessons learned or tips for designers who are not as far on that journey? Maybe they've just started dabbling in cursor or Claude Code. they're actively trying to invest in this part of their practice as a designer, but it still feels kind of early. Anything you want to share with them before I let you go?
我想说的是,这也适用于我自己:当我使用 AI 工具时,我总是在思考如何边做边学,从经验中学习,并利用 AI 更快地深入细节,而不是远离细节。
I think the thing I would say is something that applies to me, too, which is that when I'm using AI tools, I'm always trying to think about how can I be picking up stuff as I go and learning from this experience and getting more in the details faster using the AI rather than staying away from the details.
我认为以这种方式使用 AI 工具需要主动努力,但这绝对是可以做到的。举个具体例子,当我让 Claude 做某事时,有时它会说:‘给我计划,然后我去执行。’如果我卡住了,我会向它求助。我故意这样做,因为这迫使我去经历摩擦,真正理解发生了什么。我可能会让它做我已经会的事情,但对于我不会的事情,我会自己动手。我认为对于技术光谱上的任何人来说,总有新东西要学,总有新东西要掌握。我们现在拥有了有史以来最好的学习机器,但它们同时也成了帮你作弊的机器。所以我们每天都要做出选择:我们是要作弊,还是要变得更好?
And I think it requires active effort to use AI tools in this way, but it is absolutely possible to do it. So concrete example, maybe when I ask Claude to do something, sometimes they'll say, 'Give me the plan and then I'll go do it.' Then if I get stuck, I'll ask you for help. And I'm doing that intentionally because that's forcing me to go through the friction of actually learning what's going on here. And maybe I'll have it do stuff I already know how to do. But for stuff that I don't know how to do, I'll do it myself, right? And I think for anyone on any point on the technical spectrum, there's always new stuff to learn, always new things to pick up. We have the best learning machines ever invented now, but they happen to also be cheat on your homework machines at the same time. And so every day we get to make a choice. Are we going to cheat on our homework? Are we going to get better?
我最近非常注意一件事,就是我在使用 Cursor 和 Claude Code 默认设置(需要我批准所有操作)时的区别。Claude Code 开箱即用会以某种方式让你慢下来,也许这会影响心流状态,但对我来说这就是学习模式。我试着更有意识地去做:好吧,我实际上要读这个,我要试着理解它,也许问个后续问题,然后才点批准。而在 Cursor 里,有时很容易就开始快速滚动聊天记录。
Something I've been very aware of recently is the difference between when I'm using Cursor and Claude Code in default settings where I have to approve everything. You know, like Claude Code out of the box kind of slows you down in a way that maybe I don't know, maybe that's how it ends with flow state, but it is that's learning mode for me, you know, like I'm trying to get a little bit more intentional about, okay, you know what, I'm actually going to read this. Like, I'm going to try to make sense of this, maybe ask a follow-up question, and then I'll hit approve rather than sometimes in Cursor, it's a little bit easy to kind of just start scrolling more quickly down the chat history.
对,这很有趣。我甚至想更进一步:批准命令是一种方式,但我们能做得更好吗?也许它直接做完所有事情,然后带着学习体验回来找你。它知道你的背景,知道你知道多少,它会试图教你这个东西是如何工作的。比如,它制作一个 10 分钟的视频,用交互式图表教你工作原理,然后出一些测验题让你回答以检查理解程度。我们为什么不做这个?这些东西处于当前能力的边缘,但我认为绝对可行,我们应该要求 AI 给出非常非常好的解释,让我们人类能跟上。这是一个非常未被探索的领域。
Yeah, that's funny. I mean, I would even push further on that and say, 'So, yes, approving commands is one way, but can we do better, right? So, maybe it just goes and does the whole thing, and then it comes back to you with some learning experience. It knows your context. It knows how much you know, and it's going to try to teach you how this thing works. So, what if it like puts together a 10-minute video teaching you how it works with interactive diagrams and then quiz questions that you have to answer to check for understanding, right? Like, why aren't we doing that?' I mean, it's that sort of stuff is on the edge of current capabilities, but I think it's absolutely doable and we should be demanding really, really good explanations of what the AI did that bring us along as humans. And I think, you know, that's a very underexplored area.
哇,我之前真没想过这个。我脑海里立刻浮现出类似 TikTok 风格的画面,就是尽可能让它有吸引力。向我展示你做了什么,让我参与那个构思过程。那个世界里有太多东西了。
Wow. I hadn't really thought about that before. And immediately the picture in my brain was almost like TikTok style, you know, like just make it as engaging as possible. Show me what you did and have me participate in that ideation process. That is very there's so much in that world.
也有更简单的版本。现在每次我审查代码 PR,无论是人类写的还是 AI 写的,我都会请 AI 帮忙审查。我会问:这里大致在做什么?给我一个概述。我应该按什么顺序读哪些文件?有哪些需要注意的地方?AI 可以帮助我们更批判性地思考,而不是更少。我相信你在 Notion 入职一个非常大的代码库时,正在经历这一点。
And there are simpler versions of it too. Every time I review a code PR now, whether it's one by a human or an AI, I ask AI for help reviewing it. So I'll say what's basically going on here. Give me an overview. What file should I read in what order? What are some things that I should look out for? You know, AI can help us be more critical with our thinking, not less. Which I'm sure that you are in the throngs of experiencing that at Notion onboarding to a very large codebase.
这对我入职这个代码库来说非常重要,尤其是在我入职公司的头几个月。真正学会这东西怎么运作对我非常有用。
This is a huge thing for me onboarding this codebase like it is very in my first months at the company. It's really useful to me to actually learn how the damn thing works.
对。
Yeah.
而不是什么都替我做好。所以它既是巨大的加速器,如果使用不当,也有点像危险的拐杖。
Rather than just like have everything done for me, right? So, it's both like a huge accelerant and like a bit of a dangerous crutch if I don't use it the right way, I think.
好吧,Geoffrey,你让我思考了很多。非常感谢你今天来分享你脑子里的一些想法,祝贺你在 Notion 的新职位。非常期待你带给世界的东西。
Well, Geoffrey, you've left me with a lot to think about. I really appreciate you coming on and taking the time today to share some of the things that are rattling around in your brain and congrats on the role at Notion. Very excited to see what you bring into the world.
非常感谢。很高兴和你聊天。
Thanks so much. Great to talk to you.
在结束之前,我想花一分钟介绍我最喜欢的产品,因为我经常被问到我的工具栈。Framer 是我建站的方式,Genway 是我做研究的方式,Granola 是我在评审时记笔记的方式,Jitter 是我给设计做动画的方式,Lovable 是我用代码实现想法的方式,Mobin 是我找设计灵感的方式,Paper 是我像创意人一样设计的方式,Raycast 是我每一步的快捷方式。我亲手挑选了这些公司,这样我才能全职做这些节目。目前支持节目的首要方式就是去看看它们。你可以在 dive.club/partners 找到完整列表。
Before I let you go, I want to take just one minute to run you through my favorite products because I'm constantly asked what's in my stack. Framer is how I build websites. Genway is how I do research. Granola is how I take notes during crit. Jitter is how I animate my designs. Lovable is how I build my ideas in code. Mobin is how I find design inspiration. Paper is how I design like a creative. And Raycast is my shortcut every step of the way. Now, I've hand selected these companies so that I can do these episodes full-time. So, by far the number one way to support the show is to check them out. You can find the full list at dive.club/partners.