The Pragmatic Engineer - DHH’s new way of writing code
Episode Date: April 8, 2026Brought to You By:• Statsig — The unified platform for flags, analytics, experiments, and more.• Sonar – The makers of SonarQube, the industry standard for automated code review• WorkOS ...– Everything you need to make your app enterprise ready.—David Heinemeier Hansson (DHH) is the creator of Ruby on Rails and Omarchy, co-founder and CTO of 37signals (maker of Basecamp and HEY), and the author of several books including the best-seller, Remote: Office Not Required, co-written with Jason Fried.Six months ago, in an episode of the Lex Fridman podcast, David shared how he doesn’t use AI tools to write code: he types out all his code. But things have changed a lot since then. In this episode, we discuss his approach to building software, how it’s changed in the last six months, and why he now takes an agent-first approach, and how he barely writes any code by hand. We go into how he uses AI agents: which alter how he builds and explores ideas, but also how his standards of quality and craft remain the same.We also discuss how 37signals thinks about product development, from the role of designers to the importance of aesthetics and taste. David gets into how he sees beauty and functionality as closely linked, and why strong opinions about design lead to better software.Finally, we look into the uneven impact of AI which amplifies senior engineers while creating challenges for junior developers, and what this may mean for the role of the software engineer.—Timestamps(00:00) Intro(02:11) Omarchy and Ruby on Rails(08:25) 37signals overview(10:12) Launching HEY(18:38) Building HEY(22:47) Designers at 37signals(28:08) The craft of design(31:52) Why DHH now embraces AI workflows(39:45) The AI inflection point(44:23) DHH’s agent-first workflow(55:09) AI’s impact on junior developers(1:03:08) Developer experience with AI(1:16:43) What does AI mean for developers?(1:23:33) 37signals teams and hiring(1:38:20) Work-life balance with AI(1:41:41) Why DHH keeps building(1:45:24) Closing—The Pragmatic Engineer deepdives relevant for this episode:• Are AI agents actually slowing us down?• How Claude Code is built• The future of software engineering with AI: six predictions• The AI Engineering Stack• Mitchell Hashimoto’s new way of writing code• How Linux is built with Greg Kroah-Hartman—Production and marketing by https://penname.co/. For inquiries about sponsoring the podcast, email podcast@pragmaticengineer.com. Get full access to The Pragmatic Engineer at newsletter.pragmaticengineer.com/subscribe
Transcript
Discussion (0)
How has the created of Ruby on Rails change how he built software now with AI agents?
David Heinemhire Hansen often referred to his DHS, created Ruby on Rails, O'Machi, and is the co-founder of 37
signals.
He bashed capabilities of AI coding tools on Lex Treason's podcast six months ago.
Then, over the course of a few weeks over the winter break, he did a 180 turn and went
AI first on everything.
In today's conversation we cover how David and his team at 37 signals built software today
and how AI tools are making them more ambitious than ever before.
Why Ruby on Rails and Linux could become even more popular than they are today, as they are both well-suited working with AI agents.
Why taste and beautiful software are becoming more important and why both stand-out designers and engineers who care about the craft could become more in demand, and many more.
If you're interested in what one of the most experienced builders in the tech industry thinks about the practical utility of AI tools
and how these tools could impact software engineers who care about the craft, then this episode is for you.
This episode is presented by Statsig, the Unified Platform for Flags, Analytics Experiments, and more.
Check out the show notes to learn more about them and our other season sponsors Sonar and WorkOS.
David, it's awesome to have you here.
Thanks for having me.
Thanks for coming, I should actually say.
You're in Copenhagen, that's my city of choice at the moment.
It's a beautiful city.
It's got so much going for it.
And so what have you been up to?
I'm always building stuff.
I have been building stuff for a good damn three decades now on the internet.
I got started back in 94, I think it was, when I first got exposed to it.
and basically just never stopped.
And in the past six months,
I've been building a variety of things.
One of them is a new Linux distribution called Umachi.
I switched to Linux about a little over two years ago, I think now.
First spent some time on Ubuntu, having fun with that,
and then realizing I actually wanted to make my own system from scratch,
building it on top of Arch and Hyperland.
So put a lot of time into Amachi.
It got started as a summer project in between racing,
at the 24 hours of Lamont. There's a lot of downtime in that week. So I just started hacking on it
and it really took off very quickly thereafter. It's been a truly inspiring ride to see that even in
a market as crowded as Linux distributions, there's about 7,000 different distributions out there.
Some of them are long pedigrees and many of them even based on sort of kind of similar
vibes to some extent, there's room for something new. And it's a great reminder that,
that all the ideas in the world may be taken and it doesn't matter because your spin on it isn't.
And I put my spin on Linux, build Omachi, built the perfect computer system for me
and saw exactly the same thing I've ever seen.
Whenever I build something that really just hits the spot for me personally,
there are thousands of others just like me or close enough to what I like
that they find the same pleasure and joy in it, whether it was Ruby on Rails,
Kamal getting out of the cloud, any of these things, it's the same syndrome.
Yeah, with Rails, you were literally scratching your own itch, you were just building your own components and then open sourcing them. Is that how it started?
Basically, I picked up Ruby in the early 2000s and really put it to the test in 2003 when we started building Basecamp.
And I did not have a mandate of what to use to build it. Prior to that, I'd been working for a lot of client projects that would say, well, we're,
We're building this in PHP because we have someone who knows that.
So this is what you have to use.
And then we were building our own system.
We're building Basecamp.
And I was free to choose.
So I chose Ruby.
And at the time, Ruby didn't have any tooling or not very much when it came to web application.
So I had to build it all myself.
And that turned into Ruby on Rails, which is still going strong.
I'm still very heavily involved with that.
I think in some ways, Rubin Rails is having a little bit of a renaissance now.
that it is one of the most token efficient ways of building web apps.
It's ideally suited for the agent workflows we're dealing with now.
We'll see how long that lasts.
Maybe all the agents are going to be writing machine code or assembler in about five minutes.
So maybe that comes to an end.
But for the moment, token efficiency still matters.
And it still matters whether the agents produce code that humans are able to read and verify.
That may also come to an end at some point.
But as it is right now, it's been a fun ride to just see these kinds of projects where I'm scratching my own itch, resonate with a much larger community of people who then show up and want to help.
I mean, for Umachi, which has only been around for, what is that, just over six months now, we have, what, 400 contributors who've made code changes to the distribution.
And on top of that, we have tens of thousands of people who've installed it and used it as their daily driver.
So I always love that discovery of something new, novel, and inspiring like Ruby, or it sounds weird to talk about discovery of a operating system that's been around since, what, 91.
But for a lot of people, Linux now is that discovery because they have not been using it on their personal computer.
So they're seeing it for the first time.
And for me to help a new cohort of Linux users and hopefully even enthusiasts come to be because,
I'm flattening the curve a little bit.
I'm making it easier to get started.
I'm making the default installation just look amazing,
just that they don't feel like they have to invest 100 hours
into tweaking this system to get going.
It's really fun.
But what's also fun, of course,
is that both of these things, both Ruby and Rails and Umachi,
were not just hobby projects.
I love hobby product.
And I will always do those,
but I also like to apply them to business.
So at 37 Signals,
We built an entire business for 20 plus years on top of Ruby and Rails.
We're now running Linux on the majority of developer machines because we now have our own distro.
So it's Obachi.
Omachi is...
I mean, people can choose, right?
Can they?
Well, sort of kind of.
We started with an open choice.
And then at some point, it just doesn't make sense anymore.
In the same way, it would not make sense for someone to be at 37.
I want to write this thing in Django.
We're going to use Python and this other framework, even.
even if you have Ruby on Rails and you're doing that.
So we pivoted from an early invitation to play around.
That was what when I first switched to Linux,
I just said like, hey, if you want to check it out, check it out.
Then when things got a little more serious with Amachi,
I just said, let's go all in.
For everyone who's on the technical side of things,
not the iOS developers, of course,
but anyone who's working with the web,
who's working with Ruby, who's doing DevOps,
they should be on Linux because,
first of all, that's closer to what with the,
We've always deployed on Linux.
We've been a Linux shop on the server side since day one.
For developers and system operators, I actually think it is a material advantage to be closer to your production environment and just be more familiar with the tools.
Then on top of that, of course, we're building this distribution and we should have as many hands help out as possible.
And given the fact that I'm the CTO of this company, I get to set the technical direction and this is the direction we're going.
Can you just like do a like just a very short recap of, you know, like how you grew and right now, where are you? Like where is the business as a whole? And you know, you keep building, you keep launching new and exciting and just cool stuff. I think Fizzy was the latest one. Yes. So 37 singles was founded in 1999. It started as a web design firm. And then I joined up in 2001, two years after. And for a couple of years collaborated with Jason on these consulting projects. And then it was in two.
2003, we started work on Basecamp, released it in 2004.
Actually, either the day after the day before, Facebook went live, which is kind of a funny
coincidence that we were of that same time and cohort.
And within about a year, we realized this thing was taking off and we went full time
and switched from being a consultancy to being a software company.
Awesome.
And that's now 22 years ago, a little more than that.
And in that time, we've released a ton of products.
Basecamp was the first.
Remains the biggest and most important.
Which is also kind of funny because you sometimes perhaps have this delusion that as you learn more and as you get more experience, you'll get smarter and you'll have better ideas.
And like, no, there's tons of people for whom their first idea was the best idea.
And I have no shame in saying that Basecamp was the best idea.
objectively in terms of a business that we've ever had.
And I'm incredibly proud that we've been able to keep that going and growing and flourishing for over 20 years.
Very few software companies, let alone software products, can boast of that longevity and legacy.
But we've tried a ton of things over those years and had some other great successes.
We launched Hay.com, our email service, back in 2020, which was a crazy mission when you think about it.
Here is a sector completely dominated by a single player, Google, with Gmail.
That's a good product.
It hasn't really changed in 17 years, but it was really solid.
And lots of people are perfectly content with it.
They think.
They hold this duality in their head where at once they both hate email,
but somehow don't connect it to the fact that they're using email,
which I find curious.
But either way, we launched this that is not only a competitor to this very entrenched
product that has probably a greater grasp on market share in any major category than any other
product I can come to mind of. In the U.S., I think Gmail is something like 85% of all email
traffic, which sounds insane. Maybe it's 80%. It's incredibly high. It's basically Gmail and then
all the rest is in this tiny little part of the graph. So we thought that after using Gmail, I used it since
I don't know when I signed up a few weeks into it.
I got one of those invite codes.
That was a really clever launch.
And I used it ever since.
So that's literally 17 years or something of that of Gmail usage.
And over that time, I built up a lot of opinions about things that didn't work quite like I would prefer it to work.
And we put all those opinions into a new software product.
Spend about almost two years developing it, millions of dollars in accumulative R&D funds.
And launched it in the summer of 2020, which, by the way, time to launch a product.
2020 wasn't great for a whole host of different reasons.
We were kind of trying to slot in a,
can there just be a week where the whole world is not just insane?
Yeah.
We finally picked a week.
We went live and then we had the battle of our lives with Apple.
With Apple.
I remember that.
And ultimately, they didn't want to prove your app.
They didn't want to prove our app unless we paid the toll fee, the 30%.
And they were basically willing to say you can't be in the app store.
which for an email product like that is a death sentence.
Yes.
You have to be on not just mobile phones, but specifically the iPhone.
This is true today.
The majority of a paying customers are iPhone users because that's the largest, most affluent market in the U.S.
And the U.S. is the most affluent and software market in the world.
So for that business to work, we needed to be on the iPhone.
After a two-week epic struggle back and forth, thankfully,
time to perfection with
WWDC
where Apple preferably didn't want to
look like the Goliath squashing
a tiny developer
we ended up being allowed in
and Apple sort of rewrote
the rules after the fact to make it
fit. It was a small
victory, not the ultimate victory
but at least it allowed us to
be there and
hey ended up being an enormous success
in part ironically
because Apple gave us wall-to-wall coverage
for two weeks. When I look back upon that, I think I wouldn't have gambled like that because the outcome would have been zero, right? Like Apple refuses our app. We sign up 200 people and the app is dead. What instead happened was they gave us a multi-million dollar launch campaign and coverage in all major media. And we signed up tens of thousands of people in those first weeks. That was an insane event, but also very satisfying.
And the other satisfying thing was I just love hey.
I use it every day.
I basically use Basecamp in terms of web applications.
That's where we do all our collaborative work.
And then my number two app and many days it's my number one app is, hey,
because I just do all my stuff in email.
I'm constantly communicating with people.
I'm writing.
I'm doing a lot of stuff in email, as many people do.
And having that be a pleasurable experience and a nice environment
and my inbox being a little more sacred than what happens with Gmail
where total strangers around the world can just make your pocket buzz
if you have notifications turned on, which they are by default,
just seems insane to me.
This idea that there's direct access to one of my most important daily priority lists.
Like, anyone can put something on that?
Insate.
Anyway, hey, doesn't do that.
We have the screener and no one gets to reach your inbox
before you've said, I want to hear from this person.
And most of the time I say no to most people, right?
Like things end up in the screener and we have thumbs up.
I will hear from this person.
Thumbs down.
I'm never hear from them person.
Again.
This is how I reached out.
I mean, we were, I'm not sure we were connected on X, but I said Vignal because your email
is out there and your screener seems to have work because it gave me the thumbs up.
It did because the screener is me.
So there's not even AI trying to suss out whether I want to hear from you or not.
Because what turns out to be true is it's actually not that onerous to once a day go through
your screener and say thumbs up or down because there aren't that many people in the world.
And if you say no to the annoying, pestering salespeople who within Gmail managed to reach your
inbox seven times, then the workload is much less. And it's very satisfying, I would say, too,
because when I was using Gmail, I would get roped into this sales tactic that they, of course,
rely on, which is that like, you write back and say, like, no, thank you. I'm not interested.
And then they would respond again. And now you feel like, wait, am I know.
I'm obligated to respond to this person.
I kind of feel like I am.
And occasionally I would end up writing.
And even if I wouldn't write, they still have access to my inbox.
So I would hear from them again.
Next week, they have a whole drip campaign.
They all fucking do, right?
That any outreach is seven emails.
It's not one emails.
It's seven emails.
And if you show any sign of life, it's probably 52.
That's just not how it works.
And hey, I say, thumbs down one time, never hear from that person again.
It's actually amazing how quickly you can curate your garden from that weed.
And then suddenly there's just beautiful flowers.
suddenly email is not a chore. So you want to go smell the roses. Suddenly the majority of things that end up in my email are things I want to read is from people I want to hear from. And that was really the fundamental mission for us with Hey. Can we make email lovable again? Email is so hated by so many people because the systems are so poor. Because they're based on the original premise that email is just what universities use for scientists to talk to each other. And scientists have really good manners and will not pastor you.
52 times about some stupid app they want to sell you.
No, they're respectful and beautiful, right?
Beautiful ideal, beautiful thought, beautiful protocol designed for those norms and those people.
Then you let it into the world at large and you realize, ah, not everyone is endowed with such norms and such politeness.
And especially when salespeople get involved.
So you need better defenses.
And for me and for us and for all I'm many customers, hey, is that defense?
It is a way to love email again.
And I find that it's really important, actually, to have a grand why.
This is all the way back to Victor Frankel, the meaning of man.
Finding a why allows you to walk through the snow when it's cold and uncomfortable and annoying,
which many things are when you're building with computers.
They are cold and uncomfortable and annoying.
Now, it shouldn't be that most of the time, but occasionally that would be there.
And if you have a really strong why, why are we building this?
Who is it for?
What are we trying to do to improve the world?
Even if that's not more grand than just letting people love email,
it's a lot easier.
And it's a lot more enjoyable to then carry whatever burdens you've got to pack
if you can set it up that way.
This is a good time to talk about our season sponsor, WorkOS.
Having a strong why is what gets you to building something great.
But after you build it and start selling it to enterprise customers,
they expect things like Samuel, SSO,
directory sync, audit logs, and fine-grained permissions.
And those are not small features, they're systems.
Systems that can take months to build and maintain.
WorkOS gives you APIs to add enterprise ready off and user management in days instead of months,
all designed to fit cleanly into your product.
That's why companies like OpenAI and Trophic and Cursor run on WorkOS.
Focus on building your product, let WorkOS handle the enterprise infrastructure.
With this, let's get back to David and the old way of thinking versus the new way of thinking.
putting our
your developer hat on
like can you talk
talk me through
on how you built it
you said it was two years
but was it just
one or two people
starting to build it
I'm sure as tech
you obviously must have used
Ruby on Rails a lot
and then I don't
probably some native stuff as well
but the two years seems a lot
especially because you know
you're a small company
you're a nimble
you're a great developer
you hire great developers
suddenly it's been two years
what took so long for
and of course it's a beautiful product
but right on the surface
I think as developers, we might have this thing where I look at it as like two years with the talented team.
That's the hacker news quipped to basically everything, right?
Like, I could have built that in a weekend.
I mean, famously stated with Dropbox that I could have built that in a weekend.
We could have the original iPod when it launched.
It was like five gigabits, no Wi-Fi, whatever, less speed than Nomet Lane.
So I get that because I also have that same instinct.
I think that is our Hoopers as developers.
We think we are gods and we can make anything happen in no time at all.
And you totally could.
You can make a prototype happen these days faster than a weekend, right?
Like in a few hours, we should be able to have.
Just kick up an agent.
But figuring out what you actually want to build takes a lot longer.
And arriving at something that's worth publishing takes longer still.
At least it does for us.
And I think it does for anyone who arrives at anything good.
And the original Haye construction was just me.
on the technical side.
This is actually how we've started.
The majority of our major products is either it's just me.
Sometimes it's one additional developer,
but is in a tiny, tiny team until we have a shape.
Until we have an architecture and we have a direction of where the product is going to go,
I've found that you actually go slower if you pour a bunch of people into a direction that is uncertain.
If you don't know what you want, a million people is not going to build it for you.
have to figure out what you want. We can talk about this later, but this is where AI's very recent
progress is changing things dramatically. It is now quicker to arrive at what do I want. But for Hey,
it was me. And then it was Jason and one designer, two designers, very, very small team,
trying to figure out the shape. Trying to figure out, if you're taking on Gmail, you can't
just do Gmail in blue. No one's going to buy that. No one's going to be interested in that. It's got to be
novel, which means it's, well, not just novel.
It's got to be good.
It's got to solve problems that people haven't even articulated they have with Gmail.
Because the articulation people have of their problems with Gmail is I hate email,
which as we talked about, it's a bit of a misdirection.
My contention is you hate Gmail and not just Gmail, but most email systems build on the old way of anyone has access to your inbox and all that stuff.
But figuring that out, figuring the shape out takes a while.
And it's also fun to do in this way where you noodle with it.
And you don't have infinite capacity.
The original base camp is built the same way.
It was just me on the technical side.
Is this a shape-up mentality?
There's shape-up thinking in trying to actually endowed the designer with an intention of how should it work,
not just how should it look, and figuring out it's also how it should look.
Products should be beautiful and they should be unique and appealing and so forth.
That also takes time.
But figuring out how it should work is primary,
figuring out where's the epicenter,
what's the most important part
and teasing all that apart.
But with, hey, as with all the major products we've done,
we start with an absolutely tiny team,
often just one individual on the programming side
and then one or two individuals on the design side.
And then we go, we go, we go, we go, we go.
Suddenly something clicks in, we go like,
this is good.
There's something here.
And then there's a bit of a ramp.
We take on a few more people.
And then when we get within maybe the last 20%, we go, okay, now we know what the terrain looks like.
We can go way faster if everyone piles in.
So one thing that is super interesting, and you might take it for granted,
but it's very different to how most startups that raise VC money, which I'm very familiar with,
and big companies, Uber, Facebook, you name it.
The way projects would start there is you take the product manager who works with maybe half a designer
and comes up with a spec
and then developers get involved later.
And what I'm hearing,
what is very novel to me
is you take one or two designers and a developer.
How do you think about designers even?
You recently hired a designer, Zoltan, actually,
who I'm chatting with the side.
A great guy.
But my sense is you think of designers
a little bit different
than potentially the rest of the industry does.
We very much do.
Designers at 37 singles are not just here
to make a spec look pretty.
They're here to find what the space.
should be their product managers in many ways. They are the finders of the how and the why in many
cases, deducing in some cases customer feedback, in other cases just pure intuition and distilling
that into what should we build and how should it work. And then on top of that, they're also
responsible for building it. They're responsible for doing the CSS. They're responsible for doing the
HTML. They're quite often responsible, at least dabbling in the JavaScript and the Ruby code to
get to something functional. And now, with agent acceleration, they do the whole thing. Not necessarily
as it will be merged, but the whole thing in terms of here's the final shape and design of what it
should look like. But I do think we are very peculiar in this sense. And we have found this when we've
been trying to hire designers, that many designers working other companies are not used to also wearing
the product manager hat, figuring out what we should build, and wearing the implementation hat,
shaping it into CSS and HTML.
I found that when you combine these three hats into one,
you have an individual who know the materials they're working with,
know how they stretch, know which way the seam is supposed to be cut,
and therefore works natively with the fabric of the Internet.
When you're working directly in CSS, when you're working directly in HTML,
you're just much more in tune with what this medium wants.
and I find that that's probably quite similar
if you're a jewelry designer.
You should know the properties of gold.
You should know how it bends into strength.
An architect should have some engineering understanding
of load-bearing structures and so on,
not to the degree that the architect is just going to design the whole thing
and then we start pouring concrete.
You still have engineers helping you out.
But the more you understand the materials you're working with,
the more you're likely to come up with something
that cuts along the grain and therefore ends up feeling correct, feeling good.
Just a quick hop to Apple, I think this is one of the reasons why some of the historic superfans
like Daring Fireball and others, Gruber, a bit disappointed by the new direction, is that
Apple used to stand for these exquisitely designed native Mac applications, which is a dying breed.
Like, they're essentially dead.
Now we have electron, which we can.
You can talk about that too. It gets way too much hate in my book. There's crappy information
of that, but it's just a web in a box. But the disappointment with losing that sense,
and I think it's about the same thing, that the Mac, its native feel, has a stretch to it.
Like the button placements, everything you would call a native application, either feels synthetic
or it feels authentic. And today it's all synthetic. There's nothing authentic about it
left. And I think for the web, it's the same thing. Now, the web is a much, much larger platform,
and therefore it's gotten much more attention. So there are way more people working on that
quality of it. But at the large companies, it's exceptionally rare to non-existent, to have that kind
of dynamic. I think some of that is going to change. Agent acceleration is going to empower
designers to be more capable in these ways. So the industry is coming a little towards our
fundamental stands, which is funny too
because the same is true on the programming side,
when I talked about Basecamp being a product of just me
on the programming side for launch,
that for so long sounded unambitious
or even wrong or even to the point of lying
from some quarters of the internet.
We're like, yeah, but you can't build anything real,
anything meaningful, or anything big,
unless you have a team that's much larger
because it's just going to be a toy product, right?
And my insight from the start was that's, of course, bullshit because you just haven't used Rubion Rails.
You just haven't used the acceleration that's possible if you use better tools.
Now, we're all realizing that.
We're realizing, oh, so if you use agent acceleration, a single individual actually can build something highly valuable.
Yes.
And that's just fun to see that, like, the industry is coming towards, oh, smaller teams are better
because now the cost savings you have on the logarithmic curve on communication cost starts to be relevant.
And this is one of the things, maybe we can talk about this, where agent acceleration is really changing the bargain between junior developers and senior developers.
Let's talk about this.
But before we go into that, do I feel that you very much value software engineering as a craft, which is very obvious?
but what I'm sensing is you're valuing design, user experience design, designing on software design,
like building stuff that feels good, may that be software, hardware.
You also value that as a craft and you look for it.
Like these two things, do I sense this correctly?
I mean, I think aesthetics is truth.
When something is beautiful, it's likely to be correct.
I think this is true in mathematics.
This is true in physics.
This is true in a lot of different domains that when you arrive,
that's something that has the correct aesthetic quality.
It's like we have an intuition that guides us towards that level of beauty
because it also happens to be correct and noble and something to aspire for.
I also happen to believe it's what makes people happy.
Being surrounded by beautiful, well-functioned objects is a key part of happiness.
In fact, I'll put it in a negative way to,
One of the great sources of anxiety and frustration is when everything is shit, when everything is laggy, when that touch interface doesn't register, when you have to restarted, when you're calling a travel agent, they can't do something because their old shitty copold system won't let them, right?
The world is full of not just in shittification, that is things that went from being good to being bad, to just plain bad, just plain awful.
And I think it is a serious source of malaise for civilization, that we could literally raise the bar of human happiness if we were surrounded by more beautiful items, more beautiful systems, both in the sense of its aesthetic exterior qualities, but just as much in terms of its aesthetic interior qualities, because I find those two things are usually in perfect harmony.
The reason why Steve Jobs cared about the inside of the box was because he intuitively knew that the kind of people who care about the layout of the print board will be the kind of people who sweat the details on the user interface will be the kind of people who sweat the ergonomics of opening the case.
So I think there's essentially no choice.
If you are a person who is attracted to this aesthetics, which I think is everyone, there's.
There's just varying levels of awareness about whether you are or not, but that you want to make it all beautiful.
And for me, Ruby in particular, has been this seminal language because it produces the most beautiful code.
In my book, there's barely even competition.
Like, there are other things that can be beautiful in a way.
Like, I find looking at small talk, for example, very beautiful in its minimalism, but it's not the house I want to live in.
Ruby is the house I want to live in because it's got that aesthetic quality.
while not being rigid about its ideology,
which is a very rare aspect too.
I more often find now we can refer to Ive again
is that when someone is obsessed in this way,
they are a little narrow-minded.
Like that's the trade-off, that's the price.
And I find that Ruby has somehow managed to be both broad-scoped,
yet also intensely focused on this.
But overall, we have to have beautiful things.
We have to work with beautiful tools.
we have to produce beautiful fluid interactions.
This is how we should see ourselves as craftspeople,
that we care about polishing it until there are no splinters left.
How is AI changing how you work and how do you think it's changing your craft?
Or let's just talk about the craft of, again,
you're hiring people in 37 signals who similar to care about design and software,
craft's quality.
How is changing what you get?
out of the craft or how it's making it better or worse in some ways. I just want to start with
like, how has your view changed? Because the last time you talked in length about this that was on
Lex Friedman's podcast, and you were still rightfully so, very skeptical of AI. It was a different
set of tools. It didn't work as well. And I think you went there bashing it pretty hard. But
things have changed since. This is a nuanced point and maybe it's self-serving. But I don't actually
think my opinions have changed. What have changed is the circumstances and the facts.
is something I called out on that show,
and in many other writings,
was right from the get-go,
I could see that we had something new and novel here
that was going to change things.
ChatGBTGBT, T, it's launched, what, three years ago,
was clearly and obviously, even at the time,
something you would mark on a timeline.
You're like, here are all the important things
that happened in the history of computer science or the world.
Yoinks, there's the launch of chat GPT.
and interacting with computers in this way
and seeing them reason,
even if that's still a disputed term, perhaps.
But to me, it seemed obvious
that these things were freaking smart,
smarter than me in many ways.
Whether those smarts came from parenting weights
and data can't belating so what,
we don't know how human consciousness works.
We don't know how human wisdom or intelligence works,
barely.
So let's not be so categorical
about what constitutes consciousness or intelligence.
At least I find no utility in that distinction,
even if it's fun to ponder.
But what I found with the early models
and the early ergonomics,
where it was autocomplete,
where it was copilot and cursor in your editor,
trying to guess the next character.
It would be something littering it, right?
Yes, I found it infuriating.
I found it as we're trying to have a conversation,
you won't let me finish the sentence.
You're constantly trying, was this what you meant?
Was this what you meant?
You're like, shut the hell up.
Can I just finish a thought?
And I thought even if it is capable of occasionally accelerating,
it's also wrong so often that that acceleration feels like a nuisance,
even if it's somehow net positive, which it wasn't for me.
Or maybe I gave up too soon.
But I just did not enjoy that.
I didn't think the models were good enough.
I thought the way of using the models with auto-competitive,
versus agent harnesses, which is dreadful, annoying.
In fact, to the point that I got a little pessimistic about the direction of the industry for a hot second,
because I thought this was what we were all going to do.
We're all going to sit and do tap, tap, tap, tap.
No, thank you.
Well, Kurt Kursor even have, they had, I even got one of these, one of their swags was a tap key.
Exactly.
Which felt very, and I haven't, I got it from them.
It's really cool, very well designed on all that beautiful design.
But dystopian.
Dostopian.
When I see that, and I remember that was a meme for a while,
just we only need three characters on the keyboard, right?
I thought of that episode of The Simpsons where Homer puts a mechanical bird on the keyboard
that just dips down and hits enter because all he's been doing is hit enter,
except suddenly there's a warning about the nuclear core overloading,
and the bird just hits enter and the whole thing burns down.
I'm like, wow, that's a warning.
That's quite a parallel. The Simpsons really does predict everything. But I did not like that
style of using it. As much as I retain my enthusiasm for the general direction of travel, because
it truly is amazing. And the amazement to me, I tried to embrace as a tutor model, as a
pair programmer who doesn't drive. It was amazing to have Chat Chitin and the other model just be there
for like, I don't understand this fully. Here's a piece of code. Here's a question. Can you tell me
why it works like that? Can you tell me what's wrong with it? Because that's how I've been using
the internet since they won, right? That's what Google was for me. Here's an error message.
Here's our concept. Maybe I find something on Stack Overflow with some passive-aggressive
nerd telling everyone why he's so smart and then at the bottom there's the solution I'm looking for.
Or I don't find it at all and that's just kind of frustrating. With the chat GPT model, I very often
got a really good explanation. Yeah, this was actually, I talk with a game developer, Jonas Tyrol,
who built this really cool bestselling game. I love.
playing it and this was during this time of the tab completion and he said that in his the way he
works is he just turned off all auto completions in his ID because he got annoyed by it and then every now and
I went to chat GPT to ask something or have a longer thing and then he had the mode of like I'm thinking
and I'm doing this stuff oh I need some help okay here's the specifics and I'm taking it and and somehow
it felt that you know like he just he was in the zone the whole day by controlling it and yes
and somehow those tab it sounds like you know you're saying the same
I think it kind of took it away from you.
Exactly.
Exactly.
And I did get a little worried that that was going to be the direction.
We were all going to be the bird.
And I didn't want to be the bird.
Then I was like, well, what should I do instead?
Maybe we're like farming potatoes.
Like that's a long tradition here in Denmark.
Maybe I could take that up.
But then thankfully, two things happened.
A, clot coat in, what was that?
Starts into spring.
It's going sort of over the summer.
Then by the fall has some traction on a new way of using agents
to help you code were with the agent harnesses, right?
This is really where we transition from AI to agents.
Suddenly the AI has tools.
It can use bash.
It can use everything you got on your terminal.
It can call the internet in for appropriate information.
It just is capable of doing more than just reasoning about a thing you gave it or input
from a source context file.
And then the models.
Opus 4.5 to me is the other one of the other points we're going to have on the line.
where it's the first model that continuously and consistently would shock me with the quality
of its output. Its quality of its analysis on the basis of vague inputs. And even more importantly,
the quality of its output. It produced code I wanted to merge without very much, if any,
alteration. And if I did want to do alteration, I could tell it. And it would remember. And it would
not make the same mistake next time. That to me, the combination of those two things was the unlock.
And you have a high bar. I mean, incredibly high bar. I, as we've talked about now, at length,
like the aesthetics of the output really matters if I'm going to look at it and I'm going to
review it. I'm going to get another anecdote in a second where those things don't even play in.
But when I'm using agents to work on Ruby code, I want their code to look as good as mine.
I'm not going to merge their stuff if it's sloppy.
No more than I would merge the work of a junior developer who has not yet fully internalized our style and so forth.
So I wanted to be on par and on parity.
And the early models just couldn't.
That didn't mean they couldn't produce working software.
At least some of the time, they could.
I'm very impressive.
I mean, I remember when I did my first snake game and I'm like, holy smokes, I've been
wanting to do this since I was six years old.
Like, I've been wanting to have this idea.
I want to get it into a game.
And I was able to see that in, I don't know, a few 30 seconds.
It was done with the game.
I've copy, paste the HTML.
When you do your first.
Magical experience, right?
So I think that ramp was very interesting because it actually took a while
until we found the form factor of the agent harness of the terminal interface
that to me was the big.
unlock from, this is interesting. I want to have a conversation with it to I want it to write my code.
I will now start any project I'm starting agent first. And that's a massive ship. And it just
happened from November 27, I believe, is when Opus 4-5 dropped. Now, there are other people who have
different points. They felt like, oh, is Opus 40? Or there's also GPT-5-2. Maybe some people talk about
Son in 37. There are other earlier checkpoints. But I do feel like there's a
general consensus I can lean up against that Kapathi and others have expressed like, yep,
it was right around end of November, early December.
Everyone who works worked at larger tech companies, it was the winter break because people just,
you know, like the whole industry shuts down for two weeks, say for a few places where
you're on call.
But again, no production work happens across the industry.
Now you get to play with this.
My sense was that people were playing with it because you give it your side project,
you never finish, expect not to finish.
And then they also got shocked.
You're done.
And that was just a.
sort of break, right?
Like, if this was a movie, you'd hear the scratch sound.
Like, you're like, wait, what?
Rewind.
What happened?
I feel it was the most collective shock, which happened individually.
And then people came back in January and everyone, especially because a lot of the
decision makers who are, you know, like CTO, director of arranging, etc., were not
as hands on, but they were hands on.
And a lot of them, it's this weird thing where they came back and they started to mandate or, like,
say, all right, you guys need to use this because I've seen the future.
I've literally used it. You need to see it.
So we're going back to a little bit of hardware.
Like people were trying to give, you know, like the new hardware into people's hands saying,
you need to experience it because you're not going to believe it, right?
There's something with this as well where you really don't believe it.
We can talk about this and whoever's not tried it or not had that aha moment.
I don't think we can convince them.
This is another one of those cases where words just are not effective.
You need to sit down in front of open code or whatever harness that you use.
Use one of the frontier models.
start with that.
Start with Opus.
I'd say start with Opus.
It's the best frontier model.
Other models are better at other things, blah, blah.
But if you're just going to work on a piece of code
and you want to see what the current frontier is,
and if you, I mean, I'd be shocked if any of your listeners
haven't done it already.
But if there should be something left, now is the time.
And I don't want you more and say in the sense,
I found it really off putting this trend on X
where unless you've internalized everything,
there is about AI like you've been left behind.
Shut up.
First of all, patently not true.
You could literally pick up everything in the next three weeks.
This is the other magical thing about this kind of project, right?
Like, or progress.
When, if we had been having this conversation in spring of last year,
everyone had been like MCPs, MCPs, MCPs.
And do you know what?
You can now manage to just have jumped over that entire thing
and go straight to CLA's and skills.
That's just worth having in mind that this FOMO,
that unless you're up on all of it as it happens,
play by play,
you're left behind is complete and other nonsense.
That being said, I can still appreciate
that some people were early.
And for me, Toby Lutke at Shopify
is the main individual who saw this
and saw the changes that were coming from it
were earlier than I did.
And I've really helped drag me into this
by constantly sending me like,
hey, you look at this, look at this.
And I do think that's actually quite helpful.
It's quite helpful to be surrounded
by people who have a higher faith,
or maybe their eyes are a little further up.
My eyes tend to be relatively close to the road,
like right in front of me.
And some people have a gaze that have a little higher up,
and sometimes they see things that don't come to pass.
In this case, Toby saw exactly where we're going two years ago.
And I finally saw it because the road came to me in December.
And it's funny because along the way,
I kept saying, like, yep,
when the models get good enough, when they can do all this thing, it's going to be amazing,
and thinking, well, it's going to be, I don't know, 18 months, two years, maybe it's five years.
It's very hard to predict these infliction points.
And I think the industry itself didn't even predict the infliction point, right?
You have an entire city, Silicon Valley and surrounding areas, San Fran,
focused on making this happen.
But predicting exactly when the hockey stick starts hockeying is very difficult.
But then it happened.
And now my daily work is very different.
So what is your daily work now?
My daily work is agent first on everything.
Going agent first is a good time to mention our season sponsor, Sonar.
When shifting to agent first work, one thing that inherently comes up is the quality of the code.
Sonar, the makers of Sonar Cube, is deeply rooted in the core belief that code quality and code security are inherently linked.
High quality code is naturally more resilient.
and as agents start writing code at a massive scale,
that verification layer becomes your most important security parameter.
This is where solutions like Sonar Cube Advanced Security are valuable.
With this new malicious package detection,
advanced security provides a real-time circuit breaker,
automatically stopping agents from pulling in unverified or risky third-party libraries
before they ever hit your pipeline.
The impact is measurable too.
Developers who verify their code with Sonar are 44% less likely to report
experiencing outages due to AI,
as per Sonar's state of code developer survey 2026 report.
It's really about closing the gap between the speed of AI
and the reality of production security.
What else is Sonar doing to help reduce outages,
improve security, and lower risk associated with AI and agentic coding?
Head to sonar source.com slash pragmatic to find out.
With this, let's get back to David's agent-first workflow.
Specifically, cloth, clot code.
I use open code as my main harness.
I also use clod code a little bit.
They, unfortunately, got that early lead.
Opus is current.
the best model.
So then they started thinking a little bit in that,
like the game is single match,
instead of thinking it's multiple rounds
and yank their subscription from OpenCode.
So if you want to use your Macs subscription,
you kind of have to use their harness,
which I don't love it.
I think it's a mistake.
But leave that B for a second.
And let's just celebrate the fact that they have the best model.
And Opus for 5, 4.6 is also nice.
But 4.5 to me was the infliction point.
And it creates a lot of composition
because everyone wants to catch up and overtake them now.
Of course.
and especially because you see Anthropics revenues.
I think start of the year, they're at 9 billion, a few weeks later,
they're like, whatever, 14.
Now they're 19 or something.
It's just the craziest rocket ship you could possibly imagine,
which is inspiring all this capital to be deployed for competitors and so forth,
which is wonderful, great to see.
So even if I don't love everything that they do and Claudecotecote is not my preferred harness,
manage to hold two things in your head at the same time.
This is what I also try to do even with Apple,
which I have serious griefs about how they operate and act as the gatekeeper and all the other nonsense we've talked about.
And then I also keep my, I just love computers hat on and go, I like the new Neo.
I might even buy a new Neo and just see what is possible at $500.
For Opus, I have no qualms about using Opus.
In fact, whenever I feel like, this is a really hard problem, I go to Opus right now.
But I also use other models.
And one of the things I've incorporated it into my flow is to kind of have two models.
going at the same time at different speeds. So I use Timux and I have this layout thing that's
built into Amachi where it'll start my new Vim editor on the left side and then it'll start two panes
on the right side. On the top is OpenCode running Kimmy K-25 and on the bottom is Opus running in
Claude code and then at the very bottom I have a strip of terminal. And almost everything,
I started in one of the agents and I tell them what I want. Then I hop over to
NeoVim. First I do
space Gigi to
look at the
Lacey Git diff on it.
What's this is changing? If it looks
correct, I'll just commit.
We're done. Great. And then sometimes
it doesn't look correct. Then I'll go in and
also decode myself. But the ratio
and how quickly the ratio
changes is still astounding.
I went from early November last
year. I'm code first
everything. I started the editor.
I'll spend whatever long
it is and then at some point if I get stuck or if I want a second opinion, I'll go ask my
friendly clanker to give me a second opinion. That's just not how it is anymore. Now I start
with the agent. Now it'll give me the draft. I'll review the draft and I'll make alterations
if need be. And then just recently I flipped it even further. So we're working on a CLI for
Basecamp. So we can get full agent accessibility for Basecamp. It's astounding. First, actually,
let me rewind. As soon as I got pilled on how good the agents were and how capable they were,
I immediately tried to raise my gaze up towards the end of the road and think, do we even need MCP?
Do we even need CILI? Do we even need anything? Can't the agent just figure it all out?
This was when I installed OpenClaw. So I installed OpenClawe on a VM and I thought, what should I do here?
Let's see how far we can push it and what it can do by itself.
So I thought, I want this claw in BASECamp.
I want this claw in Fizzy.
Let me just try to invite it as it was a human.
So I just wrote it.
Can you sign up for Fizzy?
I'm not giving you any tools.
I'm not giving you any MCP.
I'm not giving you a CLI.
I'm just telling you it's at Fizzy.
Do.
Go sign up.
And you see it.
Chuck along.
And then, yeah, I've signed up.
But it's asking for an email address.
Or I'm trying to sign up.
It's asking for an email address.
I'm like, oh, yeah, right.
You need an email address.
And HG doesn't have an email address.
Hey, go sign up for hay.com.
I'm like, it's going to fail this one.
And it's chuck, chuck, chuck.
I've signed up for hay.com.
Here's the password.
Write it down somewhere safe.
I'm now also signed up for Fizzy.
I got the confirmation email in my inbox.
We're all good.
What do you want me to do?
I'm like, what?
Are you telling me that you could one shot signing up through a browser to these things.
Now, maybe that shouldn't be surprising.
Maybe that was already possible with Sonnet 3 or one of the early models.
I don't know, but when you experience it yourself on your own damn claw that you're just telling over telegram to do something and it's signing up for products autonomously, that's pretty startling.
It was for me.
And then the next step I went like, well, if it can sign up for hay and can sign up a busy, let me invite it to Basecamp.
So I sent it an invitation to its own email address.
Here's the invitation link to Basecamp.
Can you just jump into the AI Labs Lab project that we have and introduce yourself to the team?
Hey, I'm David's assistant.
It's very nice to meet you all.
I've read back the transcript a little bit.
I see you're all excited about these things.
And you just go again, what?
What?
And that was fun because it showed me that even if it was going to take a while.
It did take a while.
It took a while.
This is agent terms.
It took, I don't know, seven minutes.
That was like, oh, it feels like an eternity.
But it was able to do it.
And that seems like the end state.
The end state is that agents will not need any of our accommodations.
They do not need any on-rent.
They're not coming on a little wheelchair.
They'll be coming on bionic legs and running five times as fast as you in about two seconds,
which we'll get to in a second to the speed aspect of it.
But then you also realize, okay, well, I can't just sit around fiddling my thumbs until AGI happens.
Let's build for today.
And that's what we've been building for base camp.
We've been building a CLI.
We're going to build it for hay.
We're going to build it for Fizzy.
We're going to build it for everything, even probably something.
of the legacy products.
And what I love about the CLIs, as much as I also love it about these harnesses,
is that they validated the fundamental Unix philosophy from like, whatever, 71.
You should just build small tools that can interoperate with pipes and you can put things together.
That's the Unix philosophy, right?
It's the total Unix philosophy.
And that is actually the magic to me about seeing everything having a CLI.
It's not that Basecamp is easier to use now with the CLI.
No, no.
It's that GitHub also has a CLI.
and Century, I don't know if they haven't see a lie, but they have an MCP.
That you can tie all these things together.
And now you can tell an agent, hey, we have some errors in Century.
Can you go check them out?
Then post a write-up to Basecamp iterating what's wrong.
Then go and GitHub, come up with a pull request, post a comment back to Basecamp when you're done.
And now we have a Central Record in Basecamp where we're following the work as it's going on,
while we have an agent doing work, looking things up.
And again, when we try to talk.
talk about it and relay it, I guess some people can see it.
And now OpenClaw has enough videos on YouTube and so forth so you can get at least a passenger right.
But try it yourself with your own product, with your own tasks and with your own prompts.
And you will be pilled.
You will be simultaneously incredibly excited for what we've been able to make sand do, the silicon, the chips, the weights, the whole thing.
how and then also a little bit anxious about where it's all could go and it's in that tension that
I and probably anyone else who's been pilled on this live right wait a minute if we're already here
what does not 18 months from now look like like if at the last three months we've upended my
entire understanding of what's possible with computers what's the next three months look like what
the next nine months look like yeah this this is where like I was a little bit on your end for a long
time and I think I still am where I believe what it works and I'm always
with skeptical of projections.
Moore's Law broke down at some point.
I lived through everyone and said it'll continue forever.
And you know,
and then it broke,
as we all suspected it would.
But then it found another way.
I think it's a good point about the Moore's Law, right?
It broke for individual cores.
Yes.
How much can you push it?
And then we just went,
well,
what if you just had,
what's the latest chip,
256 on the MD sent chips, right?
And even when performance broke,
we went into power consumption
and size and all of those things.
So, yeah, like,
but it's harder for me to also
just to say, oh, it's going to stop here because we've seen a grow, we know the approaches that
they're taking this, it's larger and larger training sets. And it's been working so far. And there's also
the bitter lesson, which I think, I think is a, it's such a short paper that it's just so worth
reading. I think it's one of probably the most popular papers outside of academic circles. Yes.
Because it just plays out this thing that we don't want to believe that. We want to believe that
our knowledge, our understanding is superior that, you know, you and me knowing how to code or me
putting in these 15 years or however long it's been, it's special.
Sometimes it shows it's not as special.
What's interesting actually is, like right this second, this snapshot in time, a little bit is.
And this is a funny purification that's happening, junior versus senior developer,
is that the most successful and applicable agent acceleration that I've seen at 30s signal
has been from the most senior people.
The people who were able to validate whether what the agent produces is suitable to be
deployed to millions of people. There was just this story yesterday about some of the major
outages at Amazon. And Amazon's own internal analysis essentially pinned that. We can no longer
let junior programmers ship agent-generated code to production without review. And the problem with
that is, first of all, I think that's the realization most companies are now having across the industry.
Whenever it's mission critical for something of that nature, we cannot yet rely on.
on the agents to have vetted it all.
And junior programmers are not capable of figuring it out.
Therefore, their role is suddenly more tenuous than it was six, nine months ago.
Because a senior programmer can't.
And this is why senior programmers are getting so much more acceleration.
They're able to, first of all, working parallel with lots of agents,
but critically examine the quality of the agent output and have a high degree of confidence
of whether this is going to work or not, or redirect them if not,
because this is what made them senior in the first place.
This was the role that they had, that they had the long insight and history
and overview of the architecture, how does it all fit in?
Is this going to work?
Is this not going to work?
This was the role they played to junior programmers.
But now they can play that role to agents.
And agents are faster at following instructions and redirections.
And suddenly you have senior developers who,
can 5x, 10x, their individual productivity. And now, this is the second order effect. If you manage to 5x or 10x a
senior developer, that person's value per hour just went up 10x. Now, take that hour instead of that
person spending them with the agents, just shipping stuff and making things better, they spend that
hour as they would before teaching a junior human how to do things better. There's something in that
equation that's in play right now, and it's not clear how it's going to map out. Now, one way it could
map out is that the agents will get so good that they stop making mistakes. They become senior
in their capacity to ship working code. This is what my bet would be if we look X amount of time
forward, because this is what just happened with cars. So self-driving Tesla's now drive better than
humans do. Not all humans, not in all circumstances, but on average. It's very possible that if we're
able to delegate the mortal risk, the highest criticality we basically deal with on a daily basis
sitting in a metal tube along other metal tubes that go 60 miles an hour where you can die
if someone make the mistake, we delegate that to an agent. Well, they can probably figure out
how to make the code work too, right? So I do think it's coming, but who knows when, who knows how.
Right now, we're at a stage where the bulk of the benefits are accruing to the most senior
developers. And also I wonder, just like with self-driving, like you realize there's always
KVit. So, for example, inside companies where it matters, when you're a startup, you have zero
customers. It doesn't matter. You can watch it out and it doesn't matter if it doesn't work and
it, you know, it crashes. But inside these companies at Uber, just got details on how they're
adopting AI and they have all these tools, clot code and all of these things. But what we realize is
well, when you just put it in there, they have all these internal mono repos, they have their
ticketing systems, they have their slag, they have so much, they have their art. They have their
RFC's design documents on how and why they have this jumble of a mess with microservices,
which was a fun way that we originally connected many years ago.
But what they found is they built a bunch of internal systems, a lot of it,
to help to feed NCD's agent harnesses, and now they're working better.
But where we are right now is there's, and this is why if you're a senior engineer
and one of these companies are a staff engineer at like Uber and you move to Google,
suddenly you're not going to be as valuable or as efficient for a while until you learn all the systems.
Right.
So I wonder if just like with self-driving, you know, self-driving works great as well.
I was in SF and in LA and Waymo's day drive.
So nice.
Like my Tesla's is driving in LA, driving us to the airport every time, the whole family.
I sit peacefully, watch the road, but do not steer at all on that entire journey.
Well, except my Waymo got stuck because a truck was parking on a, on a,
narrow street and a car had a bike shed.
And I knew that it should, I should not go there, but it didn't know.
So a human operator came in.
But anyway, but even with Waymo's, you know, like there's, there's, they drive in pretty
good weather.
They've been mapped out.
So I wonder if, in software engineering, I wonder if this has these parallels where we have all
of, you know, like these companies have their special, specialized landscape.
And once you map it, once you do all the tools, once you figure out these things,
and with self-traving, it took, it took 10 years, right?
Like I was at Uber when they bought the self-driving thing and we were hearing in the news that, you know, next year it's all going to be over for drivers and no.
Yes.
They were not going to be steering wheels anymore.
Which, by the way, is an amazing anecdote because it just shows Elon's total faith in his mission.
Because in 17, when he made that proclamation, it was an AI.
It was 500,000 lines of hand-coded C++.
Right.
Like that model was never, ever going to get us to the full self-driving.
but he had just total faith in division.
And then eventually, hey, here along comes AI, and it's so good.
And if you train it on billions of hours of road use, it actually can't do it.
And it can do it better than most humans.
In fact, I'm a pretty good driver, I'd like to say.
I'm not the best chauffeur because my, I don't know, impatience have a tendency to provoke the throttle.
That's not always as pleasant for passengers as it is fun for me.
And when I let the Tesla autopilot drive, it's just the best chauffeur in the world.
It's just perfectly calm.
Better than you.
Better than me.
Better than the queen's chauffeur, I think.
It's throttle actuation and deceleration is godlike.
It's actually AGI like or ASI like in its application within that narrow domain.
And of course, when we get these anecdotes and these examples of, holy smokes, not on, it didn't take 10 years.
for the self-driving.
It took 10 years
from the proclamation,
but what they were doing
for seven of those years
had nothing to do
with what they're doing
with FSD now
because the FSD that's based on
AI hadn't been running
for that long.
But the infliction point of,
I think it was 13-1,
FSD 13-1,
like the first version,
you're like,
wow, this is pretty good,
but like,
I better pay attention.
13-2,
14-0,
14-2.
Over the course of 18 months,
we went from,
yeah,
it's pretty good,
but like,
I'm going to pay attention here to why is their steering wheel.
And that acceleration, that short period of time, of course, it's something people look to when it comes to programming and go like, well, if we're here now and senior programmers still have to review it because otherwise you're going to get all your whatever four severity, eight downtimes at AWS because some AI pushed out some nonsense, what is it going to look like when they take the jump that FSD did over the same period of time?
Now, I also think you can go completely crazy trying to just sit and soak in all.
all of that. This is what I tried to do over the past year ago. I'm really excited for where this
is going. But I'm also going to deal with what's possible today and what's enjoyable today and what we do
right now. I'm not going to try to plan what my life looks like 12 months from now when maybe we do
have AGI or we don't. Now, there are other people who do that very well. I just watched an interview
with Leopold on Dwarkesh from last year. He's thinking like, what does 2030 look like? What does the
whatever 10 gigawatt data center look like? I'm like, I'm very glad. I'm very glad.
we have individuals who put thought into that because that's not my favorite spot to be.
And I think most people are not that good at polishing the crystal ball.
No, well, I mean, this is a little bit unsettling as a software engineer in the sense of like,
clearly this is where the industry wants to go. This is where a lot of effort will be put.
There will be a lot of businesses, software businesses built on this.
There's a lot of VC money raised on this, by the way, who are going to tackle this and they
will either like succeed or die. That's what that's what these companies do.
But today, what do you see at 37 signals with software engineers?
You, of course, have mostly experienced engineers, although you did hire junior engineers as well.
How is there kind of work changing?
How is there satisfaction with work change?
Because that's also a thing, right?
We keep arguing about, like, is it making us more miserable these things?
Is it what we want to do?
And how is it changing for you, right?
I think it's...
That's the biggest revelation, actually.
More than even the capacity of the agents is my enjoyment running them.
When I was on that Lexington interview last summer, I was talking about, do you know what,
I don't want to be a project manager for agents because I had the mental model of a project manager of humans.
And I thought like, that's not what I enjoy.
I don't want to be that far away from the production.
I want to be in the mix.
I want to have my hands in the code.
What I failed to realize at the time was that running a bunch of agents feels less like being a
project manager for agents, and more like stepping into this super mex suit, where suddenly I don't
just have two arms, I have 12, and I can now look at seven screens at the same time running five
keyboards. I'm still the one doing it, even if I'm not typing this as a keyword in a program.
I have been hyper-accelerated as a programmer. It's a different kind of programmer, but it still has
the same affinity to aesthetics, at least when I'm producing Ruby code. And I'm able to combine
that while being vastly more productive on a bunch of things. It's also like getting an incredible
brain upgrade on even assessing issues. One of the pilling moments I had was before the Relicia
Omachi 3.4, I went into GitHub and we had, I don't know, 250 PRs pending. And I kind of just sighed
a little bit and like 250 PRs, if I spend, I don't know, 15 minutes,
need to PR, like how long is it going to take before I get to the end of it? And I thought,
do you know what? Let me try something else. Let me just try to ask Claude to, I'm not even doing
anything with a system. I just do review URL and the URL is the issue. Or is the PR are shocked.
In 90 minutes, I think it was, I processed 100 PRs. And it wasn't that I merged all of them.
In fact, I'd say I merged a small minority, maybe 10% got merged.
as is, then maybe 20% got merged, but with Claude's implementation.
The program I had correctly identified an issue, but hand-rolled some code that I could see,
I didn't want to keep, or sometimes I couldn't even see it.
I just asked Claude, and they say, like, ah, it's not quite right.
And then I just asked, Claude, can you just clean room this?
This is the right problem.
Let's fix it, but let's do it right.
It would do it right away.
in exactly the style
as I would have written the rest of Amachi
now this is the high coat of something
it's mostly just bash code
but there's still a shape to bash code
and how you want it to look
and can feel coherent with the rest of the project
agents opus in this case
which is nail it
and then the second half of it
was split between 25% things
I then just realized
I just don't want this
it shouldn't we shouldn't have it
and 25% Claude telling me
maybe there's something here
but it's really not a good implementation
we don't have a straight shot
to make a great one.
A hundred issues in 90 minutes, and I sat back,
this would have been a week's worth of work,
days at the very least?
What the heck?
And even more than that,
Claude's analysis of at least half the issues
pertained to things I knew nothing about,
where it was undeniably
a smarter, better reviewer,
programmer
that I could ever dream to be.
Well, not dream to be.
But wasn't that moment.
But you would have not put in the effort.
I would not have done it.
This was why the PR sat in the first place.
In many cases, I would look at it and go like,
I think there's something here.
But like, then I now have to read up on this debus thing.
I have to figure out, is this the right way of doing it?
I don't want to just merge something that then has other issues.
And to be able to do that,
Agent Accelerated was one of
top 20 programming moments.
I like how you put
agent accelerated and it sounds
like it's especially efficient
for work that is waiting
on you but you don't want to do it or you're
not as skilled of doing it but it's a hassle
to delegate because again like you you have
a team right? Like you
but you probably didn't delegate it because you probably
knew that it wouldn't make it faster or
better. So I wonder
if there's a part of AI that because we talk a lot
about like you know like companies
love to measure especially larger ones like
efficiency PRs and they want to see impact,
but about the impact of doing
work that we would have not done before.
That's the kicker for me. That's the fact
that the pie is just exploding
right now. It's not growing. It's exploding.
The number of projects we have tackled
internally that we would never
even have contemplated
starting on are legion.
We had a great project where
normally on performance work you worry about
P50, P95, P99.
Jeremy, one of our most
agent Excel
people went like, what about P1? What about the floor? Can we fix the floor? What is the floor?
And he went like, well, right now our floor is, I forget what it was, four milliseconds. Let's say that, right?
Well, actually, four milliseconds can add up if you have a bunch of fast requests. They can still, it still matters.
And he just went like, we're going to do P1. We're going to optimize P1, literally the fastest 1% of request.
We're going to make him even faster. He took it from, I think it was four milliseconds to less than half of it.
millisecond. He 10xed the performance
that I was like, I would never have signed up
on this and he did the P1 project over a couple
of days as like a side gishap.
Because now he could. Now he could.
Because he had a hunch.
He had an intuition that there was
something here. He let
agents run with it and
the number of PRs
that like, all right, we fixed this, we fixed this. I think
total of the P1 project
maybe misremember. I think it was
like 12 PRs. Like just fixing all sorts
of things. Where I look at the single PRs,
like, yeah, actually, okay, yeah, makes sense.
I look at the total of some of it.
You've changed 2,500 lines of code.
You're like, you've done that in a few days.
So, I've never heard anyone do P1 because it just, it feels like a vanity product.
Exactly.
It makes no business sense.
I mean, this is not true, right?
Because everything adds up, but you know what I mean, right?
I know exactly what you mean.
And this is exactly why the explosion of the pie suddenly lets us look at problems.
We would never have contemplated looking before.
It's funny.
I remember this scene from Terminator 2, where they found.
found this ship from The Terminator in the first movie.
And he goes like, this thing gave us ideas we would never have investigated before.
And like, there's some beautiful parallels here about like maybe we're about to build the Terminator, the cliche.
But also we're getting ideas.
We're getting ambitions.
We would never have looked at before because suddenly the cost of exploring a hunch has just dropped by a thousandfold.
I do this all the time now too.
I'll give it some vague, crappy instructions
just because I have this fleety idea.
I haven't even crystallized it into a neat prompt.
I just want to see something.
It'll, and then I go like, oh, yeah, delete,
as in revert code back to normal.
Before, I would be a little more precious
about 75 lines of code
because it would have taken me two hours to do him.
Now there's no residual value to any of this stuff.
And I could just go like, show me a draft.
I feel like a little bit like a king where you just go like,
show me the analysis of the far-frung regions.
Where are we with the tax recipient?
And this boy is like, this servant is like, yes, I shall do so.
And we'll return in three weeks, except like you can just wave your hands around.
And agents just come back with answers to stupid questions, terrible ideas.
Then suddenly it wasn't so terrible.
It was actually a great idea.
You go like, wah!
I did this with, well, actually, I haven't even pulled the trick around you yet.
But one of the things with Amachi people have been asking,
for since the beginning is dual boot. Being able to install Linux next to the Windows
installations since they can still play all their games. And I just went like, you know what?
I have more than one computer. So when I play games, I can just do it on the PC. It's not a
me problem. Yeah. I totally get where a bunch of people wanted. I'm not heavily inclined
to spend four hours figuring it out. And I just, a little while ago went like, oh, this is
exactly the kind of problem. Like, I don't have to figure it out. Just make the agent to figure it out.
So I kicked off initially the process of just coming up with a plan.
This is a pretty big change, right?
Like, if you fuck up someone's boot records or you override their petition,
criticality high, which is one of the reasons I didn't want to engage with it.
Secondly, it's a little finicky if you want Lux encryption on the Linux partition,
but the Linux petition doesn't own the whole drive.
It's a little hairy.
I didn't want to take on the criticality.
I'm like, this is perfect for the kind of agent stuff.
So it started off basically just having Opus and Codex ping pong a plan.
I'll just, I asked Opus first, like, come up with a plan for this.
It thinks for a minutes and minutes and it's come up for a good plan.
And then I kick it over the codex and like critique the plan.
And then I had him ping pong back and forth a couple of times.
And at the end, looking at the plan going, yep, that's a good plan.
We should totally do that.
And I can't wait to take that one off and just go, yeah, now Omachi does do a boot.
Not because I did it, but think your helpful clinkers.
That level of ambition is still something, I have.
have yet to internalize.
Like even just that, that like, hey, here are these hunches or demands projects that I would
like to do and maybe someday and you could kick it up on a hunch while you go to lunch.
That is a new world, which is also one of the reasons I think a lot of people are thinking,
well, the model continues to improve.
But even if we somehow hit a wall tomorrow, the bitter lesson is no longer true.
There's actually a limit.
It's 19 trillion tokens.
That's how much they can learn.
Not true at all.
But if it was, and we had to be stuck with these models,
we would spend the next decade,
just getting more and more out of them,
learning how to use these tools.
You see this actually with vintage computers.
So the kind of games they were able to make on the Commodore 64,
when that was released back in 81 to 85, I think, was the main run.
I know they made it a little longer,
but then the Amiga and other machines came out were great games.
I mean, I got interested in games,
the Commodore 64, Yia Kung Fu and all that stuff.
the stuff they were able to do 20 years later
when someone had just
noodled all the secrets and
tweak the one megahertz
processor. When they're building games for the old
old. Yes. Yeah.
Or so much more technically impressive
because we just know so much more about the
I mean, same thing with that. You look at the PlayStation
first games come out on launch.
Last games before we go to PlayStation 2,
they look from different generations.
We could totally continue to do that with the models.
But we're not going to have that particular
enjoyment because there's a
model dropping in three months. But this is interesting because if we just run with this thought,
like, of course we know new things are going to come. But the point is, like, we will be
spending so much time learning, applying them, building either our internal systems, changing
how we build things, taking on new project, like if we're an existing team, now that people
can do more work and more ambitious work. How are you thinking of the team taking on more work,
launching more products? Are you thinking of potentially growing the team or keeping it as is?
My best assessment for our setup is that the same people can do much more.
Let's internalize that, but that's also enough.
Already we were doing enough.
Already we had margin that we could hire way more if we had enough good ideas for that.
So all this extra productivity we're getting out of the team allows us now to do things like P1
and these other projects that are awesome.
And they're going to improve the product faster to, of course they are.
The old way of thinking, like, it's going to take two months to deliver a major feature,
I mean, that's out the door.
Of course, there's going to be rapid acceleration.
That's going to filter all the way into our software mythology process,
like Shape of was built on two-month cycles.
That doesn't make sense in the same way at all anymore.
We have not fully rewritten those scripts yet because the acceleration is still so fast.
No company really has rewritten the scripts on all of that.
When you're shipping that much faster, you need a way to control what goes live
and measure whether it's working.
This is a good time to mention our presenting sponsor, Statsig,
experimentation and feature flags for teams that ship fast.
Statsig build a unified platform that enables both experimentation and continuous shipping.
Built in experimentation means that every role that automatically becomes a learning opportunity
with proper statistical analysis, showing you exactly how features impact your metrics.
Feature flags let you ship continuously with confidence.
And because it's all in one platform with the same product data,
teams across your organization can collaborate and make data-driven decisions.
To learn more, head to Statsick.com slash pragmatic.
With this, let's get back to the shift about to hit developers.
But I still think software developers are delusional.
If they do not think a shift is coming,
where before they were the constraint on how much could be produced
and therefore could command the salaries that flow to the constraints.
if suddenly those constraints now loosen,
especially if we fast forward a little bit
where the product manager is actually able to produce
changes that can be shipped and work,
things are going to change.
I do actually think,
if I was going to bet,
we've seen peak programmer.
In terms of the learned guild of programmers
who went to either school
or spend oomfteen hours getting really good at it,
we're not going to need the same number of them
to do the same amount of work.
Now, Javon's paradox, where as the price of something goes down,
you get more of it or you get more demand for it is true.
But that doesn't mean that all programs are going to get bailed out by it.
Just because more software than ever is going to be produced, that's for sure.
By the way, I think GitHub has gotten a lot of slack or flack lately.
A lot. Reliability.
So I saw a chart saying they had a 92% uptime.
which sounds insane.
I'm not sure exactly what that was measuring,
but I feel it.
I have a little bit of sympathy in that.
I also think there's some mistakes were made,
but also that the amount of software
that's currently being produced
is on a rocket ship.
We are producing, as a civilization, globally,
way more software than we've ever done before.
I mean, OpenClaw itself,
I thought he said it was 400,000 lines of code.
That used to take 10 years and 2,000 people.
to get to that.
Well, not 2000.
But yes, it took a lot.
I mean, a long time, right?
You look at, I think, the main monolith
that Shopify's 3 million lines of code.
That's 20 years.
And if you collectively sum up
all programs have worked on that,
probably like 20,000 people.
Yeah.
Big shifts are coming right now.
Lots of software is being produced.
I can see why it's creaking a little bit
over there because, like, the push
is just going to accelerate, right?
And we haven't even seen anything yet.
If you look at AI adoption curves,
basically no one's using it.
Like we all in our little bubble in X
are like, yeah, everyone's able. No, they're not.
Like most companies in the world are just not doing it.
Notwithstanding that, like, I think Chachapit got to 800 million users very quickly.
Obviously, there's adoption, but nothing on the scale of what the companies that are furthest
along are doing and how much they're accelerating with it.
So I do think it is correct for the average programmer to think maybe we've seen the best of the golden days.
Certainly there will be pressures on price because one thing are companies like ours that have essentially unlimited scope to come up with new features and do more.
And we can then plow in all that additional productivity into just do more.
There's also a lot of companies who just need to do a thing.
And if they can do that thing at a tenth of the cost, that's actually their advantage, right?
They just need to do this thing.
It's very neatly scoped and defined.
It's a cost center.
anywhere where software development is a cost center,
which is actually probably the majority of software development in the world,
they're going to face these pressures.
Yeah.
Sounds like if I'm a software engineer right now and I'm worried about like,
well, you know, like just want to make sure that I'm at a place where things are going to be better.
You want to be at a place where you want to either get out of a cost center or become really
valuable there.
Obviously, you know, brush of your skills.
And also I'm wondering if the shape of software engineers who will be hired will be changing.
because if I just look back from like the 90s, right,
like even if you look at the movies,
you saw the stereotypes,
they were the nerd who didn't talk to anyone,
but they knew how to code,
they knew how to do assembly.
And then we went in the 2000s,
it was still based on languages.
And over time, I think in the 2010s,
a startup started to not hire for languages,
but just hire for algorithms
because you could learn the stuff.
And now I'm seeing companies,
some of the latest VC funded companies
hire for product engineers
where they're actually asking for, like,
empathy, communication, on top of, like, it's kind of a given that you know how to code or whatever.
So I wonder if I'm just looking at just this curve, right? If I'm just painting it up,
like you're starting to get people, oh, and the developers I meet at all these companies,
they're all really pleasant. They're all just very communicative, very, oh, and they talk with customers,
most of them. Just, it's not even a drag. It's like, and more and more of them love doing it.
That's the constraint value now. The constraint value is figuring out what should we build,
How should it be built?
Which customers should we be talking to?
Where should we be focusing?
It's product management.
It's so funny for me, too, because historically I've not necessarily had the highest
esteem for product management as a function.
I thought there was a lot of bullshit.
And I thought it was a lot of people who maybe didn't do as much, right?
And one of the reason was that they couldn't, because the constraint resource was
the implementation, was the product manager could find out that they wanted to do something.
I want to do this feature.
And then they had to wait four weeks for some business.
very expensive programmers to make that reality happen.
And in those four weeks, I mean, I guess they could go talk to them.
They were underutilized.
They were not the constraint, right?
The constraint was on the implementation.
That absolutely is going to switch.
And now pure implementation is going to be solved at some point.
I'm not claiming it is right now.
And anyone who is, I've not tried to just deploy vibe-coded stuff with no review to major code basis.
but as the lesson of last summer on Lex,
I'm not going to put my hot on the block and saying
that's not going to happen before next summer.
Again, this is just like common sense,
but implementation, one implementation will we solve for
for a general use case.
For the edge cases, it will take longer.
And for some cases, it will not make sense.
Same thing as I don't know if self-driving is fine
for like these size of cars,
but for like trucks,
it'll either take longer or if you're special as you do.
But the point is like there will be pockets where,
but those pockets will be smaller.
Yes.
I do think the stereotype
type of, I just want to sit in code, you have to be John Carmack levels of good to retain that
privilege to just, I just want to sit in code. And even John Carmack. Yeah, of course, he's also
super AI appellant. But also like he also saw some trends that he could do. Like, for example,
like just like, you know, the type of games that people would buy, right? Like, he needed to have
some business skills or just surrounded by people who did that. Totally, totally, totally.
But like you need to literally be the very best.
And not just the very best, but you need to be better than the agents, right?
For you to get the privilege to just be an implementer,
you have to be better than what's available off the shelf from agents.
So who are the very best?
And you're a good person to ask because whenever you advertise of a position,
and this was even well before AI,
I remember that you put out a job for software engineer and a designer.
And actually, I want to interview your designer who you hired.
And because you publish the salary, which is a San Francisco salary, you put the exact number.
You can check it for it.
You have a social media presence.
So it kind of goes wide.
And you get a lot of applications.
And you do a pretty good job, as I understand, you try to be very fair.
You put a lot of effort into it.
So what did it take to get hired at 30 similar signals?
Because now you are trying to hire some of the best.
And based off of this, what advice do you give to people who are like, okay, I want to be the best?
in this age right now.
Incredibly good question.
No one has figured out.
We haven't cracked it.
And I say that as someone who have run an organization
where we must have looked at tens of thousands of,
now, of course, if you're running Google,
you've looked at millions.
But we've looked at tens of thousands of candidates.
The number of candidates we've hired is quite small.
I mean, total number programmers
that's been through 37 singles over its entire lifespan.
And what's that going to be like, I don't know,
150?
I haven't even done it back.
Because your team right now, ish?
We're 60 people at the entire company
And we are, what's that going to be
20 programmers, something like that?
Yeah, that's probably about right.
So, so who, what is the other 40 folks?
We have designers.
Probably like 10 of those.
And then we have customer support, which is at 14.
Then we have a bunch of support functions, HR, finance.
And then we have operations.
Operations is quite large.
We have 10 folks managing all our servers.
and yeah, that's about it.
But yeah, it's probably about 100 people in total
that I've worked with or employed at the company as programmers
out of tens of thousands.
We've looked at.
And even all those hires did not pan out in the long term.
I'd actually say, I think I looked at this recently,
our batting average, at best, I think it's slightly better than 50-50.
So half of even those hires...
Half you go through all of, because you have a really long and thorough process.
Yes.
You put a lot of effort, right?
No one has figured out just to hire with such efficiency that they don't make mistake.
There's a great paper that Google published quite a long time ago now,
where they tried it all sorts of different hypotheses.
Well, can we predict employee outcomes on the basis of Ivy League education background,
on GPA, on all of these things?
Conclusion was basically like, we know nothing.
We can't predict it on any of these things.
We can't predict it on lead code.
We can't predict it on any of these metrics.
What I'd say is I've clearly been spoiled by working with some very good people,
not just at my company, but in open source in general.
Yeah.
Oh, yeah.
And therefore, I've ended up with occasionally a twisted perspective of what the average programmer is capable of.
And when we do hiring rounds, I am sometimes, well, not sometimes.
Every time I'm kind of surprised how poor.
the majority of the submissions are.
How little effort is put into being presentable.
And that can sound really boomer, crudgyy very quickly.
But it's also just a reality of trying to get a job.
Like, you got to stand out.
And I understand that that's uncomfortable, right?
Like, who wants to look at this as like, well, the odds are kind of against me.
But it's also a trap to actually fall into things.
of this in terms of odds.
Because what I've seen the miscalculation
happen time and again is people go like,
okay, so you have a thousand applicants.
There's only one who gets the job
or maybe two who gets the job.
So that 0.1% chance.
No, it's not.
Not at all.
With that math, you had 0% chance.
Yes.
Zero.
And the very best, they probably had a 10% chance,
20%, 30% chance.
It is not equal distributed.
It is not a lottery.
We don't just like pick a thing out.
and be like, oh, it's going to be this person because they happen to be the one drawn from the bunch.
Not at all.
We discard off the bat probably at least half the applications, maybe it's two-thirds, just because they're either not addressing the job directly.
They are not following the instructions in the relatively clear, spoken, written openings that we have, right?
They're obviously not right for it or whatever, or we get at some other smells.
Then there's, like, perhaps a third left.
And then we start looking at some of the submissions.
then we narrowed down historically to a pool of around 20 people that we give an at-home test.
The at-home test is wonderful.
Some people hate it.
They feel like it's free labor.
I'm like, what the fuck are you talking about?
I'm not going to use your submission to a code test.
I'm going to deploy to production.
How do you think we came up with that code test?
Because it's already existed in the system.
I say that a little harshly.
I also get the sympathy of like, I don't want to put six hours into making a test if it's not going to go anywhere.
Okay.
I get it.
But there's no way around it.
because if you have it in your head, did you just send in a resume?
Someone's going to call you up on the phone, have a 30-minute conversation with you and go,
you've hired, sir.
I don't know if that ever existed, but certainly does not exist today.
It never existed in the lifetime that I've been in this business.
Well, the only time it exists, right, is through a very warm referral where you're starting a typical...
If you're skipping the whole pipeline.
And when you skip the whole pipe, and typically only happens at the very beginning of a company,
when you're founding a company.
and often it goes both ways where it's very risky
and then you say like this buddy of mine
I work with this person for two years straight
I would like trust them with my eyes closed
so that's actually the black pill on the whole hiring process
if we look at the long term success rates
we have had more long term employees from
I've worked with this person for two years
we should hire them than we have from the open calls
it is actually exceptionally difficult
it has been for us to find the kind of program
who thrives in our environment from open call.
It has happened.
We have hired people that way.
And I continue to want to believe,
even if the odds seem insanely long
when you start doing the math of like,
oh, my God, we've looked at tens of thousands
and how many then got hired
and how many then didn't work out?
Like, Jesus, there's only like a handful left.
I'm starting to that.
That's kind of blackfelling.
But then hiring directly on the base of warm referral,
as you call it, has worked very well.
And that, the hit rate there is really high.
But how does that hell?
help anyone, right? Like, that's not a very actionable advice, except us to say, get as good as you can get
and put in as much effort as you can and work with someone. Because I want to say that as a counter.
Some people have this notion in their head that if they work at a place, they consider shitty.
They shouldn't try. You're shooting your own feet, buddy. If you show up at the shitty pairs of work,
and we can even be objectively in unison about that, that it is a shitty place of work. And you then
go like, well, I should just try to skirt. I should just try to goof off. I should just try to
read X or Reddit all day, right? Everyone else you work with. They're going to watch that.
You know what that warm referral is going to come from? It's going to come from someone who worked
with someone else at a shitty job, but identified that that individual still showed up and did as
best as they could to learn, to ship, to do all of this stuff. There is no shortcut here.
You simply just have to be good. And you will not get good if you do not practice. And if you think
your place of employment is not worthy of your best, you're cheating yourself.
If you're not helping, even if it's a shitty place, if you're not helping that place get
better, why would a great place hire you who only harris people to further raise the bar?
This is total cope. And it's cope both on the side of, I work at a shitty place and never
I don't want to put things in. You can be annoyed. I'm not telling you you have to love your boss.
I'd actually say the majority of people I used to work for, I didn't have the warmest feelings
about them. I still tried really hard. For my own identification, for my own education, for my own
education for my own sense of, I'm the kind of person who shows up and does a good job,
just that I will be ready.
When the opportunity arrives, when all my talents are needed and all my skills are home, right?
Well, was this not how you ended up at 37 signals where it was just a contract job or something?
And, you know, like on a contract job, you have no ownership.
Correct.
But you showed up.
Correct.
And Jason ended up realizing, okay, this punk better get some equity.
Otherwise, he's out the door.
Now, that's a siminal story, and you shouldn't extrapolate everything from that.
I mean, all founder stories, by the way, of similar stories in that regard.
But the fundamental principle is still the same.
Show up.
Do as good as you can.
Learn more.
There also was, to my chagrin to some extent, I perhaps contributed to it a bit for a while,
which was this notion that you can be a great program and not really like programming,
that you don't have to ever care about programming outside working.
hours. Was this what you thought of or like, well, I thought of it mistakenly because I was
pushing back on the overwork 100 hour week, 120 hour week, maniacal obsession, which by the way,
never was my experience. We did not start base cam that way. We have worked on a 40 hour
week rolling average over those 25 years. But also, as I said at the very beginning, I really like
computers. So I play with computers in my free time. I look at computer things.
in my free time. It's not work in the sense that I'm whatever, shipping features to base camp customers,
like just 24-7, that's not what it is. But I am playing with computers. I am looking at new things.
I am exploring new systems and whatever. And I think there was, for a while into 2010s, a misconception
that you didn't have to do any of those things. You could just show up and do your work and you would be so
sought after because programming was such a valuable activity and there were so few people.
people who could do it that they'd take anyone.
Even people who barely gave a shit.
And I think that's over.
If it ever was true. And I think
it was true. The boot camps were the perfect
like catalyst or like they were the canary.
Which also, by the way, is how the economy
is supposed to function. When salaries
are really high, it means that there's not enough supply
of labor. Therefore, we should get
labor into the pool. Exactly.
And so I'm not, I don't even have any
qualms about it. I'm just saying
like, that's over. No, I think, look,
We're talking about, like, is the golden age of the programmer, heavy past Pete programmer?
And I wonder if Pete programmer really meant that almost anyone who wanted to get into the industry and was willing to put in some effort a few months or maybe a few years could do it.
You could learn how to code.
You could go to either college or to a boot camp or put in the hours.
And you could get hired at a place because the interviews were, their references were not needed.
We didn't check.
It's probably coming to an end.
You do need references.
I think more and more companies will be doing reference checks as part of our thing.
And it's not just going to be a have you worked there.
Like, would you, I've had these calls from like Databricks as famous for reference cards.
They don't only check for references.
They drill you.
Not just would you work with this person again.
What were their weaknesses?
Right.
Where would you hire them, et cetera, et cetera.
I understand it.
The weird thing is peak programmer sounds like this is something that affects all programmers.
It does not.
The best programmers, or not even the best, as in like it's 10 people around the world.
Really good programmers are currently more valuable than ever.
Because they're the ones who are able to get the most out of the AI acceleration.
And this was the kicker for me in changing my perspective on this,
is that I've also found, and maybe it's not universally true,
but certainly within 37th signals in my own experience,
I'm enjoying my time as a programmer more than any time since early 2000s
when I just discovered Ruby. This has the I just discovered Ruby feel to it, that it is so satisfying
to be able to move this fast on so many levels at the same time to be able to explore the P1s,
to be able to think about dual booting omachi, to do all of that stuff that the work itself has gotten
vastly more enjoyable. And I've seen the same thing for the most AI forward programmers that we have.
Maybe they also have some of these anxieties, but they're kind of pushed to the side just out of sheer
enjoyment working with the new capacities. So there is a bifurcation here where we should all feel like,
well, we don't know what's going on. And for some people, that's going to produce some degree of
anxiety, I understand that, especially when it's your livelihood. And you're like, well, I'll also like to
be able to pay for my kids' college in seven years. What does that look like? I get it. You're not
going to be able to manifest that anxiety into anything productive unless you just plow it into
leaning in, right? Because if you just sit and spin around and try to think about what the world's
going to look like seven years from now, you're wasting.
your time. So that's the only path. The only path is to either get excited about this, which I don't
even take that much effort, as we said, if you sit down with these models, you pull out one of your
hobby projects from the closet. That you never finished. That you never finished. And you just
give it a try. I don't see how you really like computers and not find that experiment enjoyable.
And I've seen this with people who are getting into it. Ken's Beck is such a great example.
he's been programmed for 52 years and he is saying like he it he loves doing it and he found this balance
between using the agents to build something ambitious that he always wanted to ball he's building a small talk
server which which used to take forever and now it's getting closer and it's still taking a long time
and then in between he's chilling at his he has his house on on the lake and he just goes and like
just looks at the bird for two hours and then gets back to it it's beautiful can't is by the way one of
my all-time heroes this was right when i got started in programming right when i before i was
picking up Ruby, I saw Kent speak at a Danish conference in 2001 on stage and I was completely
mesmerized by his command of both the material, how bold he was and how great of a speaker he was.
And this was after having read extreme programming and many of these other things,
small talk best practices is my number one recommendation for any program who want to learn
the nitty gritty of how to structure a method and a class and the rest of it.
Small Talk Best Practices, which is Kent's book from 95, I think, or 96, is to this day my favorite
book of all time on tactical programming patterns. So it's wonderful to hear him being agent-pilled
while also enjoying the birds. I mean, I try to do that too. And this is actually, there's a bit
of attention right now, is that most of the people I find who are all in, they're working harder
than they ever have. And I've seen that with myself now, too, when you can be this effective
and impactful on an hour of supervision of these agents,
it's really intoxicating.
If you have an active dopamine loop up there
that gets triggered when something is shipped,
it is just hyperactive right now.
And I need to go, do you know what?
This is not like a limited sale.
Like AI is going to be here next month and the months after that.
Like I cannot just operate as though it is a limited sale
and I need to get all the dopamine in harvested within the next two weeks.
That I actually think is the main challenge right now
for the people who are furthest along
and most pilled on it is like,
remember that this is as bad as they're ever going to be
as the cliche goes, right?
You damn well better find a way
not to get consumed entirely about it as exciting as it is.
And yeah, this consuming is a big deal.
Like, Steve Yaggy, he was, he looks a bit more drained
than, like, you can see it on the video,
but he's honest, like he's being pulled into this.
He's doing, he has friends who are,
and when you're on the edge, you're there.
You've clearly been AI pilled,
but how are you finding of keeping?
a balance of like, right, stepping away.
You know, like, I know you've, I think you previously talked about the importance of sleep.
Apparently, you don't have an alarm.
Correct.
I don't use an alarm, although my wife now does because the kids need to go to school on a
regular basis.
But, yeah, for me, eight hours a night is the best investment you can make in your own
cognitive capacity.
So I just am reminded every single time.
I do not get eight hours that it is such a poor trade.
If you go from the eight to the six, I go like.
Like, well, I'm going to be awake for, in that case, 18 hours.
What is the drag I'm going to carry for all those 18 hours for getting one more hour,
two more hours by cutting back on the sleep?
It is such a bad piece of math.
It makes no sense.
Now, occasionally it's involuntary.
I have actually had, especially around this AI stuff, I've had a couple of times, very rare.
I can count on two hands the number of times where I've been sleepless, like the brain racing a little too much.
That's not typical for me, and it's still not typical.
But I have had a couple of them, right?
So I get where some of that excitement comes from.
But I'd also say the last thing you should trade is sleep,
and then you should not trade your health.
You should not try to save the three hours a week of working out to do more agent work.
That's a very poor trade.
Keep in good condition.
Like, there's nothing that's going to be more important if you want to keep, like, sharp up there,
that like the rest of the system is operating.
if not at peak capacities, then at a good sustainable level, right?
And I do think there are some individuals right now who are at fear of running ragged
on something that we're going to be dealing with for like, slow down, buddy.
Like, it's not, again, limited sale.
The next 10 years, we're going to see more and more.
It's going to get crazy and crazier.
So don't squander your health.
Don't squander your sleep.
Don't squander your diet in the service of anything.
Because even on the short term, it does not work.
you cannot get more productive within three weeks, let's say,
by trying to cut back two or three hours asleep every night
and then think there's anything coherent left after three weeks.
You will be a hot mess.
So let's close.
We talk about the stuff that we don't know.
A lot of things we don't know.
But let's close with what you do know.
So you could have retired a long time ago
and just kick back and like listen to birds.
What is it that keeps you doing, keeps you building,
and getting up every day.
And before AI, you would open your terminal.
I think you shared, like, you would go and write, now you're doing with agents.
Like, what drives you?
And looking ahead, like, what are things you're excited about?
My drive continues to be a deep love of computers.
This is simply the best way, the most fun way to spend my time.
I could spend my time on a lot of things.
I do spend my time on a lot of things.
I don't just do computers.
I drive race cars.
I take lots of time up.
I have three kids.
We enjoy all of that stuff.
But if I'm going to fill eight hours every day with an activity,
my best bet is computers.
And it has been so since I was literally five years old,
whether it's video games or what now feels a little bit like a video game,
actually, instrumenting all these agents
and playing a little bit of StarCraft with moving them around.
Exatorio.
Yes, exactly.
So I just really like computers.
So whether I need to do so for economic reasons or not,
I won't continue to play with computers, see what makes them tick and make things.
I think that's the other big misconception that some people have about wealth is that they conceive of it as some sort of checkpoint.
Like, once you've made it, then you can just kick back in leisure as though that was happiness.
We simply have 100 years of psychological studies telling us, no, that's misery.
if you have all the time in the world and no purpose, no mission, leisure is not going to cut it, is not going to be fulfilling way.
And this should be obvious by example of literally every entrepreneur who sells their business.
They sit on the beach for three weeks and then they're back into the game, right?
Because this is actually not just something they do in pursuit of a goal.
It's the goal itself.
It is the mission itself.
It is the satisfaction.
It is the affirmation of being a human that I'm not just a blob laying around.
I am a useful individual who put my skills to the best use possible.
So I'm going to continue to do that.
And I'm going to continue to do it whether I'm sitting typing at the keyboard,
whether I'm instrumenting these agents, whether they're teaching me, however which way it is.
I want to play with computers.
I want to continue to do that.
And then even more specifically, after the last three months, I'm leaning in hard now with agent access.
For example, this is what I've been doing the last few weeks.
We've been working on the new CLI, which also taught me like, we're not quite an AGI yet, right?
You think, like, well, just ask the agent to make a CLI.
It will, but, like, it's not quite there, right?
Like, I wanted to be just right.
And the agents still need a little bit of help.
I'm very happy to provide that help to these agents and we'll release a great CLI for
BASCAM very, very shortly.
Maybe by the time this is out, it'll probably be out.
And for the rest of them, too, and I want to lean into all of this.
How can we use this as much as we possibly can?
And then right now, I'm also just an incredibly curious person.
I wake up every morning.
I have a new ritual, which is not to pull my phone up and start hopping on X.
Like right when I wake up, I don't think actually that is great.
But it takes a tremendous willpower to not do so because I'm just so curious about what happened.
There's so much happening right now.
I want to know.
I want to know.
I want to be enjoying it, be a part of it.
So I don't foresee that ending.
I don't foresee a love of computers evaporating.
In fact, if anything, right now, I'm seeing like a flourishing of it.
I'm liking computers more than I did five years ago.
And that's amazing.
Amazing.
David, this was awesome.
Thanks a bunch.
All right.
Thanks for having me.
This is really great.
This was a fascinating conversation and I love the energy that David has.
I hope some of this energy that is obvious in person also came across to you.
I really appreciated that David was open that his stance did not change about AI
because his philosophy changed.
It's just that the tools became good enough to do useful stuff.
AI for autocomplete was annoying for experienced developers.
AI agent that can produce pretty good working code by themselves,
on the other hand, are now pretty useful.
And yet, David kept coming back to taste, judgment, and craft.
He wasn't just saying, just let the model write whatever.
It's the opposite.
He has a very high-quality bar,
and he wants the output to be code that he would actually be proud to merge.
It feels like AI might make good judgment even more valuable.
than before. I also really liked how David thinks about the importance of design. At 37 signals,
designers help figure out what should be built, how it should work, and increasingly even decide
how it gets implemented. I wonder if 37 signals is a step ahead of the industry in thinking
about designers a bit like developers as well and developers a bit like designers as well. Finally,
I found David's take that we might have hit peak software engineer an interesting argument.
David thinks will produce more software than ever,
but his observation is that we might be near the end of the time
when developers could command high compensation
simply because they were the bottleneck.
My two sense is that there will surely be high demand for professionals
who can build profitable software,
but this will mean software engineers who are not only good at coding
or using AI to generate code,
but can oversee building complex systems, have taste, and business sense as well.
If you'd like to hear more from David,
check out a bonus episode with him linked in the show notes.
Also check out the show notes for related
the pragmatic engineering deep dives on software craftsmanship
and practical ways of building software.
If you've enjoyed this podcast,
please do subscribe on your favorite podcast platform
and on YouTube.
And a special thank you if you also leave a rating on the show.
Thanks and see you in the next one.
