Ryo Lu (Cursor): AI Turns Designers to Developers

0
0
AI transcript
0:00:05 Over the last, I don’t know, 15 years or so, the art of making software fragmented a lot.
0:00:10 And then we kind of split into different roles. Each role kind of used their own tool,
0:00:16 used their own artifact. They think in their own kind of words and lingo. With Cursor,
0:00:23 things kind of flipped again. For the first time, that design is such an approachable concept and
0:00:28 skill set to a lot more people. And it brings together sort of people who have aspirations
0:00:33 for design and wanting to build things, wanting to prototype things, putting beautiful stuff out in
0:00:40 the world. There needs to be something for the human to specify what is good, what is right,
0:00:47 how I want to do it. If you don’t put in that opinion, it will just produce AI slot.
0:00:56 People will always have their strength or their unique, special skill. I see AI almost like,
0:01:03 it’s almost like a universal interface. So design is kind of like trying to figure out what is the
0:01:08 best configuration and the simplest state for all of us. The beauty is actually putting things all
0:01:09 together.
0:01:17 What happens when the designer becomes the developer? When mockups that used to die in Figma can suddenly
0:01:22 become living products in minutes? My guests today are Jennifer Lee, general partner at A16Z,
0:01:27 and Rio Liu, head of design at Cursor, the AI code editor that’s collapsing the traditional
0:01:33 boundaries between design and engineering. Rio spent years at Notion and Asana, watching his designs get
0:01:38 stuck in endless meetings and handoffs. Now he’s building tools that let designers ship real software
0:01:44 themselves. We’re exploring how AI is ending the era of fragmented teams, why taste isn’t really worth
0:01:49 talking about, and what it means when a single person could do what used to take an entire product team.
0:01:56 Rio, welcome to the A16Z podcast. Jennifer, you’ve been thinking a lot about sort of evolution
0:02:02 of design, evolution sort of as it relates to infra as well as software development. Why don’t you talk
0:02:06 about what got you so excited about having Rio and, you know, have this conversation?
0:02:13 Rio and I got to know each other over the past few months talking about how large language models
0:02:17 and AI tools are going to impact not just designers, design engineers, and how people are building
0:02:24 prototypes and coming up with great ideas. I feel like for the first time that design is such an
0:02:30 approachable concept and skill set to a lot more people, and it brings together sort of people who
0:02:35 have aspirations for design and wanting to build things, wanting to prototype things, putting beautiful
0:02:43 stuff out in the world much, much easier and faster. So Rio has gone through a lot of thinking and journey of,
0:02:50 you know, what design means, what design means in the sense of having cursor being part of, like, the
0:02:55 the building blocks of it. Like, I just really wanted to have him on the podcast and talk about
0:02:58 the future of both coding and design.
0:03:03 Rio, you’ve been at Notion now, obviously, out of design cursor. Why don’t you take us through your
0:03:06 your journey and how you’ve been thinking about some of these topics?
0:03:10 I think to me, it’s like building software.
0:03:19 Um, there’s like so many layers of abstractions and depth that you you need to take care of.
0:03:24 And in order to do something really great, you actually need to know everything.
0:03:30 like you assemble a team that works really well together with, you know, people with different
0:03:36 strengths on every layer. Maybe you have the greatest infra engineers, people doing ML.
0:03:43 Um, maybe you have, you know, um, really good design engineers who really like they can just
0:03:50 handwrite CSS and then they’ll be like perfect. Um, in order for say one person to do all of this
0:03:56 work, learn all of this. It takes a long time of trial and error. You have to build from the simplest
0:04:03 things to, you know, gradually more complex, scale it up to more people, um, share your work out to the
0:04:10 public, see what happens, do this feedback loop. And if you’re doing it in a team, sometimes it takes even
0:04:17 longer because say you’re just a designer, you, you’re doing some mocks in Figma, and then you shared
0:04:23 it out. You got some feedback. Then your PM needs to do this like PRD thing and then run more meetings.
0:04:29 And then there’s like more people involved. And then they’re like, ah, and it takes a long time.
0:04:36 And then maybe like a year later, your design came out, but then it’s like 20% of what you wanted.
0:04:46 But with this new thing, so with cursor, you can just say you have an idea. It might be a little
0:04:55 ambiguous. You just tell it to tell the agents. And then it might give you something maybe like
0:05:05 60%, 70%, uh, on the first shot. But you kind of kind of skipped a lot of the, you know, complexities.
0:05:12 Um, we kind of transformed from like, you need to understand all this thing, all these concepts of
0:05:23 making software. Then you can do something too. I can do something now. And then I might get something
0:05:31 that’s maybe imperfect, not exactly what I want. But the process of iterating and like kind of poking
0:05:38 at it becomes really quick. And then as the agents evolve, as the models get better, as it talks to
0:05:47 more tools, it understands visuals better. It can talk to Figma, the mocks that I had. It can talk to
0:05:54 Notion, all the, you know, ideas, the docs, the meeting notes, anything. And the most important thing
0:06:01 is it knows the code base, which is the truth, the material of how we, you know, build software.
0:06:10 So that kind of changes the whole thing. It’s like the tool not only, you know, impacts the individual
0:06:19 software engineers, like for them, maybe like for cursors, like we kind of try to fit as many workflows
0:06:26 and people as we can. So there’s like people who, they pride themselves at like, you know,
0:06:32 really think thoroughly, write the most clean code. For those people, they can just type and then we do
0:06:38 the tab thing. And the tab thing got really good at like, it’s almost like it knows what you want
0:06:45 to do next. So for those people, they can do that. But there’s like increasingly more people doing the
0:06:53 agent. Um, where like, even for the most professional coders, they start to do this new thing.
0:07:01 Yeah. Yeah. I am trying to think of even myself as a, uh, as, as example, uh, prior to joining the
0:07:06 firm, I was on the product side. I was working with a lot of designing designers, uh, design engineering
0:07:12 teams back then. It wasn’t called that way. It’s more like designers, front end engineers, uh, and then, uh,
0:07:20 UX designers too. Um, it was still very disjointed workflows. Like, you know, a lot of the, the design
0:07:27 work happens more in isolated fashion with just the designers themselves. Like they spent two weeks
0:07:34 coming up with a concept. What does the UI look like and work with design UX designers on what the UX
0:07:40 looks like, and then hand it off to the product team and works with engineers. Figma already bring
0:07:46 that sort of process a lot closer that you can collaborate around one artifact that everybody
0:07:53 can give in plus and prototype and bring sort of more of a close to, um, uh, the reality artifacts
0:08:02 into, uh, into, uh, these people’s hands where with cursor, it’s even one step closer is you can actually
0:08:11 poke around and play with, uh, these artifacts that are functional and working. I’m curious, what does it
0:08:19 mean for collaboration among these teams? As you’re mentioning, um, that the collapse of that iteration,
0:08:26 um, and the speed, um, and also what is, what does it mean for the different roles that’s involved in design?
0:08:35 Yes. So I think maybe like over the last, I don’t know, 15 years or so, I think the,
0:08:42 the art of making software fragmented a lot. And then we kind of split into different roles.
0:08:47 Each role kind of use their own tool. You use their own artifact. They think in their own kind of words
0:08:53 and lingo. Say the designers are stuck in Figma before maybe it’s like sketch. There were actually
0:08:59 like, you know, like files. And then the, the PMs, maybe they’re like just writing docs and running
0:09:05 meetings or maybe they’re in Google docs. Um, and say the data people, maybe like, you know,
0:09:11 some other tool. And then everyone’s like kind of siloed in their own way. And then we need to
0:09:17 kind of come up with the process to tie everything, uh, or like build better tools to kind of unify
0:09:26 everything. We tried that notion. But the problem is like people have like already developed like so much
0:09:35 like habits. There’s like inertia to kind of change that or like change people’s tools. Um,
0:09:51 like you can’t really force anyone to like adopt something new, um, that doesn’t perfectly fit them. Um,
0:10:01 but with AI, with no, uh, with cursor, things kind of flip again because we want to kind of build something
0:10:11 where it can kind of, you know, connect and absorb all of these artifacts, um, and formats and later,
0:10:19 maybe even like within cursor, like there could be different views of the same code, like showing
0:10:26 the code as raw code or like as diffs. It’s almost like just the very beginning. Um,
0:10:35 the act of making software is really just modifying the code. Like in some sense, like the PM writing
0:10:41 the PRD is modifying the code, but they’re doing it through a more passive, like organizational way.
0:10:48 Maybe the designers influence and more individuals. Um, but when you do this, you know,
0:10:54 the disjointedly, there’s so much like back and forth collaboration issues. As you grow the team,
0:11:01 it gets even more complex. People start like breaking the software apart. Things are no longer simple,
0:11:06 no longer unified. Like we always talk about, like you kind of ship your work chart type of thing.
0:11:12 And then the different roles kind of fight. Ah, like designers are right. The engineers are right.
0:11:20 The PMs are right. But like, you know, there’s this shared truth, which is the code where like,
0:11:26 you know, you can also gather a lot of information around putting everything, synthesizing everything
0:11:33 together. Um, then the agent can kind of handle all these things that you might actually not know
0:11:43 fully, but it kind of, you know, knows the truth. It could know the presence, which is maybe like,
0:11:48 you know, what’s in your code base. What are the actual, you know, running tasks or projects,
0:11:55 even get gathering feedback or information from the real world. It could be also like, you know,
0:12:01 from the past, say like all the knowledge that you’ve accumulated, your team preferences,
0:12:07 you’re like how the code base evolved and gets maybe there’s also the future, which is like,
0:12:13 say you’re planning ahead. You’re like thinking about the division. You’re maybe like ideating some like
0:12:21 big ideas. You can actually do all of this with just one tool, one agent, but in mind, you know,
0:12:29 for each individual user or team, it might take a different shape. And then like what we want is like,
0:12:36 there’s like a base experience that almost works for anyone, anything, but you can get more specific
0:12:42 if you know what you’re doing or if you have specific needs. You can even maybe, you know,
0:12:51 use cursor as if you were using Figma at some point in the future. But the difference is you are not
0:12:59 interacting with these siloed apps with their own like formats. And then you don’t have to do the
0:13:07 conversion manually with meetings or whatever. Like it just does it. Then all you need to do is you’re
0:13:14 kind of thinking about the idea. You’re like iterating on it in whatever way that is the best for you.
0:13:20 For the engineer, it might be like a code editor, but maybe for a designer, it’s something more visual.
0:13:24 For the PM, it might be something more like a document.
0:13:33 That makes sense. I’m curious, given that there’s a lot more focus and emphasis on this concept of taste
0:13:40 after AI comes about. And now there’s also this co-worker that’s an agent helping with
0:13:47 writing code, designing elements of the product. Where would the taste live? Where does that come
0:13:54 from? Can you rely on agents for having a taste? Is that still heavily reliant on the creator? That’s
0:14:01 the human designer or developer. I don’t really like people talking about taste as a word.
0:14:03 Why is that? Because I think it’s so ambiguous.
0:14:12 Like how I see it is more like, I think taste is kind of, like there is a part of,
0:14:23 like you’re selecting out of, you know, all the options. But in order to do that, you have to kind of see
0:14:29 everything. Or like you have seen it. You have maybe dug into the past, you have kind of figured out,
0:14:35 oh, these are the ways people did this kind of thing. You made a connection of, you know, some stuff from
0:14:43 the past where you’ve seen in nature or, I don’t know, some human made it or nature made it.
0:14:49 And then you kind of connected that to your thing or the thing you want to do.
0:14:59 Or you kind of, over time, do like a preference. It’s almost like you’re self-selecting a boundary of,
0:15:03 this is what is right. This is what is beautiful. This is what is good.
0:15:11 And I think it’s very different for each person. There is no right. There is no wrong.
0:15:21 It’s more dependent on, say like, the things that you’ve seen. It’s almost like an LLM.
0:15:26 But the problem with an LLM is like, it actually has seen everything.
0:15:29 And it doesn’t really have an opinion.
0:15:36 Or like, it kind of confused itself, thinking that people prefer purple gradients everywhere.
0:15:44 But what is good is like, the LLM, because it has seen a lot of things,
0:15:49 it can do the baseline really fast and really good.
0:15:57 Then the thing on top is taste. Or like, your self-selection of what is good.
0:16:01 Like you’re kind of drawing the boundary. That is your decision.
0:16:04 Though the AI can increasingly help you do that.
0:16:07 Say we have a new thing in cursor called plan mode.
0:16:13 If you type in the prompt and then you don’t really want to fill in the details,
0:16:19 you can switch to plan, go, it will kind of just build the spec for you.
0:16:23 And then you can add details. You can change it as you want.
0:16:30 But it’s almost like, I don’t really believe in, say,
0:16:35 you give the agent something long-running or like it’s really like occluded,
0:16:42 like a really non-specific prompt and then expected to give you exactly what you want.
0:16:50 Like it’s just not going to work. There needs to be something for the human to specify what is good,
0:16:58 what is right, how I want to do it. If you don’t put in that opinion, it will just produce AI slop.
0:17:05 Yeah. You were alluding earlier to this sort of, you know, fight between product managers,
0:17:10 designers and engineers to some sort of dance. And then if you were saying a few years ago,
0:17:13 the categories were somewhat different as there is this blurring.
0:17:18 How do you think these categories will evolve over the years?
0:17:30 I think like people will always have their strengths or their unique special skill or some spike.
0:17:37 Say like some people are more good at coordinating. Some people are good at the visual space.
0:17:43 Some people are maybe good at architecting, like, you know, the lower level constructs.
0:17:53 But I think of all of these people as just like, like they’re software builders or makers.
0:18:00 Like we kind of started there. Like if you look back when, so like the early computing era,
0:18:07 there was no title or people who were maybe like researchers were like, but they,
0:18:11 they may be designed a low level architecture. They may be even, you know,
0:18:17 build the UI and how to display the UI on the screen and the whole thing.
0:18:26 Maybe one person or two or five. And when you did that, and also, I think back then there were like less
0:18:33 say economic constraints where they were funded and they weren’t like trying to make money as much.
0:18:41 So they kind of made the whole thing really whole. And now it’s like, you kind of break everything down.
0:18:51 You try to optimize them with like processes and cost optimizations and people’s become like,
0:19:02 you know, boxed into little areas and problem sets when the whole thing is actually all together.
0:19:10 And that causes a lot of problems, I think. Like people, people now make software that
0:19:17 I don’t know, like they don’t even think of like,
0:19:26 like there’s some like ideal that’s kind of lost and people think too much on the technical problems,
0:19:33 the design problems, the money problems, not the whole thing or what we’re trying to make better for
0:19:42 people. But, you know, we’re kind of going backwards now as, you know, they say tools like cursor.
0:19:50 If you were, you know, self-identified as a designer or developer or something. Like,
0:19:56 I used to also struggle with this. I started like making stuff myself, the whole thing.
0:20:03 And then I came to the U.S. I got a job titled product designer. I, I stopped coding.
0:20:11 I made mocks and prototypes and I waited for them to happen for like years.
0:20:15 They don’t happen or like they ended up shipping as like a YouTube video.
0:20:17 That’s crazy.
0:20:23 But, you know, with this new tool, a designer can build.
0:20:30 They can actually like, you know, work on their craft, the stuff that they really care about,
0:20:35 make that really good. And then let the rest, you know, be handled by the agents.
0:20:41 They can, you know, kind of put their taste on top.
0:20:47 And all the stuff that they don’t want to worry about, give it to the agents.
0:20:51 But you can also assemble like a really good team.
0:20:57 So like there’s like really good infrared engineers, front end engineers,
0:21:01 PMs who are like, I don’t know, not just running meetings.
0:21:07 Get all of them together, give them the same tool, the same code base.
0:21:10 They can start covering each other’s like, you know, weaknesses.
0:21:13 And then amplify their strength.
0:21:16 And the agent kind of holds everything.
0:21:22 And, you know, instead of you pinging this guy, ah, where is your design?
0:21:22 It knows.
0:21:32 Yeah, that resolves a lot of the common conflicts of spending more effort on the functional part of the software
0:21:41 or spending more time on the artistic aesthetic side of the product itself and being appealing to the users.
0:21:49 And you have worked at many of the very design focused, design centric companies from Notion to even prior to that Asana.
0:22:02 Like now, given sort of the demarketization of who can touch that external facing aesthetic part of the product,
0:22:09 how do you think about influencing even, I guess, your current team and people at Cursor
0:22:13 to spend more effort in thinking about that versus just the functional part of the product itself?
0:22:14 Yeah.
0:22:19 Yeah, one thing I want to call out is design is not just about aesthetics.
0:22:27 It is actually, like how I think of it is, like it’s all, it actually includes all the, say,
0:22:33 the architectural designs or like all the concepts of what this thing is or like the company.
0:22:42 Say for Notion, as an example, Notion is a pure conceptual product,
0:22:46 meaning every single concept was designed by a person.
0:22:55 So like in Notion, it is really just blocks, pages, databases, the workspace,
0:22:59 and then everything kind of works around these concepts.
0:23:03 And then at every layer, there’s like a representation of them.
0:23:10 There could be like, you know, at the very top is like the UI or like the brand or like the visuals, the aesthetics.
0:23:16 But then there’s actually the aesthetics, every layer, how you architect, say like the front end code and architecture,
0:23:23 how they, you know, how the reactive states sync and how you render stuff to like, how do you like store these objects,
0:23:29 how they, you know, relate to each other, to all the core concepts of the thing.
0:23:34 And if you look at software, it’s like, it’s actually really simple.
0:23:37 If you look at the concepts themselves.
0:23:45 So design is kind of like trying to figure out what is the best configuration and the simplest state for all of us.
0:23:51 Some people maybe only focus on the visuals or the interactions or certain slices.
0:24:00 But I think the beauty is actually putting things all together as well as you can.
0:24:05 So I think it is really about what I just talked about.
0:24:28 It’s like not seeing design as just should we use a six pixel border radius or four, but it’s rather like, how do I design the most simple system, fewest number of concepts, fewest code paths to do the most things for most people?
0:24:45 So you, you guys obviously have incredible product market fit with developers and we’ve alluded to a bunch of it, but can you share more about maybe either how you guys have navigated the idea maze of how you want to serve designers or just more around what, what kind of tooling you think there’s an opportunity to provide?
0:24:46 Yeah.
0:24:49 So I think.
0:24:53 Cursor like.
0:24:58 Is still like our primary focus is on professional developers.
0:24:59 And teams.
0:25:06 But because of that, like people around them are already here.
0:25:07 Yeah.
0:25:08 And.
0:25:14 I think for the longest time, we’ve been actually intentionally making Cursor pretty hard to get in.
0:25:16 For say the non-technical people.
0:25:20 But they’re here now.
0:25:24 And they actually struggle to get in and they really want to get in.
0:25:33 One example is like when you open up Cursor, there’s like three buttons.
0:25:38 It says open project, connect to SSH, clone repo or something.
0:25:44 As a beginner or like a non-technical person, I can’t understand any of this.
0:25:51 But what if, say like, we just kind of give you the agent view blank.
0:25:53 You can just start doing things.
0:26:02 Like there’s a lot of little things we can kind of fix to just make Cursor feel more friendly and welcoming for these people.
0:26:14 Like maybe they know software concepts or certain layers, but they might not be able to code.
0:26:24 I want to make sure that when they come in, they can, like without feeling overwhelmed or like feeling like, ah, this is like a code editor.
0:26:25 It’s an IDE.
0:26:29 It is more like I can start doing things.
0:26:38 And then as I start doing things, I can maybe like pick the paths that I prefer.
0:26:45 Say like a designer, maybe they’re just like kind of chatting with the browser next to it.
0:26:50 Um, as the agent is like making edits, they can kind of preview the changes.
0:26:57 They can maybe like interact in the browser, pick this element, change like, ah, I want to swap this with something else.
0:26:58 And then boom, it happens.
0:27:07 Um, so how we do it is not, um, say creating new products or splitting Cursor.
0:27:14 That is the same thing, but just like different pre-configurations and packaging of the same thing.
0:27:22 Cause like, kind of like what I just said, like thinking about the concepts, like Cursor itself is actually really simple.
0:27:27 Or like AI agents in general are pretty simple.
0:27:44 Um, what you want to do is actually like, not, um, like if you look at, I don’t know, like a chat GPT agent versus like a Cursor versus like a replet, a V0, a Notion agent even.
0:27:50 Um, the architecture or how they work or like, they’re almost the same.
0:28:05 Um, so what if we can come up with like a set of, you know, universal shared concepts for interacting with AI, with agents, with code, with software.
0:28:13 Um, but you can kind of mutate each, each one to fit more people and to fit more use cases.
0:28:22 Um, and then each of them can leverage, say the best model to do this UI thing with the best view that fits me.
0:28:24 I can configure it however I want.
0:28:26 If I want to see everything, I can.
0:28:28 If I don’t want to see anything, I can too.
0:28:36 This leads to my question of over the last few years, um, and I don’t know if it’s a few years or a decade.
0:28:55 There is the concept of purpose-built tools for certain persona, whether it’s Webflow for, you know, um, persona or use cases like for landing pages, for cell, um, V0 for more of the, you know, front-end developers building, um, building, uh, next.js apps.
0:29:04 Um, there’s tools for designers, there are tools for handoff from design to engineering, where now there’s more of a concept of the everything app.
0:29:06 ChatGPT is kind of the everything app.
0:29:08 Notion is kind of the everything app.
0:29:12 Uh, you can go to it for your note-taking, but you can also publish the Notion pages.
0:29:15 Curse is becoming more of a everything app.
0:29:25 Is that a path that we’re going down towards of having these all-encompassing apps that can do a lot more things that used to be captured by a single-purpose app?
0:29:30 Is there still a place for purpose-built tools for a specific use case or persona?
0:29:32 How do you see that dynamic?
0:29:38 I think it’s just, like, different philosophies of doing things and making software.
0:29:45 Um, I think there’s, like, almost, like, two ways you can look at the thing.
0:29:55 There is this, like, the user-centric, human-centered design path, which is, you know,
0:29:57 you start from a problem.
0:30:04 You identify the group of people who have this problem, figure out, you know, what they want,
0:30:14 build really specific solutions for them, versus, like, there’s the more system angle to think about things,
0:30:21 where you’re just kind of looking at the software itself, how it is composed, and then think about, hmm,
0:30:32 where do I tweak a little bit to satisfy this constraint, or to make this use case work, or to enable this tool to work for these people?
0:30:43 I think it’s like, I think it’s like fundamentally two different philosophies, and then I think it is much easier to do the, say, the user-centric way.
0:30:58 It kind of limits you from the beginning, because when you start building these specific solutions, they only work for those specific people.
0:31:07 If you want to grow the people, or you want to grow the use cases, you actually need to kind of tear apart everything you have, your core concepts.
0:31:11 And a lot of people just can’t do that.
0:31:16 So what they do is, instead of doing that, they add more things, more concepts, more features.
0:31:24 And then there will be a point where this thing no longer serves your initial group of people anymore.
0:31:27 The simple thing is no longer simple.
0:31:29 The purposeful thing is no longer simple.
0:31:35 And all of these purposeful apps, they’re kind of selfish.
0:31:42 They are siloing people, siloing workflows, file formats, creating islands.
0:31:50 When, if you look at the thing, like all these purposeful apps, whatever.
0:31:52 I also work at Asana.
0:31:56 Asana, the core concepts are really tasks and projects.
0:31:59 Everything around tasks and projects.
0:32:01 Everything they add needs to work with those.
0:32:05 And that naturally limits what it can do.
0:32:08 Versus, say, like Notion.
0:32:12 Like how we see Notion, it is not note-taking.
0:32:14 It is disguised as note-taking.
0:32:19 Like you come in, you can start from a blank page, you can type.
0:32:25 But then what you’re doing is actually like, you know, blog pages, databases, and the workspace.
0:32:29 Each block is almost like a JSON object.
0:32:33 A page is just an array of JSON objects.
0:32:37 And then we render each block in the, you know, the layout and the type it is.
0:32:40 And then you can put them in a database.
0:32:41 Now they have, you know, more properties.
0:32:43 They share more stuff.
0:32:44 There’s more hierarchy.
0:32:46 And then all pages can nest each other.
0:32:48 That is Notion.
0:32:49 But then you can do whatever with it.
0:32:52 You can have a task project database.
0:32:53 They all work together.
0:32:54 They can be a list.
0:32:55 They can be a board.
0:32:57 Do whatever you want.
0:33:10 But then the problem is, you know, for these more universal type of apps, it’s like, because it’s so open-ended, it’s kind of hard to get started.
0:33:19 Because if I don’t have the patience to kind of figure out how it works, I might not even get to the tests and projects.
0:33:22 So there’s always that tension.
0:33:25 But it is fixable.
0:33:27 You can build better packaging.
0:33:28 You can use AI.
0:33:48 So I think there’s just, like, my personal preference is, I would try to build something that works better for everyone than just, ah, these people are the people we care about.
0:33:49 I don’t care about everything else.
0:33:54 And then I think they should use my thing.
0:33:56 That’s not how you do it.
0:33:58 We talk about AI.
0:33:59 We talk about agents.
0:34:04 And we talk about how it really speeds up building things and prototyping.
0:34:19 But when it really comes to these type of, you know, helping users to understand a product better, onboarding, learning the new concepts, also to you as a designer, designer leader, how does, like,
0:34:25 interacting with AI really improves the usability utility of the product?
0:34:34 Yeah, I see AI almost like, it’s almost like a universal interface.
0:34:43 And then the bare minimum of it is really just a prompt and then you get some response.
0:34:49 And then you kind of put this into, like, it could be like a little input, like a chat box.
0:34:52 It could be like a sidebar.
0:34:53 You know, you see the chat.
0:34:59 It could be, maybe you select something, you can do stuff with it.
0:35:03 But it could also say, like, you completely transformed this layer.
0:35:04 It’s not chat.
0:35:05 It’s not like an input.
0:35:10 It’s more fitted to, say, it’s more purposeful even.
0:35:14 But underneath, it is still the same thing.
0:35:20 It is still the same AI, same agent, same architecture, same, like, you can flip different models and prompts and stuff.
0:35:25 But then fundamentally, that is what it is.
0:35:29 But because of that, you can actually build a lot of different layers and shapes.
0:35:37 Then each person can find the shape that fits them and it will feel more comfortable.
0:35:45 But also, there’s always this, like, baseline thing, which is, it’s just, it’s almost like Google.
0:35:48 Like, ChatGPT is just a box.
0:35:50 You can actually put whatever.
0:35:56 But there will be more specific tools that fit each person or each use case better.
0:36:01 Does every software, from now on, becomes a chat box to begin with?
0:36:05 And what’s the role of UX design plays in that?
0:36:06 Yeah.
0:36:14 I think, like, imagine there is only chat.
0:36:19 I think that will also be, like, a really bad experience.
0:36:23 Because, you know, you stare at a blank input.
0:36:24 You need to do something.
0:36:26 You need to initiate the thing.
0:36:29 You need to ask the right questions.
0:36:30 Put in the right prompt.
0:36:36 You might not know what kind of response you will get unless you play with this thing a lot.
0:36:41 Ask a new person, maybe, like, you know, they might try it the first time.
0:36:45 They get something that doesn’t feel like what they wanted.
0:36:48 And they’re like, ah, this is not for me.
0:36:49 This is bad.
0:36:57 But I think there’s so much potential where, like, I think the models today can already do so much stuff.
0:37:16 For a lot of people, for a lot of use cases, we need to kind of design a mechanism to kind of help transform that input-output into the form or format or views or workflows of the people, you know, today.
0:37:25 Get them through that thing, instead of forcing people to be, ah, now you need to use this tool.
0:37:29 And then you actually don’t know how it connects with your current workflow.
0:37:30 You need to figure it out.
0:37:32 You don’t really know how it works.
0:37:33 It feels kind of scary.
0:37:35 Ah, what do I do?
0:37:41 You know, versus, like, you actually ease them in through the thing they are used to.
0:37:50 And I think those are actually the more optimal form factors for, say, the individual person or the use cases.
0:37:55 Because I know, like, I just don’t want to, like, type in a question every time.
0:38:01 Or, ah, it’s giving me, like, this wall of text of text response I need to, like, read.
0:38:09 Versus, say, like, your, you know, the lines that you autocomplete just appears, you just press tab.
0:38:16 Or, like, maybe I just select some element in my artboard and say, ah, make four variants of it, and boom, it’s there.
0:38:20 But underneath, it’s the same thing.
0:38:25 On this question, I have one more thought.
0:38:38 It’s when thinking about creativity, a lot of times when you have more constraints and more guardrails, it’s actually more of a friend to bring to creativity than not.
0:38:41 Whereas now we have a much more open-ended world.
0:38:49 We have a much more capable tool that we can explore a lot more unconstrained domain and fashions.
0:38:56 How do you still try to apply constraint, I guess, in your line of work?
0:38:56 Yeah.
0:39:10 And how do you think the software itself, now that we have this open chat window and chat box, that can still bring that constraints in to give the builders more inspirations and creativity?
0:39:12 Yeah.
0:39:25 I think the biggest constraint is kind of like simplicity, in a sense.
0:39:42 Meaning, like, there’s a limit of how much concepts or things you can expose to any given individual at any given time for them to kind of figure things out.
0:39:49 So there is a natural constraint on that side, for example.
0:39:54 Like, on the cognitive side, there’s maybe, like, a constraint on space.
0:39:58 So, like, cursor, the window, you can stretch it like this.
0:40:00 What if it’s like this?
0:40:07 Then you start reducing things where, like, you’re kind of, like, prioritizing what to show, what is the most important.
0:40:10 And then those things actually don’t change that much.
0:40:13 Or, like, it is really important to figure those things out.
0:40:22 And then you can kind of build a mechanism where you can kind of accommodate more things.
0:40:27 Say, like, there’s secondary level things that maybe some people want to do.
0:40:32 Maybe it’s, like, more specific modes of operations where parts of the workflow.
0:40:38 Maybe it is, like, for different kinds of individual work preferences.
0:40:48 But they are still, like, kind of layers of the core concepts or things.
0:40:53 They’re not kind of linearly, like, additive.
0:40:58 Don’t throw out all at you at once.
0:41:08 And I think that the interface where how software manifests themselves or how we design it even,
0:41:14 it will start becoming less about, say, the designer decides,
0:41:16 ah, these are the buttons where they are.
0:41:19 And then it’s, like, a fixed thing.
0:41:27 But rather it’s, like, there’s, like, shared concepts and shared mechanisms of the same thing.
0:41:33 But I could, say, take different forms where you can kind of expose ways for people to customize
0:41:34 and make them their own.
0:41:42 Then it’s, like, the designer, what they’re really thinking about is,
0:41:47 like, what are the most important concepts?
0:41:49 how do they relate to each other?
0:41:55 At every layer, say, like, for 80% of people, the defaults, what should they be?
0:41:59 What should be the simplest state of this app or this thing?
0:42:01 What is the default for?
0:42:03 Maybe, like, you can start forking it for different people.
0:42:06 And then it’s, like, maybe at the second layer,
0:42:11 there’s, like, you start exposing more, like, the power user features
0:42:16 or the different archetypes of what you can do.
0:42:19 But the default should still stay simple.
0:42:23 And then the ideal is, like, a lot of the tools,
0:42:30 they don’t really tell you what’s going on or how the things work.
0:42:36 One example is, like, you know, most of the CLI coding agents today is, like,
0:42:41 they kind of force you to use this tiny little window with this tiny prompt.
0:42:43 Like, that’s almost, like, all the interactions you can do.
0:42:47 And then you’re kind of delegating everything to the agent.
0:42:49 You don’t really know how things work.
0:42:55 Versus for cursors, like, if you prefer something minimal, I think it’s fine.
0:42:55 You can do that.
0:42:58 But you can start digging into more things.
0:42:59 You can customize the agent.
0:43:03 You can make your own custom mode with, like, different model preferences
0:43:06 and which tools I want, which prompts I want.
0:43:12 You can pick, like, maybe, like, instead of viewing just code,
0:43:13 I want, like, a preview.
0:43:15 I want, like, a doc thing.
0:43:16 I want a browser thing.
0:43:19 I can change all the colors.
0:43:21 Like, it’s all up to you.
0:43:22 I can prefer the keyboard.
0:43:23 I can prefer the mouse.
0:43:27 And then the designers, what they’re really doing is
0:43:34 they’re thinking of what is the minimal set of abstractions,
0:43:38 the system to kind of handle all of these permutations.
0:43:42 I love that concept of you’re not just seeing the tool.
0:43:45 yourself as a tool, but it’s actually a toolbox where you can customize
0:43:51 and configure it to fit your purpose and build your own tool that,
0:43:57 you know, fits your workflow and give a ton of flexibility to the end user.
0:44:00 That’s sort of the ethos of Cursor and Notion,
0:44:03 that the more you unpack from the beginning, there’s more to come.
0:44:04 Yeah.
0:44:06 There’s more to play and tinker.
0:44:07 Right.
0:44:11 Because I think there’s a lot of us who are actually really into that kind of stuff.
0:44:12 For sure.
0:44:15 Ryo, you have an impeccable taste and sense of design.
0:44:18 I’m very curious on your day-to-day life.
0:44:25 How do you cultivate the surrounding environments, your own surroundings,
0:44:33 to continue to find inspirations and bring the best design out to the world?
0:44:34 Mm-hmm.
0:44:39 Are there things you do, practices you want to share with the audience?
0:44:46 I don’t really have, like, a routine where, like, it’s kind of sporadic.
0:44:53 Like, I don’t sit in Figma all day and making mocks.
0:44:58 I like…
0:45:04 It’s like doing everything at once, type of vibe.
0:45:09 So, like, I might be thinking about a, like, longer problem.
0:45:15 I would maybe, like, just write.
0:45:20 I like writing and kind of thinking in bullets.
0:45:25 I would, like, go out of the office on a walk
0:45:28 and then take my phone with, like, a Notion page
0:45:30 and I would just start writing.
0:45:32 I’ll make sketches.
0:45:34 I’ll…
0:45:39 maybe play individual space.
0:45:43 I’ll maybe, like, you know, build a prototype and code.
0:45:49 Like, a lot of my inspirations come from
0:45:53 it’s, like, not forcing it
0:45:57 and kind of leaving some blank space
0:45:59 to let things simmer.
0:46:02 A lot of it comes from
0:46:08 like, just looking at stuff or
0:46:12 looking at everything, not just software.
0:46:16 So, like, you can look at print design, graphic design,
0:46:17 motion,
0:46:20 films, music,
0:46:21 art,
0:46:24 anything that humans made.
0:46:27 The nature side of things are really cool, too.
0:46:29 Like, learning about natural systems.
0:46:31 I have a bio measure.
0:46:34 So, like, there’s a lot of similarities
0:46:35 in, like, you know,
0:46:38 how many layers of things you can build,
0:46:39 how they interact with each other.
0:46:44 looking at the past helps a lot.
0:46:46 So, like,
0:46:48 my real OS project
0:46:49 kind of started from,
0:46:51 like,
0:46:53 last year,
0:46:54 I was just,
0:46:55 like,
0:46:57 I bought a bunch of old Macs
0:46:58 and iPods.
0:47:00 And I was just playing with them.
0:47:03 And I wanted to, like,
0:47:05 kind of recreate the feelings.
0:47:07 I actually really want to ask about that.
0:47:09 Because a lot of, you know,
0:47:10 designers’ profile page
0:47:11 has the most
0:47:12 shiny,
0:47:13 forward-looking,
0:47:15 futuristic designs
0:47:16 where you have, like,
0:47:18 I don’t know which year it is,
0:47:19 like a Mac OS
0:47:20 interface
0:47:21 with, like,
0:47:23 the original version
0:47:23 of the iPod icon.
0:47:24 Yeah.
0:47:25 Yeah.
0:47:28 Tell us more about
0:47:30 the real OS project.
0:47:30 Yeah.
0:47:31 I started the thing
0:47:32 from,
0:47:34 so I was leaving Notion
0:47:36 and I make noises
0:47:38 when I am in meetings.
0:47:38 So, like,
0:47:39 oh, no.
0:47:39 We’re,
0:47:42 it’s all the same thing.
0:47:43 Stuff like that.
0:47:44 And I wanted
0:47:45 to make them
0:47:46 a little gift.
0:47:47 so I built, like,
0:47:48 a soundboard app
0:47:50 with Cursor.
0:47:52 It was just one app.
0:47:53 Like,
0:47:53 it looked, like,
0:47:54 really bad.
0:47:55 Like,
0:47:57 Tailwind default styles.
0:47:58 And then
0:47:59 I just said,
0:48:00 hmm,
0:48:01 what if we, like,
0:48:02 made it more, like,
0:48:03 retro Mac OS-y?
0:48:04 And then
0:48:06 it put it in, like,
0:48:07 almost, like,
0:48:09 a more retro
0:48:10 Mac OS-type window.
0:48:13 Basically, like,
0:48:13 put it in the box.
0:48:16 And then I’m, like,
0:48:16 hmm,
0:48:17 add a menu bar.
0:48:18 And then I added it
0:48:19 on top.
0:48:22 Then I’m, like,
0:48:22 hmm,
0:48:24 now I have a menu bar
0:48:24 and a window.
0:48:25 Why not just
0:48:27 make more apps
0:48:28 and more windows?
0:48:29 And then that’s how
0:48:30 it kind of started.
0:48:31 And then I just
0:48:32 couldn’t stop
0:48:32 for, like,
0:48:33 I don’t know,
0:48:34 four or three months.
0:48:35 Yeah.
0:48:38 But a lot of the interfaces
0:48:38 that I created,
0:48:40 I started from,
0:48:41 it’s, like,
0:48:43 it’s kind of inspired
0:48:44 from
0:48:45 System 7.
0:48:48 There’s, like,
0:48:49 accuracy,
0:48:50 but also, like,
0:48:51 I added some, like,
0:48:52 future stuff in it.
0:48:56 And then I actually
0:48:56 made, like,
0:48:57 more themes.
0:48:59 I added, like,
0:49:01 a Mac OS-10 theme,
0:49:01 like,
0:49:02 the first Aqua theme.
0:49:04 I added, like,
0:49:05 Windows 95 and XP.
0:49:07 And then if you
0:49:08 swap between them
0:49:09 and you play
0:49:09 with the OS,
0:49:11 it feels really
0:49:12 authentic to each.
0:49:13 But then it’s
0:49:14 actually the same thing.
0:49:15 and so that’s
0:49:16 kind of, like,
0:49:17 the message I want
0:49:18 to kind of tell people
0:49:18 is, like,
0:49:20 we’ve been
0:49:21 almost doing
0:49:22 the same thing
0:49:23 over and over again
0:49:24 from the very beginning.
0:49:26 But maybe given,
0:49:26 you know,
0:49:27 the technical
0:49:28 constraints of each era,
0:49:30 there’s, like,
0:49:31 just,
0:49:32 that’s how it
0:49:33 ended
0:49:34 there
0:49:35 and how it
0:49:35 ended,
0:49:37 how it came to be.
0:49:40 but we kind of
0:49:40 carried a lot
0:49:41 of these concepts
0:49:43 and patterns
0:49:44 over
0:49:45 to even now.
0:49:46 And then we
0:49:47 were actually
0:49:48 still living in it.
0:49:52 And I don’t think
0:49:53 things will change
0:49:54 that much.
0:49:55 Meaning
0:49:59 there is
0:50:00 these, like,
0:50:00 timeless
0:50:02 things that
0:50:03 don’t change
0:50:03 much.
0:50:05 And
0:50:07 like,
0:50:08 it kind of
0:50:09 all comes back
0:50:09 to
0:50:11 people who are
0:50:12 trying to come up
0:50:13 with some
0:50:14 really familiar
0:50:15 ideas
0:50:16 and then
0:50:16 bringing them
0:50:17 to, like,
0:50:17 a new medium.
0:50:20 But we’re doing
0:50:21 the same thing
0:50:22 again.
0:50:23 We’re back in
0:50:24 1984 and now.
0:50:26 Like,
0:50:26 people are just,
0:50:28 I don’t know,
0:50:29 using paint
0:50:30 to draw some pictures.
0:50:31 There’s, like,
0:50:32 a text editor.
0:50:32 You can type
0:50:33 some stuff.
0:50:34 There’s, like,
0:50:36 you know,
0:50:37 different
0:50:38 concepts that
0:50:39 we put in
0:50:40 little pictures.
0:50:41 The icons.
0:50:42 The desktop.
0:50:43 Like,
0:50:44 none of that
0:50:44 really changed.
0:50:45 Yeah.
0:50:46 The timeless
0:50:47 concepts and
0:50:48 software we’re
0:50:49 using is
0:50:50 the browser,
0:50:52 the player,
0:50:54 the chat windows,
0:50:55 and those
0:50:56 are all on
0:50:57 the real OS
0:50:59 project.
0:51:00 So, for the
0:51:00 audience who
0:51:01 want to check
0:51:01 it out,
0:51:02 it’s at
0:51:03 real.lu.
0:51:04 Yes.
0:51:05 os.reo.lu.
0:51:06 os.reo.lu.
0:51:07 Awesome.
0:51:08 We’ll wrap there.
0:51:09 Thank you so much,
0:51:10 Rio, for coming.
0:51:11 This is awesome.
0:51:23 Thanks for listening
0:51:24 to the A16Z podcast.
0:51:26 If you enjoyed the episode,
0:51:27 let us know by leaving a review
0:51:29 at ratethispodcast.com
0:51:30 slash A16Z.
0:51:31 We’ve got more great
0:51:32 conversations coming your way.
0:51:34 See you next time.
0:51:36 As a reminder,
0:51:37 the content here is for
0:51:38 informational purposes only.
0:51:39 It should not be taken as
0:51:41 legal, business, tax, or
0:51:42 investment advice, or be
0:51:43 used to evaluate any
0:51:44 investment or security, and
0:51:45 is not directed at any
0:51:46 investors or potential
0:51:48 investors in any A16Z fund.
0:51:50 Please note that A16Z and
0:51:51 its affiliates may also
0:51:52 maintain investments in
0:51:53 the companies discussed in
0:51:54 this podcast.
0:51:56 For more details, including
0:51:57 a link to our investments,
0:51:58 please see
0:51:59 A16Z.com
0:52:00 forward slash
0:52:01 disclosures.

Ryo Lu spent years watching his designs die in meetings. Then he discovered the tool that lets designers ship code at the speed of thought: Cursor, the company where Ryo is now Head of Design. In this episode, a16z General Partner Jennifer Li sits down with Ryo to discuss why “taste” is the wrong framework for understanding the future, why purposeful apps are “selfish,” how System 7 holds secrets about AI interfaces, and the radical bet that one codebase can serve everyone if you design the concepts right instead of the buttons.

 

Timecodes:

00:01:45 – Design Becomes Approachable to Everyone

00:02:36 – From Years to Minutes: Product Feedback Loops Collapse

00:07:54 – “Each role used their own tool…their own lingo”

00:13:15 – “If you don’t have an opinion, you’ll get AI slop”

00:17:18 – The Lost Art of Being a Complete Builder

00:21:42 – Design Is Not About Aesthetics

00:28:57 – User-Centric vs System-Centric Philosophy

00:34:00 – AI as Universal Interface, Not Chat Box

00:38:42 – “Simplicity is the Biggest Constraint”

00:43:42 – “I Don’t Sit in Figma All Day Making Mocks”

00:46:33 – RyoOS: Building A Personal Operating System

00:48:45 – “We’ve been doing the same thing since 1984”

 

Resources:

Follow Ryo Lu on X: https://x.com/ryolu_

Follow Jennifer Li on X: https://x.com/JenniferHli

Follow Erik Torenberg on X: https://x.com/eriktorenberg

 

Stay Updated:

If you enjoyed this episode, be sure to like, subscribe, and share with your friends!  

Find a16z on X: https://x.com/a16z

Find a16z on LinkedIn: https://www.linkedin.com/company/a16z

Listen to the a16z Podcast on Spotify: https://open.spotify.com/show/5bC65RDvs3oxnLyqqvkUYX

Listen to the a16z Podcast on Apple Podcasts: https://podcasts.apple.com/us/podcast/a16z-podcast/id842818711

Follow our host: https://x.com/eriktorenberg

Please note that the content here is for informational purposes only; should NOT be taken as legal, business, tax, or investment advice or be used to evaluate any investment or security; and is not directed at any investors or potential investors in any a16z fund. a16z and its affiliates may maintain investments in the companies discussed. For more details please see a16z.com/disclosures.

Stay Updated:

Find a16z on X

Find a16z on LinkedIn

Listen to the a16z Show on Spotify

Listen to the a16z Show on Apple Podcasts

Follow our host: https://twitter.com/eriktorenberg

 

Please note that the content here is for informational purposes only; should NOT be taken as legal, business, tax, or investment advice or be used to evaluate any investment or security; and is not directed at any investors or potential investors in any a16z fund. a16z and its affiliates may maintain investments in the companies discussed. For more details please see a16z.com/disclosures.

Hosted by Simplecast, an AdsWizz company. See pcm.adswizz.com for information about our collection and use of personal data for advertising.

Leave a Reply

a16z Podcasta16z Podcast
Let's Evolve Together
Logo