# OpenCode Strategy: AI Inference Economics & Product Discipline

**Podcast:** The Pragmatic Engineer Podcast
**Published:** 2026-05-27

## Transcript

Doc Serrata is a co-founder of OpenCode, the most popular open source coding harness.
He's also a very down-to-it 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 OpenCode to closer to 10 million active users in less than a year.
The memo Dak 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 or on AI, and instead talk about where it helps or hinders productive engineering teams, this episode is for you.
This episode is presented by Antisysys.
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, TurboBuffer.
You've probably heard someone say, rag is dead these days, but it's not.
It just doesn't mean what it meant in 2023.
Back then, retrieval was pretty straightforward.
The human asks 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 OpenCode or any serious agent product in 2026.
A human sends one prompt to an orchestrator agent.
That agent fans out to subagents.
each sub-agent is hitting separate systems.
A vector index, a full-text index, grabbing the file system, running CLI commands and SQL against OLTP and OLAP stores, reading and writing a memory system, re-ranking results, looping and calling more tools.
One human prompt 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 the system.
This is exactly what TurboPuffer is built for.
It's a ridiculously scalable, fast, and cheap search engine.
It's built on top of object storage for reliability and scale, with smart caching on NVMe 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, OpenCode, 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 to build are ones that you can use yourself.
And obviously we built OpenCode so that our team can use it and it's like we are the customers of the product uh so we use it aggressively as much as anyone else can and of course it is 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 of companies, they kind of think, oh, look, we've got these tools.
Coding used to be the hard part, right?
Like like objectively, it took us so much time.
It still takes, you know, to get into the zone if you're going back to coding by hand.
So if that's faster, because that's where we used to spend most of our time, 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 product market fit for like a decade.
And I imagine that things look very different across these three.
For us.
Pre-project 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.
Now that adds it to a good product.
It actually adds it to a horrible product.
Like a Frankenstein.
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 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 uh in a lot of ways my struggle has now been how do i like slow everyone down um and like understanding that yes our process can look very different but should it look very different like we know we've done uh 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 want 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 uh i grew up kind of cliche story i grew up programming as a kid uh my dad was a software engineer so a little bit easier for me to get into than for other people then just started working out of high school uh 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 um that eventually got aqua hired as a small aqua hire uh 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 to you working on Minecraft, Minecraft servers?
Yeah, yeah.
Back in the beginning, can you take us back a little bit?
Yeah, so Minecraft obviously everyone knows what Minecraft is.
And again, this is another cliche story.
You talk to a bunch of people in tech, they have a similar backstory.
There was a modding framework.
for Minecraft that came out.
I ended up working on the framework itself.
I ended up making a bunch of mods with it.
I found that I liked creating interesting sandboxes.
I played the game a little bit, but I didn't play the game that much.
I had a server that 100 people would play on, and I would just use these mods to create interesting situations to try to understand how people would behave under certain scenarios.
I found that fascinating.
But yeah, that required a lot of programming Java stuff.
What's interesting is...
that community obviously i was like very new to programming uh it was all done over irc or the 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 but they funneled it into the minecraft stuff and i got to talk to them and learn from them so I feel like in like the couple months that I was doing that, I learned a lot.
And then you went to startups, you founded a startup.
And then after being the founder at Iron Bay, I saw, looking back at your history, you became a head of engineering at Right 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 and the healthcare space.
It was just me and the co-founder originally.
That company grew to like 20 people or so.
That was my second swing at 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 head of product.
I was head 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 like 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 that 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.
So prior to that, you know, I don't know if I really should have been running a startup.
And when you say like, sub developing, is it just kind of like getting enough experience to like understand how like a business actually works or like professional relationship?
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 of what was going on.
Just basic, like how to be a person and live in the world.
I think at least 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 like, oh gosh, like what was I 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, I think so.
But again, that's when my wife met me.
So something was right there.
Did you, in your first few years, so you founded a startup, then you kept going up like very early stage 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, for me, this era was like the early 2010s or mid 2010s.
The big tech companies were very prestigious at that point.
Everyone you met was trying to get a job at either one of the big tech companies or one of the hot unicorn startups at the time.
That was the thing to try to do.
If you weren't doing that, you basically were going to 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 do that.
I knew what it takes to...
There's a set of things you have to do to be successful there.
I just couldn't even do that.
So, yeah, I could say like, oh, yeah, I chose not to do it.
But really, I just don't think I was it.
What do you think the things were back then?
I mean, you know, there was a very structured interview process for these things.
You know, you have to do certain 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 like 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 struggled to do anything outside of that.
And then how did you transition into open source?
Serverless Stack was a big project of yours.
It was a toolkit for building full stack AWS applications, I think.
Yeah, that was kind of where our initial focus was.
Yeah, in terms of how it got into open source.
So after Riot 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 ever worked at.
And I eventually got put in a director role.
First time being like a full time manager with no other like, like no, 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.
I had like three or four hours of manager meetings every day, but then outside of that, I had time to explore open source, things like that.
And I started to build my own kind of crappy stuff, and then I came across SST, which had just launched.
It was maybe a couple months old.
That was Frank and Jay.
They both had created this thing originally, started contributing to it.
They were raising a Siri, like a...
They were raising a round.
They were kind of getting out of YC, raising a round.
I invested 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 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 the 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 deploying Next.js 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.js users.
Very tedious, you know, Next.js has a very complex framework, trying to recreate the right infrastructure for all that in AWS.
There's a lot of work.
Digging into like JavaScript bundling, like Next.js internals, like not very fun, not very exciting work.
So we made Frank do all of it.
So he basically slogged through that and figured out how to...
uh get it all working aws our goal from the beginning was this project shouldn't exist it's just a weird gap because uh the next js team is focused more on versell and it wasn't like a malicious thing or anything it's just where the attention would naturally go uh so we're like let's fill this gap the end ideal stage should be that you know versell eventually just manages all this and there's no need for this so we built that uh it annoyed versell a bunch But yeah, it was very useful for the people that, you know, were trying to deploy on other places.
Eventually, we kind of rallied some other providers that had problems with Next.js 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 Open Next.
And eventually the Next.js team had time to kind of like, okay, let's make an official adapters API.
And in the past year or two, it became a much more like collaborative thing.
And I think the need for Open Next 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 profitability.
So with SST, we had a monetization path for that.
Basically, for like three or four months, we were like running out of money.
But then 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 time.
weirdly though we were all like really calm about it it just felt like i know it felt like something would would work out and it did uh so that gave us time to kind of take a step back and think about okay 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 dev tools 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 something that is 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 uh and we took a few swings at a few ideas and like a lot of them we didn't even fully launch uh 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 the first ai coding tool that stuck for us it like directly solved some of the the workflow annoyances that we had um this is great obviously uh 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 still an opportunity to do something given our experience in open source.
We kind of saw, I think, what I was saying earlier, 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.
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 that was like, we are the open source option.
And that obviously is a super valuable territory.
Every single dev tool we use, whether it'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 and billions and billions of dollars invested.
Like, they're not just going to let Anthropoc win.
There's going to be push from OpenAI.
There's going to be push from the open source side.
Given that we saw that chaos, we saw that it's 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...
the existing sort of Animaloo Labs working on this or just a small...
Yeah, no, so we were just three people at a time.
So it was just three co-founders.
Yeah, and then we hired one of my friends who was also interested in working on it 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 had always want to work with to join us as well.
And 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 were 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 actives.
So, like, went from 650 to 2.5.
Last month, we're at 6.5.
I think this month, we're still 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 DevTools for a while, we knew that in January, there's always a bump.
Because 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 first week back.
For this, we saw growth into the holidays, which we've 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 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 bigger, more successful company.
But that week that kind of happened by accident and that like spiked our numbers like crazy.
So I guess in hindsight, because what happened is Anthropic silently banned being able to use cloud code 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 OpenCode to do this and then this led to this like outrage.
The thing with them is 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 is totally fine.
But randomly dropping a block at like 9pm at night, that just sets you up for like people to hate you.
Doing like a phased communicated rollout over a month.
I think they would have been 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, really, really annoyed.
This reminds me of what we were talking about, how AI allows you to do things really quickly and fast.
Do you think in this case, Entropic 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 implications.
I think it'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 dealing with this ourselves.
Like we've never worked at this scale before.
We put out a bug the other day where almost everyone has their terminal dark mode and we open open code, it opened up in light mode.
So we like flash banged a bunch of people.
And I'm like, in the past, I would have been like 100 people we hit.
But like I did this like a million people this week.
So yeah, but but inside this block, obviously, we know it worked out well 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 Entropic just blocked, you know, like, close to Christians.
Before you knew that this press would happen, like, was it seems 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 CloudMax subscription.
At that point, we were at 650,000 monthly actives.
There's no way 650,000 of them have called Mac subscriptions.
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 degree for...
GitHub Copilot to be officially blessed by OpenCode.
We got a bunch of different companies in the works.
We haven't announced any of them yet.
And the big one we hadn't gotten or we haven't even approached was OpenAI.
So when this happened that night, well, it was a Thursday night.
I don't remember exactly when.
I got like 100 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 OpenAI 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.
The next morning they confirmed like, yeah, let's do it.
So in the morning, everybody was like, oh, Anthropik 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 at myself.
I'm like, okay, just wait till the end of the day.
And then we figured out the integration, we implemented it.
And then in the day, we announced like OpenAI is officially supported in open code.
We knew what was going to happen and like going all the way 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 galvanize 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, you know, support open code, support like access to these models in different places because they were all competing with Anthropic.
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 DevTools or at least 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.
You know, 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 with 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 thing.
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 OpenAI becomes a bad guy that we have to like kind of galvanize everyone around.
So it's, 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 like the way we approach things, but these are billion dollar, you know, huge companies, you know, like us being able 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 it's, you know, 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 off 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 DevTools 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.
B2C as in business, a consumer.
Yeah, exactly.
So you treat them, the most extreme mindset to have is you treat them as 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 an intense top-down enterprise process, and that works, and that's great.
but the dev tool products that are like massively adopted to the point where they're basically a standard they're all bottom up like their 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 uh and better than some of the other options and to do that we had to build like a ground up uh 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 they made it work for what they need.
But we invested on that up front because from the moment you use it, it feels like something different.
It might not be for you.
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 the difference.
And once we won enough share, then we went back and like tried to make our harness like good and smart and optimized and all those things.
But it was inverted from what everybody else was doing.
Everybody else was being like, you have to build a smart harness and that's how you win.
We did.
We have like a mid-level harness, but we are the most used.
So 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.
To get into the inverse strategies, the technical level, like you launched with a framework Altari, right?
Oh, that was a referred desktop app.
So the desktop, I would say, I wouldn't even say that was mostly a mistake on our part.
So I love terminal stuff.
I do all my work on the terminal.
So our numbers are, 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 things go.
Unfortunately, we were right.
Like that is like where things are going.
But we didn't like treat that project too.
Like we should treat 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 ultimately it was a mistake and we're moving back to Electron now.
But open code.
is growing amazingly fast.
Interesting enough, there's this growth hack that some partners are doing.
I would say growth hack where in the PR on GitHub, they actually put which partners did it.
CloudCode is doing it.
GitHub Copilot is doing it.
Some others are not doing it.
And in 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 CloudCode clone.
If CloudCode did it, we did it.
So we had that like with the commit, it would say, you know, committed.
with open code, whatever it is in GitHub.
And then we got a bunch of people being like, hey, can I disable, can I have an option to disable this?
And I thought about it and I was like, this is so lame.
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 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 and 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 OpenCode?
So we have two lines of business, basically.
So initially, when we first launched OpenCode, 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 OpenAI account.
At that time, When you sign up for Anthropoc, you can 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 OpenCodeZen 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, we announced that 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 OpenCode and you have a thousand engineers, you can't just tell them all to go download OpenCode and add an OpenAI API key.
You need some kind of control plane to 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 enterprise deployed.
So if you're a company that's using OpenCode 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 LLM and they're like, what are we doing?
Are we actually getting anything anymore done?
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.
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 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, OpenAI, Cursor, Perplexity, they already trust WorkOS to solve these problems.
check it out at workos.com.
I'd also like to talk about our 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 the team at OpenCode did that one time.
Antithesis 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 Antithesis, specification and thorough verification becomes a seamless workflow, giving you clarity so you can deliver quality.
Check out antithesis.com slash pragmatic to learn more.
And with this, let's get back to DAX and open code.
We had a recent tweet about how...
inference is actually really, really profitable.
You were quoting someone who was saying these AI model providers might be having financial difficulties.
Can you explain to those of us software engineers who we don't do inference, I mean, we use these models and we just assume that this must be our business.
How can it be profitable?
Why is it profitable?
What are you seeing?
Yeah, so I think 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 as we used to all use Sana as our default because Opus was too expensive.
Then they made Opus cheaper.
so that we started to use Opus as our 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, and OpenAI, 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 that cloud is a terrible business and it's like red blood everywhere.
And then he started to do it and he said like, actually, it's a really freaking profitable business to run a cloud.
But it's kind of a welcome secret because why would Amazon or any other...
provide or 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...
that's something in public about gpus about you 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 gpus so everything from like producing the gpu to supporting 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 still like kind of a linear process.
So as those lines intersect, there's going to be a tightening.
So for us, like there's, we have GPUs that we need to reserve.
We have to pay a lot upfront.
Everyone is now hoarding because everyone's kind of expecting 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 startup 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 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 bottlenecked 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 the software engineering industry is.
Every company in the world employs software engineers to some degree, right?
The majority of these environments aren't the most motivating, exciting environments.
Most people there are trying to do their job, go home to their kids, 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.
The 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 a couple people that are irrationally motivated because they love the work they do, etc., 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, push everyone to try harder.
They're all now overwhelmed by like sloppy hours.
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 tasks done.
And they're drowning in 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 kind of motivation, compensation, thinking about work.
Now that, you know, like I was talking with Steve Yeggia 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 just being paid by the same paycheck, it doesn't necessarily make as much sense to do so.
So I'm wondering, 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 and 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, again, I can only speak for startups as 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 say 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.
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 the 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 offer engine even do in terms of, okay, of course they prompt AI to write code, but what about a product?
What about all these other things yeah yeah i mean yeah i think the bottlenecks are still there they're still figuring out what you should be doing you can spend a year just figuring out the right thing to do and then once you figure it out maybe it's fast to actually build it but yeah like i think the the joke i made was pre-ai i would spend 95 percent of my energy thinking about what to do and five percent of my energy doing it now i spend 96 percent of my time thinking about what to do and four percent 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 second hand from from open code which being being used at companies that the cfo is now going what do you mean each engineer costs extra two thousand dollars per month what are things you're hearing about in that area because this is happening yeah so with i think with every technology there's a phase of like flexing where there's so many uh companies now that want to be seen as like we're so future facing we're like our process is ahead of everyone else's 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 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 a thing 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 just going to say, go back 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...
the quality of the output 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 access to better tools because we're one of the best companies.
Like it would look silly if we said like, oh, you can only use, I don't know, GitHub Copilot.
We're not allowing you to get whatever open code or 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 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 Jira 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.
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 into OpenCode and that's all you get.
And your limit's your 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, etc.
But 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, all 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 worth shipping.
Number two, when iterating on features, sometimes the original 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 flesh that out a little bit more.
Like, here's the type of stuff that we want to ship.
Here's the type of stuff that 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, probably the biggest challenge.
Because for Evers 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 absorb the hack 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 and refactored 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 my and I can still justify it.
Right.
But after a while, like like there's feelings that especially when you're someone who cares about the reason you care is you have an experience you've been burned.
You know, you're 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 suppress the effort suppress the thinking they they don't even tell you i'm doing it doesn't even know what'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 per is exactly right that prickle that feeling that you get it's like muted now because someone else it's kind of like you've 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 this is 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 gets into like doing the actual work and realize, oh my gosh, these conditions are terrible.
Exactly.
versus the CEOs who are hands-on and they try to stay in touch and do, I don't know, simple stuff like, or CTOs doing coding in the environment.
Like I think Stripe CTO did this like once per week, every few months and then felt like, oh, this is painful.
Let me do that.
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 your code base, same thing 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 is 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 we're doing everything wrong.
Every single day, there is like a competitive new product that shows up.
Very overstimulating.
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 implement them across a code base very easy to clean up like dead old patterns and yeah you're right that there's no like direct uh 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 of these things and you know, you're basically saying, right, we're, 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.
I don't think we're going any slower than our competitors, but we're certainly not going any faster than them.
So if 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 it's not as crazy as you expect.
I guess what you're saying is, don't be complacent and accept, but just be critical and look at, is this working?
Should we slow down to speed up?
Should we focus on the invisible stuff?
Those kinds of things.
I really believe in just preparing a lot and like...
setting the foundations right.
And then when you spring, you spring with so much more force than you would if you just forced it earlier on.
One thing I like about you is you do call out BS.
It's a BS, especially when it's really trending on social media.
Again, on X, this 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, VC folks, all said, 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-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 honest.
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.
The future is going to be like that.
The future is going to be like that.
Everyone's 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 not like me has all the 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 trace 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 job will be replaced by AI.
And everyone has some rationalization 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.
It's always been like, you know, it's and 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 so it's clearly he falls in that age range, which is why he's saying that it's just like, yeah, it just it's just made up.
I think everyone's 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 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 yeah, like as you say, like...
It's very easy to rewrite history and say it was always obvious, but it's just hard to tell.
No, it's so unobvious.
Everything that ends up happening is always counterintuitive.
There's always people that see it correctly and line themselves up properly for it, but none of the obvious things ever happen.
The end state 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.
Predicting is a lot harder than people think it is.
So far with OpenCode, especially with OpenCode, 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 days or the ones that you've learned and you've stuck to them and it helped make OpenCode successful as well?
Yeah, I think for us on the product 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 hearing about your product to like seeing the value in it.
Very hard to keep that minimal, very hard to like not let that creep back in.
It's like a constant thing.
So we do this, I do this thing where like I have a command that like runs up a new Docker container and runs open code.
which lets me experience it the first time experience.
I do that like 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 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 better at.
I used to be horrible at it.
I'm okay at it now.
I probably have another few decades of getting better at it.
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 figuring out?
Because it sounds like we talked a lot about thinking.
about reflecting, about having one elegant solution that can solve multiple seeming you're unrelated problems.
I mean, it's just, it's years of experience in situations of 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 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 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 shift the 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 uh and then caring a lot about building something for a lot of people i think this is another thing that uh you don't have to try to build stuff for 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.
They think you're focusing on the wrong stuff.
But if you really are going for the whole market, you just start to think very differently.
Can you let us in a little bit of how the OpenCode team today works?
Tell us how many...
people there are, what kind of setup, and maybe we can walk a recent feature that you or someone else launched, or like, was it even a team?
And then how you also get this like immediate feedback.
Yeah, so we're still figuring this out because we've grown a lot recently.
Like we're at 20 something people now and it's happened in the last 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 situated and getting up to speed, etc.
So we're trying to make it through 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 a thing we're trying to ship or make happen, there's a phase where we're trying to push it up the hill, and that's a painful phase because you're going from zero to 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 to there as fast as possible.
And from there, again, because we're so public, because our users are so vocal, people tell us exactly what to do after that.
Like once their foundation is there and people roughly get what the feature is.
They'll tell us what else they need.
They'll tell us 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 receiving the feedback and summarizing it from 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 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'll kind of let the whole team grab stuff that they're excited about.
What's the biggest problem they want 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 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 realized, 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 it 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 certainly has a training for taste.
It's a good better taste, which I'd love to see that one.
What is your take 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, you're just not going to ship good products.
Fundamentally, you don't believe in it.
And I feel like the number of people that 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.
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 on 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 um i still have like heroes that i think uh just kind of do a great job at certain things uh and oh i have a long way to go to get there can we talk about the these heroes the the products and the engineering teams that you look up to and why Yeah, yeah.
So I think in my space, in DevTools, I think Mitchell Hashimoto is like an obvious one.
Our company is very similar or trying to be similar to theirs in that all their products were 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, in the macro, the business model.
You know, his work with Ghosty has been really great.
The architecture of it cares about every little detail and it shows up when you use a product.
So, and he's very good at product.
And I think he has a, he made a clip that's very similar to the thing we were just talking about where every feature you ship, it's not about the features, it's 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 at 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 Goliath 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 with big companies, big companies products are rotting faster than ever.
Even startups products.
I was saying this the other day, like now the product is a year old.
It's probably already kind of going to shit.
And I think it's because of the agent workflows.
So yeah, I still 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 mean, that's kind of what quality comes from.
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 into 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 OpenCode, CloudCode 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.
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.
We're 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 janky cloud code was or how much it flickered or how much it did, whatever.
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?
My work setup, I've now switched to a framework desktop.
Oh, nice.
The one where you can replace?
Yeah, the little 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 a small 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 sidebar is actually a little more complicated.
So that is my physical machine.
But I do all my work on a remote machine.
So I SSH to a much bigger, beefier computer that has...
many TMUX sessions going, one for each project, NeoVim as my editor, and then OpenCode.
It's usually split half, so like NeoVim on the left, OpenCode on the right.
I'm going between the two.
So yeah, TMUX, Arch, NeoVim, OpenCode.
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 your...
technically leading a team now as well.
And also like when you talk with other, 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 on one hand this makes sense and on the other hand I'm not too sure about it.
I think these teams are now looking at 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 um set up guardrails so that someone prompts an agent to do something it's not introducing a bug like make sure make sure your testing story is good uh make sure there's like proper conventions and patterns in your code base that agents can follow so they're not like adding something that's really crazy so your your role ends up being more like how do i set up the right guardrails to make it so someone that is using an agent can kind of blindly ship something that 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 we let a designer ship stuff stuff like that uh so in a lot of ways I think it's the same problem as always which is how do you make code 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 boring enterprise-y 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 ship a lot of stuff, so you need way more guardrails than you used to.
I think what's nice is some of these old patterns we hated because they were very verbose.
They produced reliable code that was modular and safe, but they were very verbose and annoying 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 design patterns might make their way back.
Remember in the 2000s or mid-2000s, they were a huge thing of, again, for structure, it helped.
junior engineers not mess things up.
Yeah.
And it was very verbose.
So 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.
So you got to put them back on.
Yeah.
And what advice would you have to more experienced 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.
you know, have the skills and build up the experience so like I could work at a place like OpenCode.
I have a tough time giving advice to people because I feel like I work in such a weird place.
Like my company, one, it's a startup, so it's innately automatically a little bit weird.
Two, like we do open source, which is like, there's like five companies that are open source companies really.
So everything we do and the type of people we try to bring in, I don't know if that generally applies to everyone.
I think the most I could say is, and I've always believed 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.
You can probably get 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.
Let's say farming.
You understand the 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, and that's 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 that'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 that you 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 in 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.
It doesn't take long, right?
You spend like a year in any industry, like you now know it more than like 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 as a software 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 changed how you think?
Yeah, it's funny because I do not read books at all.
Or reading recommendations.
So, I mean, I'll kind of 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've read the book.
I did have a reading phase earlier on, I think kind of helped me understand 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 Taleb's work.
I think he's basically got like a couple of 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 like 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 is 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 uh capable of surviving disease so this whole like bottom-up versus top-down uh 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 they kind of underpin the whole world.
Dax, 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 monthly 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 on your favorite podcast platform or on YouTube.
And if you'd like to support the show, leaving a rating or review really helps.
Thanks for listening and see you in the next episode.
