The Changelog: Software Development, Open Source - Back to the terminal of the future (Interview)
Episode Date: August 30, 2023This week on The Changelog Adam is joined by Zach Lloyd, Founder & CEO of Warp. We talked with Zach last year about what it takes to build the terminal of the future, and today Adam catches up with Za...ch to see where they are at on that mission. They talk about the business model of Warp, how they measure success, reaching product/market fit, building features developers love, integrating AI, and the pros and cons of going open source (again).
Transcript
Discussion (0)
This week on The Change Luck, I'm talking to Zach Lloyd, the founder and CEO of Warp.
Jared and I talked to Zach last year about what it takes to build the terminal of the future.
And today I catch up with Zach to see where they're at on that mission.
Zach and I talk about the business model of Warp, how they measure success, reaching product market fit,
building features developers love,
integrating with AI, and we even
talk about the pros and cons of going open source.
Again, a massive
thank you to our friends and our partners
at Fastly and Fly.
This podcast got to you fast because Fastly
is super fast all over the world.
Check them out at Fastly.com
and our friends at Fly help us put our
app and our database close to our users with no ops.
And they'll do it for you, too.
Check them out at Fly.io.
What's up, friends?
I'm here with James Cowling, co-founder and CTO at Convex. They're one of our
new sponsors, and they're building a full-stack platform for the TypeScript era. So, James,
in your main navigation, you link to a page called Convex versus Firebase. How similar is
Convex to Firebase? And if someone is quickly trying to grok what Convex is, is that a good
comparison? I think it's a good starting point for sure.
I mean, Firebase has been very impactful.
And the people we speak to who use Firebase often love it and often lament the time they have to move off of Firebase because it's kind of failed to meet their needs as a growing company.
So Firebase falls short in a few ways.
One is in terms of like a fully relational document model.
One is in terms of having strong type system. One is in terms of having this full end-to-end consistency story
where you write functions that run on an API server on the data that you can subscribe to.
And so one thing I think we see in the Firebase style development model is that you have web
applications talking directly to a
database in a cloud firestore. With Convex, what is different is you have your code talking to
actual fully fledged TypeScript functions running on your data that you can subscribe to. But I
think the Firebase's comparison is fairly apt. And if someone is a Firebase user, I think you
will love Convex. And it's certainly designed to fill that niche in the market. It's people who want to build applications without having to mess with infrastructure.
In what way has infrastructure failed specifically application developers?
I think if one was to compare what it looked like to build an application 10 plus years ago
to today, it's gotten more complex, not less complex. There's a bewildering amount of
frameworks. I think Google, for all
their amazing work they do, has had a bad influence on how people build systems. Because oftentimes,
when someone wants to build a web app these days, they're told to learn Kubernetes or something
ridiculous like that. These infrastructure platforms really resemble the shape of the
underlying implementation, not the shape of the problem that the application developer
is facing.
And so even when before we started ComEx, we're talking to customers, people were like,
well, I just want someone to manage my Kafka cluster.
And I'd say, well, why do you even have Kafka?
And like, well, I don't really know.
I think the database falls over if I don't put a queue in front of it or like I need
to like buffer some data somewhere.
And what became clear is that the tools just weren't serving the needs of the application
developers.
And I think application developers and framework, front-end framework engineers understand the
problem space because they spend all day doing it.
They sometimes don't have the power to fix the problem because they don't build the database
themselves.
And I think oftentimes infra folks don't have enough empathy for the application developer
that at the end of the day there's all that matters is the application okay if you're looking for a better
type of back-end convex is the full stack typescript development platform you've been looking for
replace your database server functions and glue code get started at convex.dev
that's c-o-n-v-E-X dot dev again, convex dot dev. so zach lloyd we had you on the show i mean we put a bold title out there
warp wants to be the terminal of the future.
Now, I can imagine that a large majority of the listenership of this show, you know, uses, maybe loves the terminal.
I'd say probably a lot of them love the terminal and you want to be the terminal of the future.
You know, since then, that was we published that April 26th of last year.
So what's changed since then? Like, are you on that path?
Have you won?
Are you the terminal of the future?
What's the state?
I think we're definitely on the path.
I don't know if we've won.
I think that's like a big statement.
Yeah, I mean, I guess, so where we're at,
we have a lot of people using Warp, which is really cool.
A lot of people love Warp.
For people listening who don't know what it is,
it's like Adam said it's a reimagination
of the terminal
Terminal of future man
What does that mean?
It means like we sort of
we try to look at what developers do
in the terminal from first principles
and build a tool
and a product that makes
those daily actions
whether it's like building running your code
or using CLIs or sorting through
logs or setting up development environments or collaborating with people on your team,
trying to make all those things the way that they would work in a modern app. If you were
sort of not using like a terminal shell thing that was designed for 40 years ago,
it's a Mac app. I guess to answer your question,
I think we're kind of on that path.
What I'm excited about is people really, really
seem to love the product.
We have not conquered the world yet,
but we have a lot of developers using it,
giving us feedback.
I think every week it's getting better, which is cool.
Do you share numbers?
How do you quantify a lot to the public?
Yeah, we... Can you get very specific? Is it do you quantify a lot to the public? Yeah, we...
Can you get very specific?
Is it 101 developers?
Is it 250,000?
Is it...
What range?
How much is a lot to you all?
Yeah, we don't...
We don't really share the figures.
It's in the six figures.
All right.
Kind of where we're at, right?
Asking hard questions already.
I feel the pushback.
Okay, six figures.
So that's 100,000 plus. Okay. Well well that's significant it's not you know a thousand
or ten thousand which is still a lot too oh no no no it's all it's it's a lot and it's growing
quickly which is cool too and it's only mac which is the other thing so it's like that's if you look
at like what people want right people want from warp it's um they want linux support they want windows support i bet gosh i think that they
don't really they don't know it but they're gonna get web support also which i think is nice gonna
be actually surprisingly useful and cool for people so more than like we're kind of like more
than like hobbyist scale we are you know used by a lot of people and we get a lot of feedback,
which is pretty cool.
And I think,
you know,
when we spoke,
you were brand new.
Yeah.
We,
we,
we just,
we were just starting.
So we had the idea.
It was like,
Hey,
we have this idea and we love that.
We love capturing,
you know,
the initial stages.
We don't do this all the time,
but I think in this case,
because the terminal is
so near and dear to our hearts, why not speak to somebody who can boldly think they're going to do
the future, you know, the future of where this terminal is going to go. And so I think
that's what attracted us to the conversation because you really hadn't put a lot of proof
out there. You had an application, you had, I think, some working things. Jared and I both
tried it out, but it didn't stick for us necessarily.
There's certain things we pushed back on the open source nature of it.
There's a lot of good things and bad things about that launch.
I always say positive things or negative things.
I think open source has a good vehicle.
You probably thought about that.
I mean, who knows?
But when somebody says they think they're going to be the future of where the terminal is going to go, we have to have that conversation.
We have to capture that initial launch and think, okay, here's where they're at.
And then, you know, just over a year later, now you're here on Founders Talk.
Not the change level.
We're going to go deep into Warp.
We're going to go deep into product market fit.
Your personal journey as a founder.
Some of the struggles it takes to run a company.
Maybe what it might be to grow to six-figure user base,
what it is to manage that, all those things.
We want to talk about all that stuff.
Yeah, cool. I'm excited to dig in.
Well, I think the place to begin would be,
I'm curious, just on the note of where we're just currently at,
like you mentioned that user base,
when you define success or product market fit
or however you determine we're on the right path,
whatever phrase you use to describe that,
what are some of the things you're tracking?
Is it simply the number of users?
Is it the daily active users?
Like how do you measure the fit of your path?
Yeah, so super early on,
before focusing on, like, growth at all
and then total number of users,
the things that we were focused on
and really continue to focus on are, like,
do the users that we have retain?
So, like, that's big.
Do they engage?
Like, are people using it like the terminal should
basically for most developers be a daily use tool so are people using it three days a week five days
a week seven days a week so how frequently are they using it we look at things that are we look
at mps so people you know what what do they would they recommend the product to their friends how do
we compare to other developer tools in that?
We look at public sentiment,
like what are people saying about it?
So if you look on Twitter, people like it.
So those are all signs of, I think,
product market fit beyond just like
what's the total active user number.
For user number, I think what we care about
is not like all-time users at all,
like that's a vanity metric. It's like who's in the active user base, who's using it every week.
Yeah, so that those are basically the data points like GitHub issues would be another one.
And when we first started, the goal was really just like, can we get a feedback loop going?
Can we get anyone to use it? Can we get anyone to be totally engaged, want to use it as their
daily driver? And so that was that was sort of the first step with it.
And then as we've gotten more mature and gotten more feedback, it's been more towards, well,
can we not just improve the retention engagement, can we also improve the signups and activation,
the conversion funnel, and prove that there's a big enough group of people who want to continue
to use it? Let's talk about that feedback loop. I think one of the challenges with doing pretty much anything on the internet,
whether it's a podcast that's been running for 14 years
or a brand new startup that's aiming to change
how developers use their terminal, team functionality, etc.
AI even.
I've seen Warp AI as a feature.
We'll get into that, of course.
But you've got to think about that feedback loop.
How have you grown that feedback loop. How have you
grown that feedback loop? How has it
transitioned and changed over
the last year and a half? Yeah, it's a great
question. So when we
first started,
the explicit goal was like, can we get anyone using
it? And so what we
tried to do, which actually didn't work,
and I would kind of recommend for other founders
probably not to do this, is like, we kind of went to like family, friends, network, like, hey, try our
new terminal. And so we were like, and that didn't stick super well, because those people did not have
real high intent for using this product. And so like, you know, we could have gotten some sort of
false negative signal based on that.
Instead, what we had to do fairly early on, and the way that we staged this out was we had to do a sort of initial launch into a wait list, but out into the wild with people who we didn't know, but where we explain like the messaging of the product, like what's the value prop?
What are we, what like from a marketing perspective what is it we went on hacker news with just like a waitlist sign up page and that was actually the key thing to do
this this we did like maybe six months before i talked to you so this was like when we were just
trying to go in like private beta is what we called it and we got enough traction i think we
even got to like the top of hacker news just based on that, describing what we were doing.
And then we were able to take some of those people who signed up for the waitlist, bring them into the early experience, and actually get signal from more high intent users.
Like, does this thing solve their problem?
And from that, we were able to get, at first it was super small.
It was like maybe 100 users using it, maybe a couple hundred.
And the retention was really not very good. And but it gave us the baseline of like, a group of people who cared about the problem that we were
trying to solve, who were willing to engage in our product. And it let us kind of know like,
where we stood, like, was our thing MVP quality? Was it not? And that was, yeah, that was like a
really key step. Yeah, I get that feedback is challenging. I didn't realize that you'd launched launched like six months beforehand i'm thinking back to the timeline of like when we had you on
the change log last year and what that time was i know that you had a lot of activity on hacker news
and it was like a wait list i guess maybe the good question is like why did you build this thing in
the first place like you know sometimes you chase i'm not saying you're doing this but when you feel
like or seem like you're chasing product market fit it's because either you're too early with the idea and the market isn't
mature enough to be ready for it. Or, you know, sometimes you invent something new or a new
direction and it's a great idea, but it's early. It's five years early or a year early or whatever.
I got to imagine that you built this for teams. How did you even map out building this thing
in the first place?
Yeah, just to answer your question.
So the first, by the way, the way that we staged this
was we did a private wait list.
And then when we talked to you,
it was we had gone into public beta.
So when I talked to you,
we had removed the wait list at that point.
How do we think to do this?
Honestly, so I don't know i've been a
developer for a really long time i was uh looking at the things that i regularly use and you know
i thought like i i wanted to build something for developers to help them get more done but i i
wanted to build something for developers to help them ship stuff faster and you know the terminal
is like i was the more i thought about it
i was like the more this is like kind of crazy this is the user experience that people have with
have with this kind of crucial tool that sits at like the center of a lot of developer activities
i became convinced pretty quickly actually there was like a way better product to build here like
some other things that got me convinced around that were just the amount of tweaks
and customizations and popularity
of different things on GitHub that developers
were using to try to improve their terminal experience
already. For instance, if you look
at some of the most popular
GitHub projects of all time in terms
of stars are things like
OhMyZSH or FZF.
They're things that have like massive numbers of
GitHub stars. And they're all about like making the terminal experience better in one way or
another. But there are things that you have to as a terminal user go seek out, install, configure.
And so on the one hand, I thought like, hey, there's a ton of signal public data, like people
want this tool to be better. But then there's also a lot of friction if you're a terminal user and actually getting to the point where the thing works well. So from a
product perspective, I was like, I really felt like there was something there. Yeah. From a
business perspective, and like, is this a good business to build? You know, that's like,
that took me much longer to get conviction on. And I think to some extent,
still the question is out there is like,
is this a good business to build?
I've become more and more confident over time
that this is actually like potentially
like a really, really big game changing thing
and a cool place in the tooling stack
to help developers get more done.
But at the beginning, I was like, I don't know,
a terminal's like a kind of free utility that ships with everyone's computer. Is this really a smart area to go after? And it took a lot of like thinking about like, what could the business be for me to get conviction that it was worth spending a lot of like, you know, a lot of my time. For sure, man. I'm like three years into it now. We'll see if that was the right decision or not.
But that took a lot of thinking through
to get to a point of conviction.
Is this built for, if I recall back
when we were talking on the change,
I think it was built for primarily teams, right?
Not really teams of one necessarily,
but I think you've changed since then
if I'm reading the tea leaves well enough.
Well, the way we think about go-to-market is it's actually built for individuals. necessarily but i think you've changed since then if i'm reading the tea leaves well enough well
no so the way we think about go to market is like it's actually built for individuals um like the
the thesis is like an individual should be able to download warp open it up use it in place of like
their default terminal app or in place of ierm and immediately become more productive. It's backwards
compatible. So it's like it works with CSH, Phish, Bash. It should work. It's not 100%
backwards compatible. So this is one of the complaints that we have, but it generally just
works. The team aspect is something that we actually just launched the first version of it about a month ago
with something called Warp Drive,
which is, it's like a shared space in the terminal
for people to share commands, essentially.
Like you share templated commands
or you store your own templated commands.
And so the idea for that is like,
hey, there's a bunch of like, I don't know,
Docker, Kubernetes commands that your team needs to use that are hard to
remember. You can organize them, you can make sure everyone on the team has access to them,
you can search for them as you're entering commands. And so that's the team aspect.
But that came much later, like from a go to market standpoint, the way that we've always
thought about warp is like, let's focus at first on just individual adoption and making sure that
someone as an individual who uses warp gets a lot of value out of it and then just now we're starting to introduce some of the first teams features
gotcha so got there really thinking about the business because i'm thinking okay individuals
i pay for individual mac apps i kind of draw a similarity between what you're trying to do with
warp and what uh the team behind raycast has done with Raycast. It's like Mac-focused.
It's, you know, in quotes, it competes with Spotlight, really.
I mean, Spotlight's baked in.
And I think as Apple makes their AI impression better,
potentially with Siri, maybe Spotlight gets more better over time,
like better than it is today.
But for now, Raycast seems to have a leg up.
It's taking an existing native tool
that has some downfalls, not perfect,
but works for the majority of the users.
But those who desire more can seek out an alternative,
and that's Raycast.
I kind of draw some similarities.
And similar, I use Terminal.
I use Terminal app.
It's baked into the Mac.
Tweaking it is pretty easy.
I'm an OhMyZSH user.
Some of you are speaking my language.
I'm trying to tweak my Terminal experience,
but not so far where I feel like I have to go to a custom Terminal.
But I can see where you're trying to improve.
An existing application that everybody's trying to do something to their Terminal
to make it better for them.
And what if you can curate the ability to do that into one single pane of glass that has, you know, faster UI, faster time to paint,
whatever it is that makes it a speedier application or has team features or has warp drive or bakes in warp AI at some point.
Like that to me does seem compelling, but it does come down to pulling it off.
Yeah, I mean, I guess a couple of thoughts there.
So like, yeah, execution is kind of everything.
Like at the end of the day,
it's like we're only going to be successful
if people actually feel like it really is saving them time,
saving them headache, making their teams more productive.
If it's like, you know, in the future,
more, you know, better integrating with their other tools.
It has to have real value.
And the real value comes from like executing
on the product in a way that makes the product really good.
So that's like a given.
I think the Raycast is interesting.
So Raycast is a company that we've actually done,
like they integrate with us.
There's like some synergies.
I think that their sort of brand positioning
is maybe similar to ours.
It's like a, you know,
it's like a productivity improvement
replacing a built-in thing.
You know, I think it's a little bit different for us
in that the, you know, we're more,
we are more developer specific.
They are more of a consumer product thing.
I think we have the ability to go deeper into
improving actual developer workflows
than they do. But yeah, there's some similarity there
for sure.
Yeah, I don't mean similarity in terms of what you all do to solve it.
But the way you've attacked the market where there's an existing tool
and incumbent that's entrenched. Entrenched and free. solve it but like the way you've attacked the market where there's an existing tool an incumbent
that's entrenched right yeah entrenched and free and so the way you have to approach the market
and i actually push back quite heavily it's an episode coming out soon where i talked to the
founder tomas uh thomas uh raycast yeah i talked to him about, you know, Ray Cass journey.
And the one thing I pushed back on and is like, you gave so much away for free.
Yeah.
You just now sort of did charge for it.
You gave so much away for free.
But, you know, then after I really understood what they were trying to do and why that logic
made sense was because, well, we're fighting an incumbent that is free and we have to become
ubiquitous to our users and similar to you, Mac focused as well. You know, so there's something to that as free. And we have to become ubiquitous to our users and similar to you, Mac focused as well.
You know, so there's something to that as well. It was like, well, we can add value to other places,
but we need the tool. We need Raycast to be a given on any given person's Mac, but particularly
people who want to be more productive on their Mac. And I think the way I would probably say
that you're similar to them is you want people to be more productive with their terminal on their Mac. And I think the way I would probably say that you're similar to them is you want people to be more productive with their terminal on their Mac because they're already
a developer. That's who your audience is. And it's Mac only, at least for now. And then later on,
later on features that, you know, add to that thing. Maybe it's okay. Well, if you want artificial
intelligence directly in your terminal, sure, you can probably bake in some other tools.
But what if we gave it to you in this way or that way?
Or what if we, you know, whatever.
That's where I wonder if, because to be the future of a terminal, you have to have that critical mass.
And it's getting that critical mass is really the hardest battle.
For sure.
Yeah, I mean, the go-to-market for us is similar in that respect in that warp we don't we
don't charge individuals the goal at the start has been to grow the user base and prove that there's
value and then the it's a sort of freemium model for as we add things that i think have more
you know more differentiated value or more obvious marginal costs like ai or like cloud features i think that's a natural place
for us to monetize you know the other way that like if you want to make like a product analogy
that i would kind of look at it is like it's kind of like the difference between like notepad and
word or something it's like the mac does ship with a terminal but i would argue that it's like
pretty crappy um is that right? Like it just,
I don't think if you looked at what developers do in it,
you'd be like,
Oh,
let me,
let me design something where the mouse doesn't work.
Like let's not have clicking the mouse work to edit your text.
That'll be,
that'll be most helpful for them.
So I feel really strongly that people waste a ton of time,
either configuring the thing or dealing with
the headaches of the thing or there's some weird like rite of passage that developers feel like
they have to go through like to like learn how to use it which is maybe it's like i don't know
maybe there's like some hazing value to that or something but like to me it's like why why be
frustrated using a thing that's like, what the hell is this?
It doesn't really, like, I think that's the experience a lot of people have when they first use a terminal.
It's like, what?
And then you have people use a terminal for a really long time, and they don't know how to use it.
And so one day they see someone hit, like, Control-R, and they're like, oh, man, I can search through things that i did in the past to do them again
or you know they they hit you know command k and like oh i can clear this like the basic tool to
me is kind of like notepad or simple text or something like that compared to like using google
docs or word it's like you can use it there are developers who still like write code in Notepad, but it's like, why?
That would be kind of my, whereas, I don't know,
I feel like it's kind of that big of a difference,
or at least that is the level of difference that we're aiming for.
And then I feel like when you go one step further
and you're like, hey, this thing is not just like
a piece of local desktop software,
you start to get the types of features that differentiate something from like, hey, this thing is not just like a piece of local desktop software. You start to get the types of features that differentiate something from like, you know,
Figma compared to Sketch, where it's like, oh, all of my stuff is everywhere.
Oh, all of my teammates can use stuff I did.
So I feel like there's not just like one generation of leap that you can take in improving the
terminal from like Notepad to Word.
But I feel like you could go like all the way from like Notepad to word but i feel like you could go like all the
way from like notepad to like you know google docs essentially where it's like both a better
application in terms of the ux and it's also collaborative i'll give you that i'll give you
that it's almost like uh you want to give everybody the power user hat yeah i mean that that was one
of the ways we talked about at the beginning is like yeah exactly it's like why can't every user
of the terminal have the same sort of efficiency productivity skill with it that a power user
has like why are we making people spend so much time and effort and like the truth is most people
never become power users at the terminal because the learning curve is so insane now i will i'm
sure that there are listeners to this podcast who will be like, Hmm, you know, what's he talking about? The terminal
is perfect. Uh, and that's like, that's, that's true. And they're probably like, you know, I've
got, you know, I've got my Tmux configuration and, and FCF and like, that's true. Like if you,
it is a super powerful tool if you invest the time to get it configured and learn all these other
ways of doing that. I don't want to be dismissive of that because people who set it up really well
are extremely productive.
I've always had engineers on teams that I've worked with where they're really good at the terminal
and they'll find something in the logs that I couldn't find
or they'll be able to do a release in a way that's much faster
and do a whole bunch of Git stuff that i can't do and so like there is like if you can get to that point my point is
more like that power i don't think should just be limited and it shouldn't be such a hard journey
to get to the point where you're really adept at this tool and so we want to make everyone have
the power of a sort of terminal power user i'll indeed bestow the power then you know if i
can have in one pane which i do i've got yep terminal open and i've ssh into remote machine
which i do often and i've got warp open and i've ssh into machine that i'm there often and i you
know like there's some things i'm doing on this machine that's like ZFS related. So Z pull is a common command.
And if I type Z and I up arrow,
I get a list of like more recent things.
If I do that on in terminal,
I'm just going one at a time.
What was in my history?
It seems like you've,
you sort of like grepped like the five or six lines that's in my history as it relates to Z pull,
for example,
and said,
okay,
you know,
Z pull status,
Z pull trim, Z zpool status home store which is a particular zfs store that i might be interacting with like it's it
seems like it's gone back in my history what i'm asking you really is like not just how does that
work but how do you make it yeah like how do you take these things that are hidden away really
because the terminal is like you interact with it and it interacts back with you but you've got to have yeah the notion of what to input first how do you bestow those power user
features on you know just everybody essentially how do you expose that it's a great question
because i'll say what we don't want to do from a product standpoint is turn the terminal into like
a mouse first gui like that to me sort of defeats
part of the purpose of the tool,
which is like,
it should be a very minimal,
lightweight keyboard driven interface.
Like we have no desire to take the terminal
and make it like you're clicking everywhere.
We don't want to put buttons everywhere.
And so actually like this question
of like discoverability is a really,
is a big one.
You know, one really simple thing that we do is do is we have a universal text-based entry point
for searching everything. We have a command palette, which is a pattern that you see
in VS Code. Raycast is a good example of a command palette
driven thing. That basically means in Warp, if you hit
command P, you can search over anything you can do in Terminal.
That is one nice thing
that we do a second thing that we do is like we have like we have a few hints really minor hints
like if you're in the zero state of the terminal like we'll tell you how to bring up the command
palette like like all the empty screen you haven't run a command yet we have like hint text for like
how do you get into ai search and stuff like that? We have like one or two UI entry points for this stuff.
Yeah.
But I think in general, that's a hard challenge.
The other thing that you try and do is you can try to like guide people to discover stuff
in the course of using the app.
So like, for instance, one feature that we have that I think is really cool is like,
if you mistype a command, you make some error running a command, we have an integration with
this tool called the
that's like literally what it's called. I don't know if you've
heard of this tool. Little editor's note
here. This is Adam, by the way.
I just don't want to leave this
section here without mentioning how committed we
are to just keeping the explicit
tag off our podcasts.
In this case, hey, just check the show notes for a link.
We're linking up the tool in the show notes. So you can kind of guess what it might be case hey just check the show notes for a link we're linking up
the tool in the show notes so you can kind of guess what it might be see you in the show notes
and so what what they do is it's just it's a funny name because it's like yeah the reaction is like
you did something in the terminal you're like oh man what what that you know what happened here
and so we integrate with that and like we surface the like, hey, this is this is probably what you meant to do.
And we just do it automatically and we do it subtly.
And so that's like a cool example of like, how do you how do you level someone up?
But we're that. Yeah.
Like we're always looking for these ways of like, can we suggest things in flow that will help people learn how to use the tool without putting a bunch of crap
in their face that if you know how to use it you're going to be like i don't want this you
know and the other thing is like we could do some of that uh and let people turn it off but like
yeah it's it's a real it's actually a really big sort of ux challenge for us. Well, I'm here with one of our sponsors over at Square, Richard Moot,
API design lead and developer advocacy lead at Square. So Richard, one thing that is a hallmark for
great developer experience is great documentation. And recently you all did a new version, a new rev
on your docs. What can you share about that? Yeah. So just a little while ago, we updated
our documentation to have more organization. We wanted to get it better mapped into how sellers,
and so the main people who use Square, we call them sellers,
and how they understand our various products and offerings
for the different business types.
And we're trying to better map the APIs into those different categories
so that you can better understand what sellers are using these for.
And so it makes it easier for you to build your app,
making sure that you're using the similar terminology and categories.
But it also makes it a little bit easier to navigate.
If I'm doing payment stuff, I can immediately just go into the payments area.
But maybe I'm building stuff that's about people management.
And so you can go learn about
the APIs that we have for people management.
It sounds like a great opportunity to really
take some feedback from your audience. Is this something
that played a role
here in this new revision?
We've definitely learned a lot from our
developers and ways of making this
make a little bit more sense for them.
As you go through it, if you were familiar with the old docs,
we have a way for you to switch back so you don't feel
like you have to immediately adopt the new stuff.
These things can sometimes
be frustrating when you're in the middle of the implementation
process, so we at least had a ripcord
put in there for you.
So if you want to go back to the old way, you can go
ahead and check it out. But I highly
encourage folks to look
at the new organization
of this. I feel like it makes a lot more sense in terms of how to build and what resources are available to you.
Okay, if you want to check out the new docs from Square, go to developer.squareup.com slash docs.
Lots of great thinking around user experience and, of course, great documentation.
Again, check them out at developer.squareup.com slash docs or go to the developer hub at developer.squareup.com slash docs.
Or go to the Developer Hub at developer.squareup.com. is your first mission to success is it to replace terminal like when you think about
the marketplace and you know how do we get to where we want to go well if we just find a way
whether it's paid or not to replace, then that's step one of success.
Because if you layer on value everywhere else, then that's going to come naturally, right?
Like, is that your first mission?
It's not how we talk about it, but it's like, yeah, that's not a bad way of looking at it.
Because that would be my mission.
If I were in your shoes, that would be my, I would be like, how do I take down Terminal?
Not that it's bad, but I can be better.
And I just, my mission is to replace
Terminal. That's step one. And everything else comes from doing step one well. I think like,
we want people using it. It's like, yeah, if you think about the sequencing of success for Warp,
it's people using Warp and like... Because Terminal's Mac, right? That's your market.
It's Terminal. It's iTerm2. I don't know if you're familiar with that one it's the vs
code terminal there's like and then there's a sort of long tail of more specialized terminals people
use but yeah we want people using warp and it there really isn't like a world where people
use multiple terminals like that doesn't make that much sense and so we want people switching
into it using it because it's like you know you tend to as a user you'll you'll be like i want this as my standard tool and then you know there's no real
motivation to switch terminals so basically yes but like the way that we tend to think of it
internally is like you know we want people using warp because they it they like it and it's useful
and it's valuable to them and more so so. Can you warp in VS Code?
You can't.
You can't?
Like, you can't, like, stick warp in VS Code.
This is actually one of our top five feature requests.
Well, I wonder if you, let me ask you a question here.
Let me, I wonder if you can, but differently.
I wonder if you can, like, TUI it, essentially.
You know, do everything that you do warp-wise
in, like, a warp command that you run in VS
code that is essentially a TUI that runs in the terminal in VS code.
Like you replace it by running a TUI. That's possible.
Probably a lot of work, but possible.
It's like, I don't think it's possible. The reason I think it's possible,
it's like, well,
the thing that differentiates warp from every other terminal is that we are,
we do more than like what you can do in a TUI,
meaning like we take over the input editor
from the terminal.
It's a native, it's a native thing.
It's like, that's how we support, I don't know,
the stuff that makes editing text in Warp nice.
That's how we support multiple cursors.
That's how we support like syntax highlighting
and, you know, hover to reveal documentation.
All of those features are built at the layer of the native app, not at the character rendering
layer.
And similarly for like the other, the other big difference in warp is like all the output
goes into these things we call blocks.
That's like not a, like that maybe, maybe you could simulate that via 2e but i think it
would be a not a good experience the reason why i ask is because vs code is just so huge and so
the next question is like have you surveyed the landscape of terminal usage on a mac and to what
degree does it lean towards terminal to what degree does it lean towards i term two and to
what degree does it lean towards just straight up i'm in VS Code so I might as well terminal here.
Yeah, it's actually more terminal in iTerm
and warp these days.
I mean, some people use the VS Code terminal.
It's a really interesting question from like
how should we approach things from a competitive standpoint.
I think the VS Code terminal,
the biggest value in using that is like, A, it's like right there.
And then B, there's like a few like nice integration things that you have with the code, which we can sort of actually do a bunch of those from Warp.
Like, for instance, if you print out, if your compiler prints out an error message and has a line of code, you can just click on that line of code in Warp and go to it in VS Code.
And that's like, I don't know, 80 to 90% of the value of the integration.
And people, I don't know, for whatever reason, developers are more comfortable, especially
more serious developers using a dedicated terminal app than they are using the terminal
and the pane in VS Code.
I feel like it's always nice to have it in VS Code.
It's never been like, oh yeah, this is my terminal because I'm not always in VS Code. I feel like it's always nice to have it in VS Code. It's never been like, oh yeah,
this is my terminal because I'm not
always in VS Code. Why would
I make that my primary?
I'm an SSH to a machine.
I'm not always within a code base
SSHing or doing things
in the terminal there.
To lock me in
the VS Code box and say
terminal only there,
that's a really sad developer world for me.
I want my standalone app.
I agree.
And I think for most serious developers, that's the case.
So that's actually not the biggest competition.
I will say one caveat there is if the world moves to code spaces
or some sort of cloud dev IDE thing,
I think like the story for VS Code terminal
is more compelling.
You just, because then it's like,
you need an easy way of getting your external terminal
in the same context as your code.
So that, like, I think more about like VS Code
with respect to that than I do just like you're on your Mac doing development.
Do you want to use Warp or do you want to use the VS Code terminal?
Yeah.
It's really strange because I think a lot of infrastructure folks,
I got to imagine SRE type folks,
maybe, I guess maybe eventually it might be code spaces potentially,
but people who don't isolate themselves to one machine, they're going to be a standalone terminal user for life for the most part, unless they're forced into these Gitpod Codespaces worlds, which is still just isolated to their work environments.
It doesn't take over everything.
You still have configs on local machines.
You still have boxes you'll SSH into,
you'll still have home labby type stuff
or enterprisey lab type stuff,
that they're still on-prem stuff.
It's not always going to be in a code space
or a Git pod of sorts.
The world will always be fractured
in standalone terminal apps
to something baked into an environment,
to something baked into an IDE,
or even VS Code.
You're still going to have a need
for the standalone.
I think so.
I also think developers,
when there's a choice between a walled garden,
totally vertical thing,
and a thing that is more layered and stacked
and where you can pull out and use the pieces on their own.
I think sort of the more vertically integrated thing
is great for a starting point.
It's great for demos.
It's great for hackathons.
It's great for how do I get going quickly?
But like the layered,
like let me have separate applications
for separate context thing,
I think is the more scalable serious development
approach i don't know if that makes sense to you but it's like for example i use yeah i use like
when i first left google i tried to build an app i used app engine and i was like oh this is amazing
look at all this stuff i get for free and then i hit a issue in app engine and i was like what do
i do now and then i looked at like the Google support form and there were like 50 other people
who had that same issue with App Engine.
And it was like, oh, it's like somewhere
in the application framework slash database,
it's all connected together and I can't do anything.
And so I do think there's a problem
with the totally walled garden approach.
So all those questions was really about understanding
the landscape of who the monster is you got to take down, right?
Who the villain is in your world, you know?
Who is your competition?
Who do you need to Goliath and you be David?
Because you're David right now.
Yeah.
And, you know, can you take down Terminal?
Can you be, you know, true competition to them?
What does it take?
Because that's what you've got to do.
You've got to, If you're on a Mac
primarily focused, at least for now
maybe eventually you'll move on and you can describe
that to me. That is the long-term
vision. But if Mac is your focus
like if I were you, I'd be thinking like how in the world
can I replace Terminal for pretty much every developer
I know, right? Or iTerm
too. Like those two things. Like laser focus
on what it takes to
beat them and replace them
and then layer on value from there yeah i mean honestly like uh i think the product is there
like it's not there for everyone i'll caveat that a little bit so there's like
the people try out warp and obviously not everyone sticks with it so it's like i think
you guys tried it out you turned i don't know when you last tried it initially i think it was
early days for it so i mean i'm i'm down to revisit it and i will after this call and it's like, I think you guys tried it out. You turned, I don't know when you last tried it. Initially, I think it was early days for it.
So, I mean, I'm down to revisit it
and I will after this call.
And it's not perfect.
So it's like the,
and this is I think a challenge
when you're trying to displace an incumbent thing.
For us, the specific challenges,
I think you can kind of divide them into two buckets.
Like what is someone tries warp
and they have some problem problem like some part of their
configuration doesn't work something that they're used to in another terminal isn't implemented yet
and like this is the majority of reason people try warp and they turn or they bounce is like
hey i tried it like i'm used to doing XYZ with this OMYZSH plugin
and it doesn't work.
And I'm like, there's no chance I'm taking a step backwards
in order to learn the step forwards things in your terminal.
And so that's a real problem for us.
And that's like, I will say it's very tractable though.
It's like a thing that you can solve pretty well
because we get a ton of GitHub feedback.
Like we have, I don't know, 2000 open issues or something.
People vote those things up.
What's most important to them.
And then, you know, for the most part, we can sort of like fix the things that are broken
for people.
The other thing is like people will try it and they'll be like, what's the point?
Where's the value?
And so that's more of like a, you have to get someone to see the value in it
pretty quickly because the patience of like
switching to a new thing, if you're like,
it's really hard.
Like, for instance, I've tried using new browsers
and like, if there's some small thing in the workflow
that I'm not as efficient at as I was in Chrome,
I'm like, screw it.
Like, I'm not going backwards. And then also I'm like, screw it. Like I'm not going backwards.
And then also I'm like, well, what's the point? Like, what am I getting from this?
So those are the two challenges of bringing someone in. And so you can kind of address
the brokenness via fixing the issues. And then you can address the, like, what's the value thing by
like, you have to sort of find ways to demonstrate the value pretty quickly. But, you know, I would
actually, we're in in a pretty good spot.
If you look at NPS, for instance,
we're above a 60 NPS
as a product.
What does that mean, NPS?
Okay, so NPS is Net Promoter Score.
Okay, break it down.
You've seen this everywhere you use any product.
You get a little thing when you use the product. I've heard it. Yeah.
You get a little thing when you use the product, which says like, how likely are you to recommend this product to a friend? It gives you a scale from like zero to 10. Okay. And
the way that you calculate the score is like anything that's a nine or a 10 is a promoter.
Anything that's a seven or eight is like a passive and anything from zero to
six is a detractor.
And it's the percentage of your promoters versus minus the percentage of your
detractors is your NPS.
And the point of this score is to try to give you a benchmark across other
products.
Where do you stand in terms of like user satisfaction?
And so always is a,
is a hard thing to compare.
Like products are very different, but NPS at least like gives you like some like industry, terms of like user satisfaction and so always this is a hard thing to compare like products
are very different but mps at least like gives you like some like industry like benchmark thing
and some like really you could build a successful company with something that's even like a zero mps
like you as many people hating it is as liking it essentially right um but if you can get to a
point where you have a really high NPS,
like what we have,
it just makes everything easier.
It's a really good indication of customer satisfaction.
So that's like a, you know,
a reason for me to believe like,
oh, if we just made more people aware of it,
people really dig it,
we'll get more users.
And so like, you know,
in the journey of a life of a startup,
if you have a product people don't like and they don't retain, there's just zero point in trying to grow it.
I think we're past the point of that.
We have a product that people, at least not everyone, but some set of people really, really
love.
And so for us, to some extent, it's more of a problem actually of awareness, marketing.
Can we build sort of like
viral loops? Because like, for instance, most of our growth at Warp comes from people telling
their friends about it, which is again, where you want to be. Like we don't really do paid marketing.
We do like an occasional sponsorship or work with influencers. Like there's various things we've
tried, but like, we're not like plowing money into like Google or Instagram ads or something
like that. And so,
you know, for us, it's like, how do we increase awareness, get more people to try it? And then
how do we continue to make it so that when people try it, the likelihood of them sticking just goes
up. So very broad strokes. That's like how I think of it. We don't have like bulletin boards up of
like, let's crush terminal or something like that. But yeah, it's like we want people displacing the
terminal for sure. I would have those bulletin boards i'd be like terminal must die i don't know
maybe i'll consider that i'm just kidding i'm actually a fan of of lifting other folks up i'm
i'm honestly yeah just kidding around that um like mentally i think you have to put yourself
in a you know live or die situation like startups i mean if in two years
you don't hit x y or z you know maybe you run out of funding you can't you know get your series c
for sure who knows you know i mean there's all sorts of like levers that can get pulled to say
that your runway is reduced and eventually you either live or you die you succeed you don't
and so you do have to think in very real terms.
You have to think like terminal must go down for me to go up,
at least in a user base, you know, and if you're layering on that.
So I'm more of a, you know, prop other people's buildings up
and fix the street signs and broken windows
than destroy buildings to succeed kind of person.
Yeah, I mean, i i think you're
totally right about like what we need to do um i will say so we're also we are building for other
platforms like i mentioned earlier like there's no okay you know it's it's um every developer
uses terminal like they don't all use the terminal app on mac every use every developer uses some
sort of terminal whether you're on linux i think even on windows you're using some sort of terminal, whether you're on Linux, I think even on Windows,
you're using some sort of, you know, you're using a console.
And so there's, and then there's value in ubiquity for us.
I mean, there's value in being multi-platform,
especially since one of the things
that we're trying to solve is like,
can you make this tool useful for teams?
Well, teams are not homogenous
in what
platform they're on yeah like a lot of teams will be on like linux plus mac companies will have a
mix of windows back linux and so like for team usage especially it's like we want to be on all
these platforms we want to be on the web because the web is like a sort of de facto cross-platform
thing if you can do it we didn't start with the web because
like the web is not the primary development platform really for many people right now maybe
that will change but as like a secondary development platform or like a place where you want to
collaborate with developers or a place where you want to do like remote access or cloud shell type
stuff the web is really important so so cross
platform is a big part of is a big part of uh the roadmap for us for sure is teams the you know your
success benchmark in terms of like you know once you've become the replacement for the default the
free default or the native default that is on any platform, Linux, Mac, or Windows.
Teams is where, from a business model standpoint,
it seems like you've put the majority of your eggs.
When it comes to a business standpoint,
Teams is where your success is at monetarily.
I would say enterprises,
like companies paying for it, is the thing.
I think if we can unlock a collaborative value prop, that's huge for an enterprise sale.
I will say that there are non-collaborative ways of doing enterprise too.
There are, you know, like for instance, like I think JetBrains is a great example.
Like JetBrains sells enterprise contracts, is I think a really good business.
They do not, it's not really a team's
product like they have like some team product lines but you know i think by and far like by
and large like people are buying individual jet brains licenses so there is that as a that's
another way into enterprise it's like you don't need to have like a wall-to-wall distribution. That said,
for Warp, what I want is a wall-to-wall team-based distribution where the business model is much more
like Figma or Notion or something like that, where the company standardizes on Warp as the
command line because it has a bunch of sort of things that we can show and demonstrate,
make entire teams more productive if they use it together. So that's like what we want, but it's not the only path.
Well, the reason why I ask you that is because your pricing page depicts that, right?
You've got free, in the tiers you've got free, you've got team, you've got enterprise.
Yep.
And all enterprise does is layer on what team is.
And so it seems as if, you know, you got shareable things and you know maybe it is licenses
but from a even from just a nomenclature standpoint it seems like team features whether they truly are
collaborative or not is where you're planting you know your flag because i can hang out in the free
tier for free that's our bet yeah that's totally our bet i mean i will say like the we're early on
the pricing side there is a we're trying to maintain flexibility.
Like there's a chance we would do something
like what Raycast has done,
where there's like a pro individual tier
that sits in between free and team.
We haven't done that yet.
You know, we're trying to be,
for anything that we think is going to be paid,
we want to let people know that.
Like it doesn't do them or us any favors to like take free things and make them paid. And so we're trying to be paid we want to let people know that like it doesn't do them or us any favors to like
take free things and make them paid and so we're trying to be transparent the team stuff is kind of
the first place that we've really put a line down like that's going to be paid and the other place
we've done it is that there's like a real limit on the ai usage which i think makes sense it's
like in line with other companies and there's a yeah there's a real marginal cost to us nobody expects that to be for free i mean any educated user expects any worthwhile ai feature to be a paid feature i mean
if you're offering me gpt3 that should be free if you're giving me four then that should be paid
yeah exactly i mean it's so that that those are those are the spots that we've tried but
you know it is totally possible that we will attempt to monetize more of the single user use cases via some sort of pro thing, or that we'll do a more licensing thing.
But the place that we're starting on the pricing is with team monetization.
I like the idea of a pro plan because I'm a pro user for Raycast. And I actually on the call with
Thomas, I was like, I'm not sure i'd ever pay for raycast
and then here i am a few weeks later after the call with him and i'm like okay i'm i want to
use pro because there's like certain things that are in there that i just i've replaced i think it
was uh not launch bar what what alfred i replaced alfred yep and alfred basically was like free to
me because i'd paid for a license years ago,
and I'm still sitting on a license.
And so now I've opted into paying $10 a month, at least for now, for Raycast.
And now it's even better because for me, when I have multiple machines,
I have the config that moves from machine to machine.
And I think the sweet spot there for you maybe to investigate is this idea of dot files.
A lot of developers move around basic config stuff, you know,
and maybe there's a way the pro plan gives me multiple machines,
same terminal experience.
And that's what Raycast has done for me.
Like if I'm on my laptop Mac or my pro Mac,
I'm at pro at home that I use as my work computer home, you know,
I have the same Raycast experience
whether I'm here or there.
That's really interesting.
So that's the main,
the syncing of all the Raycast stuff across?
You can't get that unless you're the pro plan user.
That syncing is like,
I mean, it's essentially you're a team of one
as you've described it, right?
You're a team of one.
You've got, you're a power user.
You've invested in it.
You need to be able to move from machine to machine. maybe it's just two maybe it's not three or four
or ten but maybe it's just two that you need to keep in sync and and even though certain things
in raycast aren't present on both machines like for example i think it's like quick links is what
they call them to certain directories that directory may not live on that machine so it
just won't show up as a QuickLink on that machine.
But it's still in my settings.
So when I go back to the machine the QuickLink is present on,
then I can go and use that QuickLink.
So it's really interesting how it helps me become a,
which we're trying to do here,
a power user to a native free feature on the Mac.
They're trying to win over spotlight users
and then potentially Alfred and Launchpad users.
Like it's really about,
do you desire to be a productive user on a Mac?
If the answer is yes, you should use Raycast.
And by the way, it's free for almost everything.
And it's like a lot of stuff.
I was like, Thomas, you're giving us so much away for free.
Why did you do that?
He's like, trust me, Adam, it makes sense.
I can't explain it all. But when you get into's like, trust me, Adam, it makes sense. I can't explain it all.
But when you get into the details,
you'll find out why it makes sense.
And so now it does make sense
because the things that I want as a power user,
I'm going to pay them for,
like syncing or the AI features that they have now too.
That's good.
They picked the right things then.
Yeah.
And it's 10 bucks a month, you know?
And so, you know,
could you get 10 bucks a month from pro users
that say,
you know what, I love Terminal.
I want to do all these things to it,
but I don't want to make those choices anymore.
I want a Terminal who's made the font choice, the UI choices,
the color choices that just let me push buttons
versus config to the nth degree.
At some point, developers just don't want to do that anymore.
They've kind of done it for 10 plus years or more.
Maybe it's the seasoned developer that really is like, you know what, I just want to have somebody make kind of done it for 10 plus years or more. Maybe it's the seasoned developer that
really is like, you know what, I just want to
have somebody make some of those choices for me and it becomes
a button push rather than
a reconfig for every new machine.
I mean, I think we could definitely sell this.
Yeah? When's ProPlan coming out then?
After this call? A week or two from now?
ProPlan? Yeah, maybe.
Let me just go edit the website right now.
I do think there's a lot of
similarity between the way that Raycast approaches their market to the way that you could. And I
agree if teams are helping you in, so let's go there. So if teams, like literal teams, not just
teams of one, but teams of one that should be pro users that you'll do here in like a week or two
after this call. True teams, is that
where you're winning? Obviously, that's where you're getting paid. So how well is that working
for you? Is the enterprise push truly strong for you or is it simply in small startup teams,
you know, mid-sized teams? Where are you winning from a get paid perspective? How's that working
out? And are they saying, hey, now that we want to be a team player for you,
we want to have that team plan,
but you're not on Linux, you're not on Windows.
We have two team members that can't really play
in our work team world.
Got it.
So short answer is we're a month into team stuff.
Like we just launched Warp Drive literally a month ago.
And so it's still super early.
The adoption of it is really good, which is exciting.
Meaning like we're having a lot of things,
and this is a totally new behavior,
created in a cloud space that's part of the terminal.
And so the only type of thing that you can create right now,
just to be clear, is what we call a workflow,
which is essentially a templated command.
And that could be something like some complicated Docker, Kubernetes command.
It could be something for G Cloud or AWS.
And the types of people who are finding the most value out of this types of teams are people who are doing things with those tools where it's like they need these commands. There's value in centralizing
and from a developer productivity
and error prevention standpoint,
having one library of them
that everyone on the team uses.
And so the uptake of it actually has been really good
since we launched.
From an enterprise perspective,
we're literally just starting some enterprise pilots.
The lifetime of Warp, we're a month into it it's it's kind of a little bit too early to tell
but the team adoption like the adoption the first team's feature is actually
is super encouraging for us and we didn't really know like will people do this or or not because
there's i don't know there's no other terminal that has like a cloud component to it so it's a
totally new behavior yeah so the sort of is kind of like we're early and we'll see but it's from
a user adoption standpoint a team adoption standpoint it's actually really good break down
what warp drive is then what can you do with this what are these workflows yeah so really simple
thing like here's what we use it for at warp An example would be like we have a command that we run in gcloud that whitelists an IP address
so that from that IP address, you can access like our staging rig if you need to.
And so developers have to run that when they like go work from a coffee shop
or like switch locations, wherever their IP changes.
It's a thing that like people would know how to do. You can put it in a script,
but what Warp Drive is, it lets you create one of these templated workflows. You create it for
yourself first and foremost. People will make these like, hey, here are my common or uncommon
Git things that I do, my uncommon Docker things that I do. They'll save
those. You can parameterize them. I mean, you can be like, these are the arguments that go into them
as flag values. You can give those parameters actual documentation. And then as a final step,
what you can do is you can share it with your team. And then everyone on your team,
whenever they're like, oh, crap, I need to whitelist my staging thing rather than
slacking or going to Notion
or pulling up a Google Doc
or searching through their scripts or whatever.
They, as part of like,
basically as part of our command search,
so as part of control R,
you can just be like staging whitelists
and all of a sudden you have that templated command.
And so it's a much easier way of sharing knowledge and sharing commands in the terminal.
So that's the first thing.
Now, the way that we've built Warp Drive is that it won't, this will not be the only type
of thing that you can share.
And so, for example, as the next thing that's coming, and this is public on our website,
so I'm fine, like saying that it's coming, we're, we're building a notebook data type that lives in the terminal.
And so this is something where if you had an entire documentation plus commands workflow,
and that could be like, here's how you do cherry picks into a release, or here's what
you do if there's high 500 errors on a server, if you want to debug it from the command line,
that type of thing can also be created for an individual and then shared to the team and so we're trying to bring these like you know pieces
of terminal knowledge that either live in tools like notion or confluence or github readme is
directly into the tool and integrate them deeply so that you know they're there they're easy to
find they're easy to use so that's that's like the vision of it yeah i gotta imagine that's uh helpful because uh especially for teams because
you can have like shared knowledge exactly but then you get into the challenge of like organizing
it and then it's like well this actually you know like this might be better living somewhere else
and it's like you you sort of like bake it into the tool and then you eject it out of the tool
because it's like this is too much you know you know what's what's cool so if it's in the tool like for instance like we can show
when it was last run and whether it was successful or not so it's like that's a way of keeping this
stuff up to date that if it lives i don't know and like again like in notion or github readme it's
like it's so much better than a copy paste flow where you have no metadata around like who ran it did it
work you know if people want you can see sample outputs like so it's i feel like the the value of
the integration starts to become pretty big if you build this out yeah i can see it too because i
mean there's things i do in my home lab less like developer things where i'm sshing to somewhere
else and doing something and i might make an i'm just a home lab tinker this things where I'm SSHing to somewhere else and doing something.
And I might make an, I'm just a home lab tinker. This is where I tinker the most.
I'm less building and deploying applications and my applications live in my home lab. I don't do
it often, but I, when I do, I have documentation I refer to, to remind myself how I did it the last
time. And in this case, it's creating a new data pool, essentially,
a new data set in ZFS.
And so there's lots of different commands you can run
and things you should do to do it.
You can just run one command.
It's pretty simple.
But if I can have that as a workflow inside Terminal,
I would probably never go back to that documentation
unless I needed to read the deeper words of the theory
of why this works that way or
whatever if I could just have that version inside a terminal organized I might organize it there
rather than some disparate documentation that may not be easy to access or it's contextually
separating me from where I'm at currently you know those are things I could probably do
pretty frequently I mean even, even your typing in partial
of a command and up-arrowing and getting five or six
examples of the last commands I've run that's similar, that's more helpful than up-arrowing
forever. That to me is a UI
nicety that I love. That almost wins me over right there.
The basic terminal user experience
that just gets added to
based upon existing knowledge
of how to use the terminal.
I mean, that's like a lot of our approach.
So for instance, we just did a hackathon,
like a hack week.
And one of the things that a couple engineers
on the team added
was a concept of adding metadata
to terminal
history, which it's like, I think should obviously be there. So if you want to like up arrow, but you
want to like, for instance, I don't know, find commands that were only done in a certain directory
or only were successful and not errors, or you want to be able to search them, I don't know, by the date that they were executed or something like that.
The normal terminal setup just has the ability really to go up, up, up, up, up.
If you're a fancy user, you can start to grep through your history file.
You can configure your history to have date, time, state.
There's ways to do it, but it seems to me like such a basic thing
that your command history should have this metadata and so like to your point it's like
we're gonna launch that and then all of a sudden magically like your ability to
search for past things you did is going to become much better so it's like the kind of
thing that we're trying to do This is a changelog news break.
You can add Meta's CodeLlama to the ever-expanding list of code-generating LLMs.
Based on LLAMA2, CodeLlama comes in three sizes, 7 billion parameters, 13 billion, and 34 billion.
And it comes in three different varieties.
A general model, one tuned for NLP instructions, and one fine-tuned for Python.
How does it stack up?
Well, Meta claims it outperforms other publicly available LLMs, and it shares the same open-ish license as Llama itself,
which is free for research and commercial use,
unless you compete with Meta.
You just heard one of our five top stories
from Monday's Changelog News.
Subscribe to the podcast to get all of the week's top stories
and pop your email address in at changelog.com slash news
to also receive our free companion email
with even more
developer news worth your attention. Once again, that's changelog feature suggestion slash request.
So I love the fact that I've typed in Z and pushed the up arrow,
and it gives me all my Z pull commands, essentially, of recent.
And I love the interface. It's simple. It doesn't say anything about dates,
like you said, metadata, when it was last ran, successful.
But what if that UI just changed if I push the option key?
And now next to all those commands somehow is like date at last ran.
And you don't need to say this is the date it last ran just do that I'm probably going to assume okay that was ran you know in some way shape or form uh six days ago or whatever
like I know how recent this command was ran maybe that's relevant maybe it's not I don't know but
that seems to be like because sometimes I'm like well I can't ran this command but when how long
ago did I do this thing not that it's necessarily important but it's more like
you know how stale is it so to speak you know what i mean yeah for sure i like that idea i think you
know it's like the challenge is all with this kind of stuff is like you don't want to surface too
much that gets in the way but like giving people a a modifier a way to like be like hey let me
i'm trying to dig through my commands like i did this
like a example i often use is like i set up some some service on gcp like a year and a half ago
and i have no idea what i did when i did it but i it's no longer working and i need to like go back
and like figure out like what the heck did i do so having for a case like that, I want more information.
But for like, I'm just running a bunch of git commands.
Don't get in my way.
Just show me the plain thing.
So that's about it.
Yeah, exactly.
Don't always show me the date.
But that's what I was thinking.
The option key is a common way to get more information
from a command palette.
Yeah.
Or even on a Mac, it's similar.
You have a command palette and you push the option key and it morphs into advanced features.
It gives you more something.
That's really cool.
There's probably other places in the app we could do that as well.
I like that idea.
Yeah.
It's just a way to get more information.
Yeah, exactly.
In config somewhere, you can confirm or define what that might be, what the modifier key does when you use it in that context.
You know, does it show me the date? Does it show me, you know, something else that's more relevant that I can't think of because I don't work on your team?
But I like, you know, it's almost worth me using this as a daily driver.
I don't have a lot of crazy needs, but just that alone, you know, showing me more recent commands than just simply one, which is what Terminal does.
You know, the one thing that I will say that I'm kind of confining confusing is that I use OMI ZSH, as I mentioned, and I have a theme.
I think I use Candy is the one I use in OMI ZSH. And what's interesting is that when I SSH into this remote machine,
the prompt is different
than what OMI ZSH should be.
I'm just curious why that might be.
Without looking at my screen,
try and debug that for me, Zach.
Oh, that's easy.
So warp renders a default prompt.
If you want to use OMI ZSH's prompt,
you can right- on the you can
right click on the prompt okay and say i think it's forgive it it's like it's all i see yeah
copy prompt copy work directory or use my own prompt use my own prompt that should set you back
if your oh my zsh is set up and it's compatible just like that look at that live did i do it
yeah i will do it all right just like that man so cool okay. Live debugging. Did I do it? Yeah, it worked. Did I do it? All right.
Just like that, man. So cool. Okay.
I mean, because there's some people who define their prompt really on that machine.
And so, Oh My ZSH really just lets you do it well.
Yeah.
I like it everywhere I go. I have the same Oh My ZSH theme chosen on any machine I'm on where I have Oh My ZSH in place.
And I don't put it everywhere. I don't put it on every
single possible virtual machine ever.
But I do on the ones I'm often
doing a lot of work on.
Ones I'm just not
logging in randomly for. It's something
I'm in often. I'm either updating Docker
stuff or I'm pulling a new image down
or I'm obviously doing Linux stuff,
operating the operating system,
all that stuff. So I like to have a terminal set.
I mean, hearing you mention that,
this is a great example of a reason
I think some people bounce from Warp
is they come in and they're like,
where's my prompt?
And we're trying to do something helpful here.
This is a self-reflective criticism
of how we're doing this.
We're trying to do something helpful
because there's a whole bunch of people in the world who've never set up Oh My ZSH,
who we try to give them something useful out of the box with a prompt.
It shows your Git status.
It shows a few basic things.
And for those people, they come into Warp and they're like, oh, this is cool.
I didn't know that my Git branch can change as I'm navigating around.
On the flip side, there's people like you who are like,
I set up all my ZSH for a reason.
I want it this way.
I'm coming into Warp and it's not working.
And this is an example of us kind of messing up the product experience, in my opinion.
Kind of.
Yeah.
Kind of.
I mean, but at the same time, just to play advocate back to
maybe the reasons why you chose this
if me using warp
means that I don't have to do
so much custom config
on a machine then that's more helpful too
because I've got custom config
that I may no longer need because
warp does it for me and potentially better
you know what I mean?
I view this as a feature's a feature of Warp
that when you SSH to a machine,
you still have a usable prompt
because if you don't have
OhMyZSH or you haven't done that,
you just get garbage on your prompt
when you go to some other machine.
It doesn't tell you.
There's got to be a way
you can detect some config
to a prompt though, right?
It's clear that I'm using OhMyZSH
because there's,
you know, dot directory.
So you can probably do
something more unique there.
Like we could do a much
better job and we could,
we could either sort of
intelligently be like,
oh, this person has
configured their prop.
Let's just honor it.
Or we could give people
an explicit choice as part
of onboarding.
There's like,
but it's just an example
of like, there's a bunch
of stuff like this,
which, you know,
as a startup,
I think is... Pick your battles, right? know, as a startup, I think is...
Pick your battles, right?
That's like a low...
But that is a bounceable battle.
You know, that could make somebody be like,
okay, because if you didn't answer that question for me,
where in the world would I dig for that information?
You probably, you would have had just,
it wouldn't have been too hard.
You could have used the command palette
or gone to settings or right click.
But it's hard enough that that type of friction, I think if you have a user who's like not really high intent to be like, oh, you know, my friends were raving about Warp.
I'm going to like spend the time to read the documentation.
I'm going to like poke around.
Someone could be like, ah, screw it.
Doesn't work.
It changed my stuff on me.
It didn't honor my choices.
Come on here. What's going on here yeah so this is i think it's a really good example of like the type
of type of it's an interesting product challenge that we you know we're getting better and better
and better um uh but it's you know it's because it's like all in the execution of this of this
small stuff adding up to like is it a good yeah really good experience for a user or is it like a not great experience?
Well, I think the things that, in my opinion,
are the basic choices of color, color palette,
the look of the interface, as you mentioned,
that sort of reuse of the open space to show the user,
hey, there's a command palette here.
There's some power features here
whenever you're in a command K situation.
So I ran some commands. I had some things on my terminal and I command K'd just now and cleared it just to see if I'd get back to this
sort of like vanilla command palette, command search, warp AI.
And for the listeners, there's a lot of open space when you have
the terminal cleared. And rather than making you think
okay, where's everything at
they just print to the open space things you could do the command palette is command p
command search is you know carrot r and that's actually a capital r and then warp ai which is
the same carrot in space so you can kind of get to some different things it's like waypoints that's
good stuff i like that but the thing i think that people really desire when switching is beauty, right? Do that survey. What font do you
use in your terminal or in your IDE or in your text editor? And you'll get a thousand choices,
right? But if you choose one that is nice and you've chosen some good interface and some good things that are around that,
that's almost half the battle to replace the native vanilla default.
That's free because there's an,
a natural visual upgrade.
Totally.
I mean like the probably like making the terminal look nice is the most
number one thing people customize.
Not like any of the functionality
stuff so yeah if we can yeah we can give them that easily then and then you know we i don't
know if you if you've looked at any of the theming that we have but if you like do command p and then
look at some of the themes we do try to make it really easy to have a a beautiful terminal
experience again without a lot of work and that And that's a pretty popular thing. People will post their themes on Twitter and Reddit,
and I do think there's a lot more we can do, actually,
to make the theming aspect of Warp even nicer,
but I think you're totally right.
So in terms of theming, I think for me, I like Dracula.
I've supported, although I don't think he needs much support with it now,
Zeno with his new company Resend,
Dracula Pro.
So I've been a Dracula Pro buyer, subscriber, purchaser,
whatever you want to call me.
And I will almost unanimously go into my settings and do that.
And so for me in particular,
I'm a terminal app user.
I've got Dracula Pro setting.
I think I'm using Van Helsing or something like that.
So I've literally went into, pulled the theme into oh my zsh configured it and even
fine-tuned it a tiny little bit just because there's like one thing that was bugging me about
it but like that's the kind of user i am you know i want to be able to select some themes
but again what you're trying to do is make that hard path easy make everybody a power user yeah
and so i'm sure you've got,
I see these here,
where you've got like Solar Light and Dracula.
We have Dracula.
Yeah.
But not Dracula Pro, though.
We don't have Dracula Pro.
What's in Dracula Pro, out of curiosity?
Well, Dracula Pro, I think you have to buy.
So I don't know how you would get that in there,
but like that's,
not that that's a live or die feature by any means,
but like, you know, in my terminal, like terminal.app, I know exactly how to apply Dracula Pro because Dracula Pro's documentation says, here's how you do it.
And so they make it really easy.
The point is, it's less about a particular theme, but more, this is something that Raycast did too, where I didn't think it was that big of a deal.
I actually kind of mocked Thomas a little bit. I'm'm like theming is that big of a deal really people really care
about theming with raycast he's like yeah i'm like all right whatever so that's a paraphrase of
of you know that snarky comment uh on the podcast i can't i mean i can't speak to raycast but people
really people really do care about with the terminal for sure yeah probably almost the number one tool in some crazy way like yeah you know people like share their terminal look and feel on reddit
is like a like a you know point of pride so it does matter for this tool that much i know
i'm not sure you can get away with it but they did somehow they charged to be able to do theming
so you have to be a pro user to fine-tune your theme otherwise you get the default and i'm like that alone almost made me upgrade because like it
was that feature plus a couple of things it was more like that was the the thing that came in
quotes for free with upgrading which is not it's an oxymoron it's not true i don't think it makes
sense i think you should let people theme out the gate you can't do it in this. I think it's two core and two table stakes of a feature to let people.
I could see it being part of syncing across all your machines,
the same theme and setup is everywhere.
But letting people theme their terminal
doesn't seem like a premium paid feature to me.
Let's dovetail into more of the journey of getting it right.
What does it take to get to here, build the team, raise money,
add new features, market, not market,
establish a YouTube channel?
I've sort of mapped out several things
I think you've done
and some things I know you've done,
but let's dive into the bloody knuckles.
What's it taken to get to this moment?
I mean, it's hard.
Starting a company is super hard.
I'm the only founder. So it's one
thing that is, you know, some company that multiple founders, I'm a solo founder. You know,
in general, the first thing was just me getting conviction that I wanted to work on this for a
really long time. Startups are super hard. They're painful. You know, they go sideways,
they fail. And so like, first thing was just like, do I believe in this enough? Do I
care about it enough? Do I want to work on a long time? I knew that I wanted to do it as like a,
you know, funded venture backed company. To me, it's the fastest way just to see if something is
right or not. It's like, I want Warp to be successful fast or not be successful fast,
to be honest. I had done a venture-backed company before,
which was super, super helpful in kind of understanding a ton of aspects of, you know,
things I'd want to repeat and things I would not want to repeat. It was helpful for understanding
fundraising, helpful for understanding, you know, what the pitch should be. It helped me build my
network. And so I was like, for Warp, I was pretty fortunate,
I think, relative to other founders
in that I had, you know, a couple investors
who I had already known.
I didn't really go out and do like a wide pitch.
These investors were interested
in supporting Warp out of the gate.
And so it was for this idea and for me,
it was relatively like not easy,
but it took a lot of work.
But still I was able to raise the seed round,
honestly, when it was just me,
when there was no product
and it was really just like pitching the idea,
which is unusual, but I was able to do that.
The step after that was all about,
can we build an initial team and initial product as fast as possible?
And when you have no product
and all you have is like a concept and a vision,
really hard to sell people on joining you.
That's just like a fact.
It's hard to describe why this thing's
going to be successful.
There's like a million reasons it could fail.
Like no startup is a slam dunk, but this one is like, you know, you have to be able to answer the questions of
like, why hasn't anyone done this? Is there a real business to build here? Do your product
ideas make sense? Is there any demand for this? So it's like, you really have to get good at
pitching it. For me, the first person who I really wanted to hire was a designer actually.
And I was fortunate to, to sort of
pitch and find someone at the right spot in their career. It was like an awesome designer to join
us. And the reason I wanted to hire a designer was like, I knew for this idea, the best way to
convince engineers that this was a good, viable idea was to actually not so much like describe what I wanted
to do in words, but actually show like, hey, here's how the product, here's the vision for
how the product will work. And so I hired a designer and like what we worked on to start
was just like, can we put together from a design standpoint, something that shows rather than tells,
you know, what the product is going to be like. And then with that, I was able to convince some really awesome engineers to come work on this
with me. And, you know, feel free if I'm giving too much or too little detail here, you dig in,
but it's like, it was all about building this initial team of not a lot of people, maybe like
five, six people where we had design and we had engineering and that's all we really cared about
at that point was like a small team where we could start to prototype build out some of these features
see if they were technically feasible and then honestly it's just like how quickly can you get
to a feedback loop and see if the product ideas are right or not you know so for the first honestly
for the first year of the company it was just hiring of that initial team,
building an MVP.
We built it actually using web tech to start.
So like we built it using Electron and,
you know, TypeScript.
And then we made a decision,
which I think was like,
I'd say the best product decision we've made
to switch to doing it in Rust
and doing it fully natively.
And then we kind of built it for real.
And then, you know, from there it was like,
we tried to go to our friends and family to use it.
That was like a fail.
Don't do that.
Like that we, then we were,
we got enough confidence that,
you know, they're like,
hey, we're like, let's just take a risk,
put it out there on Hacker News with just a website and see if there's demand for at least the way that we're describing it.
Right. So that's a sort of shortcut that you can take. Like you can build like a marketing site
that describes the product. We did that. We got people to sign up. We started putting them on it.
And like, then we had a feedback loop where we could be like, okay, this part of it works. This
part of it doesn't work. People turn because of X, people like Y. And then we had a feedback loop where we could be like okay this part of it works this part of it doesn't work people turn because of x people like y and then we've been able from that to
sort of like you know it's at every step in a startup you're like just like slowly getting
over that next hurdle and getting like ratcheting things up so we got like a feedback loop going
from that point we were able to fix a lot of like the things that were breaking for people and then add on to the spots
where we thought there was value up to the point where,
you know, we were able to do a public launch
and demonstrate, you know, that there was like actually
a lot of demand and that the product was sticky.
So that's like the very condensed kind of version of it.
Yeah, for sure.
I was looking at your announcement page
recently it's the i think it's like from a day or two ago it's like recent no sorry not it's not
june this is july adam catch up so this is last month a mile or a month ago we announced the
series b yeah i thought it was like it said the 21st i was like maybe that's a couple days ago
yeah i mean the names here that believe in you to me is almost convincing.
Even if the product is not necessarily,
which I think it is,
but I'm saying like some people may think it's not.
For sure.
Some people don't, some people do.
Right.
I mean, Mark Benioff, I mean, that's a big name.
Sam Altman, Toby from Shopify.
I mean, like these are people that understand
the developer world
very well.
All of those folks.
Enough to fund a $50 million Series B.
Yeah.
Mark's a comeback.
Mark's an existing investor
came back for this round too.
Yeah.
Everyone who's invested in the early rounds
have invested in the later rounds. Again, we're, we have great investors. So we have Sequoia led our series B,
which I think if you're going to have an institutional investor, they're historically
the best one, or at least one of the best ones. We have GV who led the seed. I have, I worked at
Google for a long time. That was, you know, part of the reason
I knew the folks there. And then we have Dylan Field, who is the, you know, founder and CEO of
Figma, who led the Series A. He was an angel investor in the seed round and got a lot of
conviction around the idea, the team, and, you know, really loves what we're doing. He's been
incredibly supportive. So from like a, you know, funding standpoint, not just the money, but who's invested, I feel like we've gotten incredibly
fortunate. And yeah, I think people believe like, like really, really big picture. You know,
the pitch is something like this is a daily use tool for most developers. It's an area that has not seen much innovation. It's very low in the
developer stack, meaning like a lot of important developer activities happen in this tool. And,
you know, they believe in the product opportunity. They believe that we can build something that
gets millions of developers using it. And then, you know, they're more of the mindset
on the business side of like, you know, if you have a daily use thing that millions of developers using it. And then, you know, they're more of the mindset on the business side of like, you know,
if you have a daily use thing
that millions of developers use,
there is a lot that's at this spot in the stack.
There's a lot of ways to potentially build
a great business around it.
So that's like the pitch in a nutshell,
but then, you know, they're not investing
without also user traction,
seeing that people love it,
seeing that the team is really,
really excellent. And like, yeah, that, that I would say, like, I kind of glossed over this,
but like one, you know, one lesson I took from our first startup is just really the importance
of team. And like, we're not a big team at all relative to the funding that we've had. Like
we're a 30 person team and we just hire very, very carefully
and really try to bring on people
who I think are exceptional.
And a small team of very exceptional people,
I think can generic startup advice here.
But like, I do think that's a,
you know, there's a pitfall of like
that some startups will make
when getting a lot of money
to try and hire faster than they really should. we're really trying to avoid that just focus on
quality and who who we work with so yeah like the short answer is like i i you know i wouldn't be
doing this if i didn't think there was a very big opportunity yeah and there's a lot of obvious ways
it can go wrong and so like there's like a sort of like leap of faith that you have to take but i
think that's part of founding a company and i I'm pretty excited by what we could do here
if we execute well.
Is, I mean, I know how much money $50 million is,
but is that a lot of money for your runway?
I mean, does that sustain you for years to come?
Is that, you know, when you talk about hiring
and being, you know, mindful?
Yeah, the short answer is
we are being really mindful of that.
Like startup funding environment right now is not good, especially for like going and raising our next round. We have to get really far, you know, I think far for us either in terms of user traction, revenue, all those things. And so, you know, we are we are spent like the philosophy was spending the money is like, you know, the kind of marginal dollar out, I, should create more than that marginal dollar in value for the company.
And so there's a million ways as a company that you can just incinerate cash as a startup.
And that is a very tempting thing to do.
I think the most common one is paying for growth.
And we're really not doing that
and trying to build something
that's going to be around for a really long time.
And so, again, we're fortunate to have the capital.
We have a lot of runway with it relative to our team size,
but we also need to get really far.
Well, since we've glossed over
and not gone deep on really at all
the artificial intelligence features that
I think you've launched already or plan to launch. You can correct me where I'm incorrect, but having
Sam as part of an angel investor, is there any open AI particular tie-ins that might come from
that angel relationship? Can you allude to some potential future that you have
there? Yeah, I mean, you can try it. So if you want to try it right now, you just type a pound
sign and then you ask for a command in natural language and we give it to you. So if you want
to type pound and then type like, find all files written in Rust that are longer than 50 lines or
something like that, it'll give you the command. So we have that integration.
And then we have a second integration, which is you can go into a conversational mode,
sort of like a, you know, it's based on chat GPT. But the cool thing is that it's actually integrated fairly deeply with warp. So it's like, if you have a terminal error, you can ask how to
fix it. If you want to do something in production, you can ask how to do it, and it'll guide you
through it. So and these features are again,'re not i know every company has an ai strategy at this point and
half of it is just type these are things that are pretty heavily used by warp users and they make
the learning curve of doing things in the terminal just so much easier um so that so it's launched
and it's real so but it's also just the beginning. And then to the Sam Altman question,
these are built on OpenAI.
Like we got some early access.
So there was like, but nothing that other companies,
I don't want to say we're getting any sort of special treatment
relative to other companies from Sam Altman,
but Sam's supportive.
And, you know, this was a good strategic investor
for us to have because the terminal, I think,
is a great spot for applying this type of tech.
Everything you do in the terminal is text-based.
These models, a lot of them speak text in and out.
The terminal, they're trained on a lot of terminal data.
And so it's a kind of natural integration.
I was just thinking,
not that Warp would be absorbed
into or acquired by OpenAI
by any means, but if you want to
get immediate traction, I think if OpenAI
released a terminal
application that had AI
entrenched in it, not just
baked in, but it's there.
I think that
their brand is so wildly
successful and so well known that there might be something possible,
like that they can acquire you,
or with the same relationship,
that might become more realistic.
To dominate, really, it could be an OpenAI version
of the terminal that's steeped in AI.
Yeah, I think, I guess a couple thoughts there.
One is doing partnerships partnerships co-marketing
open ai i think is a good one like we've been on their blog another good one that we have some
really good integrations with is docker we're working on some actual features where docker
plus warp makes it a lot easier to work with any kind of docker container from the command line
and then like i do think there's something interesting about like a purely ai driven terminal and like it's a thing that we've
talked a little bit about like can the primary interface to the terminal be natural language
let's say i mean my short answer is i don't actually think that's what you want as a terminal
user but i mean it would be compelling i would try it i would certainly try it i mean if done well and everything
was ai driven and i didn't have to leave and it had i mean the reason why i think it could be
somewhat compelling is less about me truly wanting it and more that from my experience personally
the open ai coding related feedback whether it's you know how to X, how to do a bash script, anything whatsoever, they seem to be the best with
code generation, code creation from AI.
It's amazing. 100%.
We have that in Warp. It's like you can ask it to write you scripts.
It's not just for commands.
You can ask it to debug compiler errors and people use it for all of these things, but you have to ask. And so I think a question for us
on the AI side is, can we get to a world that's a little bit more like co-pilot where it's sort
of ambient and always on and just doing stuff for you? We've been very careful with that because,
you know, it's built on open AIs, APIs, and there's a lot of sensitive information that flows through the terminal that people don't necessarily want
going hitting some third party API. And so, you know, from a privacy and security standpoint,
we have to be, I just think we have to be very transparent and explicit before we do that type
of thing. But I agree with like, there's a lot of potential value
in an always on ambient AI helper in the terminal,
which is what we're working towards.
And I think like doing some sort of partnership,
I don't really want to be acquired right now,
but like with the open AI would be interesting.
Yeah, I wouldn't want you to be acquired either.
I think it might make sense to be separate,
but if you had the larger resources,
like if you were the open AI terminal, essentially,
that had AI baked in,
then that's the same as being acquired.
I mean, you might as well just be...
They have so much distribution and so much brand.
I think you're totally right about that.
If I were you in your shoes,
I would be doing my best to leverage that possibility to some degree
or enable that future.
I don't know how close your relationship is with Sam,
but I would be sending him his favorite drinks or something like that
or a special presence to his house or whatever.
I see what I can do.
You know what I'm saying?
Yeah.
So what's the next big step then?
If we're looking over the horizon to some then? Like what's the, you know, if we're looking over
the horizon to some degree, can you paint the future picture? What can you tease? What can
you share that you know is coming? Where are you going when it comes to warp?
Yeah. So I can tease, I can tease a few things. I would say for the next like two, three years, like the product vision is very focused
on like world's best terminal,
like 10X better terminal.
Like if you are in the command line,
you should be using Warp.
You should be using Warp with your teammates.
You should be using the AI features.
You should be using the knowledge sharing features of Warp.
And to make that a reality,
it's like we have to be available on more platforms
so like i mentioned that's coming some of the collaboration features that i i've teased i can
reiterate like there's going to be more stuff coming at warp drive so there's going to be a
notebook format there's going to be in this i'm comfortable teasing too it's on our website
there's going to be the ability to do real-time terminal sharing, which I think is super cool. So if you are trying to help someone set up their development
environment, it would be easier for you to just like be in it rather than be on Zoom.
So in the same way that you get native, you know, fully native collaboration in something like
Figma or Google Docs, you're going to have that ability in Warp. You're going to have that ability
even if you are not using the native app because we're building a web version. So you're going to have that ability in warp you're going to have that ability even if you are not
using the native app because we're building a web version so you're gonna have the ability to do it
via link and then there's going to be a like a set of features that are really about just like
still leaning like how do you make the individual more productive in the terminal and so that's
things like like i mentioned earlier, like history
should be much better, for instance, or working with output logs should be much better. And so
that's the focus for the next few years, for sure, is like, how do we get everyone, every developer
in the world who wants to, you know, be more productive in the terminal, which really should
be everyone and have less pain in the terminal using Warp.
Longer term, I mean, the company's vision is actually and mission is bigger than just world's best terminal.
So the mission of the company is to help developers ship better software more quickly.
And so I think there's a set of sort of interesting adjacent opportunities to the terminal that
we will look at that I don't really want to go into too much detail in but the sort of you know thought experiment is like okay if you have
millions of developers using warp what are other areas of the developer you know development
life cycle around shipping software that you could help people get better at um and so those
are things that we're also sort of thinking of but like short you have to have a focus and short
term our focus is you know it's like kind of like what you said like don't use the terminal like
don't use the built-in one or don't use iterm it's like you should really be using warp and that's
that's what we want to get developers thinking well i didn't ask you about open source though
now that you've mentioned you want to be the world's best terminal does this the last time
you're on the changelog here this is finders Talk, but I feel like the question is still pertinent.
Oh, yeah.
Has your opinion changed?
Like, we basically, I want to paraphrase.
I don't recall directly, but I feel like we badgered you or like something.
Like, it didn't feel positive.
Yeah, you badgered me.
Yeah, we were like, come on.
Come on here.
So, has your stance changed?
I don't remember what my stance was last time but
the the current stance i think was no not now basically as paraphrase of like no not now so
i would i would change it to the plan of record and the plan within warp is to open source but
we have not yet open source and then i would caveat it a bit with like, I don't know exactly which pieces.
So we have a UI framework, which makes sense.
I believe it makes sense, but I don't want to publicly commit to really open sourcing the entire client code base, to be honest.
I think it's in our best interests, honestly.
It's like just from the company's perspective that I think it's also in like, you know,
from a community perspective.
I think as we start to introduce
more extension points into Warp,
there's all sorts of positive things
that would come from us being open source.
We just haven't done it yet.
And, you know, the thing about a startup
considering open source is that open source
is a one-way valve.
Like it's a, you flip it and then it's like you're forever open source is that open source is a one-way valve. Like it's a, you flip it
and then it's like you're forever open source.
You can't hit control Z on it, so to speak.
And so when we do it, we want to make sure
that like we've really thought it through
and that it's a thing that we're comfortable with
for the rest of the lifetime of the company.
But like, you know, my attitude is that we probably, it's probably in our best interest to be open source and that probably
that's the direction we're heading. But I get that for some of your listeners, they're going to be
like, oh, that's like, you know, startup BS, like just do it. Like, like I'm a developer, I get it.
And I get that there's also some people who won't like touch warp until it is open source and like,
that's understandable.
So I don't know.
That's my current thought. If you want to lay into me, go ahead.
I'm not going to lay into you, Zach.
I do disagree in some cases.
So I disagree that it's a one-way street,
that it's an on-off valve.
Yeah, totally.
Sentry is an example of that.
I think they began as, in quotes, more open source.
The BSL license is still, the code is still open,
but the BSL license is not OSI approved,
so it doesn't meet the criteria.
And there's a whole hoopla you can get into by going those layers.
I didn't realize that Sentry was on the...
They re-licensed a few years ago to the BSL license,
so you can go different.
I mean, in fact, I mean, Elasticsearch, MongoDB,
there's major kerfuffles of license changes.
Linux itself, RHEL, just changed how they make source available.
I mean, the license didn't change, but there's change you could do.
I'm not an expert on this, but I feel like Elastic is an example
of failure mode, maybe.
It feels like Amazon just took their thing and like, oh.
People doing the BSL, I think it's actually pretty understandable.
If you're CockroachDB...
In their case, they went to the SSPO.
So there's the SSPO license.
There's the BSL license.
But the problem is, even if you go to one of those,
it basically just means new stuff is BSL license. But the problem is, even if you go to one of those, it basically just means like new stuff is under that license.
Like the old stuff is what it is, which maybe that's enough.
Yeah, but I mean, like if it's so far back, if it's two-year-old code,
I mean, once code is kind of two years old or more, I mean, there's,
all I'm saying is.
This is good.
This is honestly good feedback.
So there's, what you're saying is like,
there is a mitigation to the risk of like,
you do it once and it's always that way.
Yeah.
I mean, I would say somebody that you could talk to is Adam Jacob.
He's somebody I would talk to when it comes to how to build a company
around open source.
He's done it well.
He's doing it again with System Initiative.
He was just on the pod, so you can go back and listen to that.
But BSL is eventually open source. So you can
essentially, your code is open,
people can contribute, you can have
agreements and stuff like that. But it's
BSL under certain license
and then one year, two year, I think
you can pick your term, it converts to
a truly open source
license, where
BSL has restrictions.
What do you think developers think of it?
Like if part of the reason that folks won't use Word...
People love Sentry.
Okay, so you think people are like,
it's way better than being closed source?
There's so many anecdotal feedback loops
you can point to.
One in particular,
so we have a partner in search called TypeSense.
And Jason Bosco is the founder. I can link you up to him.
This is all in the pod. I mean, this is great stuff for everybody to listen to.
He's been on the podcast and he shared their open source journey.
They were, if I can remember correctly, they were proprietary and then converted to open source.
And their bug count was way high as
proprietary and it became better software as open source because people were finding and helping fix
and just identify the software issues and so there's just so many there's so many things you
can point to that are positive when it becomes open source software it's less about we've built
this thing of value and then people can just take it and do what they want with it. That's a concern as a business until they get it.
For sure, yeah.
There's another value when you think I want the community to love this thing and you're building around the community. Because one thing you said was there's things that open source can provide us, meaning you benefit. I think there's things that work and provide as making it open source that makes the community better and therefore you better as well. So it's about how you treat this relationship with your future users,
whether they're the free plan or whatever they're the pro plan or the team enterprise. It's about
how you treat the long-term value of this code. Code that is open is more useful than code that
is closed. For sure. That's bar none, right? So if you want your life's work
in this to be more useful long term,
then open source has many,
many paths that are worthwhile for you to consider.
I think it totally makes sense for you to get
great advice and not just my advice
and my, as you said, haggling or whatever
about this laying into you because
that's all we're doing here, right?
This is literally an open question
that I'm writing a talk about
and, like, trying to talk to people
because I know that there's, like, a lot of, like,
startup, again, BS when people hear this,
but, like, I legitimately think
this is probably the right thing for us to do.
I'm just in a mode right now of trying to understand
the risks, the best way to do it, that type of thing.
Because there's not, like, open source has, like, a lot of different ways to do it, that type of thing. Because there's not like, open source has a lot of different ways
to do it, things that it could mean, ways you deal with contributions,
whatever the license is.
And so I'm trying to figure that out.
I do think it's in Warp's best interest.
And like you said, I think it's probably, you know,
it's in the user's best interest, which is, at the end of the day,
the thing I care about.
The thing that I care about most
is just doing things
that's useful for developers.
And so I want the business
to be very successful.
Obviously, I care about that too.
I have investors
and it's not like a hobby project,
but I also,
the motivating thing for me
is doing stuff that's useful.
Yeah.
I think you should get,
you should seek out good advice from people who've been down that road. Yeah. I think you should get, you should seek out good advice
from people who've been down that road.
Yeah.
I think I'm anecdotally good advice
in terms of like who to speak to.
Adam Jacob comes to mind
because like,
I love Adam.
He's awesome.
He's got great opinions
and he puts them out there very clearly.
He speaks well about his opinions.
I mean,
I might ask for connections after this
if you're cool with that.
He's been down the road for sure.
Yeah.
I mean,
he's touchable.
I mean,
you can reach out to him personally, but I'm'm happy to connect you yeah adam is somebody i'd go
to personally for like if i was in your shoes if i was doing what you're doing i would be like adam
can you please help me with making some wise choices you've been down this road what would
you do how would you treat this how can i give the most value to developers but also retain some
value in my product and he's got some really clear advice and he's given that advice on shows.
I'd go back to his shows on our show and listen to that.
I'm into it.
I'll listen to his pod and then I might want to talk to him if you're down.
There's a few of them.
There's like three or four of them.
So, well, I think the open source light is still on in your corner.
We may see it go out.
I don't think so.
I think it'll get brighter.
Yeah.
I'm encouraging you to do that.
I think you'll see a change. I don't know how to advise you to go about that route because i don't know
all the details and i'm happy to you know go behind the scenes with you but from a podcast
one-way perspective i don't know much so i can't say unequivocally yeah that makes sense i think
in a lot of cases it does make sense and it's up to you to figure out how to best go down the road
i agree but i think a pro plan is in your future you should definitely ship that an individual team of one pro plan that makes
sense to me yep what else what's left unsaid no i think that we've we've figured out a lot of the
future directions here i'm psyched sweet anytime you want advice and direction just come back on
the pod we'll do it okay yeah that's been this has been a uh a very fun conversation you ask really good hard questions and do my best to answer them so hopefully people
will enjoy listening to it i think they will i think they will well thank you zach i appreciate
it thanks adam well if you want my advice or you want jared's advice or you just want to talk
through your idea to to workshop with us.
Solomon did it with us a few weeks back on Dagger.
Zach's doing it here again today.
Back again, talking about Warp
and the future of the Terminal.
So, you know, hey,
if you want to come on this show sometime
and you've got something to show off
and you want some advice for that project,
the easiest way to do that is to reach out to us
at changelog.com slash request.
Anyone can request an episode for themselves or for someone else.
And you know what?
We love to promote guest or self-requested episodes.
So do that and maybe we'll do a show.
But what I haven't shared so far yet this episode, because obviously this was all recorded
in the past.
And today, right now now when I'm voicing
this this is the present this is the day of launch of the podcast so I want to tell you I've been
using warp I've moved from terminal to warp as an experiment to try it out and there's things I like
about it that I just can't let go now that That now I'm not a Terminal App daily user.
Now I'm a Warp daily user.
And hopefully some of the things that I want to see happen in this application for me and for you can be shared back with Zach and the team.
And we'll see what comes.
But I'm using Warp now.
And I invite you to do so as well.
Warp.dev.
Check it out. But massive thank you to our so as well. Warp.dev, check it out.
But massive thank you to our friends and our partners at Fastly and Fly and TypeSense for
having our back.
Fastly.com, TypeSense.org and Fly.io in no particular order.
Check them out.
They love us.
We love them.
Support them if you can and to our beats master in
residence the infamous and also famous great master cylinder keep bringing those banging
beats we love them well that's it this show's done we'll see you on friday Bye.