CLOUDFLARE CONTAINERS!!! Claude Code vs AI SDK Showdown, Offsite Fun, United Sucks and Wil Goes Out Out in Berlin

Matt Carey (00:00)
Yo dude! How you doing? I'm gonna stop my slack. Reduced interruptions. the...

Wilhelm Klopp (00:01)
We're back.

I'm doing very well.

You're looking

very good. you get a haircut recently?

Matt Carey (00:08)
Yeah,

I did. It's it's all over the place though because then I just had a shower and then I cycled up. I'm at the granola office. Hanging out. I was about integrations, you know. Everyone loves integrations. They bring people together. Together forever.

Wilhelm Klopp (00:15)
Mmm, very nice.

Hell yeah. It's...

Integrations are the best, especially when they're done properly and like in a deep way. And it's not just like the slimmest possible integration to cover some enterprise checklist.

Matt Carey (00:34)
Oh well, you've to some. I've wanted to have some of the other.

Wilhelm Klopp (00:37)
Yeah, that's probably true. I was told by someone that if we want to reach the Gen Z audience, we need to do video podcasts. How do you feel about that?

Matt Carey (00:45)
yeah, maybe, but who- I just don't understand who's gonna sit there and watch like a video of us for an hour.

Wilhelm Klopp (00:50)
What was the stat? feel like there's, I think this guy was saying, it's a friend who works at YouTube. He was saying like 80 % of Gen Z prefer watching podcasts on YouTube.

Matt Carey (01:00)
works at YouTube.

Wilhelm Klopp (01:01)
So you're saying he's just peddling the company line. ⁓

Matt Carey (01:03)
He's part of big video. That

is what's going on. Where's big sound? I reckon if you ask Spotify people, they're like, nah, mate, all podcasts are listened through the ears.

Wilhelm Klopp (01:15)
Yep, that's fair enough. But also Riverside does do video, right?

Matt Carey (01:19)
Yeah, I mean we are recording right here like I'm looking at you.

Wilhelm Klopp (01:21)
Or, yeah, we're looking at each other. So, by the way, how much work is it to edit this podcast? You've been doing all the hard work of actually editing and uploading and all of this stuff.

Matt Carey (01:29)
Well, the last one I didn't really listen to all the way through. I think if I fully listened to it, it would take maybe one and a half times as long as we listened. But... ⁓

Wilhelm Klopp (01:38)
damn. So it's like double

the commitment, essentially.

Matt Carey (01:40)
not really double but like last time I think I listened to it at like two terms speed maybe we did an hour and it took about an hour to do so it's fine it was cool anyway no one's gonna be interested in this this is just us like chatting admin no one loves admin

Wilhelm Klopp (01:50)
I think this is the most fascinating stuff. love podcasts, Admin. Don't you

think people look behind the scenes, though? See how the sausage is made?

Matt Carey (01:58)
Yeah, well I think in our case it's not that complicated. We don't even have any jingle. We need a jingle. That's what we need.

Wilhelm Klopp (02:03)
No one's learned.

Yeah, yeah, to be honest, I'd be down for a little jingle. A tiny little jingle. We'll make it with Suno or something. I don't know.

Matt Carey (02:09)
Germany, France. ⁓

yeah, could, to be fair, we probably should.

Wilhelm Klopp (02:13)
Yeah, although maybe Suno it will be too long. The clips are like a minute or something, No, we'll figure it out. So wait, how have you been? I actually haven't seen you in forever. I mean, I was just in Europe for two weeks, two and a half weeks, and I actually didn't see you once, which was very sad. But you've been very busy.

Matt Carey (02:18)
we could trim those.

No, I've good. How was your Europe trip?

Yeah, how was your Europe trip? Tell me about that.

Wilhelm Klopp (02:32)
It was very good. I feel like either I've been very tuned out of all AI news or they have actually slowed down a little bit, which is great. And yeah, was, what was I doing? I mean, there was a bunch of family stuff basically. There was a wedding. First, my cousins got married, which was very exciting. There was another one of my cousins. The last one of us had their confirmation, which is like a Christian thing.

At 14, you kind of confirm your faith and you get off-cycle presence.

Matt Carey (03:00)
Wait, is it, it off cycle, it like not a Christmas or birthday? Okay, holy shit, that's a new word.

Wilhelm Klopp (03:04)
Exactly, yeah. So it's a

very big deal. And I really like this guy actually. It's my youngest cousin. There's 10 of us on that side of the family. I got him a MacBook for this confirmation. He was like very excited. yeah, and I think really wants to code deep down, He actually said he wants to be an entrepreneur, which I think is cool, because no one else in the family really is.

Matt Carey (03:16)
wow, that's a lovely present.

Wilhelm Klopp (03:26)
So yeah, big big future for this for this guy

Matt Carey (03:29)
When you say entrepreneur, just imagine the scene from... The only thing I think about in that moment is the scene from the social network where he's like, what would you think you are? I'd say I'm an entrepreneur. What was your latest dream? I founded a video sharing platform that let people download music for free. Kind of like that. Yeah. Exactly like Napster.

Wilhelm Klopp (03:45)
This is the one with Sean Parker, it's like the morning after. And she's

like, so you're unemployed. Was that, was that, wait, who was the actress's name? Was that Dakota Johnson?

Matt Carey (03:52)
Yeah, basically.

Wilhelm Klopp (03:57)
What a great movie, phenomenal movie, totally appealed me.

Matt Carey (03:58)
Amazing, although

I listened to your Cortex podcast and they hate it. Yeah, there's one about the social network and I got, honestly, I got like 15 minutes in and I was like, can't listen to any more of this. They're just skating. It's just skating. I'm like, my favorite film of all time. Actually, it's not my favorite film, but it's a good film. ⁓ He was getting really aggy at the back and forth chat, you know how they have this very fast paced conversation.

Wilhelm Klopp (04:02)
you did!

It probably is one of my favorite films of all time, yeah.

Mmm.

Yeah, yeah, yeah, yep,

yep, yep.

Matt Carey (04:25)
the

whole movie is kind of like fluctuating between like amazing score and fast-paced conversation chat and he hated both of those things and I was like...

Wilhelm Klopp (04:31)
Mm-hmm. And he hated that it

was not that realistic. was kind of made to look like a documentary, but actually not that true. Yeah, I think it's different preferences in entertainment and storytelling. ⁓ I like both the Cortex pod and the... I think you should listen to another episode. Listen to one of their State of the Apps episodes. Yeah, we should do one of those.

Matt Carey (04:38)
I mean, potato and potato, yeah.

Yeah.

think you maybe think I'm more

interested in productivity tools than I am.

Wilhelm Klopp (05:00)
Bro, what do

mean? We're all interested in productivity tools.

Matt Carey (05:02)
course we are, of course we are. okay, speaking of new tools, have you been on Twitter in the last two days?

Wilhelm Klopp (05:06)
I really try to stay away from Twitter, but the answer is yes.

Matt Carey (05:10)
Okay, well have you seen the latest and greatest that has been released? It's Cloudflare Containers! It's Cloudflare Containers! I knew you'd know! I knew you'd know I was on that. Yes. I haven't actually finished shipping anything with it yet. That's my plan for this evening.

Wilhelm Klopp (05:14)
⁓ Cloudflare containers? That's awesome.

Yeah, I

hit the little deploy to Cloudflare button from one of their templates. I was just curious, because the cool thing about normal workers is their response times are instant. It feels like it's the lowest latency thing you can ever have. And then I tried it with the container thing. And there's definitely a little bit of a startup. There's a little bit of a cold start kind of thing, like a couple seconds.

Matt Carey (05:46)
Yeah, of course there is.

Like if you're making a website, you shouldn't put it on a container. It's like a code sandbox. It's it's the sandbox code. That's all it's for. Like the only...

Wilhelm Klopp (05:53)
unless it's an always running container, which is like I was.

Right, right,

right.

Matt Carey (06:01)
The only thing you couldn't do on workers was like render browsers, do crazy video or like heavy processes or run eval or like new function in JavaScript. Like you just couldn't execute untrusted code. And you can do all of that as well as running like whatever software you want on a container.

Wilhelm Klopp (06:15)
I see, see.

Matt Carey (06:21)
So that's why they did it. But like, yeah, I think for most people workers, it's still gonna be the one. I think that's actually a big worry for them, I would say. And I saw Sunil getting very angry at someone on Twitter. It's like, well, I just think a lot of people now when they go to Cloudflare and they like find out about all the cool stuff they're doing is immediately like, oh, they have containers. Oh, I'll just use that container then. It's like, that's really not the point. That's really not the point. The point is to...

Wilhelm Klopp (06:27)
Hmm.

Over here.

I see, instead of like other stuff. Yeah, yeah.

Matt Carey (06:48)
to use the container only when it's necessary. Most of the time use a worker or a durable object.

Wilhelm Klopp (06:52)
The thing is I was hoping like I could deploy my like Django app to Cloudflare.

and I

Matt Carey (06:57)
You can, but you shouldn't. Or you could.

Like, you could. Dude, just rewrite your Django app in Hono, get like, Claude Cote, it'll be fine. It'll work. And then deploy that to the worker.

Wilhelm Klopp (07:08)
But I'm a big Python guy.

I actually really like Python.

Matt Carey (07:11)
You know, ECS is always there for you.

Wilhelm Klopp (07:13)
Yeah, that's

the thing. So I was hoping this would basically be CloudFlows ECS, which maybe it will become. ⁓

Matt Carey (07:19)
It kind of is,

but I think they probably need more heavy data centers and more like machines and all of that.

Wilhelm Klopp (07:24)
Yeah, I actually called

a brief bit of the announcement live stream. ⁓ And there was actually a question that was like, hey, can I run my Ruby on Rails app on this? And there's a very good answer from the person who I assume is one of the engineers or the lead. And he said, it's not playing to the strengths of Cloudflare containers for now. They're not really optimizing for that use case. And what you were saying, evals and sandbox execution and all of this, maybe is more of the focus.

Matt Carey (07:28)
Yeah.

Yeah, I have the

best use case for a Cloudflare container and that is running other people's Vibecoded MCP tools. That is the perfect use case because I don't know what they're putting in that tool. I need a sandbox. Ideally, I need something that if they go crazy or have this mad memory leak doesn't...

Wilhelm Klopp (07:57)
Nice. ⁓

Matt Carey (08:06)
hurt me and really, yeah, really I just need a timeout. Like I need a container to run for like maximum of a certain period of time and then I need it to close and that's done, jobs are good and I really care about anything else. And that's like the perfect use case for this. It's like relatively fast starting, but in reality that also doesn't matter if there's a cold start because I'm executing a tool. Like I can start the container as soon as they make the first request. The model latency is going to be...

Wilhelm Klopp (08:07)
Totally, yeah.

Yeah.

Mm-hmm. Mm-hmm.

Matt Carey (08:31)
way, way higher than like the Cold Star on this.

Wilhelm Klopp (08:36)
Yeah, that's very true. I think that's a very good use case. What's your mental model for how long these call starts take or how long they're supposed to take?

Matt Carey (08:44)
enough that you notice it, I guess is... There's like... So like cold start below 500 milliseconds, you really don't really notice. Like a lambda, like an AWS lambda, if a lambda cold starts, like a node lambda, you'll get around like 800 milliseconds and then you start noticing it. If you use a go lambda and it cold starts, you get like 500 milliseconds and you really don't notice it. So... So like... If it's...

Wilhelm Klopp (08:46)
But like

Yeah.

Mm.

Interesting.

Matt Carey (09:07)
Yeah, if it's nearing a second, you just start noticing stuff. And if it's like nearing five minutes, like you really just don't. like, I mean, it's going to be important for some for some things, but people get really wound up about it. But I think in this case, it's playing to cut their strengths for people to get really wound up about Coldstar on their containers. And they also did you see the pricing pricing comparison? Someone the rivet guy, the guy who makes rivet or actor Claude or I don't know what it's called now. ⁓

Wilhelm Klopp (09:23)
Hmm.

⁓ I didn't know.

I don't know what any of

that is. Rivet?

Matt Carey (09:31)
Yeah,

it's like open source runtime for a durable execution thing. Like all of Buzzwords, it's basically durable objects. You can run them on their containers, I guess. It's kind of like a modal-esque thing.

Wilhelm Klopp (09:40)
⁓ gotcha.

Matt Carey (09:45)
I don't really know how well it's going or how well it's doing, but I see him on Twitter all the time and he made this like price comparison. I don't even know if it's true or not, but it made CarPlay containers a little bit more expensive relatively. It was all less than a hundred dollars a month, but it made it a little bit more expensive than his container and also fly.io and Hetzener or whatever that one's called is like a little bit, is even cheaper than that.

Wilhelm Klopp (09:53)
You ⁓

Right.

Matt Carey (10:09)
And so they are like, they are putting this more at the expensive end of the spectrum, which is great as it should be. Like that's why, you know, modal modal have their GPUs. They're like one and a half times, even two times that of like most of the other providers.

Wilhelm Klopp (10:14)
Love to hear it. As a shareholder, I'm all here for this. Please.

Matt Carey (10:26)
They're expensive, but that's fine because a modal GPU I'm gonna use for a couple of seconds was that if I have to get a GPU from like any of the providers where I have to like SSH into a machine, then it's not gonna be a couple of seconds. It's gonna be a whole day. it's really like, it's different gravy. It's like they built a really good scheduling engine that can route to different GPUs. I don't care if that costs me some extra money than just them giving me a machine off the shelf.

Wilhelm Klopp (10:41)
Yeah.

Yeah, that's a good point. That's a good point. Yeah, I think Cloudflash should charge this. It's good stuff. I think there's good interop also between workers and containers, right? Like you can kind of use them together.

Matt Carey (11:01)
Yeah, I saw

kind of a weird, yeah, I think you have to use them together. From what I saw is that you have like a host and then the host has a binding to the container.

Wilhelm Klopp (11:06)
I see. That's one way to do it.

I saw it. yeah, I totally didn't understand the like format, the like Wrangler.

Matt Carey (11:17)
I only saw one

template yet. I haven't seen the second. I haven't seen another template and I haven't even tried to play with it myself yet. So this is like real first come, but I guess it's a similar type of paradigm to a durable object where the worker, the worker exists and then you bind the DO to it afterwards. ⁓

Wilhelm Klopp (11:23)
Yeah, yeah, yeah, yeah.

I saw our

good friend Naresh build something very cool on top of Cloudflare containers. Yeah, I think so. So it's like Claude Code executing, which is really cool. Because I think the Claude Code on GitHub, which you're a big fan of, it runs inside GitHub Actions, which makes some sense. It's kind of straightforward. But it's also a little bit weird.

Matt Carey (11:37)
Yeah, did he put code in it in a container?

Big fan.

Yeah.

No, I think that's fine. I just think I need to do some price comparison because I would be gobsmacked if Cloudflare containers is more expensive than GitHub Actions. ⁓

Wilhelm Klopp (12:04)
Right, that's

the thing, because GitHub Actions typically runs tests, right? It's very CPU bound. If you run Claude Codon in it, it's mostly going to wait for the model, mostly network bound, like total. But you're still paying GitHub Actions by the minute on a pricing that's made for CPU bound workloads.

Matt Carey (12:17)
Yeah, but I think you're doing that for, I think you're

going to do that for the Cloudflare containers as well though. You're going to pay for IO.

Wilhelm Klopp (12:24)
Yeah, yeah, sure. it's... Yeah,

yeah, exactly. My point is I think the same as what you're... It'll be much cheaper to run it.

Matt Carey (12:30)
No, I think the

really cool thing is when people start running Claude code inside a durable object.

Wilhelm Klopp (12:35)
Right, did we talk about this at some point?

Matt Carey (12:37)
Yeah, dude, we talk about this every episode. if you can attach a file system to a durable object, you... Because Claude Code itself is not a heavy process. It just needs a file system access. And so if you can either alias those syscalls or do something with... If you could mock, like effectively mock the FS module from Node...

Wilhelm Klopp (12:39)
Hahaha

Mm-hmm. Mm-hmm.

Mm-hmm.

Matt Carey (13:00)
then you could run it inside a DO. There's a bunch of people doing things like this. I mean, we talked about it last episode, like there's DORM and I mean, there's obviously Gitlip and people like that. But yeah, if you could do that, then you have the best of both worlds. Cause I don't think DOs charge for IO anymore. So they only charge for clock time rather than wall time. They changed that pricing real recently, I think. So hosting scale gets super fucking cheap. ⁓

Wilhelm Klopp (13:01)
Mmm.

Interesting.

⁓ really?

Yeah, it's really. Yeah, yeah, yeah,

yeah. I think also like the GitHub actions does take some time to actually start up, right? Like especially when their servers are busy or whatever. It's like. It's just like if I ask like if I do like at Claude in in a GitHub comment or something right? I don't want to wait like.

Matt Carey (13:27)
because you're

You are obsessed with cold start. I'm serious. ⁓

Why are you asking? Why'd take like

20 minutes?

Wilhelm Klopp (13:45)
Yeah, exactly, but that's... What if I wanna see...

Matt Carey (13:47)
Two seconds extra, two seconds extra is gonna be fine.

I'm gonna survive.

Wilhelm Klopp (13:52)
I think it would be nice if it was instant.

Matt Carey (13:55)
Yeah, most things would

be nice if they were instant. It doesn't matter that much.

Wilhelm Klopp (13:58)
Or like,

guess all I'm saying is I want the experience of Claude Code locally where you can see immediately what it's doing and like adjust course. But because it's a lot harder to do like a 20 minute task and plan it upfront and whatever.

Matt Carey (14:10)
Yeah,

so in that case, you would have to have it in the container. And I think I read about people like doing multiple different VMs of Claude code in containers, and just need them to run. then there's like, think even the, I saw Louis from Bloop, he made this like Kanban board that Claude can move tasks across the Kanban board. So he can track like multiple different Claude code tasks.

Wilhelm Klopp (14:21)
Yeah.

That's

very cool.

Matt Carey (14:38)
That's sick. imagine you have like, say, 100 containers all spun up. You could stick your whole backlog in there. And even if it only gets like 20 of them, 20 of your tasks. my God. What a win. What a win that would be. You'd spend your next week reviewing code, but still.

Wilhelm Klopp (14:50)
Yeah, that's super cool.

Maybe also we just need to go back to all having our own personal like VPS that is just always available, costs like 20 bucks a month.

Matt Carey (15:00)
People don't do that anymore since

Macs have come out and like the Macs are so good. I haven't felt the need to spin up a VPS since I was

Wilhelm Klopp (15:07)
Yeah,

Maybe we need to tunnel to your local Mac then treat a section of it as a VPS and harness that sweet sweet M1 juice.

Matt Carey (15:14)
Yeah.

I remember

Thomas sent me website one time and he was just, check this out. And I was like, this is sick. it was like on his domain, but all he was doing was you upload a picture and it just tells you if it was a picture of a cat or not. I think it was, was really funny. But anyway, the website didn't matter. He just sent it to me. was like, sick. And then I tried to show it to someone like a few days later and it was offline. And I was like, Thomas.

Wilhelm Klopp (15:30)
Mmm.

Matt Carey (15:40)
how is your website offline? said, that just runs whenever my laptop works. Whenever my laptop's turned on, that runs, because that's just a Cloudflare tunnel. And I'm like, dude, dude, like, why? He's like, just Cloudflare tunnel, innit?

Wilhelm Klopp (15:44)
Hahaha.

That's amazing.

Actually, I'm going to

make a note to play around with Cloudflare tunnels. I think tunneling is an interest of mine.

Matt Carey (15:58)
It just requires you to have something always on, which is fine if it's like a Raspberry Pi or whatever, but...

Wilhelm Klopp (16:03)
That's awesome. Okay, so we're just speaking about Claude code. I actually wanted to ask you about Claude code SDK. Have you looked into this much?

Matt Carey (16:07)
forever and ever.

Dude

okay, okay, okay, okay. So I'm about to start playing with this. I have read the docs. I haven't written anything yet, but this is like my task for after this is, yeah, I need to, yeah, the Vibe Coding MCP tools. I've got a flow that works really well in GitHub Actions, and now I need to code that, and so I can run that in the container. I'm literally, this is what I saw on top of mine, because I'm doing it after this.

Wilhelm Klopp (16:19)
no way.

Wait, actually, okay, explain more about the Vibe Coding MCP tools.

Matt Carey (16:39)
So we have this secondary product, well, it's just a bit fun of mine. It's called integrations.cool. And it's a bunch of MCP servers. You can create your own server. They're essentially like AI integrations, right? And you get a URL, you can put them into Claude. And then you can also change the tools on the server. So you can flick tools on or off. And the thing that I'm trying to work out at the moment is...

Wilhelm Klopp (16:51)
Mm-hmm.

Matt Carey (17:00)
How can you like create new tools for new connectors that we don't have or even like new tools on the same connector? That we don't like support yet, and how could you do that like per user so I can do it like globally and that's what I did first so for instance what we

Someone in my company wanted a Fireflies tool you know, the note taker. They wanted to get data from it. And was it the Fireflies one? No, was the Attio one. was the Attio one, Charlie. And he's not technical like at all really. He didn't even have a GitHub account. I was like, dude, make a GitHub account. He made a GitHub account. And I was like, in this issue, just write what you want here and press play. And he did it and it worked one shot first time. that's, that's, Claude is

Wilhelm Klopp (17:21)
Mmm.

Nice.

No way.

Matt Carey (17:41)
awesome but also I made like a really strong harness around doing this so yeah it's all very typed

Wilhelm Klopp (17:46)
Wait, so

what is the harness? That is integrations.cool is the harness?

Matt Carey (17:50)
integrations.cool is just a domain it's at but the harness is like a library to create MCP servers and I'm probably gonna open source it at some point like it's inside stack one so I need to like work some stuff out internally but I think there's a good enough use case to open source this because

Wilhelm Klopp (17:52)
Mm.

Matt Carey (18:06)
Yeah, we'll see how it works. So we're to put on Product couple of weeks and let people play with it, use it. It means that anyone can create an AI integration. So in Claude, you can just paste the URL that you get from integrations.cool. And then now Claude has access to your Attio, just straight. It's that easy. ⁓

Wilhelm Klopp (18:09)
cool.

⁓ got it. I see, I see. Yeah, yeah, yeah, yeah, yeah. Okay,

cool.

Matt Carey (18:25)
If Claude needs to do something that it doesn't have a tool for, you're just like in integrations.cool, need this tool to do this. It creates the new tool. And it just does it.

Wilhelm Klopp (18:31)
Gotcha.

Matt Carey (18:34)
that works really, really fucking well. Like if you give it the open API spec or something like that, works better and it's a bit more like the code's a bit better. But even without the open API spec, the code, it works really well.

Wilhelm Klopp (18:40)
Mm-hmm.

So

it's both very easy to make new MCP servers that live inside it. And then also, it's like a hub that bundles up all these different MCP tools into one remote MCP server. And you can give it to Claude.

Matt Carey (18:54)
Yeah, it's my AI integrations hub.

No, it's not actually one remote. It's you can create individual ones. So like if I want one to do my to do solutions engineering, which has access to like a note taker and access to JIRA, then an access to my code base even then I can make that one. If I want one to do product engineering that has access to like has access to JIRA, has access to like web search or something like that, then I can do make another one.

Wilhelm Klopp (19:12)
Gotcha.

Nice, nice, nice.

Matt Carey (19:21)
Make them

use case specific, I think, I think is the way that we're thinking about it. also, I was actually chatting here about a workflow tool that I might add, which maybe I'm not ready to talk about on here yet, but that coming soon, TM.

Wilhelm Klopp (19:26)
Yeah, that's awesome.

Exciting. okay,

interesting. Did you ever check out mcp.run?

Matt Carey (19:39)
Yeah, I mean, it's a guy called Steve, I think. I tried to see him when I was in San Francisco. He lives there, so you should go meet him.

Wilhelm Klopp (19:43)
Mm-hmm.

Nice, yeah, had a chat with him once a few weeks ago actually, but I think there was some overlap with what you were describing there and that they also are at a place where you can keep all your auth session tokens or whatever.

Matt Carey (19:55)
Yeah, super similar.

It's super similar. I guess I just back myself

Wilhelm Klopp (20:02)
No, I'm not asking you to justify yourself. This is... think I can't.

Matt Carey (20:04)
No, no, no, it's similar. Like, like, there's a lot of them. There's

a lot of them. I was, was chatting to a VC friend of mine this. Yeah. I was trying to a friend of mine this week and they're like, yeah. We, we've seen, I think they said we've seen six companies in the last couple of weeks that are wanting to do something around building MCP servers. And it's like, that's just in London. Yeah. So this, this space is about to go crazy. ⁓

Wilhelm Klopp (20:10)
There's a lot to be built.

Hmm.

Nice.

holy crap. Yeah, that's a lot.

Mm-hmm.

Matt Carey (20:29)
And I would expect like the whole of the YC fall batch to be vibe-coding MCP servers.

Wilhelm Klopp (20:34)
MCP. Interesting. Okay,

wait. So to bring it back to Claude Code SDK, you're about to extend what we were just talking about, like integrations.cool with some Claude Code SDK stuff.

Matt Carey (20:47)
Yeah,

so I have the flow in GitHub issues. So in GitHub, can be like, Claude, make me this tool for Attio, for instance. Make me this tool that gets lists and gets all the attributes on the list and does all the filtering and works it out. So I only have these particular records and do that for me. And that's a very like...

Wilhelm Klopp (20:55)
Got it, got it, yep.

Matt Carey (21:06)
common thing that people want to do. They want to very much customize their tools. This is the thing that I've learned over the last few months is APIs are awful as tools. I don't know if we've spoken about this before. Maybe we have. I don't know. feel like I speak about this quite a at the moment. Maybe the last couple of weeks. But APIs have like restful APIs have like get post, delete, create, whatever.

Wilhelm Klopp (21:15)
Mm.

Mm-hmm.

Matt Carey (21:27)
They're

all resource-based. you're thinking of it as like create an employee, list employees, get an employee from an HR system, for instance. When actually, what the user want to do with the AI is like, get all the notes for that employee, or I want to get all employees with...

Wilhelm Klopp (21:32)
Yep.

Matt Carey (21:43)
this crazy common like find the employee with email address matt@stackone.com and get their time off information or get how many days remaining they have of time off this year like to do that in API as a human really easy right like well not really easy but relatively straightforward you just work through all the steps you start big and work small so first list all employees find the email attribute

Wilhelm Klopp (21:48)
Mm-hmm.

Yep. Yep. Yep.

Mm-hmm. Mm-hmm. Mm-hmm.

Matt Carey (22:09)
filter all of those like 100,000 employees or whatever by email, find the record with the right email, find that employee ID. Now you're going to do get employees forward slash that employee ID forward slash time off to get the time off information. Now you might need to get each individual time off and then add them all together. So you can do write that in code. It's going to take you a few minutes, whatever. Now try to get a model to do that. You're You're fucked because every

Wilhelm Klopp (22:30)
Mm-hmm.

Why are fucked?

Matt Carey (22:36)
every different API call, you have like a certain percentage of failure. ⁓ And if they're like JIRA or if they're like Workday, for instance, the API is so large and convoluted, you're probably the the model is probably going to make a mistake with some of the default fields or some of the custom fields, or some of the filters or something. And so actually, that's a task that you might want to do quite often is like get the remaining time off days for an employee, given an email address. And that's entirely codable. But

Wilhelm Klopp (22:39)
Hmm.

Mm-hmm.

Yep. Yep.

Matt Carey (23:02)
task is very very difficult to do it when you're thinking about a singular tool calls so that should just one tool call and it should have all that logic in it at the moment there is the question is whether the models get better where they get better at that situation but at the moment like to make that use case useful you lower the latency you massively increase the reliability if you just make that tool call very like naive and very simple basically make it

Wilhelm Klopp (23:07)
Right. I see, I see.

Yeah.

Mm-hmm.

Yeah, yeah.

So I guess it's like figuring out like the right abstractions and simplifying, make it easy for the model. Interesting.

Matt Carey (23:33)
But

that's huge. I've been thinking about this, well, not even thinking about that, just butting heads against this a lot recently. Like how can people customize their tool calls when we're an integrations company selling tools? Like we're selling API access. Like how can we make those tool calls as customizable as possible? And that's been really good fun because it's really fucking difficult.

When you're vibe coding, the solution is probably going to be everyone just vibe codes their own integration.

Wilhelm Klopp (23:54)
Mm-hmm, mm-hmm, mm-hmm.

Matt Carey (23:58)
That is probably going to be the solution because I can't see anything else, that's the end game, because I can't see anything else that is that comprehensively customizable unless we think that it's all going to fall into the model and the models are going to get so good that they can make all of those deductions all the way through and they can build that plan initially to then do that five step tool.

Wilhelm Klopp (24:08)
Right.

Mm-hmm. Yeah.

Or maybe everyone like voraciously open sources their vibe coded apps and the models learn from that what patterns work and what they can do.

Matt Carey (24:31)
Also

the last thing about having tools as APIs is, imagine you did that five step tool call, or four step or whatever it was. The first step was listing all employees. Over 100,000 employees. Most APIs don't have very good filters, so that's what's gonna happen. And context window, kaboom.

Wilhelm Klopp (24:40)
Hmm.

Right.

That would be a good subtitle for the podcast. Context window kaboom. Okay, wait. Did you say how this refers back to Claude Code SDK?

Matt Carey (24:48)
Like, you're done. You're done.

Yeah, I mean.

well, like, I just assume that Claude coding in GitHub is working really well for me, so Claude code, I should be able to run somewhere else. And why don't I just use the SDK? That's the deduction I'm making. Hopefully it's right, quite a lot.

Wilhelm Klopp (25:03)
Mm-hmm

Yep.

Totally.

no, makes sense. It's very interesting to me that

they are referring to it as like Claude code SDK. Because it's basically like just, you know, more params you can pass into the CLI and stuff, right? And I'm wondering like what they're asking the community or like, is this a sign that like that they want to treat Claude code like as a platform and that it should become extensible and like all kinds of interesting ways? Okay.

Matt Carey (25:30)
Yeah, I think it is.

It's them being like, we're here for developers. Whatever you want to do with Claude code, knock yourself out.

Wilhelm Klopp (25:37)
Yeah, nice. Because it definitely feels to me like it would be nice to have one of these agentic systems as a core building block, right, for any of us building interesting stuff with agents. You don't want to have to reinvent all of the basics, but you might want to extend it, or you might want to adjust how it works a little bit or whatever. And if Claude Code can be the baseline platform that we can experiment with, that's kind of very cool.

Matt Carey (26:02)
Yeah,

I find it really funny because when the AI SDK came out, I was like, that thing, classic Vercel super high level thing that like, you're never going to want to use unless you have the exact use case, whatever. And, my God, like wouldn't you just pick a model provider and like, like go very deep into their use case? Why would you need this like model gateway? Super high level, super crazy, whatever. And then like, think Claude Cote is.

Wilhelm Klopp (26:13)
You

Matt Carey (26:27)
Obviously that opinion is rescinded because the AI SDK is a work of art, it's beautiful and everyone should use it. But now it almost feels low level. This is how we've gone with the tools is thinking about things in terms of individual tool calls even or The AI SDK has a looping idea, but it doesn't package that looping with pre-built tools.

Wilhelm Klopp (26:37)
Right.

huh.

Matt Carey (26:49)
Like that is, I think the next extension of the AI SDK, like they're all going to merge at some point. Like Claude Code has gone from a ready-built product. The AI SDK is a dev tool, but if Claude Code SDK comes into the dev tools, it makes sense to me that Vercel should be like, nah, fuck off. Dev tools are our domain. And then start adding tools to the AI SDK and start expanding that wider. Like why shouldn't they? Why shouldn't it be a CLI as well?

Wilhelm Klopp (26:52)
Mmm.

Mm-hmm.

Yeah.

Right. like the AI SDK can come with more stuff like batteries included. Interesting.

Matt Carey (27:16)
Yeah. And I just find it funny how

like they're playing. It's definitely 3D. I often find this. You look at the world and you're like, my God, I feel like this is this, this thing sits on this axis. And this thing sits on this axis and this axis is like, customizability. And this axis is like how close to the model you are or whatever. And then you see the things in these two axes. and I think of, even one axis, even just a line like.

Wilhelm Klopp (27:27)
Mm-hmm.

Mm-hmm.

Matt Carey (27:40)
the AI SDK is quite close to the model, or is really far away from the model is how I thought about it. It's really far away from the model. A direct use of the OpenAI API would be like close to the model. But then like Claude Code comes out and yes, it's close to the model, but it's got like all of this other stuff. And now it's like, wait, no, the world is actually 3D. There's actually multiple, there's N dimensions here. I do find this with products like,

Wilhelm Klopp (27:51)
Yeah, got it.

I see, yeah, yeah, yeah, yeah.

Matt Carey (28:05)
you think, that's very similar to that thing, or this is my world view of how these things differ. And then someone comes along and goes, no, actually I see things completely differently. I'm gonna go down this whole different direction, which on your surface looks very close to this one, but actually we do a completely different thing.

Wilhelm Klopp (28:20)
Totally. There's

like a whole thing that actually changes everything, a whole dimension. That's super interesting. Okay, I wanna actually dig into one other thing you said. You said, you mentioned the word harness. I actually had this on the agenda for months for us to talk about harnesses. Did we ever talk about it? I don't think we did.

Matt Carey (28:37)
Yeah, dude, we talked about harnesses for code bases, I think in the last one. We talked about, we're already harnesses, but like best practices for using wasn't the best.

Wilhelm Klopp (28:41)
I see. Yeah, you're right. right. Yeah. Yeah. Yeah. But

you said that word a second ago and I'm curious what you meant by it. But I think the way I first came or what first prompted me to think about this is just like...

In like V0 have like part of the reason why V0 makes things that look so beautiful isn't just because I don't know, they've iterated a lot and they're a good team and all of this, but also because they have, they give the model like very, good harnesses specifically like Shadcn like the component library. And then also they made their own like fonts, right? Like, and they look beautiful. like if you take away the fonts and you take Shadcn and obviously Shadcn, you know, handcrafted, beautiful components, they were not vibe designed at all.

But you put those harnesses in there and the output of what V0 creates is much, more beautiful. So it really makes that point that if you give the model the right stuff to work with, it just is able to perform a lot better.

Matt Carey (29:36)
agreed on all fronts. Yeah, awesome.

Wilhelm Klopp (29:37)
So you

said you had a harness for making new MCP servers?

Matt Carey (29:43)
Yeah at the moment this is like commercially

probably not shoutable. ⁓ Yeah, just because of like a lot of stack one is how we turn specs into integrations. ⁓

Wilhelm Klopp (29:47)
this is a secret, trade secret. Love it.

Uh huh huh

uh huh.

Matt Carey (29:56)
And I know Guy Podgani wants to think that he did spec-driven design and raise loads of money before anyone else did, but I'm sorry, he didn't. Like, my bosses have been doing that for ages and the whole of our MVP and like everything that we've built up until now and all of our customers are using something that is based upon these specs. And so I think we think about this a lot. At some point, we're probably going to open source the base connectors and...

Wilhelm Klopp (30:01)
Hot take on the pod.

Mm-hmm.

Matt Carey (30:21)
for the MCP servers and so people will see like a lot of how those specs get converted to tools won't take very long before this comes out but like yeah it's just man you just gotta get your types right I think that's the longest you want

Wilhelm Klopp (30:27)
Nice.

I see, see. Interesting.

Matt Carey (30:37)
This is why I

the AI SDK is so good because like Lars and Nico and the whole team over there, they think a lot about how to make it very bulletproof for people. Like how can someone stop and just, the hints are so good that you actually just know what to put in the different places because it's there, right? And that's awesome. but a classic one is the arguments for tool calls are typed.

Wilhelm Klopp (30:49)
Mm-hmm.

Matt Carey (31:04)
When you destructure the args, they're just typed automatically from the tool spec. Like that's sick, right? That's sick. That just means that you can't mess that up. Like you can, you'll have TypeScript complaining at you. And so you really shouldn't mess that up. And that's what you've got to do for the model. Just every step along the way, like everything it has access to inside the handler function, everything it can do has to be like Zod validated and typed.

Wilhelm Klopp (31:06)
Mm-hmm.

Yeah, that's very cool.

Or Pydantic if you're using Python. No, I'm just kidding. I'm just trying to make this about Python. ⁓

Matt Carey (31:30)
Yeah, yeah, well, this is where, this is where, yeah, this

is where I think Python is really gonna like fail. and where I think, no, where I think it's been failing for a few months, if not a year or so now in the generating code with Python fundamentally sucks. because, because yeah, sure. You can statically type stuff. Yeah, sure. You can like have Pydantic.

Wilhelm Klopp (31:37)
Alright, hop take number two. Go on.

Matt Carey (31:55)
But nah, dude, your types are never going to be as accurate, as good as something that is like literally typed out the box Like you're adding it afterwards. And so I've had loads of situations with Python where like halfway through something, something is just not typed. And it's like, then the model like doom loops because Pyright's complaining or whatever. And.

Wilhelm Klopp (32:05)
Mm.

Yeah,

yeah, yeah. You know, the typing story in Python is definitely a lot trickier than in TypeScript or whatever.

Matt Carey (32:15)
Get that.

Yeah, I'm sure

some people have really good code bases where it's well set up. But from my like, I've struggled with that. And that's something the TypeScript is, I mean, head and shoulders better. Even like, even Go is gonna be so much better. If something compiles, you know, it probably works.

Wilhelm Klopp (32:28)
Mm-hmm.

so one piece of advice in terms of the harnesses for the rest of us who still trying to figure this stuff out is to just type everything really, really well. so I assume part of your process for getting Claude to generate MCP services is to have the specs be very typed or have the thing. ⁓

Matt Carey (32:49)
Yeah, it has to

generate a spec. And this is actually something that I learned that we weren't doing before, but I learned from the AI SDK is you just get way better types when you make the generation. I don't even know how you explain it. You know how on the AI SDK, you declare a tool, you can write like a JSON for a tool, but you can also put it in like a tool function if you use that.

Wilhelm Klopp (33:17)
Okay, nope.

Matt Carey (33:18)
Well, that's the thing that gives the typing because you can't really do type, you can do type annotations across individual keys and like generics and stuff, but you can't really do type annotations like nested. And so, but you can do nested stuff across like functions.

Wilhelm Klopp (33:30)
I see.

Matt Carey (33:34)
So yeah, if anyone wants, if anyone's really interested in how to make models perform, like look at how the AI SDK have done their typing for tools and having like a little utility function that you pass your stuff into. that is just, then your config or your code or whatever effectively gets built before you use it. And so you can snapshot that build and you can do loads of other stuff with that. But having that build process.

Wilhelm Klopp (33:53)
Mm-hmm.

Matt Carey (33:58)
is awesome.

Wilhelm Klopp (34:00)
Remind me,

so I I used the AI SDK once. We were building our own chat GPT kind of client in the browser thing and then adding our own tools as part of it. What do you use it for? Or what are you supposed to use it for? I get it's really cool. I just haven't used it for much.

Matt Carey (34:15)
Yeah,

so it's like a model agnostic.

I would say. wherever you would use the OpenAI SDK or the Anthropic SDK or all of those you would just use the AI SDK and you can declare different providers and they just made it really simple. So they have a couple of functions, one is called generate text which

Wilhelm Klopp (34:32)
Mm-hmm.

Matt Carey (34:33)
generates text, then you need one for structured output. What do you call it? Generate object.

Wilhelm Klopp (34:37)
I see, So, OK, so that's

actually already a lot simpler than using one of the model SDKs, which is you have to make a chat completion and then, yeah.

Matt Carey (34:44)
OpenAI.Chat.Completions.Response.Fucking

crazy shit. Generate text.

Wilhelm Klopp (34:52)
Okay, I'm sold.

Matt Carey (34:53)
and then, you wanna stream some text, what do call the function?

Wilhelm Klopp (34:57)
Do you call it stream text?

Matt Carey (34:58)
you do, man. It's not hard. It's really not

hard. So yeah, that's why it's beautiful. And there's some magic that goes on that you have to learn. Like they have like these data streams and stuff like that, that I don't really understand how they work. They're very JavaScripty. I've seen some examples. I implement the example, whatever. So there are some stuff like that that is a little bit confusing and some of the typing is a little bit gnarly, but if you use it how it's meant to be used.

Wilhelm Klopp (35:03)
That's awesome. Okay. Very cool. Very cool.

Matt Carey (35:25)
You're in for a winner.

Wilhelm Klopp (35:26)
Okay, alright. I... What have you been up to the past couple of weeks? You had like an offside or something?

Matt Carey (35:30)
yeah, we're in Portugal. That's what we missed last week. Yeah, I was in Portugal. It was super warm. did, we're in Porto. We did port tasting. I did loads of wine tasting actually. It was really good fun.

Wilhelm Klopp (35:32)
Mmm, sad, sad, sad.

Matt Carey (35:42)
Yeah, played a lot of paddle, went swimming,

Wilhelm Klopp (35:43)
no way.

Matt Carey (35:44)
played some pool, know, like snooker pool, billiards, you know. They have so many different words for pool and so many different rules. The Portuguese have some funky ass pool rules, which I'm saying that because I probably have my own funky ass rules, but everyone has different rules for pool, apparently.

Wilhelm Klopp (35:46)
Yep.

really, what do they do?

This is the pool that has like the half and the full colored balls.

Matt Carey (36:02)
Yeah, or spots and stripes.

Wilhelm Klopp (36:04)
what? Spots, like a like a dot. ⁓

Matt Carey (36:05)
Yeah.

no, it

like the spot is like the full colored ball and then the stripe is like the stripey one.

Wilhelm Klopp (36:11)
Oh, sorry, I see, see, yeah, yeah, yeah, yeah, okay.

Got it. Yeah. So

what were the rules that were different?

Matt Carey (36:19)
they had some where if you potted the white you could take out like a like a previous potted ball and stick it on a on an in the middle or something yeah there was some really random ones and I think there was some that were drinking orientated as well yeah it's Portugal they love drinking

Wilhelm Klopp (36:27)
What?

nice, that's great.

Matt Carey (36:36)
Am I gonna get cancelled for this? no, I love Portugal, it's so fun. Like the sea was awesome, it was really nice weather, it was really warm, but not like, I got back to London, it was like 35 degrees in London, but in London the humidity was 90 odd percent, in Portugal it was way lower. So in Portugal it's just like, ⁓ this is really comfortable. You can hang out, you can like, I don't know, just sit on a terrace and like have fun at three o'clock in the afternoon and not be like dripping.

Wilhelm Klopp (36:39)
You

You

Mm-hmm.

why it felt so warm.

Matt Carey (37:03)
I got back and immediately went to watch the rugby, went to watch England lose to France, which was really sad. My girlfriend and her whole French family were there and I got painted like England flag.

Wilhelm Klopp (37:10)
I saw a picture

of that actually. that's very good.

Matt Carey (37:15)
It was sweet until England lost and then it was sad. But yeah, anyway, they did really well. But I was sat there absolutely sweating in this stadium. As soon as the sun came out, you could just see around the room or around the stadium, just everyone immediately started sweating. And then the sun went away again. You had like a moment of like respite and then it came out again. You're like, oh, it's melting. Yeah.

Wilhelm Klopp (37:25)
Yeah, 100%.

Yeah.

That's awesome. What do you think makes a good work off-site? Sounds like this one was really good.

Matt Carey (37:43)
Yeah, this one was good. We were in like a big venue. We've done a couple now. Like previous ones were in like big houses because the company was a lot smaller. And now we're big enough that we essentially rented out a whole tiny hotel, but it was nowhere. So it had like, I don't know, big fields and a big pool and paddle courts and stuff, which was really cool. They use it as a wedding venue in the village.

Wilhelm Klopp (37:52)
Mm-hmm.

Damn.

That's awesome.

Matt Carey (38:07)
So yeah, this was really good because it meant like all of our food was provided and stuff. the last time we were like cooking and you spend a lot of time doing that sort of stuff. So this was a lot easier in that regard. But yeah, just have, I think the top tip for a work off site is to have less people. think, yeah, I think as soon as you go over around 20, it gets really tough. Like we were meant to have them every six months and this one's been a year because just so hard to organize. We have people who are like...

Wilhelm Klopp (38:12)
Mm-hmm. Totally. Yeah.

Mmm, stay small.

How many people now?

Matt Carey (38:33)
We're like around 30. And like that crossover from 20 to 30. I think we were 18 when I went on the last one.

Wilhelm Klopp (38:36)
damn, big team.

Matt Carey (38:43)
and or a bit less even maybe we had maybe we're 18 but only 15 or 11 or 12 or came something like that like it was like mid somewhere between 10 and 20 came and like that's great because you can get a castle in the south of spain you can like have a wonderful time and it just not be too much hassle you could still get ubers everywhere like three three big ubers and you've got everyone in right where's when you have 30 people you need many you need like coaches

Wilhelm Klopp (38:52)
Yeah

Mm-hmm.

Totally.

Matt Carey (39:12)
like a lit coach to turn up and take you places and so everything gets a lot more expensive and yeah but it was super good fun.

Wilhelm Klopp (39:19)
That's awesome. I was going to say one other thing about my Europe trip as well. was, we went to Berlin. We went to Berlin for a couple days, which was actually awesome. I've never really enjoyed Berlin that much in the past. I always assumed there would be a place I would move at some point because like everyone in Germany, I feel like spent some years there or whatever.

Matt Carey (39:23)
Yeah, dude, where's your team?

Wilhelm Klopp (39:36)
I feel like in the past I always, I looked at Berlin and I was like, it's so much graffiti. it's like so dirty. Like no one cleans the subway, it seems like.

Matt Carey (39:44)
and now you spent time in London and now

you spent time in London you're like my god I could eat a floor here Berlin is so clean

Wilhelm Klopp (39:52)
No, I think Berlin is for sure a lot dirtier than London. I would say. No, that's not that hot. I think that's a fact.

Matt Carey (39:55)
That is a hot take. That's actually a hot take. Dude, that is a hot take.

Nah, dude, I think that's a hot take. was listening, I was watching a Rainbolt short, you know, the GeoGuessr guy. Did I tell you about this? It was like a picture of, the thing opened and it was a picture of some dirty white tiles. And he was like, for sure, London Tube station. And I was like, what the fuck? And it was in Bankman.

Wilhelm Klopp (40:04)
yeah, yeah, No.

Hahaha

Damn. Banknotiles. Yeah, I mean, I don't know. I mean, I feel like there's not that much trash in the tube. Like there's just, well, I don't know. I'll stick with the hot take, however hot it might actually be. But I feel like on this trip, I just like accepted that Berlin is like Berlin. And I just appreciated like all the good parts of it. Like we went clubbing and we were, and it was just like so many young people. I felt like no one's working.

Matt Carey (40:30)
It is all.

Can't you do crazy stuff like you have?

Wilhelm Klopp (40:43)
at least in the place where we were staying. The food is really great. Yeah, it's like just...

Matt Carey (40:47)
Don't you have these like

corner shops with like tables and chairs outside that you can just like hang out and drink beers basically? Like outside? Americans could like never.

Wilhelm Klopp (40:53)
Total, Yep.

It was wild and there was, we went to this little, it was like a little market by the river and people were just chilling and like everything is like so cheap. It was just great. It felt really good. So would recommend visiting Berlin.

Matt Carey (41:09)
Did you go out to some good places?

Wilhelm Klopp (41:10)
You mean clubbing wise? We went out out, yeah. Oh yeah.

Matt Carey (41:12)
Does

this translate? Does Out Out left the UK? I don't ever know.

Wilhelm Klopp (41:23)
I don't know. I would assume so. I would assume it.

Matt Carey (41:25)
Yeah, I would assume so as well, this

might be one of those things that just never left. Nice, nice.

Wilhelm Klopp (41:29)
No, we went out out for sure. And then,

I actually have another hot take for you. United is like not a good airline at all, especially for long haul travel. Like I was reconsidering my options for it because I went on the first couple trips I did to San Francisco were always Virgin Atlantic and it was very good.

Matt Carey (41:34)
hit me.

Yeah, I'd agree with you.

That's good.

Virgin Atlantic's great. Cream tea in the afternoon. It's beautiful.

Wilhelm Klopp (41:50)
Exactly! The cream tea, the love hearts you get at the end. It's so good.

So this is basically... Well, actually, I'll come back to it in a sec. then I was like, okay, really, I focus on the loyalty approach to airlines because you really want to fly with the same alliance, like One World Star Alliance or Sky Team, consistently, right? And if you live in London, it makes a lot of sense.

to do One World and British Airways because BA flies everywhere like in Europe. And actually I will really back like doing like a little business BA trip in Europe I think is actually really, really nice. Like traveling like even though it's just like, there's something very special about like a 7 a.m. flight, like BA business class, even though you just get a little bit of extra space and like a little bread roll or something and you fly to like Croatia at 7 a.m. that's just like peak.

peak business travel experience in my opinion. And then so I would just start flying BA in like one world for everything. But the problem is when you're based in SF, the only airline that has like a hub in SF that flies both like to London and also like to New Zealand actually as well and like locally within the US is United. If you want to fly with any of the other big carriers, you always have stopovers at their hubs. So for example, you have to stop in Denver or Atlanta or...

I don't know, somewhere else. No, no, that is if you're flying domestically, I mean. So with Virgin, for example, if you'd have to, if you Virgin, that's Sky Team and Virgin, it's and it's Delta, so that means like, I would have to fly, like, if I wanted to fly with the same alliance, just always fly with Delta from SF. But Delta isn't based on SF, so like, you have to like, do layovers. You have to do layovers to fly other places. Anyway.

Matt Carey (43:08)
Virgin you done? Virgin you done?

Dude, you know way too much about this. I...

Wilhelm Klopp (43:33)
Long story short, the United, like, and I even flew business class to London and back, and I thought it was so poor. It was so bad. Like, I would say Virgin Atlantic premium economy is better than United business class. Yeah, I agree. And it's not that expensive.

Matt Carey (43:44)
The switching and lancing cleaner economy is amazing. Like, it's really good. I got it back from

sleeping. Yeah, it was like hundred quid more than the normal economy. Yeah, was pretty worth it.

Wilhelm Klopp (43:53)
Yeah, wild. So to me,

it's crazy though. And now I'm just, feel a bit sad because I feel like this whole loyalty thing has gone out the window. But I think no more loyalty. But the takeaway, as is often the case, actually the biggest lesson learned in San Francisco, I'm like, the food is expensive. Like, the loyalty thing doesn't work. But the answer is always very simple. Just make more money. And then you just pick.

Matt Carey (44:02)
Yeah, you're done. No loyalty. ⁓

Wilhelm Klopp (44:20)
You just pick.

Matt Carey (44:22)
We have to finish on that dude. have to finish on that. Will says make more money.

Wilhelm Klopp (44:24)
Alright, just make more money.

Fly, fly

Virgin, or fly whatever airline is your favorite airline all the time. Screw all the loyalty stuff. And how do you do that? You just make more money.

Matt Carey (44:35)
I fly Swiss in Europe. Sorry, not even BA.

Wilhelm Klopp (44:38)
Swiss Airlines. Really? Are they good?

Matt Carey (44:39)
Yeah, man.

Yeah. They don't care about bags. Super chill. That's the thing about it. Right, I have to leave you. I realize I've just talked the whole thing about cold code again.

Wilhelm Klopp (44:43)
interesting.

No, no, no, it's good. I wanted to ask you a lot of things about I'm building something with Claude code, which I also...

Matt Carey (44:54)
Can you show us?

Can we do our like first video thing and you can show us what you're building?

Wilhelm Klopp (44:58)
That would

be cool. Yeah, I mean, I don't I haven't actually built anything yet for it. Well, kind of. We'll see. Yeah, yeah. It's interesting because I want the pod to be like work in progress stuff, but also like I don't want to get the hit like from just talking about it, you the dopamine hit of like your thing.

Matt Carey (45:02)
Work in progress.

Yeah, I don't want to

share. It's like you want to share enough, not you don't want to like spill the beans. Because there are some like I think we're doing cool enough stuff that there are definitely beans to be spilled.

Wilhelm Klopp (45:17)
Yeah.

There are some beans. We're full of beans, as the Aussies would say.

Matt Carey (45:24)
Is

it just the Aussies that say that? Maybe it is. Right, I need to go. Take off. Bye dude.

Wilhelm Klopp (45:28)
I don't know, maybe not. Alright, bye,

see you, nice to you, bye.

CLOUDFLARE CONTAINERS!!! Claude Code vs AI SDK Showdown, Offsite Fun, United Sucks and Wil Goes Out Out in Berlin
Broadcast by