The Pragmatic Engineer - Building OpenCode with Dax Raad
Episode Date: May 27, 2026Brought to You By:• Antithesis – verify your system’s correctness without human review or traditional integration tests – and avoid bugs or outages.• WorkOS – Everything you need to make y...our app enterprise ready.• turbopuffer – a vector and full-text search engine built on object storage. It’s fast, cheap, and extremely scalable.—OpenCode is one of the fastest-growing AI developer tools around, surging in just a few months from roughly 650,000 monthly active users to nearly 8 million, and almost 1M daily active users.In this episode of The Pragmatic Engineer Podcast, we meet Dax Raad, co-founder of OpenCode, for a discussion about the gaps in developer tooling that led him to build OpenCode, the advantages of open source, and why taste and engineering judgment matter even more as AI becomes a core part of software development.We also cover how OpenCode turned Anthropic’s blocking of integration with Claude Code into a massive growth lever by partnering with OpenAI and other model providers, why GPU demand is becoming a bottleneck everywhere, how come AI coding tools don’t automatically mean engineering teams move faster, and also why Dax is personally skeptical about predictions for the future of engineering and work, in general.I found this conversation especially interesting because Dax displays a healthy skepticism toward the benefits of AI, even while building one of the most popular AI coding harnesses.—Timestamps00:00 Intro07:03 Dax’s path into tech09:04 Early startup experience13:16 Getting involved with open source16:13 OpenCode23:17 Anthropic banning OpenCode30:34 From terminal to GUI32:34 OpenCode’s business model36:33 Why inference is profitable39:11 GPU bottlenecks40:54 AI hype45:50 AI spending48:47 Dax’s memo55:41 Dax’s skepticism of predictions58:58 Engineering culture at OpenCode1:02:38 How building works at OpenCode1:05:36 Taste and quality1:11:32 Dax’s work setup1:12:35 The role of engineers and EMs1:15:50 Advice for engineers1:18:12 Book recommendation—The Pragmatic Engineer deepdives relevant for this episode:• How Claude Code is built• How Codex is built• Real-world engineering challenges: building Cursor• The AI Engineering stack• How Uber uses AI for development: inside look—Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe
Transcript
Discussion (0)
Doc's Rod is a co-founder of OpenCode, the most popular open source coding harness.
He's also a very down-sword when it comes to AI, which can be a bit surprising when you consider that he built such a widely used AI tool.
Today we talk about the rapid growth of open code to closer to 10 million active users in less than a year.
The memo, Dax sent to his team admitting they were shipping too many features, taking on too many hacks, and AI usage not helping them move faster.
Why inference is one of the most profitable businesses in tech right now, and why even open code is bottlenecked by GPU supply, and
many more. If you'd like to ignore the hype on social media on AI and instead talk about where it
helps or hinders productive engineering teams, this episode is for you. This episode is presented by
indices. Verify your system's correctness without human review or traditional integration tests
and avoid bugs or outages. I'd also like to mention our season sponsor, Turbo Buffer. You'd probably
heard someone say rag is dead these days, but it's not. It just doesn't mean what it meant in
2003. Back then, retrieval was pretty straightforward. The human asked a question, your
code embeds it, you hit a vector database, top K results come back, those get stuffed into
context and the LLM answers. Now look at what's actually happening inside something like
open code or any serious agent product in 2026. A human sends one prompt to an orchestrator
agent. That agent fans out to subagents. Each subagent is hitting separate systems,
a vector index, a fultex index, grabbing the file system, running CLI commands and SQL against
OLTP and OLTP and OLAP stores, reading and writing a memory system, re-ranking results,
looping and calling more tools.
One human problem turns into dozens
or even hundreds of searches across totally different shapes of data.
In practice, this means a lot more complexity, a lot more cost,
and a lot more potential performance issues,
especially when you need to scale up this system.
This is exactly what turbo puffer is built for.
It's a ridiculously scalable fast and cheap search engine.
It's built on top of object storage for a reliable and scale
with smart caching on MVME SSDs, so it's very fast.
It's priced so you can let agents loose with proper rag in 2026
without seeing your bill explode.
Check it out at turbopuffer.com slash pragmatic.
Dax, welcome to the podcast.
Yeah, thanks for having me and thanks for coming all the way to Miami.
I wanted to jump in to something really interesting about you.
You're building one of the most popular AI engineering harnesses, open code,
which is speeding up how people write code and just turn out software.
And yet you're claiming that this itself is not enough.
Like, this itself will not get us to better software.
I've always said the easiest products are the ones that you can use yourself.
And obviously, we built open code so that our team can use it.
And it's like, we are the customers of the product.
So we use it aggressively as much as anyone else can.
And of course, we build it so we think it's useful.
And we use it every day.
And it's a critical part of our workflows.
But all the old problems that I've always struggled with are still there.
I'm working as hard as I ever have.
I'm struggling as hard as much as I ever have.
So a lot of the job has become easier, but yeah, it's a weird feeling because objectively stuff has become easier.
But then why am I like thinking as hard as I ever have?
You know, it's a weird feeling to have both those things be true.
And it's interesting because the like a lot of the people who are decision makers, CEOs,
often hands on people like hands on CEOs, CTOs, founders, and companies, they kind of think,
oh, look, we've got these tools.
Coding used to be the hard part, right?
Like, objectively, it took us so much time.
it still takes, you know, to get into the zone if you're going back to cooling by hand.
So if that's faster, because that's where we used to spend most of our time, like, it should be
faster. Like, everything should be faster. But why do you think this is not the case? Or like,
what is getting in the way of like just like shipping high quality software faster, better, right?
Yeah. I mean, there's different, there's different life cycles, different companies. There's like
pre-product market fit. There's achieved product market fit, which is kind of where we are.
And there's companies that are like, have had private market fit for like a decade.
And I imagine that things look very different across these three.
For us, pre-pride market fit, to me, it doesn't really help that much because you're trying to figure out what you should be doing.
And yeah, like maybe it helps you swing a lot, but I've always thought it's better to think a lot instead of swinging a lot.
I think you can eliminate a lot of ideas or directions just by, you know, spending a lot of time in your head and with your team talking.
Obviously, AI doesn't speed that part up.
We're at the phase where we've achieved product market fit.
Now our task is to kind of hit the potential that we have.
And the issue for us is there's a million different directions we can go in.
There's all the obvious stuff we can do.
There's all the stuff that our users are telling us that we have to do.
There's stuff that our competitors are doing.
And it's very easy to just one to one do each one of those things.
Because we have a problem, prompt the agent.
Competitor has a feature, prompt the agent.
User has a problem, prompt the agent.
If you add that up, you think, oh, we shipped a thousand features.
that adds it to a good product. It actually adds it to a horrible product.
Like a Frankistine. Yeah, nothing's cohesive. You look in there. You're like, we shouldn't have shipped
this. The moment you ship something, you're stuck supporting it forever. And by supporting, it means
any future feature you build is going to like interact with it. So you still have to be very
conservative with what you put out there. It's hard to undo anything. Just because we can ship 10 times
more doesn't mean we have 10 times as many good ideas to ship out there. So in a lot of ways,
my struggle has now been. How do I like?
slow everyone down.
And like understanding that, yes, our process can look very different, but should it look very
different? Like, we know, we've done in the past six months, we've kind of operated very
differently than we ever have. A lot of stuff went wrong because of that. So now we're
pulling back and figuring out, okay, what from the old world still makes sense.
So yeah, we're like figuring out what we should be doing. And I definitely don't feel like,
oh yeah, we're like killing all our competitors. We're using AI so much better than everyone else.
And by the way, none of our competitors are crushing us either.
Like no one out there is using AI so well that they just, like we can't even compete, right?
And we're in the coding agent space.
All our competitors are super into AI.
So you would think in our space there would be like a huge gap, but there just isn't.
So I wanted to rewind back to the very beginning of how, you know, before AI, before a lot of these things, how did you get into tech and software engineering?
Yeah.
So I grew up, kind of cliche story.
I grew up programming as a kid.
My dad was a software engineer, so a little bit easier for me to get into than for other people.
Then just sort of working out of high school, founded a company, thought it was cool, though
I knew what I was doing.
Looking back in hindsight, like, wow, I didn't know what I was doing at all.
That eventually got aqua hired as a small aquire, and I ended up in like the real tech
industry.
Bounced around as a consultant, founded a few companies, and then ended up doing open
source pretty much the past six years full time but going back to the very beginning i found or saw
some references do you working on Minecraft Minecraft servers yeah yeah back in the beginning can
can you take us back a little bit yeah so uh so Minecraft obviously ever knows what Minecraft is um
and again this is another cliche story you talked to a bunch of people in tech they have a similar
similar backstory there was a modding framework for uh Minecraft that came out i ended up working on the
framework itself. I ended making a bunch of mods with it. I found that I liked creating like
interesting sandbox. I'd never like play I played the game a little bit, but I didn't play the
game that much. I like had a server that like 100 people would play on and I would just use
these mods to create like interesting situations to try to like understand like how people
would behave under certain scenarios. And I found that like fascinating. But yeah, that required a lot
of like programming Java stuff. What's interesting is that community, obviously I was like very
new to programming. It was all done over IRC, a community existed on IRC. But there was some
like very senior, very good programmers in there. The people there, I felt like were people
that weren't particularly career motivated. They were probably in a comfortable enough situation
where they worked like two hours a day. And they were talented, but they just didn't have any
like desire to like career chase at all. So they funneled it into the Minecraft stuff and I got to
talk to them and learn from them. So I think in like the couple months that I was doing that I learned,
I learned a lot.
And then you went to the startups.
You founded a startup.
And then after being the founder at Iron Bay, I saw looking back your history, you became
a head of engineering at Wright Health.
Yeah.
Can you tell me a little bit about what was that like that was in 2017 or so, like pre-COVID?
Yeah, yeah.
So that was a company, the transportation in the healthcare space.
It was just me and the co-founder originally.
And that company grew to like 20 people or so.
that was my second swing of doing a startup, I would say.
And it got further than my previous attempts.
But it kind of ended up in a disaster.
I did end up meeting my wife there.
She was ahead of product.
I was ahead of engineering.
We got together after a year.
So better than a startup exit, I would say.
Definitely learned a lot.
But yeah, it was one of the situations where everyone was super young in their 20s.
I think there's this stereotype of startups that, oh, yeah, it's a bunch of super young people, you know, building stuff.
After that experience, if I ever end up investing in companies,
I'm not going to invest in companies at with a bunch of young people because we were all just like our brains weren't fully developed.
We're all insecure about various things still.
And I played out with like company politics and dramatics and stuff.
So yeah, that cliche of like, oh yeah, it's a bunch of young people.
I think that's like the exception, I would say looking back.
So like a bunch of young people succeeding is probably the exception.
Yeah, yeah.
And of course we have like famous stories of that.
But, you know, like on average.
Like for me, I felt like my brain didn't finish developing until I was like 26, I think.
Prior to that, you know, I don't know if I really should have been running a startup.
And when you say like sob developing, is it just kind of like getting enough experience to like understand how like a business actually works or like professional relationship?
But what in what sense?
Yeah.
I think for me it's like startups are so intimate because it's just you and a few people.
And it's very intense.
Like you are this is the thing you're doing.
Like you're not really.
This is your hobby.
It's your job.
It's kind of everything.
If you're not like fully developed as a person, like if you're just trying to prove something to the world, if you're still insecure about certain.
things. All that shows up at work, especially in such an intimate situation like that. So
fighting, conflict, all that stuff. The way I perceived the situation, even my own understanding
what was going on, just basic, like, how to be a person and live in the world. I think at least for,
I think for guys, like, it takes a while for their brain to fully settle. And when it did,
it felt like day and night. Like, I was a different person, but it definitely took a bit. And now
you can look back at that time and just kind of look like, oh gosh, like, what was
doing. Yeah, yeah. Everything was just so magnified and way more intense and way more emotional
than it needed to be, I think. Okay. So the people who knew the Dax back then might be a little
bit surprised. Yeah, yeah, I think so. But again, that's when my wife met me. So something,
something was right there. Did you, in your first few years, so you found out a startup,
then you kept going up like very early stay startups, either as a founder or an early founding
engineer or so. Did you ever consider larger companies at that time? Yeah, I think that was always
there because, you know,
this, so for me, this era was like
the early 2010s or mid-2010s.
The big tech companies were very prestigious at that
point. Like, there was a lot, like, everyone you met
was trying to get a job at
either one of the big tech companies
or one of the hot, like, unicorn startups at the time.
That was like the thing to try to do
if you weren't doing that, you basically were going to, like, fail in tech.
So I felt like some kind of pull from that point of view,
but I also just couldn't get my shit together to, like,
do that. Like, I knew what a,
what it takes to there's like a thing there's a set of things you have to do to kind of be successful
there i just couldn't even do that so uh yeah i could say like oh yeah i chose not to do it but really i
i just don't think i was it what would you think the things were back then i mean you know there was
a very structured interview process for these things uh you know you got to do certain like programming
problems whatever and i think i was a good programmer and i think i had done some interviews that were
like that and i some of them i even did well in but the level of competition
and people study for it, people focus on it,
like just randomly swinging at it,
I don't think I would have landed anything.
So yeah, I was into building stuff.
I was into like more practical things.
And I just struggle to do anything outside of that.
And then how did you transition into open source?
Well, serverless stack was big project of yours.
It was a toolkit for building AWB
full stack AWS applications, I think.
Yeah, that was kind of where our initial focus was.
Yeah, and because I would have gotten to open source.
So after Ride Health kind of ended up in disaster, I took a job at a like a series B stage startup.
At that time, for me, it was like the biggest company I'd ever worked at.
And I eventually got put in like a director role.
First time being like a full time manager with no other like, like, no like active programming tasks.
And I still wanted to program a lot.
So I ended up exploring a bunch of open source things at the time.
You know, I like three or four hours of manager meetings every day.
But then outside of that, you know, I had time to explore open source things.
like that and I started to build my own kind of crappy stuff and I came across SST which had just launched it was a
was like maybe a couple months old that was Frank and Jay they both uh I created this thing in it originally
started contributing to it they were raising a series like a they were raising around they were kind of
getting out of YC raising around I invested in the in that round and then a month later I ended up joining the team
and they gave me the money back as salary but now I had to pay taxes on it so it's a if you're
going to invest in a company make sure you're not going to
going to join them. It's a bad use of money. Yeah. And then you did SST and then you did some other stuff as
well on the side, right? Open Next. So Open Next. I think was probably a thing that blew us up initially.
This wasn't even a thing that we wanted to build. We were serving people in AWS space.
Every single day someone would come to us and be like, we like what you guys are doing, but we really need help deploy NextJS AWS.
And over and over, like for a year, people were just nagging us about this. And we didn't want to do it because we weren't next to as users.
very tedious.
You actually has a very complex framework,
trying to recreate the right infrastructure
for all of that in AWS.
There's a lot of work.
Digging into like JavaScript bundling,
like NextJS internals,
like not very fun,
not very exciting work.
So we made Frank do all of it.
So he basically slogged through through that
and figured out how to get it all working at WS.
Our goal from the beginning was this project shouldn't exist.
It's just a weird gap
because the NextJS team is focused more on Bursale.
And it wasn't like a malicious thing or anything.
It's just where the attention would naturally go.
So we're like, let's fill this gap.
The end ideal stage should be that, you know,
Versela eventually just manages all this and there's no need for this.
So we built that.
It annoyed Versela a bunch.
But yeah, it was very useful for the people that, you know,
we're trying to deploy on other places.
Eventually, we kind of rallied some other providers that had problems with next
days as well.
So Cloudflare, Netlify.
I think Microsoft got in there eventually too.
Google got in there eventually.
And they kind of built stuff adapters for OpenEx.
And eventually the nextjs team had time to kind of like, okay, let's make an official adapter's API.
And in the past year or two, it became a much more like collaborative thing.
And I think the need for OpenX is slowly going away.
And then how did OpenCode come about?
Because that's a pretty recent story.
It started sometime in summer of last year, summer 2025.
Less than a year.
Yeah, yeah.
Back in February, our company, we were basically doing a push to hit to pay profitability.
So with SST, we had a monetization path for that.
basically for like three or four months we're like running out of money and then but our revenue was
going up and then in February we had like one month of money left but then we also broke even at the
same at the same time weirdly though we were all like really calm about it it just felt like I know
felt like something would would work out and it did so that gave us time to kind of take a step back
and think about yeah we can technically do whatever we want now like what do we want to be doing
and for a while we're like obviously AI is a thing to work on this decade especially if you're
working in DevTools. We've been through waves before where like there's just a thing that
happens and whenever a thing that's happening, it seems like it's not making a lot of sense.
Because whenever it's something that has a lot of potential, it attracts a lot of investment.
By its innate nature, most of that investment doesn't make sense. So it's very easy to look at
anything exciting that's happening and think none of that makes sense. I'm not going to participate
in it. But usually what happens is a few things in there make a lot of sense. And if you just completely
sit out, you just miss out on.
that. I think we've been through a few waves of kind of doing that where we saw the AI thing and we're like, okay, a lot of this stuff is stupid, but there's definitely a real value here. We need to be doing something in it. And we took a few swings at a few ideas and like a lot of them we didn't even fully launch because we just discovered they didn't make sense while we were working on it. And then eventually we started to use cloud code as a team. It was a first AI coding tool that stuck for us. It like directly solved some of the workflow annoyances that we had. This is great. Obviously,
this should exist. At some point I asked, why weren't we the ones that built this? Like,
we should feel bad about that. And then we realized, okay, maybe there is like still an
opportunity to do something. Given our experience in open source, we kind of saw, I think,
what I was saying earlier, like you don't have to just ship a million products to figure
out something that works. If you sit and think, you can figure something out. And we kind of
looked at it from a positioning point of view. Like there's a market. There's a bunch of coding agents
out there. For some reason, no one has grabbed the open source territory. There was no coding agent
I was like, we are the open source option.
And that obviously is a super valuable territory.
Every single dev tool we use, whether there's databases, compilers, whatever, eventually
the open source option becomes a default option, right?
That combined with the fact there's heavy, heavy competition for models.
Like, sure, Claude was popular, but there's billions of billions and billions of dollars
invested.
Like, they're not just going to let Anthropic win.
There's going to be push from open AI.
There's going to be pushed from the open source side.
So given that we saw that chaos, we saw that as really valuable to have the open source positioning that tries to work with all the models.
So the initial push for us was to kind of ignore whatever was going on the market and just make sure that we claimed that open source spot, which we were able to do.
And then, yeah, like our numbers have been pretty crazy since then.
Can you tell me about the growth?
Like you launched in June 2025, how the growth was both for usage but also for the team.
Like when you started, how big was even the team?
Was it most of the existing animal labs working on this or just a small?
Yeah, no, so we were just three people at the time.
So it was just three co-founders.
Yeah, and then we hired one of my friends who was also interested in working at
and he helped us build like the initial thing.
So he joined.
So it was four and then we convinced one of our like a really good designer that we
would always want to work with that join us as well.
But that was after we launched.
So that was more like in the fall.
But yeah, so we launched and the growth was really good like immediately.
it was better than anything that we'd ever done.
But by December, we hit 650,000 monthly actives.
And at that point, we're like, wow, this is great.
Back in the fall, we were kind of telling people our goal was to hit 1 million by
early next year.
Everyone thought we were crazy.
Like, that was like, oh, okay, sure.
Then in January, we did 2.5 million monthly active.
So, like, went from 650 to 2.5.
Last month, we're at 6.5.
I think this month, we're so halfway into the month.
So I'm not sure.
maybe close to eight. Our next goal,
my zone was 10. There was a massive jump.
So we went to 650 in December and 2.5 in January.
What was that jump? Is that
the winter break jump where everyone started to realize that these models are really
great? Yeah. So having been at DevTills for a while, we knew that
in January there's always a bump because like I think people take time to learn new
things in December with a time off and they have time to try new stuff.
So what we typically see is we see a dip into the holidays and like a giant spike in the
week back. For this, we saw growth into the holidays, which we never seen with any other product
before. So like despite the fact that people were off, it was higher usage than ever. And then January
came around and Anthropic helped us helped us a lot by, you know, they like wanted to ban
anthropic subscriptions in open code. That blew up into like a huge thing. Like we barely even
commented on that, but like just the user base was so upset. Anthropic accidentally put us and
them in like the same sentence, which we don't deserve because they're a much, you know,
bigger, more successful company.
But that week, that kind of happened by accident and that like spiked their numbers like
crazy.
So I guess in hindsight, because what happened is Entrophic silently banned being able to use
Claudeco's subscriptions inside of open code, which was every tool, including open code,
did that because it was a bunch of other third parties.
But they didn't allow open code to do this.
And then this led to this like outrage.
The thing with them is saying that they're kind of new to working with developers.
It's okay to do things like, of course, you need to do what you need to do to make your business sustainable.
It's totally fine.
But randomly dropping a block at like 9 p.m. at night, that just sets you up for like people to hate you.
Doing like a phase communicated rollout over a month, I think they would have.
Giving a heads up.
Yeah, yeah.
Yeah.
I think people would have someone upset, of course.
Everyone's going to be upset no matter what.
But it wouldn't have been this concentrated moment of like everyone being being really annoyed.
This reminds me what we were talking about, how AI allows.
you to do things really quickly and fast. Do you think in this case, Antropic might be, you know,
stepping in this trap of, they can do things really fast and they do things really fast. But for
example, in this case, they can just implement a block like this. You know, like, the PR probably took
like what, like a few seconds or a few minutes. Whoever did that might have not thought through
the implication. I think that's just a consequence of any kind of fast-growing company. You forget
the amount of leverage you now suddenly have. Like you do one small action and it ripples through millions
of people like we're doing with this ourselves like we've never worked at this scale before we put out a
bug the other day where um almost everyone has a terminal in dark mode and we open open code it opened up in light
mode so we like flashbanged a bunch of people and i'm like in the past i would have been like a hundred
people we hit but like i did this like a million people this week so uh yeah but but inside this block
obviously we know it worked out well in in hindsight but when it happened i mean at the time opus
4.5 or 4.6 was the most powerful model out there best for coding
and you saw that Anthropic just blocked, you know, like,
closed restrictions before you knew that this press would happen,
like was it scene's reaction?
Was it just like, stay calm, keep going?
Yeah, what's weird is we knew this day would happen at some point.
And for some reason when it happened,
we all just felt excited because I think we were kind of like thinking about this for a while.
And we knew this would happen.
We also knew that like, we live in this crazy bubble, like especially on Twitter
where everyone has a $200 cloud max subscription.
At that point, we were at $6,000.
thousand monthly active. There's no way 650,000 of them have called Mac subscriptions. Like it's
crazy for the average person to spend $200 a month on anything. So we knew it was like a smaller
subset. And also at the time, we had been working on deals with pretty much every other company
to officially support their subscription in open code. So the previous weeks leading up to that,
we got Microsoft to agree for GitHub copilot to be officially blessed by open code. We got a bunch
different companies in the works. We didn't announce any of them yet. And the big one we hadn't
gotten or we haven't even an approach was OpenAI. So when this happened that night, well,
it was a Thursday night. I remember exactly when. I got like a hundred tags on X being like,
oh, they banned it. They banned it. And I was like, all right, it's go time. So I messaged Open
AI being like, hey, tomorrow, everyone's going to wake up. Everyone's going to be really angry
at Anthropic. You guys have a chance to score like a PR win.
by taking the opposite stance and officially supporting open code.
Then the next morning, they confirmed like, yeah, let's do it.
So in the morning, everybody was like, oh, Anthropic blocked open code.
They're screwed.
I saw a bunch of people being like, they're worth nothing now.
Like, they're going to go to zero, whatever.
I was like laughing to myself.
I'm like, okay, just wait until the end of the day.
And then we figured out the integration.
We implemented it.
And then in the day, we announced, like, Open AI is officially supported in OpenCode.
We knew what was going to happen.
And like, going all the back to the Open Next thing, right?
the strategy that we know how to play really well is to pick one temporary bad guy and galvanized
all their competitors to push something forward against them. So Anthropic was unfortunately in that
position. So we kind of got the rest of the industry to support open code, support like access
to these models in different places because they were all competing with Anthropics. So these are
like nice strategies that you can run in these situations, even as a small company. I'm starting to get a
sense that that past 10-ish years of building deaf tools or like at least like five
of open source and understanding dynamics is really helping you.
Because even when you told me about how you were thinking of open code,
you're talking about strategy about how there was this gap
and there's all these competing model providers
and with an open alternative over time in a lot of ecosystems,
the open one wins and the vendors compete, for example, with Linux.
Linux is open source, but the distributions are for-profit companies,
Red Hat, Ubuntu, or Canonical, and so on.
And they all compete and they make it better.
So even in this case, it sounds like you, you know, like it all goes back to you actually had a strategy that you expected that if the players play, the vendors play as they play, it will make sense.
Yeah, exactly. If you get your positioning right, the world just keeps handing you wins that you didn't even expect. So like we never predicted this exact scenario, but like our fundamental understanding the position was right. Like if there is a neutral party, all these companies are billions of dollars will kind of use a neutral party to advance their own like company's interests. So it's beneficial to be that.
thing in the middle. Yeah, and then right now, Codex came forward. They saw it as a way to increase brand awareness, usage.
Right now they're sharing, like, how much is growing. And I'm sure logically at some point, they might
turn around at some point, say, let's say they win the market or they become market leaders. They might
do the same saying, okay, we no longer want to support this thing. But at that point, there might be other
players as long as there's multiple interested parties. Yeah, exactly. So at some point, maybe Open Eye
becomes a bad guy that we have to like kind of galvanize everyone around. So it's a, it's a
I mean, it's why competition is good. This is kind of exactly how competition plays out.
I think the thing that people maybe underestimate is, like, we're a small company.
We're not like a huge company at all.
You can apply, if you apply pressure in the right places, you can actually make things happen.
We get a lot of criticism and like anger from people being like, oh, you guys are being so mean to anthropic.
They criticize the way we approach things, but these are a billion dollar, you know, huge companies, you know, like us be going to apply any amount of pressure to get something to happen.
It's very difficult and this is what it looks like.
People might think that they're above it or whatever,
but having more access to these things,
having more people be able to use the tools they want
is a good thing that you can love Cloud Code,
be like, I'm never switching out of Cloud Code.
That's great.
You should probably still be into the fact
that people can use other tools that they like, right?
And going back to why OpenCode is so successful
and that there was a gap
using what you've learned about deaf tools in general.
Like, why was there a gap?
What do you think was the difference that you did
outside of just, you know, like writing the tool to start with.
The biggest advantage in DevTools is the fact that everyone working at DevTools is a programmer
and programmers are horrible at B2C products.
They don't realize DevTools are B2C products.
You basically treat-BTC as in business of consumer.
Yeah, exactly.
So, like, you treat them, like, the most extreme mindset to have is like you treat them
as well you're launching Instagram or social media app, something like that.
Yeah, you can do a top-down process and there's plenty of companies that do like an intense
top-down enterprise process. And that works and that's great. But the DevTool products that are
massively adopted to the point where they're basically a standard, they're all bottom up.
Like, they're individual developers start to use them, start to like them, and they kind of
creep into companies and they grow in that direction. And to do bottom up, you have to basically
think like a consumer company. And programmers generally are very, very bad at thinking this way.
So we very much focused on the moment you open open code, it should feel very different and better
than some of the other options.
And to do that, we had to build, like, a ground-up terminal rendering framework.
That's not what Cloud Code did.
That's not what any of these other terminal coding agents did.
They just used ink or whatever, and, you know, they made it work for what they need.
But we invested on that upfront because from the moment you use it, it feels like something different.
It might not be for you.
Like, maybe you don't like the overwhelming experience.
Maybe it feels like too much.
But you still walk away thinking the people that did this are competent probably.
So immediately getting people a good feeling.
and then immediately getting them prompting without any layers of friction.
So we focus on just reducing that friction as much as possible
and focusing on things like,
I'm on a lockdown enterprise laptop.
How do I can I use open code?
Like optimizing for all of those things.
And our harness wasn't very good for like the first like five months of open code.
But it was good enough.
It was good enough that most people couldn't really tell a difference.
And once we want enough share,
then we went back and like tried to make our harness like good and smart
and optimize in all those things.
but it was inverted from what everybody else was doing.
Everybody else was to be like,
you have to build a smartest harness and that's how you win.
We have like a mid-level harness,
but we are the most used.
And now we're able to like, you know, creep up
and actually have the best harness
and are also the most used.
So I think it was like an inverted strategy
that we did that other people didn't fully understand.
And to get into the inverse strategy,
just the technical level,
like you launched with a framework Atari, right?
Oh, that was a referred desktop app.
So the desktop, I would say, I wouldn't even say that was, that was mostly a mistake on our part.
So I love terminal stuff. I do all my work in the terminal.
So our numbers are, I said, we're going to hit like 8 million monthly active users.
I don't think 8 million people should be using the terminal.
I think it's a little over.
We have like too many users for what the product is.
I think a lot of them would probably have a better experience on a GUI.
And we understood that very early.
And so we were kind of experimenting with like a web app with a desktop app.
And so we're like, this is probably going to be the direction of things go.
unfortunately we were right like that that is like where things are going but we didn't like
treat that project too like we should have treated it a lot more seriously and try to get it like
out there way faster and thought a little bit harder on the technical stuff so yeah we just
kind of picked stuff and we didn't like think too hard about it and uh ultimately was a mistake
and we're moving back to electron now but open code is is growing amazingly fast interesting enough
there's this growth hack that some harnesses are doing I would say growth hack where in the PR on
GitHub, they actually put which harness that it. Cloud code is doing it. GitHub
Copilot is doing it. Some others are not doing it. And an open code, you are not doing it,
even though this could be like almost like free marketing. Yeah. So initially we had that.
Because initially we were effectively a cloud code clone. If cloud code did it, we did it. So we had that.
Like with the committed, it would say, you know, committed with open code with our in GitHub.
And then we got a bunch of people being like, hey, can I disap, can I have an option to disable this?
And I thought about it. And I was like, this is so late. It just felt lame to me.
I'm like, you can be like a casino, right?
A casino just tries to trap you in there with every little trick to,
a trick to like get you to stay.
That's at the extreme of doing a consumer product.
I felt like we didn't have to go to that extreme.
It felt like a little bit lame to like try to.
It's like too obvious of a growth hack, right?
Like everyone sees it, everyone knows why that's there.
Yeah, so I just wasn't a big fan.
And so instead of having the option, we just turned it off by default.
You know, you're still running a company that is a for-profit company in the end
or you need some bankroll.
what is the business model behind open code?
So we have two lines of business, basically.
So initially, when we first launched open code,
a big problem that people had was,
or that we had, again, thinking about reducing friction,
they had to connect something.
They had to connect their Anthropic account.
They had to connect their Open AI account.
At that time, when you sign up for Anthropic,
you couldn't even get enough rate limits
to even use something like OpenCode.
So a lot of our users couldn't even use it.
So we're like, okay, we have to at least build
some kind of inference service that, like,
you can sign up for and get access to all the models with the rate limits you need.
So we built that and we called it OpenCode Zen,
and we initially just built it as like an onboarding thing to smooth out onboarding.
But that grew like a ton.
And with the amount of open source models are becoming popular,
we also found there's a ton of difficulty in hosting open source models correctly.
So Zen has become a place to aggregate the best model.
I mean, of course Frontier models are easy,
but then the best inference for all the open source models.
All that became really popular.
That business is growing a ton.
I think a couple of months ago,
that hit 50 million run rate within like five or six months.
Wow.
And the margins there can be pretty good because open source models you can host at a decent margin.
That is growing like crazy.
We didn't really expect that, but that's a big part of it.
The other side of it is extremely boring.
If you are a company that's using open code and you have a thousand engineers,
you can't just tell them all to go download open code and like add an open AI API key.
You need some kind of control plane to like,
set up all the providers, permissions, budget controls, rate limits.
So we have a product there. We're going to make that publicly available soon,
but right now it's just been like enterprise deployed.
So just if you're a company that's using open code at scale,
you need some administrative software to run it.
You can't practically use open code at scale without something like that.
That's also open source, but you know, most people just pay for our hosted version.
The other thing is I think it's finally, the time has finally come
where people are looking at how much they're spending on a on lm and they're like what are we doing
are we actually getting anything any more done like we so like companies are now looking at their
costs and trying to figure out how to optimize it a little bit it's great timing because open source
models are now very competitive uh they are 10x cheaper blending that in and having good inference for
open source models is becoming a part of our business as well so these big companies you know they need
the control plane but then we kind of just give them inference access as well to the these other models
and they end up just kind of naturally starting to use it.
If that ends up being a main part of our business,
we might stop charging for the control plane itself
and just charge for the inference.
Dax was just talking about the boring but essential work
to get enterprises onboarded.
SSO permissions, control planes,
all the stuff every serious company eventually needs,
which is where I need to mention our season sponsor, WorkOS.
Sooner, rather than later,
you'll need to get around building these enterprise features,
not just control planes,
but things like auth for apps and agents.
WorkOS handles it.
SSO, skim, fine-grained authorization built for how agents actually operate.
The fastest-growing AI companies, entropic open-a-I cursor of perplexity,
they already trust WorkOS to solve these problems.
Check it out at WorkOS.com.
I'd also like to talk about a presenting sponsor and this is this.
We just talked about slowing down to speed up,
thinking hard about what to build,
so you're not sprinting to the wrong destination.
But quality is part of the destination too.
You don't want your product to flashbang a million people like this HeMet OpenCode did that one time.
Antisysis is a property-based testing platform that enables you to express the properties your system should have,
then verify that those properties will hold in the chaos of production.
With Antisysus, specification and thorough verification becomes a seamless workflow,
giving you clarity so you can deliver quality.
Check out Antisys.com slash pragmatic to learn more.
And with this, let's get back to Dax and OpenCode.
You had a recent tweet about how inference is actually really, really profitable.
Like you were quoting someone who was saying like, oh, you know, like these, these AI model
providers are, you know, like having might be having financial difficulties.
Can you explain to those of us software engineers who, you know, we don't, we don't do inference.
I mean, we use these models and we just assume that this, this must be our business.
How can it be profitable?
Why is it profitable?
What are you seeing?
Yeah.
So I think this is a, it's kind of, there are different parts of the business.
So if you look at the pure inference part of a business,
if you think about what's the floor on the cost?
The floor is a cost of electricity.
There's a capital cost to acquire the hardware.
Once you have it to deliver a token,
the cheapest it can get is the electricity to power it.
And obviously there's other infrastructure,
there's like operations staff, there's stuff like that.
But we have seen models that we look at the sticker price of it,
and we know like the,
because we rent GPUs at scale to run the models.
And we still use middlemen, by the way.
So we're not going all the way down to the floor.
Even for us, there are some models, the sticker price, and the cost to us, there's like an 80% margin in there.
And I think the other thing that people don't notice is prices have gone up.
It's confusing because it seems like they haven't.
But they've gone up from the point of view is we used to all use Sona as their default because Opus was too expensive.
Then they made Opus cheaper so that we started to use Opus as their default, but it was still way more expensive than Sonnet.
So the prices have gone up and the cost to host these models haven't changed.
So that's one aspect of it being really profitable.
And Anthropic, of course, they have an open AI crazy scale.
They have the biggest GPU deals that they've done.
So I wouldn't be surprised if they're looking at like 90% margin at current prices.
I don't think that's like a defensible margin long term.
That's crazy to be able to make that much with the amount of money going through as well.
It's interesting because when Brian Cantrell was on the podcast, he used to work at
building a cloud service that would compete with AWS. And he said that back then, this was the same
thing. AWS back then hid their financials. Everyone thought and they told everyone
the cloud is a terrible business and it's like your red blood everywhere. And then he started
to do it and he said like, actually, it's a really freaking profitable business serve on a
cloud, but it's kind of a welcome secret because why would Amazon or any other provider advertise
the business that is printing money? There's always negative sentiment that exists for any
business that's getting hyped. They have no incentive to correct it.
So again, it's complicated because I know the training costs are a big part of it.
The R&D department is hugely expensive, but long-term inference makes sense as a business.
I think it always will.
This being said, you also said something in public about GPUs, about you, I'm quoting you,
there are just enough GPUs.
It's crazy that even a company our size is being bottlenecked by us.
Yeah.
What does that mean?
Yeah.
So across the whole stack of GPU, so everything from like producing the GPU to support,
Harding hardware to like labor.
Everything, everything is like super tight right now.
The demand for inference is growing.
So like I don't think it's linearly growing.
I think it might even be exponentially growing.
But we haven't made our production of GPUs grow exponentially.
That's like kind of a linear process.
So as those lines intersect, there's going to be tightening.
So for us, like there's, we have GPUs that we need to reserve.
We have to pay a lot up front.
Everyone is now hoarding because everyone's kind of expected.
this crunch to kind of continue. It's very hard to get capacity for inference. And the other thing
that's crazy, I think I posted about this, you know, we see things like, oh, a company has raised
$2 billion or whatever to do something in AI. And that feels like a crazy amount. Like, wow,
that's a huge amount. Like, you have to be like a crazy start to do that. The big tech companies
are spending like tens of billions in a year, like Amazon, meta, whatever. Like, they dwarf anything
that's happening in the startup space. So they are just vacuuming up like all the demand. Any company,
that is in the supply chain, they don't want to talk to you because they're busy trying to get
something with Amazon or Microsoft or Google. So yeah, it's very tight times. I think it'll get
resolved. I think in my whole career, anytime I've seen any kind of shortage, there was a tense
period and it was met with like crazy oversupply. It might be different this time, but generally
that's how I see things go. But right now it's tight. I want to talk about the hype of what
productivity gains these
AI tools,
specifically AI agents are giving to engineering teams
and the reality. And you wrote
a now very heavily quoted tweet,
which was, I'll quote just some parts of it.
Everyone's talking about their teams like they were at peak of
efficiency and bottle light by the ability to produce code.
But the way things actually look like is,
and you listed a few things like your team,
your org really has good ideas.
People are not using AI to be 10x more productive.
They're using it to turn out their tasks with less energy to spend.
And so on. So like this was a few months ago, I think two or three months ago when you wrote it.
Yeah, I think there's so many dimensions to this. So the thing I was talking about in that post is,
the majority, again, we forget how big this software engineering industry is. Like every company
in the world employee software engineers to some degree, right? The majority of these environments
aren't like the most motivating, exciting environments. Most people there are trying to do their
job, go home to their kids, like have a reasonable life. You give them a button that lets them do
their work faster, the natural place for them to do is hit that button as much as possible,
do the same amount of work and just cash in that extra time, right? Which makes total sense.
Like if you're not, if you have no reason to be above and beyond motivated, you're not going to
really use that to like, you know, push your organization harder. Yeah, these tools may make you
more productive, but like be really realistic about your employees. Like, where are they going to like
cash in, cash in those gains? Obviously, some companies are not like that. They're employees are
motivated, they have good reason to be, they're compensated in a way that makes sense. But most places
aren't like that. And the problem with that is usually in those environments, it's like there will be
be a couple people that are irrationally motivated because they love the work they do, et cetera,
even though the rest of the company isn't as motivated. They're usually the ones that are trying
to make sure everything is good quality, make sure kind of push everyone to try harder. They're all now
overwhelmed by like SLOP PRs. And we've had a few people on our team that are joined and their previous
company was like this. Like they were the person that still cared. The rest of the organization just
like hits the button and gets their task done and they're drowning and just garbage. And they're
getting burnt out and they're leaving. So motivation and team and people and humans and like emotions,
all that stuff is still a big factor in all this. How do you think companies like let's say a mid-sized
company or even a small company might have to rethink and have motivation, compensation, thinking about
work now that you know like I was Steve was talking with Steve Yegy about this on how an engineer
could if they're super motivated and they put in the task and energy they can produce a lot more
output and if it's well directed that could be better business results but it does come at a huge
cost in energy and again if you're if you're just being paid by the same paycheck it doesn't
necessarily make as much sense to do so so I'm I'm wondering like what kind of early thoughts
you have so far. And of course, for you guys, in a startup, I guess it might be a bit easier.
I mean, obviously for us, you're right, it's easier for us. We are in a very exciting space.
The people that join our company are very competitive. They want to get in there. They want to win.
So that's like a big driver. Everyone has equity that if we do our jobs right, like it'll be pretty
meaningful for them at some point. Even pre-AI, I feel like, I can only speak for startups.
That's like, that's where my experience is. I'd always see startups post jobs where they're like,
we're hiring two engineers and they post two salaries.
And these are like, okay salaries.
I always tell like, why just hire one person and combine the salary?
You'll get someone that'll like meaningfully change the direction of your whole life.
Like people will start showing up at that level.
So we've always been willing to pay quite a lot.
We don't need to hire a thousand people.
We need to hire like 20 good people.
So generally I think good salaries still go a long way.
But yeah, at bigger scales, like I think it's just hard.
Like when your company hits a certain size, like there is just no good reason for someone to do much more than what their job strictly asks them for.
So I don't have any good ideas here.
And I wonder if it's a thing where it is hard to retrofit this technology and the way of working to existing structures, which have been.
And I guess a question goes back to like how much will like the AI native startup like yours or ones that are starting today change?
Like how will their workflows change the type of work?
Even the roles, right?
Like, what does this software engine even do in terms of, okay, of course, they prompt AI to write code, but what a product?
What about all the other things?
Yeah, yeah.
I mean, yeah, I think the ball next are still there.
There is still figuring out what you should be doing.
You can spend a year or just figuring out the right thing to do.
And then once you figure out, maybe it's fast to actually build it.
But, yeah, like, I think the joke I made was pre-AI.
I would spend 90% of my energy thinking about what to do and 5% of my energy doing it.
Now I spend 96% of my time thinking I was doing 4% of my time actually doing it.
So yeah, it's like a 20% improvement, but day to day, it feels as hard as ever.
Another observation you made is at a lot of companies, and you will, I guess, see this secondhand from open code being used to companies.
That the CFO is now going, what do you mean each engineer costs extra $2,000 per month?
What are things you're hearing about in that area?
Because this is happening.
Yeah, so I think with every technology, there's a phase of like,
flexing where there's so many companies now that want to be seen as like we're so future facing.
We're like our process is ahead of everyone else is like you don't know chance you're going to catch up.
And they're all bragging about how much they're spending.
So there's like right now there's a push to be like each engineer is spending like 10,000 a month.
And that's like that's so worth it.
Like our business is so successful and so useful and so efficient that any amount of money is worth it.
And there's a lot of that narrative.
then there's like and then that that's fake that'll go away uh then there's a real narrative of like yeah these companies hire thousands of engineers if they literally cost a thousand dollars extra a month that like breaks your whole budget like that's not a thing that you can kind of casually do we're in a temporary period of like we're experimenting to see what's possible and and everyone's learning i doubt this is going to be a sustainable thing like these companies were already pretty tight on what they could afford especially if they can't directly point to clear results of
Here's the issue, right? The net result of this, I'm not saying this is the case,
but there is a world where the net result of all these AI coding tools is the same amount
of work gets done, but all the engineers are happier because their job is easier.
That's not good enough for a lot of companies. So they're going to say, go by to typing out
the code. It's also an interesting dynamic where there's also the pressure of, well,
when everyone else is doing it, even if we just stick with the happier analogy, and again,
let's assume that the quality of the output or overall wouldn't change. If everyone else is doing it,
And you're like, okay, well, it's not worth it. Let's stop it.
Then your best engineers will leave.
So I'm also hearing some CTO saying like, well, we're giving actors to better,
better tools because we're one of the best companies.
Like, it will look silly if we said like, oh, you can only use, I don't know,
GitHub co-pilot.
Right.
We're not allowing you to get whatever open code or a clock code or whatever else that is.
Because we, like, our best people would leave.
Yeah.
No, that is a real thing.
It's kind of like, I mean, again, depends on if, if you have someone that's really good
that has infinite opportunities, using Jira is a risk because they're going to be like,
I hate using zero every day, and they're going to leave.
And I know people that have literally have done that.
So that's like always a dynamic.
But that will be at the top of the market, right?
Yeah, exactly.
Yeah.
So it's, again, I think at the scale we're at, we're just so exposed to like how big the world truly is.
And the world we typically play in, it's so small compared to everything else that exists.
And at most of these companies, it is just use copilot.
Just plug copilot, open code, and that's all you get.
And like, your limit to limit.
And that's what's there.
And there's some narrative being pushed that these companies are going to die because they're going to fall behind, et cetera.
But I don't know.
I just don't think it's that straightforward.
Another longer post that I paid a lot of attention to is the one that you sent out to your team to the OpenCode team, which was on the topic of saying, right, we should do three changes.
I'll quote you.
Basically, we have the following challenges.
None of them are new, but I think they're turbocharged by LMs.
number one is shipping features not for shipping
number two when iterating on
features sometimes the original design
design is off and it forces you something
hacky but the LM cannot deal
with the hackiness and number three is
we need to spend more time cleaning things up
how did you get to these observations
and what's changed since
you and how did it seem respond
so the first thing right
features that we shouldn't have shipped
so easy just to respond to a problem
by shipping a feature so having more restraint
and so we try to
like flesh that out a little bit more like here's a type of stuff that we want to ship
here's the type of stuff that like we'll wait on until we have more clarity there's having more
restraint there the thing about shipping hacky stuff that one is i think the probably the biggest challenge
because forever this has been a problem where you have a system that's doing a bunch of stuff you need to add a
feature to it the system doesn't exactly support the feature so your options are rethink the system
from first principles redesign it so it supports that feature or just a
absorb the hack for temporarily. And you can make a judgment call on which one you do, depending on how
bad the hack is, depending on how valuable to the company it is to get this feature out. You make the
judgment call. That judgment, that ability to have that judgment is so distorted right now because
the agent will just do the hacky thing for you. The agent will kind of deal with the hacky problems
that come down the road. And it's way easier to be like, oh yeah, it's a temporary fix. So we're shipping
way more hacks in places where we should have just rethought the whole system from ground up or
like redesigned it to and refactor it to make it more flexible. So I think our judgment is just off.
Does this have to do that when I as an engineer, you know, pre-AI, like I'm making a hack. I know
I'm making a hack. I'm thinking about it. I feel bad about it. I feel bad. Yeah, exactly.
But I do it anyway. But you know, I spend time thinking about it and there's kind of like a little
bit of prickle there. And then when I do a second hack, I remember the first one. And I feel even worse about
And I can still justify it, right?
But after a while, like, there's feelings that, especially when you're someone who cares about,
and the reason you care is you have an experience, you've been burnt, you know, you're,
you're placing landmines for someone else, maybe even for yourself.
And is it just that the agents, I mean, they just do it, they don't have feelings,
and they also surprise the effort, suppress the thinking, they don't even tell you I'm doing,
doesn't even know it's doing a hack, is just following whatever the training data is,
which is pretty low quality code on the internet, right?
Yeah, exactly.
I think way you put it is exactly right.
That prickle, that feeling that you get, it's like muted now because someone else,
it's kind of like you made someone else deal with the problem.
The problem is still there and the landmines are still going to blow up on you eventually,
but like you're not, you don't feel that bad feeling as much anymore.
So your judgment is skewed.
You're not getting that feedback loop.
I guess it's like, you know, like there's always this like very relatable story of the CEO who just delegates stuff
and then like doesn't understand why things are terrible on the floor.
and then like one day goes down and like it gets into like doing the actual work and
realize oh my gosh these conditions are terrible yeah exactly versus the CEOs who are hands-on
and they tried to stay in touch and do I don't know simple stuff like or CTO is doing coding
in the environment like I think Striped CTO did this like once for a week every few months
and then felt like oh this is painful let me do that yeah yeah exactly like you need to I mean
just like you need to be using your own product you need to be also like you need to feel the pain
that the users are feeling same thing with their code base and everything everywhere so yeah
I think all of life is about having the proper feedback loops in place, and it's very easy for those to go away.
And then the third thing that you said in this memo was related to this one is we need to spend more time cleaning things up.
How do you deal with that?
And I mean, because you're also a founder, how do you justify it?
Because, you know, there's this thing of like, especially when you're a startup, okay, you've just found product market fit, but there's this pressure to move quickly and cleaning things up.
It will not get you more customer love or revenue or any of the stuff that,
you care about as a business. Yeah, it's really hard because every single day we wake up,
there is a thousand people yelling at us telling us to do X, Y, Z things. There's a thousand
people telling us for doing everything wrong. Every single day, there is like a competitive
new product that shows up. Very oversimulating. If we let ourselves just get pulled by those
forces, I don't think it results in anything good. And I think what's also cool is
cleaning stuff up is easier than ever. Like you think of a new way in the past, I would realize,
oh, there's like a new pattern that we should be using.
And we would just start to use that stuff for stuff going forward,
but it was too much work to clean up all the old stuff.
But now you can clean up all the old stuff.
It's like you can ask the agent to go implement a new pattern everywhere.
It's very easy to clean up tech debt.
It's very easy to like find new patterns and implement them across a codebase.
Very easy to clean up like dead old patterns.
And yeah, you're right that there's no like direct result of doing that.
I think you can be a successful company without ever doing that.
the way I think about it is
there's a million ways to be a successful company.
There's all these different companies that are successful out there.
If you had your pick of any company you could work for,
you probably wouldn't pick 99% of them.
So I want to make sure we build a place that we're happy to work at five years from now.
Our day-to-day is happy.
We feel good.
We feel good working there every single day.
It's not this thing where it becomes miserable to work there.
We can't get anyone good to join us because it's mostly about slogging through like legacy stuff.
And in this memo, after you listed all these things,
and you know, you're basically saying, all right, we're shipping a bunch of stuff that we don't need.
We're not cleaning it up.
We're not thinking.
You actually said something really interesting.
I'm quoting you again, the worst part about all of this is I don't think we're trading this off to move faster.
I think we're moving at a normal pace.
Right.
Yeah.
It feels like we're going fast.
But then I look back and I'm like, like, I don't know if we actually are going that fast.
And I don't think we're going any slower than our competitors.
We're certainly not going any faster than them.
So you're trying to look at productivity.
it's so easy to trick yourself into thinking you're being more productive.
And when you sit down and really look at it, oftentimes, like, it's not as crazy as you expect.
I guess what you're saying is, you know, don't be complacent and accept, but like just be critical and look at, is this working?
Like, should we slow down to speed up?
Should we focus on the invisible stuff, those kind of things?
I really believe in just like preparing a lot and like setting up the foundations right.
And then when you spring, you spring with like so much more force than you would if you just forced it earlier.
One thing I like about you is you do call out BS,
especially when it's a BS, especially when it's really trending on social media.
Again, you're a lot on access happens a lot specifically.
And here's a tweet that I'll read to you that you'll remember.
It went very viral.
So many people, you know, VC folks all said like, yeah, this is the future.
And this is what it said.
The 24 to 29 year old engineer will soon become the most valuable asset in technology.
Because they have pre-AI principles and post-eatis.
AI speed and it's an undefeated combo.
And people are saying like, yeah, this is the future, like this generation who is not
too old, have the old things, they will be killing it again.
They have no preconceptions of what used to be possible.
And you did call BS on us.
Can you talk, tell me like who you're thinking?
Well, it's funny because like I'm just so tired.
Every single day I wake up and I open the feed and just prediction, after prediction, the future
is going to be like this.
If you're just going to be like that, if you're just going to be that.
And we're just like making stuff up, right?
That one's funny because that's a very classic post where it's like, person like me has all the advantages.
Person like not like me has all of disadvantages.
It's like everyone is just saying mantras to themselves because the root thing that's going on here is we are experiencing a moment of great change.
Everyone is very nervous about what that means for their own position in it.
A defense mechanism is to confidently assert a future in which you're a winner.
And that's almost what every single prediction that you see is happening.
You almost always face it down to companies like mine will be successful.
other companies will fail.
My job won't be replaced by AI,
but everyone else's a job will be replaced by AI.
And everyone has some rationalizations for this,
but the root thing that's happening here is everyone is scared and worried
and not sure about where things are going,
and we are just bombarded with predictions
and protecting their own psyche.
Yeah, I'm just tired of predictions.
Like, yes, we're going to have time of great change.
I just focus on, like, the next day.
Like, what can we do today?
What can we do tomorrow?
I didn't know I was going to be working on this a year ago.
I don't know where I'm going to be working on a year from now.
I'm just trying to do the thing that makes sense right away.
This thing about, like, oh, young people have, that's, like, always been a thing.
Young people have a lot of advantages.
They have the classic disadvantage of not having a lot of experience, but having a lot of energy.
I have a lot of experience, but not as much energy as a 20-year-old.
So it's just the same thing that's always been, like, you know, it's funny because he, like,
that one's particularly funny because he said 24 to 29.
Why not, like, 18 to 25?
You know, it just told me it's clearly he falls in that age range, which is why he's saying that.
It's just like, yeah, it just made up.
And I think everyone just, like, nervous and worried.
I think it's good to just be honest about it because it's true.
Like, I mean, I'm nervous and worried as well.
Just because it's the change is faster than before.
And this is talking with like the greats of the industry who have lived through
the Ken Beck, Martin Fowler, Grady Booch.
And they're all saying that they have seen change like this.
Like, for example, when they went from mainframes to microprocessors.
But it was throughout more like a decade, not a matter of a year or so.
or maybe we're now at this point two or three years.
And they're all saying the same thing that the change is faster.
But, but yeah, like, as you say, like, it's very easy to rewrite history and say, like,
it was always obvious, but it's just hard to tell.
No, it's not, yeah, it's so unobvious.
Everything that ends up happening is always counterintuitive.
There's always, there's always people that, like, see it correctly and, like, line themselves
up properly for it.
But none of the obvious things ever happen.
It's like, it just, the end say we're going to end up at, it's going to be so weird from our
point of view now.
It's going to make total sense in hindsight.
So, yeah, predicting is a lot harder than people think it is.
So far with open code, especially with open code, you and the team have reached really good success.
What are the things that comes to building products and your engineering principles that have not really changed from the early theirs or the ones that you've learned and you've stuck to them and it helped make open code successful as well?
Yeah, I think for us on the project side, like I said, it's very simple.
you probably only have one good idea in your whole product.
Get the user to experience that as fast as possible.
It sounds so easy.
But if you go try every single product out there,
you will see a million accidental steps they introduced
from the user adhering by your product to seeing the value in it.
Very hard to keep that minimal, very hard to not let that creep back in.
It's like a constant thing.
So we do this, I do this thing where I have a command that like runs up a new
daughter container and runs open code,
which lets me experience of the first time experience.
I do that once every two weeks.
And I'm always catching stuff that we've messed up in that process by accident.
The job of product isn't to just receive a problem and ship the immediate solution.
It's to absorb all the problems and understand that there's one solution you can ship
to fix 50 different problems, right?
That is hard.
That is difficult.
That takes experience.
That takes thinking.
That takes talking to users.
That takes talking to your team.
That takes understanding to your code base.
A product is a way to abstract.
a solution for like many different issues right that's always going to be hard and that is a skill
that you can infinitely get get better at um i used to be horrible at it i'm okay at it now i probably
have another few decades of getting better at it yeah that that's what i'm focused on like
how to build stuff that solve problems well and AI has not helped me even a little bit what has
helped you there what has helped you to get this like product sense better or like you know
figuring out because it sounds like we talked a lot about thinking about reflecting
about having one elegant solution that can solve multiple, seeming your unrelated problems?
I mean, it's just, it's years of experience in situations of the right feedback loop, right?
When I mess something up, I get a literal human yelling at me and like saying horrible things
about me. When I design something poorly, I have to slog through the code base and like
do something that should have been easy that's a lot harder now. Yeah, so for us, it's all about
making sure everyone on the team has those feedback loops. No one is insulated. When you're in that
type of environment, even for just like a couple months, you just get so much so much better.
And I think a lot of organizations, it's hard to keep that type of situation as your company grows.
I think it's probably impossible. So if you've mostly worked at larger companies, this is probably
the thing that you've never fully experienced. I've been at companies where the product team
would want to like ship something faster. So they'll cut stuff to get it out sooner. The pain is not
felt by them, it's felt by their support team. The support team deals with the angry people,
and the support team fixes things manually for them. And the engineering and private team are like,
you know, hey, we did it. We shipped a feature and they don't realize that there's like a side
effect that they created. So yeah, like really being in that feedback loop just makes you, makes you
better. And I think caring a lot about building something for a lot of people. I think this is another
thing that you don't have to try to build stuff from millions of people. I'm not saying you have to do
that. But it is very interesting to have that perspective of and make something that works for
the whole market, it's so hard to do that. There's so many different environments, people,
workflows, preferences, constraints. If you adopt that mindset, the stuff you work on makes no
sense to anyone else observing things. They think that everything you're doing is wrong. I think
you're focusing on the wrong stuff. But if you really are going for the whole market, like,
you just start to think very differently. Can you let us in a little bit of how the open code team
today works? Like, tell us how many people there are, what kind of set up. And maybe you can walk a
recent feature that you or someone else launched or like was it even team and how how you also get
this like immediate feedback yeah so we're so freaking this out because we've grown a lot recently like
we're at 20 something people now and it's happened in the last like awesome thank you yeah it's
happened in the last like couple months like three months or so so we're still very much in the phase
of getting everyone settled we're in that horrible feeling phase where we have more people than ever
but we're like going slower than ever because like everyone is still kind of getting getting situated
and getting up the speed et cetera so we're trying to make it to that phase
as fast as possible. I think for us, we're an open source company, which means all of our code
is already public. So we kind of build in public as much as we can. We've been trying to figure out
a good terminology for this, but if we have like a thing we're trying to ship or make happen,
there's a phase where you're trying to like push it up the hill. And that's like a painful
phase because you're going from zero, it's making it exist. And there's a point where it's definitely
not done. There's definitely a lot of work to do. But at that point, most of the stuff is figured out
as most just like fleshing out the details.
So our team really tries to focus on getting it out of that first phase
into the second phase as fast as possible.
We kind of put a milestone of like,
this is a demo that we want to show people.
Let's try to get it to there as fast as possible.
And from there, again, because we're so public,
because our user is so vocal,
people tell us exactly what to do after then.
Like once their foundation is there
and people kind of roughly get what a feature is,
they'll tell us what else selling they need.
They'll tell us like where else we need to make it work.
They'll tell us what sucks about it.
And it gets very easy from there on.
And whoever worked on it, they do that full cycle.
There's no one that's like receiving the feedback and summarizing it for the engineer.
They're receiving the feedback.
They're getting the GitHub issues.
They're getting the replies on Twitter.
And they're figuring out the roadmap and the cycle for it.
So that first phase is the hardest.
But from there, again, the feedback loop kicks in.
Things get better over time.
One of the things that we try to try to do is like the founders.
We try to make sure that the whole team has perspective on
everything that we care about, the market, our competitors, what we're trying to do, our position
in it. If they properly understand that, they naturally land on their own priorities. For us,
motivation is a huge thing. I said earlier. We know it's a long game. If it's a long game,
your strategy should be, how can I stay in it the longest? The only way to do that is to work
on stuff that is exciting every single day. We kind of let the whole team grab stuff that
they're excited about. What's the biggest problem they want that that they think is the worst thing that's
hurting us? They're just going to grab that and work on it.
They roughly end up having good judgment if we're doing a good job providing them like the right context about what's going on.
So typically people will just grab stuff.
There's been times where when our team really want to work on something and I like vocally disagree with it.
I was like, I don't think we should work on that.
And they've been right.
Like I think like a few weeks later, I realize, oh, they were actually correct about it and I was wrong.
So it's really exciting to see our team be able to start to do that kind of thing.
One thing that comes up, we didn't mention a single time in this conversation, but elsewhere it often comes up.
is taste. There's this notion or idea that one thing that AI is just very bad at and probably
will stay bad at is having taste and how as engineers taste, taste, product sense. They're,
I think, synonyms to some extent. In fact, I've even heard that Microsoft and certainly has
a training for taste. It's a good better at taste, which I'd love to see that one. What is your
take on on taste as a whole, as a concept? So I think fundamentally it's a good idea.
there's something that makes sense there.
I think with good ideas, they're very simple.
And so everyone kind of repeats the idea.
But good ideas are simple, very, very difficult to actually live.
So it's very difficult to actually have good taste.
And it's like a lifelong, yeah, one, it can be learned.
It's like a lifelong thing that you're going to work on forever.
I think the root issue is a lot of people will say that the whole taste thing,
but do you actually believe it?
Like, do you actually believe that your product has to be good?
There's so much like, there's so much out there.
now that's like the code doesn't have to be good. The product doesn't have to be good. Like nothing
has to be good. It's just this other thing. You can still be successful. And they point to companies that
have crappy products that have crappy engineering, but still make a lot of money, right? So there's like a
thing in the air about maybe all that stuff doesn't matter. The moment that gets in your head,
like nothing like you're not going to have, you're not, you're just not going to ship good products.
It's fundamental. Fundamentally you don't believe in it. And I feel the number of people that like vocally
believe that craft is really important. Making an irrationally good product is still something that
you're going to do. Because most great products, they could probably be like 50% less good and have no
material impact on it. But it shows up in other ways that are really hard to directly draw the line.
It's if you start to be lazy in one place, you start to become lazy everywhere. It's like an
infection. So my thing with the whole taste thing is like, yeah, you're saying taste matters, but do you
really believe it? It's like a very, very high bar to be someone that says,
I really care about good products.
For me personally, I care a lot about it.
And I am nowhere near achieving my own bar.
Like I'm like so missing my own bar and what I think, what I believe.
When you hear me talk about quality and stuff and use my products, you're like,
oh, it doesn't, he's like, kind of ahead of what he's saying.
That's because like I'm like still trying to get better at it, you know?
So I look at products that are really good.
I'm still very inspired by them.
I still have like heroes that I think just kind of do a great job at certain things.
And I know I have a long way to go to get them.
there. Can we talk about these heroes, the products and the engineering teams that you look up to and why?
Yeah, yeah. So I think in MySpace and DevTools, I think Mitchell Hashimoto is like an obvious one.
Our company is very similar to or trying to be similar to theirs in that all their products are open source.
They became mass adopted. Things like Terraform became the default. You know, it's very hard to do something like that.
And it's well executed across the board. In the microscopic and the macro, the business model,
his work with Ghosties
been really great, the architecture of it,
cares about every little detail,
and it shows up when you use
the product. And he's
very good at product. And I think he has
he made a clip that's very similar thing we were just talking about, where
every feature you ship, it's not about the features, about how it interacts
with every existing feature. And his work, as a product person, is to
make sense of all that. And he's very good
of doing that. I think he's probably one of the best for being
also a good programmer. So I think he's someone that I
admire a lot, and I hope that we can
kind of be as good as that one day.
I sensed, as we're talking about taste,
we started to talk a lot about quality.
Could it be that quality is one of the last few things
that these days a startup,
a small company going up against Goliaths,
has left to hang on to.
Yeah, yeah.
And I think the flip side of it is,
it's easier than ever to rot your product.
I think it's with these agents and everything.
So you see it with big companies,
big companies products are rotting fashion ever.
Even startup's products,
I was saying this other day,
like, now,
products is a year old, it's probably already kind of going to shit. And I think it's because of
the goal of these agent workflows. So yeah, I so believe quality is a huge differentiator.
It's not just something you can decide to do. I think it needs to show up every single aspect of
your company from like you have to do things that are irrational. I think that's kind of what quality
comes from. Like you do a bunch of things and like 50% of those things you didn't have to do.
And I think very few people are willing to operate that way. There's like a cold logic these days to
programming into software and to products, it's like, I'm like a business guy and I care about
business, which means I only do things that are hyper, hyper rational. And a lot of people
think that's what being good at business looks like. And of course, that can work. But
yeah, I think quality is like a huge differentiator. I mean, even if you look at our story,
when we first launched open code, Claude code was the only other real thing we were going up
against. A big initial differentiator was that our terminal experience just felt better. We spent a lot
more time on like we built our own terminal framework like building your own framework is like the
first thing they tell you not to do right it's like the thing that no engineering team should do it's
irrational yeah exactly it's irrational but like it did we looked at it and we're like we couldn't achieve
the experience we wanted like we were people that use terminal tools we look at tools like neovim
and enjoy them and know what is possible like i mean again going back to mitchell like he worked on
making terminal stuff as good as possible like he knows what's possible with it once we know what's
possible, how are we going to ship something that's like not pushing those capabilities to the max,
right? And very initially, a lot of the reason people were using us, when people were talking about
us compared to cloud code was how jenky cloud code was or how much it flickered or how much it did
whatever. And it didn't matter. Like, they're still a hugely successful product, but we
irrationally focused on some of the quality stuff that helped us go up against a much larger product
company with much more funding. What's your work setup? A work setup. I've now switched to a framework
top.
Oh, nice.
The one where you can replace?
Yeah, yeah, the little like tiles in the front and stuff.
Yeah, so that running Arch Linux on a non- Ultra, I guess it's a 5K display.
It's one 5K display.
I use a tiling window manager, which I've been using for 10 years.
And that's roughly it.
Yeah.
Got my SM7B as well, the mic.
And I use my iPhone as my camera.
That's about it.
Yeah.
And then you use mostly terminals, of course.
Open go terminal, right?
Yeah, so I use a, oh, I guess my sidebase actually a little bit more complicated.
So that is my physical machine, but I do all my work on a remote machine.
So I assist it to a much bigger, beefier computer.
That has many T-Mux sessions going, one for each project, Neovim as my editor, and then open-code.
It's usually split half, so like NeoVim on the left, open code in the right.
I'm going between the two.
So, yeah, T-Mux, arch, Neovan, open-code.
I wanted to ask you how you think engineering leadership has changed with AI because you've been an engineer, founding engineer, then you've let teams before you're technically leading a team now as well.
And also like when you talk with other, you know, you're not talking with a lot more like CTOs and like-minded folks.
What's different is, are people being more hands-on?
Is that even a good thing?
Yeah, I think I'll tell you something that I've heard.
And I think, and on one hand,
hand, this makes sense on another hand,
I'm not too sure about it.
I think these teams are now looking themselves as,
okay, what's the role of an engineer now?
If you're not going to write the code,
what do you do?
Your role maybe is to figure out how to make it easy to ship code
that is,
to safely ship code, right?
Set up guard rails so that someone promises an agent to do something,
it's not introducing a bug.
Like, make sure your testing story is good.
Make sure there's, like,
proper conventions and pattern engineer code base
that agents can follow.
so they're not like adding something that's really crazy.
So your role ends up being more like,
how do I set the right guard rails to make it so someone that is using an agent
can kind of blindly ship something that works well?
Whether it's another engineer,
it could be your marketing team that is trying to ship a change to your website.
How do you make it safer to make changes?
And this is like the novel way that everyone is kind of looking at engineering teams.
The thing that I find interesting is that that's not novel.
This has been the thing we've always been trying to do forever.
How do we get a junior engineer to ship,
code safely without breaking stuff, right? How do we make patterns in the code base? How do we make
tests? It's all the old stuff that we've always wanted to do. Like, I would love to be able to hire
100 junior engineers and have them be effective. But, you know, there's like limits to that.
We were, we never really figured that out. And like some companies did to some degree. Some companies
kind of didn't. So it's kind of the same problem as always, which is how do I make a less experienced
person punch above their weight, right? And now, you know, it's using coding agents that's maybe like,
how do a designer ship stuff, stuff like that.
So in a lot of ways, I think it's the same problem as always,
which is how do you make co-bases that are easy to work in,
scalable, flexed to new requirements.
I think a lot of like the old patterns from here coming back.
We've always been like a big domain driven design company.
We did it in a very light way.
We're now doing it in a much heavier way
because we find that these like kind of borey enterprisey patterns
end up being pretty useful because you have a bunch of idiots on your team now.
the coding agents are a bunch of idiots and they are going to work 24-7 and they're going to like ship a lot of stuff so you need way more garbrews than it used to and I think what's nice is some of these old patterns we hated because they were very verbose they produced reliable code that was like modular and safe but they were very verbose and knowing to type out but you're not typing it out anymore so now you can kind of get the benefits of these patterns without the downsides so we're starting to explore that more and kind of enjoy that yeah i wonder if like design patterns might make their way back remember in the 2000s or like mid-2000s they were a huge
huge thing of like, again, for structure, it helped junior engineers not mess things up.
Yeah.
And it was very verbose.
Eventually, people just, like, hated them and got rid of them.
Yeah.
And if you're a good programmer, you didn't have to do those patterns.
You can kind of like, you didn't need the training wheels in a lot of ways.
But now, like, you know, the agents don't have training wheels.
You got to put them back on.
Yeah.
And what advice would you have to more experience engineers who, again, had been pretty good
engineers until now.
And they're like, all right, I just want to like, stay with it.
keep my game high and you know have the skills and and build up the experience so like I
could work at a place like open code I have a tough time giving advice to people because I feel like
I work in such a weird place like my company one is a startup so it's a natally uh automatically a little
bit weird to like we do open source which is like there's like five companies that are open source
companies really so everything we do in the type of people we try to bring in I don't know if
it generally applies to everyone I think the most I could say is and I've always believed
is even pre-AI is
software engineering
is a skill
that can be applied
to an industry and you can just be a
great software engineer and that's totally fine
and probably a good career doing that
but if you also become
an expert in a specific industry
that's like a deadly combo
if you are like
just pick any industry that's say
farming. You understand that farming industry really well
and you're also a decent software engineer
you're probably the top 10 people in the world for that combination that the whole industry will
want to hire.
So like, I guess what's great about being a software engineer is you don't have to pick an
industry.
Like everyone else has to be like, I'm going to be in medicine for the rest of my life.
You can choose to do medicine for 10 years of your life and like do tech in the medical
field and become an expert in that and realize you don't like that industry and pick a
completely different industry and just go become an expert in that.
And it's so exciting.
I think software engineers are curious people.
and it's just so fun to be able to deeply learn an industry in that way.
And eventually you'll find something that clicks they can stick with.
And being a good engineer and also being an industry expert,
it's very easy to become a unicorn of a person that way.
And when we started, we were talking about how software is everywhere,
software engineers are everywhere.
And I guess every industry will lack software engineers
who are really curious about their industry.
Yeah.
It doesn't take long, right?
You spend like a year in any industry.
Like, you now know it more than 99% of people.
So I think, but I think the trick here is it's very easy to turn your brain off to that side of things and just focus on, I'm given a task to, like, add something to the UI and like not.
Your opportunity of the sophomore engineer is you get to be in any company in the world and learn about anything.
And you should kind of like take advantage of that.
And I think it, there's a rational career reason to do that as well.
As a closing, do you have any book recommendations, things that you've enjoyed or change how you think?
Yeah, it's funny because I do not read books at all.
Or reading recommendations.
So, I mean, can I expand on that?
My wife is an avid reader, and I get to benefit from that because she reads all the books,
and then she tells me all the good ideas in it, and I restate them, like, they're on my own idea.
Like, I read the book.
I did have, like, a reading phase earlier on.
I think kind of helped me understand, like, a lot of how the world works.
I'm a big fan.
These are, like, boring recommendations, but I'm a big fan of a bunch of Teleb's work, I think.
He's basically got, like, a couple good ideas, and it's maybe hard to read a whole book,
because the book is just one good idea inflated into a book.
But these are just fundamental true things about the universe that you can just see play out everywhere.
So a huge fan of stuff like skin in the game.
Obviously Black Swan is super popular.
A lot of this stuff that I found to be very influential on myself is the idea of emergent properties.
So almost everything great in the world came not through like top down design.
It came through a bunch of smaller entities operating together randomly and then something kind of great.
comes out of that and that you see that whether it's in like robust software or like what makes
a city great, what makes a neighborhood walkable, what makes like an organism like capable of
surviving disease. So this whole like bottom up versus hop down in terms of designing systems.
There's a few books that talk about that. Taleb is one of them. And I feel like I see that everywhere.
Like once you kind of understand his ideas, you realize like they kind of underpin the whole world.
Docs, thanks so much for this conversation. This was fun. Yeah, it was good. Thanks for having me.
I hope you enjoyed this conversation with Dax as much as I did.
Dax is in a rare position.
He's building one of the fastest growing AI coding tools out there,
going from 650,000 to nearly 8 million active users in just a few months.
And yet, he's the one telling us to slow down.
One thing I really liked is what Dax called the muted prickle.
Pre-Ai, when you wrote a hack, you knew you were writing a hack.
You felt a little bad about it.
You'd remember it the next time, and that feeling kept your judgment sharp.
With AI agents, that feeling is gone.
Now someone else is dealing with the consequences.
The landmines are still there, they just won't blow up on you today,
and we don't even pay attention to a lot of these landmines being placed by AI agents.
Finally, I really appreciated Dax's memo to his team.
He basically admitted we're shipping features we shouldn't, we're absorbing too many hacks,
and the worst part is we're not even moving faster.
We just feel like we are.
That's a pretty brave thing for a founder of a hot AI native startup to say out loud,
and I think it's a reality check that a lot of engineering teams need right now.
If you enjoyed the episode, be sure to subscribe.
be sure to subscribe on your favorite podcast platform or on YouTube.
And if you'd like to support the show,
leaving a rating or a review really helps.
Thanks for listening and see you in the next episode.
