The a16z Show - Ryo Lu (Cursor): AI Turns Designers to Developers
Episode Date: December 16, 2025Ryo 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 Everyone00:02:36 - From Years to Minutes: Product Feedback Loops Collapse00: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 Builder00:21:42 - Design Is Not About Aesthetics00:28:57 - User-Centric vs System-Centric Philosophy00:34:00 - AI as Universal Interface, Not Chat Box00: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 System00: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/JenniferHliFollow 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/a16zFind a16z on LinkedIn: https://www.linkedin.com/company/a16zListen to the a16z Podcast on Spotify: https://open.spotify.com/show/5bC65RDvs3oxnLyqqvkUYXListen to the a16z Podcast on Apple Podcasts: https://podcasts.apple.com/us/podcast/a16z-podcast/id842818711Follow our host: https://x.com/eriktorenbergPlease 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 YouTube: YouTubeFind a16z on XFind a16z on LinkedInListen to the a16z Show on SpotifyListen to the a16z Show on Apple PodcastsFollow 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.
Transcript
Discussion (0)
Over the last, I don't know, 15 years or so, the art of making software fragmented a lot,
and then we kind of split into different roles.
Each role kind of use their own tool, use their own artifact.
They think in their own kind of words and lingo.
With cursor, things kind of flip again.
For the first time, that design is such an approachable concept and skill set to a lot more people.
And it brings together sort of people who have aspirations for design
and wanting to build things, wanting to prototype things,
putting beautiful stuff out in the world.
There needs to be something for the human to specify
what is good, what is right, how I want to do it.
If you don't put in that opinion,
it will just produce AI slot.
People will always have their strength
for their unique special skill.
I see AI almost like, it's almost like a universal interface.
So design is kind of like trying to figure out what is the best configuration and the simplest state for all of us.
The beauty is actually putting things all together.
What happens when the designer becomes the developer?
When mock-ups that used to dye in Figma can suddenly become living products in minutes.
My guests today are Jennifer Lee, general partner at A16Z and Rio Liu,
head of design at Cursor, the AI code editor that's collapsing the traditional boundaries between design and engineering.
Rio spent years at Notion and Asana,
watching his designs get stuck in endless meetings and handoffs.
Now he's building tools that let designers ship real software themselves.
We're exploring how AI is ending the era of fragmented teams,
why taste isn't really worth talking about,
and what it means when a single person could do what used to take an entire product team.
Rio, welcome to the AISNs D podcast.
Jennifer, you've been thinking a lot about sort of evolution of design,
as it relates to infrared as well as software development.
Why don't you talk about what got you so excited about having Rio and, you know,
why we have this conversation?
Rio and I got to know each other over the past few months talking about how large language
models and AI tools are going to impact not just designers, design engineers,
and how people are building prototypes and coming up with great ideas.
I feel like for the first time that design is such an approachable concept and skill set
to a lot more people.
And it brings together sort of people who have aspirations for design and wanting to build things,
wanting to prototype things, putting beautiful stuff out in the world much, much easier and
faster.
So Rio has gone through a lot of thinking and journey of, you know, what design means,
what design means in the sense of having cursor being part of, like, the building blocks
of it.
Like, I just really wanted to have him on the podcast and talk about the future of,
of both coding and design.
Rio, you've been at Notion.
Now, obviously, I have a design cursor.
Why don't you take us through your journey
and how you've been thinking about some of these topics?
I think to me, it's like building software,
there's like so many layers of abstractions and depth
that you need to take care of.
And in order to do something really great,
you actually need to know everything.
Or like you assemble a team
that works really well together
with people with different
strengths on every layer
maybe you have the greatest
infrared engineers, people doing ML
maybe you have
really good design engineers
who really, like they can just
handwrite CSS and then they'll be
like perfect
in order for say one person
to do all of this or learn all of this
it takes a long time
of trial and error you have to build
from the simplest things to
you know, gradually more complex,
skill it up to more people,
share your workout to the public,
see what happens, do this feedback loop.
And if you're doing it in a team,
sometimes it takes even longer
because, say, you're just a designer,
you're doing some mocks in Figma,
and then you shared it out, you got some feedback.
Then your PM needs to do this, like, PRD thing,
and then run more meetings.
And then there's, like, more people involved,
And then they're like, ah, da, da, da, da, da.
And it takes a long time.
And then maybe like a year later, your design came out.
But then it's like 20% of what you wanted.
But with this new thing, say with cursor,
you can just say you have an idea.
It might be a little ambiguous.
You just tell it to tell the agent.
And then it might give you something maybe like 60%,
70% on the first shot.
But you kind of skipped a lot of the, you know, complexities.
We kind of transformed from like you need to understand all this thing,
all these concepts of making software.
Then you can do something to, I can do something now.
And then I might get something that's maybe imperfect,
not exactly what I want.
but the process of iterating and like kind of poking at it becomes really quick
and then as the agents evolve as the models get better
as it talks to more tools it understands visuals better
it can talk to figno the mocks that i had
it can talk to notion all the you know ideas the dogs the meeting knows
anything and the most important thing is it knows the codebase
which is the truth, the material of how we, you know, build software.
So that kind of changes the whole thing.
It's like the tool not only, you know, impacts the individual software engineers.
Like for them, maybe like for cursors, like we kind of try to fit as many workflows
and people as we can.
Say there's like people who, they pride themselves at like, you know,
really think thoroughly write the most clean code.
For those people, they can just type and then we do the tab thing.
And the tab thing got really good at like it's almost like it knows what you want to do next.
So for those people, they can do that.
But there's like increasingly more people doing the agents where like even for the most
professional coders, they start to do this new thing.
Yeah.
Yeah.
I am trying to think of even myself as an example prior to joining the firm.
I was on the product side.
I was working with a lot of designing, designers, design engineering teams.
Back then, it wasn't called that way.
It's more like designers, front-end engineers, and then UX designers too.
It was still a very disjointed workflow.
It's like, you know, a lot of the design work happens more in isolated fashion with just the
designers themselves.
They spent two weeks coming up with the concept.
What does the UI look like and work with UX designers on what the UX look like?
And then head it off to the product team and works with engineers.
Figma already bring that sort of process a lot closer that you can collaborate around one artifact that everybody can give impus and prototype and bring sort of more of a close to the reality artifacts.
into these people's hands,
where with cursor,
it's even one step closer
is you can actually poke around
and play with these artifacts
that are functional and working.
I'm curious,
what does it mean for collaboration
among these teams?
As you're mentioning,
the collapse of that iteration
and the speed,
and also what does it mean
for the different
roles that's involved in design.
Yes.
So I think maybe like over the last, I don't know, 15 years or so, I think the art of making
software fragmented a lot and then we kind of split into different roles.
Each role kind of use their own tool, use their own artifact.
They think in their own kind of words and lingo.
Say the designers are stuck in Figma before maybe it's like sketch.
there were actually like, you know, files.
And then the PMs, maybe they're like just writing docs and running meetings.
Maybe they're in Google docs.
And say the data people, maybe like, you know, some other tool.
And then everyone's like kind of siloed in their own way.
And then we need to kind of come up with the process to tie everything.
Or like build better tools to kind of unify everything.
We tried that at notion.
but the problem is
like people have
like already developed like so much
like habits
there's like inertia to kind of change that
or like change people's tools
or like kind of
like you can't really force anyone
to
like adopt something new
that doesn't perfectly fit
them.
But with AI, with cursor, things kind of flip again.
Because we want to kind of build something where it can kind of, you know, connect and
absorb all of these artifacts and formats.
And later maybe even like within cursor, like there could be different views of the same
code.
like showing the code as raw code or like as diffs
it's almost like just the very beginning
the act of making software is really
just modifying the code
like in some sense like the PM writing the PRD
is modifying the code
but they're doing it through a more passive
organizational way
maybe the designers influence and more individuals
but when you do
this, you know,
this joint lead,
there's so much like
back and forth
collaboration issues.
As you grow the team,
it gets even more complex.
People start, like,
breaking the software apart.
Things are no longer simple,
no longer unified.
Like, we always talk about,
like, you kind of ship your work chart type of thing.
And then the different roles kind of fight.
Like, designers are right.
The engineers are right.
The PMs are right.
But, like, you know,
there is,
the shared truth, which is the code
where like, you know, you can also
gather a lot of information around
putting everything, synthesizing
everything together.
Then the agent
can kind of handle all these things
that you might actually
not know fully,
but it kind of, you know,
knows the truth.
It could know the presence,
which is maybe like, you know,
what's in your code base,
what are the actual, you know, running
tasks or projects, even gathering feedback or information from the real world.
It could be also like, you know, from the past, say like all the knowledge that you've
accumulated, your team preferences, your like how the code base evolved and gets maybe.
There's also the future, which is like say you're planning ahead, you're like thinking
about the division, you're maybe like ideating some like bigger ideas.
you can actually do all of this
with just one tool, one agent.
But in mind, you know,
for each individual user or team,
it might take a different shape.
And then, like, what we want is, like,
there's, like, a base experience
that almost works for anyone, anything.
But you can get more specific.
If you know what you're doing
or if you have specific needs,
you can even maybe, you know,
use cursor as,
if you were using Figma at some point in the future.
But the differences, you're not interacting with these siloed apps with their own, like, formats.
And then you don't have to do the conversion manually with meetings or whatever.
Like, it just does it.
Then all you need to do is you're kind of thinking about the idea, you're like iterating on it,
in whatever way that is the best for you.
For the engineer, it might be like a code editor,
but maybe for a designer as something more visual.
For the PM, it might be something more like a document.
That makes sense.
I'm curious, given that there's a lot more focus and emphasis
on this concept of taste after AI comes about.
And now there's also this coworker that's an agent helping with,
writing code, designing elements of the product, where would the taste live?
Where does that come from?
Can you rely on agents for having good taste?
Is I still heavily reliant on the creator that's the human designer or developer?
I don't really like people talking about taste as a word.
Why is that?
Because I think it's so ambiguous.
Like how I see it as more like I think taste is kind of,
like there is a part of like you're selecting out of you know all the options but in order to do that
you have to kind of see everything or like you have seen it you have maybe dug into the past
you have kind of figured out oh these are the ways people did this kind of thing you made the
connection of you know some stuff from the past where you've seen in nature where I don't know
some human made it or nature made it.
And then you kind of connect with that to your thing
or the thing you want to do.
Or you kind of over time,
develop like a preference.
It's almost like you're self-selecting a boundary
of this is what is right.
This is what is beautiful.
This is what is good.
And I think it's very different for each person.
there is no right, there is no wrong.
It's more dependent on, say, like,
the things that you've seen.
It's almost like an LLM.
But the problem with an LLM is like it actually has seen everything.
And it doesn't really have an opinion.
Or like, it kind of confused itself thinking that people prefer purple gradients everywhere.
But what is good is like the element, because it has seen a lot of things, it can do the baseline really fast and really good.
Then the thing on top is taste or like your self-selection of what is good.
Like you're kind of drawing the boundary.
That is your decision.
Though the AI can increasingly help you do that.
Say we have a new thing in cursor called plan mode.
if you type in the prompt
and then you don't really want to
fill in the details you can
switch to plan, go
it will kind of
just build the
spec for you and then you can
add details, you can change
it as you want.
Yeah.
But it's almost like
I don't really believe in
say you give the age
and something long running or like
it's really like occluded
like a really non-specific
specific prompt and then expect it to give you exactly what you want.
Like, it's just not going to work.
There needs to be something for the human to specify what is good, what is right, how I want
to do it.
If you don't put in that opinion, it will just produce AI slop.
You were alluding earlier to this sort of, you know, fight between product managers,
designers, and engineers to sort of dance.
And if you were saying a few years ago, the categories were so much.
different. As there is this blurring, how do you think these categories will evolve with
you? I think people always have their strength or their unique special skill or some spike.
Say like some people are more good at coordinating. Some people are good at the visual space.
Some people are maybe good at architecting like the lower level construct.
But I think of all of these people as just like
Like there are software builders or
Makers
Like we kind of started there
Like if you look back when
So like the early computing era
There was no title
Or people who were maybe like researchers
Were like
But they
They may be designed a low level architecture
They maybe even you know
Build the UI
and how to display the UI on the screen
and the whole thing.
Maybe one person or two or five.
And when you did that,
and also I think back then there were like less
say economic constraints
where they were funded
and they weren't like trying to make money as much.
So they kind of made the whole thing really whole.
And now it's like you kind of break everything down.
You try to optimize.
them with like processes and cost optimizations and people have become like you know boxed
into little areas and problem sets when the whole thing is actually all together
and that causes a lot of problems I think like people people now make software that I don't
know.
Like they don't even think of, like, there's some like ideal that's kind of loss and people
think too much on the technical problems, the design problems, the money problems,
not the whole thing or what we're trying to make better for people.
But, you know, we're kind of going backwards now as, you know, they say tools like cursor.
if you were self-identified as a designer or developer or something.
Like I used to also struggle with this.
I started making stuff myself the whole thing.
And then I came to the U.S.
I got a job titled product designer.
I stopped coding.
I made mocks and prototypes.
And I waited for them to happen for like years.
And they don't happen.
Or like they ended up shipping us like a,
YouTube video.
That's crazy.
But with this new tool, a designer can build.
They can actually, like, you know, work on their craft.
The stuff that they really care about, make that really good, and let their rest, you know, be handled by the agents.
They can, you know, kind of put their taste on top.
And all the stuff that they don't want to worry about.
give it to the agents.
But you can also assemble like a really good team.
So like there's like really good infer engineers, front of engineers,
PMs who are like, I don't know, not just running meetings.
Get all of them together.
Give them the same tool, the same code base.
They can start covering each other's like weaknesses.
And then amplify their strength.
And the agent kind of hold.
everything. And, you know, instead of you painting this guy, where is your design and knows?
Yeah, that resolves a lot of the common conflicts of spending more effort on the functional part of
the software or spending more time on the artistic, aesthetic side of the product itself and being
appealing to the users. And you have worked at many of the very design-focused design-centric
companies from Notion to even prior to that Asana, like now given sort of the demarcatization
of who can touch that external facing aesthetic part of the product, how do you think about
influencing even, I guess, your current team and people at Curser to spend more effort
in thinking about that versus just the functional part of the product itself?
Yeah.
Yeah, one thing I want to call out is design is not just about aesthetics.
It is actually, like how I think of it is, like, it's all, it actually includes all to say the architectural designs or like all the concepts of what this thing is or like the company.
Say for notion as an example, notion is a pure conceptual product, meaning every single concept was designed by.
a person. So like in notion it is really just blocks pages, databases, the workspace. And then
everything kind of works around these concepts. And then at every layer, there's like a representation
of them. There could be like, you know, at the very top, it's like the UI or like the brand or like
the visuals, the aesthetics. But then there's actually the aesthetics every layer. How you architect,
say like the front end code and architecture,
how the reactive state sync and how you render stuff
to like how do you like store these objects,
how they relate to each other to all the core concepts of the thing.
And if you look at software, it's like, it's actually really simple
if you look at the concepts themselves.
So design is kind of like trying to figure out
what is the best configuration and the simplest state.
for all of this.
Some people maybe only focus on the visuals
or the interactions were certain slices.
But I think the beauty is actually putting things all together
as well as you can.
So I think it is really about what I just talked about.
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
few as number of concepts
few as code paths
to do the most things for most people
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 amazed of how you want to serve
designers
or just more around what kind of tooling you think there's an opportunity to provide?
Yeah.
So I think Cursor is still, like, our primary focus is on professional developers and teams.
But because of that, like, people around them are already here.
Yeah.
And I think for the longest time, we've been actually intentionally making Cursor pretty hard to get in.
for say the non-technical people
but they're here now
and they actually struggle to get in
and they really want to get in
one example is
like when you open up cursor
there's like three buttons
it says open projects
connect to SSH
clone repo or something
as a beginner
where like a non-technic person
I can't understand any of this
But what I would say
We just kind of
Give you the agent view
Blank
You can just start doing things
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
Who are like kind of
NJJASN people
Who are
Maybe they know
Software concepts or certain layers
But they might not be able
to code.
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, it's an IDE.
It is more like I can start doing things.
And as I start doing things, I can maybe like pick the paths that I prefer.
So like a designer, maybe they're just like kind of chatting with the browser.
next to it. As the agent is like making edits, they can kind of preview the changes.
They can maybe like in track in the browser, pick this element, change. Like, ah, I want to swap this
with something else and then boom, it happens. So how we do it is not, say, creating new products
or splitting cursor. That is the same thing. But just like different pre-configurations and
packaging of the same thing.
Because
like
kind of like what I just said
like thinking about the concepts
like cursor itself is actually really simple
or like
AI agents in general
are pretty simple.
What you want to do is actually
like not
like if you look at
I don't know like a chat GPT
agent versus like a cursor
versus like a replant of V0
a notion agent even
the architecture or how they work
or like they're almost the same.
So what if we can come up with like a set of
universal shared concepts
for interacting with AI, with agents,
with code, with software,
but you can kind of mutate each one
to fit more people
and to fit more use cases
and then each of them can leverage, say, the best model to do this UI thing
with the best view that fits me.
I can configure it however I want.
If I want to see everything, I can.
If I don't want to see anything, I can too.
This leads to my question of over the last few years,
and I don't know if it's a few years or a decade,
there is the concept of purpose-built tools for certain persona,
whether it's web flow for, you know,
personal use cases like for landing pages,
for cell V0 for more of the front-end developers
building NextJS apps.
There's tools for designers.
There are tools from design to engineering.
Where now there's more of a concept of the everything app.
ChatTbt is kind of everything app.
Notion is kind of everything app.
You can go to it for your not taking,
but I can also publish Notion pages.
Curse is becoming more of an everything app.
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?
Is there still a place for purpose-built tools
for a specific use case or persona?
How do you see that dynamic?
Yeah. I think it's just like different philosophies
of doing things and making software.
I think there's like almost like two,
ways you can look at the thing, there is this, like, the user-centric human-centered design path,
which is, you know, you start from a problem.
You identify the group of people who have this problem, figure out, you know, what they want,
build really specific solutions for them, versus, like, there's the more system angle to think about things.
where you're just kind of looking at the software itself,
how it is composed, and then think about,
hmm, 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?
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.
But it kind of limits you from the beginning.
Because when you start building these specific solutions,
they only work for those specific people.
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.
And a lot of people just can't do that.
So what they do is instead of doing that,
they add more things, more concepts, more features,
more features.
And then there will be a point where this thing no longer serves your initial group of people anymore.
The simple thing is no longer simple.
The purposeful thing is no longer simple.
And all of these purposeful apps, they're kind of selfish.
They are siloing people, siloing workflows for a file formats, creating islands.
when if you look at the thing
like all these
purposeful app whatever
I also work at Asana
Asana the core concepts are really
tasks and projects
everything around tasks and projects
everything they add needs to work with those
and that naturally limits what it can do
versus say like notion
like how we see notion
it is not note-taking
it is disguised as note taking.
Like you come in, you can start from a blank page, you can type.
But then what you're doing is actually like, you know,
blog pages, databases, and the workspace.
Each block is almost like a JSON object.
A page is just an array of JSON objects.
And then we render each block in the, you know, the layout and the type it is.
And then you can put them in a database.
Now they have, you know, more properties.
they share more stuff, there's more hierarchy.
And all pages can nest each other.
That is notion, but then you can do whatever with it.
You can have a task project database.
They all work together.
They can be a list.
They can be a board.
Do whatever you want.
But then the problem is, you know, for these more universal type of apps,
it's like, because it's so open-knitted, it's kind of hard to get started.
if I don't have the
patience to kind of figure out
how it works, I might
not even get to
the test and projects.
So there's always that tension.
But it is
fixable. You can build better packaging.
You can use AI.
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.
I don't care about everything else.
And then I think they should use my thing.
That's not how you do it.
We talk about AI.
We talk about agents.
And we talk about how it really speeds up building things and prototyping.
When it really comes to these type of, you know, helping users to understand
the product better onboarding, learning the new concepts.
Also to you as a designer-eat-leader,
how does interacting with AI really improves the usability, utility of the products?
Yeah, I see AI almost like it's almost like a universal interface.
And then the bare minimum of it is really just,
prompt and then you get some response.
Then you can kind of put this
into like different forms.
It could be like a little input,
like a chat box.
It could be like a
sidebar, you know, you see the chat.
It could be
maybe you select something.
You can do stuff with it.
But it could also say like
you completely transform this layer.
It's not chat.
It's not like an input.
It's more fitted to
say it's more purposeful.
even.
But underneath, it is still the same thing.
It is still the same AI, same agent, same architecture, same, like, you can flip
different models and prompts and stuff, but then fundamentally, that is what it is.
But because of that, you can actually build a lot of different layers and shapes.
Then each person can find the shape that fits them, and it will feel more comfortable.
But also there's always this like baseline thing, which is, it's just in it.
It's almost like Google.
Like chat GPT is just a box.
You can actually put whatever.
But there will be more specific tools that fit each person or each use case better.
Does every software from now on becomes a chat box to begin with?
And what's the row of UX design plays in that?
Yeah.
I think, like imagine.
There is only chat.
I think that will also be like a really bad experience.
Because, you know, you stare at a blank input, you need to do something.
You need to initiate the thing.
You need to ask the right questions, put in the right prompt.
You might not know what kind of response you will get unless you play with this thing a lot.
as a new person
maybe like you know
they might try it
the first time
they get something
that doesn't feel like
what they wanted
and they're like
this is not for me
this is bad
but I think there's
so much potential
where like
I think the models today
can already do so much stuff
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 today
get them through that thing to hear.
Instead of forcing people to be, ah, now you need to use this tool and then you actually
don't know how it connects with your current workflow.
You need to figure it out.
You don't really know how it works.
It feels kind of scary.
Ah, what do I do?
you know, versus like you actually ease them in through the thing they are used to.
And I think those are actually the more optimal form factors for, say, the individual person or the use case itself.
Because I know, like, I just don't want to like type in a question every time or give me like this wall of text of text response I need to like read versus say like,
the lines that your auto-complete just appears, you just press tab.
Or like maybe I just select some element in my art board and say,
make four variants of it and boom, it's there.
But underneath it's the same thing.
On this question, I have one more thought is,
when thinking about creativity, a lot of times when you have more constraints and more
guard rails, it's actually more of a friend to bring to creativity than not. Whereas now we have a
much more open-ended world. We have a much more capable tool that we can explore a lot more
unconstrained domain and fashions. How do you still try to apply constraint, I guess, in your
line of work? And how do you think the software itself, now that we have this open chat,
and chat box that can still bring that constraints in to give the builders more inspirations
and creativity.
Yeah.
I think the biggest constraint is it's kind of like simplicity in a sense.
Meaning like there's a limit of how much concepts were things you can expose to any given
individual at any given time for them to kind of figure things out.
So there is a natural constraint on that side.
For example, like on the cognitive side, there's maybe like a constraint on space.
So like cursor, the window, you can stretch it like this or a, what if it's like this?
Then you start reducing things where like you're kind of like prioritizing what to show what is the most important.
and then those things actually don't change that much
or like it is really important to figure those things out
and then you can kind of
build a mechanism where
you can kind of accommodate more things
say like there's secondary level things that maybe some people want to do
maybe it's like more specific modes of operations
where parts of the workflow
maybe it is like
for different kinds of individual
or preferences
but they are still
like kind of layers
of the core concepts
where things
they're not kind of
linearly like additive
so don't throw out
all at you at once
and I think
the interface were
how software
manifest themselves where how we design even,
it will start becoming less about, say, the designer decides
these are the buttons where they are.
And then it's like a fixed thing.
But rather it's like there's like shared concepts and shared mechanisms of the same thing.
But I could say take different forms where you can kind of expose ways for people to customize
and make them their own.
Then it's like the designer,
what they're really thinking about is,
like what are the most important concepts,
how do they relate to each other at every layer,
say like for 80% of people the defaults,
what should they be,
what should be the simplest state of this app or this thing?
What is the default for maybe like you can start forking it
for different people?
And then it's like maybe at the second layer, there's like you start exposing more like the power user features where the different archetypes of what you can do.
But the default should still stay simple.
And then the ideal is like a lot of the tools, they don't really tell you what's going on or how the things work.
One example is like
Most of the CLI coding agents today
is like they kind of force you to use this tiny little window
with this tiny prompt
That's almost like all the interactions you can do
And then you're kind of delegating everything to the agent
You don't really know how things work
Versus for cursors like
If you prefer something minimal
I think it's fine you can do that
But you can start digging into more things
You can customize the agent
You can make your own custom mode with like different model preferences and which tools I want, which prompts I want.
You can pick like maybe like instead of viewing just code, I want like a preview.
I want like a dock thing.
I want a browser thing.
I can change all the colors.
Like it's all up to you.
I can prefer the keyboard.
I can prefer the mouse.
And then the designers, what they're really doing is they're thinking.
of what is the minimal set of abstractions,
the system to kind of handle all of these permutations?
I love that concept of you're not just seeing the tool itself as a tool,
but it's actually a toolbox where you can customize and configure it
to fit your purpose and build our own tool that fits your workflow
and give a ton of flexibility to the end user.
That's sort of the ESOS of cursor and notion.
that the more you unpack from the beginning, there's more to come.
There's more to play and tinker.
Right.
Because I think there's a lot of us who are actually really into that kind of stuff.
For sure.
Real, you have an impeccable taste and sense of design.
I'm very curious on your day-to-day life, how do you cultivate the surrounding environments,
your own surroundings to continue to find inspirations.
and bring the best design out to the world.
Are there things you do, practices?
You want to share with the audience?
I don't really have like a routine or like it's kind of sporadic.
Like I don't sit in figma all day and making mocks.
I like it's like doing everything at once type of type of vibe.
Like I might be thinking about a longer problem.
I would maybe like just write.
I like writing and kind of thinking in bullets.
I would like go out of the office on a walk
and then take my phone with like a notion page
and I will just start writing.
I'll make sketches.
I'll maybe play individual space
I'll maybe like, you know, build a prototype and code.
A lot of my inspirations come from, it's like not forcing it and kind of leaving some blank space to let things simmer.
A lot of it comes from like just looking at stuff or looking at everything, not just software.
So like you can look at print design, graphic design.
motion, films, music, art, anything that humans made.
The nature side of things are really cool too.
Like learning about natural systems, I have a bio measure.
So, like, there's a lot of similarities in, like, you know,
how many layers of things you can build, how they interact with each other.
Looking at the past helps a lot.
So, like, my Rio OS project kind of started from, like, last year, I was just, like, I bought a bunch of old Macs and iPods.
And I was just playing with them.
And I wanted to kind of recreate the feelings.
I actually really want to ask about that.
Because a lot of, you know, designers' profile page has the most shiny, far-looking, futuristic designs where you have.
where you have like, I don't know which year it is,
like a MacOS interface with like the original version of iPod icon.
Yeah.
Yeah.
Tell us more about the real OS project.
Yeah.
I started the thing from, so I was leaving Notion and I make noises when I am in meetings.
So like, oh no.
It's all the same thing, stuff like that.
And I wanted to make.
them a little gift.
So I built
like a soundboard app
with cursor.
It was just one app.
Like it looked like really bad.
Like,
tell when default styles.
And then I just said,
what if we like made it more like retro Mac OSE?
And then it put it in like a
almost like a more retro
macOS type window.
Basically like put it in the box.
and then I'm like, add a menu bar
and then it added it on top.
Then I'm like,
now I have a menu bar and a window.
Why not just make more apps and more windows?
And then that's how it kind of started.
And then I just couldn't stop for like, I don't know,
for three months.
Yeah.
But a lot of the interfaces that I created,
I started from,
it's kind of inspired
from System 7
there is
accuracy but also
I added some
like future stuff in it
and then I actually made
like more themes
I added like a
macOS 10 theme
like the first Aqua theme
I added like Windows 95 and
XP
and then if you swap between them
and you play with the OS
it feels really authentic to each
but then it's
actually the same thing.
So that's kind of like the message I want to kind of tell people.
It's like we've been almost doing the same thing over and over again from the very
beginning.
But maybe given, you know, the technical constraints of each era, there's like just, that's
how it ended there and how it ended, how it came to be.
But we kind of carried a lot of these concepts and patterns.
over to even now
and then we
are actually still living in it
and I don't think
things will change that much
meaning
there is
these like timeless
things that don't change much
and
like it kind of all comes back to
people who are trying to come up with some
really familiar ideas
and then bringing them to like a new medium.
But we're doing the same thing again.
Back in 1984 and now,
like people are just, I don't know,
using paint to draw some pictures.
There's like a text editor you can type some stuff.
There's like a, you know,
different concepts that we put in little pictures,
the icons, the desktop.
Like none of that really changed.
Yeah.
The timeless concepts and software we're using is the browser, the player, the chat windows,
and those are all on the real OS project.
So for the audience, want to check it out.
It's at real.com.
Yes.
OS.
Atreo.
os.
OS.
Awesome.
We wrap there.
Thank you so much, Rio for coming.
This is awesome.
Thanks for listening to the 8.
A16Z podcast. If you enjoy the episode, let us know by leaving a review at rate thispodcast.com
slash A16Z. We've got more great conversations coming your way. See you next time.
As a reminder, 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. Please note that A16Z and its
affiliates may also maintain investments in the companies discussed in this podcast. For more
details, including a link to our investments, please see a16Z.com forward slash disclosures.
