Sunil Pai, Agents SDK at Cloudflare, Becoming Accidentally Important at Work, React Core Team, Durable Objects EXPLAINED and Future of Computing

Wilhelm Klopp (00:00)
Wow, perfect timing.

Sunil Pai (00:02)
What's up guys?

Matt Carey (00:03)
That was

bang on guys,

Sunil Pai (00:05)
What are you talking about? Oh, are we recording already? Oh, okay.

Wilhelm Klopp (00:06)
How we doing? We're

recording. There's a, we do a cold intro. Actually, we're looking for a jingle. If you have any ideas or Matt, do you to do a jingle live?

Matt Carey (00:10)
Bye.

Yeah, I don't think so.

Wilhelm Klopp (00:17)
I was thinking you could sing it.

⁓ Wow.

Matt Carey (00:19)
Go on, please.

Sunil Pai (00:22)
C major, come on, let's

Matt Carey (00:22)
Please do it for us.

Sunil Pai (00:24)
hear it.

Can you even hear anything? can't tell.

Wilhelm Klopp (00:29)
Yeah, yeah,

Matt Carey (00:29)
Yeah,

yeah, yeah, yeah.

Sunil Pai (00:30)
Someone sing something.

Wilhelm Klopp (00:33)
That's gonna be you Matt.

Matt Carey (00:36)
No, I was talking to me. Well, that was beautiful, so no.

Sunil Pai (00:37)
Just bit.

Wilhelm Klopp (00:39)
That's a great jingle

though. thought there was also like a WhatsApp notification in there, I think. I think that should be part of the jingle. Cause very, very online podcast.

Sunil Pai (00:46)
and my insphalability.

Matt Carey (00:48)
Yeah, definitely. ⁓

Wilhelm Klopp (00:49)
Okay, so

now I'm so excited to talk to you because I feel like we've met kind of a little bit like here or there but never properly and I'm I want to hear your whole backstory to be honest because I feel like I am I've seen you on like I think over the years like on Twitter as this like somewhat mysterious but always very paternal figure

Sunil Pai (01:09)
Love that, me daddy. Yeah, sure.

Matt Carey (01:09)

nice. Yes uncle, yes uncle.

Wilhelm Klopp (01:15)
Can we start with your, so there's a German word in your Twitter bio. I've always admired that, but also not sure where it came from.

Sunil Pai (01:23)
⁓ Anshay Dung's problem is the thing that gave rise to both the Turing model of computation as well as lambda calculus. ⁓ Also, it just looks very cool to have ⁓ a weird German word in your Twitter bio. So, ⁓ sure, okay.

Wilhelm Klopp (01:40)
Yes. OK, interesting. wow.

I didn't realize it was a computing thing, but that makes total sense.

Sunil Pai (01:45)
It's something about, I think they talk about it in Gordel as Chirbach, about whether given a statement can you actually prove whether it's true or not. I honestly don't remember, just so we are clear. I'm remembering something back from when I was like, that's like a nice word. I'm absolutely going to steal it for my Twitter bio. That's the motivation here.

Wilhelm Klopp (02:04)
Nice, that's awesome. Interesting. Yeah, I'm not smart enough to know what lambda calculus is. ⁓

Sunil Pai (02:11)
It's functional

programming nerds for the six people on the planet who care about that sort of thing. That's where it comes

Wilhelm Klopp (02:16)
That's funny.

I want to get back to your backstory because, so we figured out the Twitter bio word. And then did you come to London at some point to work on React?

Sunil Pai (02:28)
I, okay, so I had just finished in India. I was working for an e-commerce company that we took from startup to acquisition. And that was horrible news for me because it means you're not really the underdog anymore. know, it's not really, so I got bored and I decided to take a couple of months off. So I just took, which ended up being like a whole year. I just got stoned and did open source.

Wilhelm Klopp (02:42)
Mmm.

Sunil Pai (02:52)
It was really good. I like travel did conferences and shit. I was running out of money and I was actually applying for a job in Google and They told me yeah, why don't you do you would you like to be a dev rel for Google? I was like, okay, it's Google money. Why the fuck not? and

Wilhelm Klopp (02:52)
Nice, that's amazing.

incredible.

Sunil Pai (03:07)
Dan Abramov, a buddy of mine in Facebook, he message, he's like, well, if you're showing up in London, do you want to interview with Facebook as well? It's like, sure. Google rejected me. and, which is why I took the Facebook offer and apparently I think it got at least one Google recruiter fired or they got like disciplined there because they were in the middle of a hiring war at the time. yeah, but I joined and I actually didn't join react.

Wilhelm Klopp (03:29)
Wait,

why did they get disciplined? Because they didn't hire you? Or because...

Sunil Pai (03:33)
Yeah, yeah,

yeah, exactly. Because then I announced, hey, I'm joining Facebook and everyone's like, why is he not at Google? They were in the middle of like a hiring war at the time, especially in the front end space. That's just the rumor I heard. It was hilarious. Like even the feedback I got from the interview and stuff, was like, I don't really care. It's fine. Yeah. ⁓ I spent a year and a half in Oculus.

Wilhelm Klopp (03:39)
I see, see.

That's some good lore too. ⁓

Matt Carey (03:49)
You

Sunil Pai (03:55)
I think that's the most sci-fi job of my life. I was basically writing React for VR. It was amazing. Just, it was cool is what it was. I did a year and a half there. Then I got invited to join the React Core team. I did very poorly on that team, but it's fine. I tell people I was on the React Core team. It counts as a win. And then I did other stuff.

Wilhelm Klopp (04:13)
That sounds like a hard

team. Okay, okay, so

Do you know why you were invited onto the React Core team? I feel like you have this reputation of being like very prolific and working in public kind of figure. like lots of like great feedback and like, I think if you've ever maintained anything on open source, the vast majority of the feedback you get is very disheartening and like not of any quality or whatever. So I imagine that's when you come and you know, do something completely better and way different, that really gets noticed.

Sunil Pai (04:23)
Yeah, sure.

Wilhelm Klopp (04:42)
Is that fair to say?

Sunil Pai (04:43)
I did a bunch of open source stuff before that. I was doing a number of things in the React community. Okay, so you ought to understand, 2015 to 2019 is basically the golden age of React. Completely new programming model, component model, way to rethink everything from scratch. And I got lucky at the time just by involving myself, just doing a whole bunch of shit.

speaking at conferences. And when I say golden age of React, it was back before DevRels and VCs had taken over conferences and meetups. I'm friends, some of my best friends are DevRels, but fuck them. So it was a time of, I want to say like invention. Like people made some real names by coming on stage and.

Wilhelm Klopp (05:18)
Hahaha

Sunil Pai (05:28)
producing original work, things that fundamentally changed the industry. Like I remember when Vincent Rehmer made React Native DOM, that was crazy. That was a blowing the roof off moment in Paris. Anyway, so I had like a couple of wins like that and I saw as friends with the React team, et cetera, et cetera. Which is why after a year and a half, they were like, hey, do you want to just come onto the React team?

They made a fundamental mistake because I had never actually contributed to the React JS code base, the actual code base. And I don't know you're familiar with this, it's the weirdest code base ever. It's basically an implementation of like a virtual machine kind of, and a rendering engine. It's so hard to get into.

Wilhelm Klopp (06:01)
Hmm.

Sunil Pai (06:09)
And that even that would have been fine except doing it in inside Facebook also means that you're a victim to Facebook's performance cycle. Like every six months they do like a PSC, you have to get people to say nice things about you and shit. And I was floundering for a year. was just like, I, were some things I did really well. Like I managed to actually ship a couple of versions of react, got things together, all of that. But actually committing core features was so hard. I know.

Wilhelm Klopp (06:18)
Mm-hmm.

Sunil Pai (06:37)
And I don't know if you can tell from, well, I don't, this might not be the case anymore, at least at the time, every member of the React JS Core team had a thing that they were attached to. So Brian was doing dev tools. Dominic was doing the DOM part. Funnily enough, Andrew and Sebastian were doing core stuff. Dan was a little bit over the place, but he also had like a bunch of things he was focused on. And I had some things I wanted to ship, but I never really like.

Wilhelm Klopp (06:37)
Mm-hmm.

Hahaha

Sunil Pai (07:03)
And that combined with like the performance cycle, the fact that I was under leveled because I didn't check how how much my pay should be. I was like, you know what, I want to go work for a bank and make some money. I was just kind of like done. And the timing was horrible, bro. I quit Facebook in April, 2020, ⁓ right before lockdowns kicked in.

Wilhelm Klopp (07:15)
Nice.

Hmm.

Sunil Pai (07:26)
I think I got lucky that I found myself a job because it was a weird time. Worst thing about working for a bank during COVID, I mean, there were many things. I never went to a coked out Christmas party or anything. I got a free t-shirt and a notebook, bro. I was like, this sucks. Jesus. I did, I joined JP Morgan. spent a year there.

Wilhelm Klopp (07:38)
Hahaha

How long were you at the bank for? And so you did end up joining the bank in April.

Sunil Pai (07:48)
And I got quickly quite bored. I'm never working for a non-tech company ever again. I mean, I don't think I'm ever going to leave CloudFlare again, but like, so I did that for a year and that's when CloudFlare announced the beta of durable objects. And little did I know that my, wow, it's going to be about four years of obsession with that shit coming on four, four and a half years now. It's been nuts like that. Yeah, literally August, 2020 is when the beta was announced and that took over my life.

I don't know if, well you do follow me on Twitter, you can see that I can't shut the fuck up about it.

Wilhelm Klopp (08:17)
Hahaha.

Matt Carey (08:17)
It's mad, it's not actually

that long ago. yeah, ⁓ it's not like crazy long ago.

Sunil Pai (08:20)
Yeah, it's not too bad. ⁓ But yeah,

that's my UK story. Then I did Cloudflare for a year.

Wilhelm Klopp (08:24)
That, yeah. And that's before

Cloudflare and Particle and everything. Yeah. That's wild.

Sunil Pai (08:29)
Yeah, yeah, yeah. I did CloudFlare

for a year. I rewrote their entire CLI. Things were going really well. So one day I woke up and quit my job and everyone's like, why? What did we do wrong? I was like, no, bro. Like I've just, I'm going to do my startup for a bit. I did PartyKit for a year and a half. Uh, and I got acquired back by CloudFlare. And the first thing they asked me, the first thing they told me, they're like, Sunil, this is a super complicated way to get a pay rise. I was like,

Yeah, but it worked.

Wilhelm Klopp (08:59)
There's a funny story also, I think I heard someone say somewhere, I'm not even sure if you were involved in this Twitter discussion or whatever, but someone was saying, so durable objects, they are so complicated that there is this guy who left Cloudflare to make durable objects way more understandable and accessible. And then he was acquired again by Cloudflare and he's now working on durable objects again. So.

Sunil Pai (09:18)
I've seen that tweet, yeah.

Wilhelm Klopp (09:20)
Okay, okay, nice, nice, nice. I thought that's also

a hilarious part of, a hilarious bit of lore. I think Matt obviously is a huge durable objects fan. I understand them a lot more in theory than in practice. so I'm a huge Cloudflare fanboy, but aren't, okay, great. So I am very orange-pilled. Although that feels like that could be, that has some political undertones.

Matt Carey (09:27)
I've been converted.

Sunil Pai (09:29)
Hello?

We call you orange belt, by the way. That's the phrase we use for people like you. Orange.

Thank you. No, it's more

that you could also be a fan of Pornhub. It's either Cloudflare or Pornhub.

Wilhelm Klopp (09:47)
Or Cheetos. So how do I get DO-pilled? Now, if I'm already orange-pilled, what's the pathway?

Sunil Pai (09:48)
Or cheetos, sure, yeah.

So the usual thing that happens at least in the UK is you have a drink with me in the pub. That's, I can think of at least 10, 15 people. I think that's how it happened with Matt as well. I just sit you down and I'm like.

Wilhelm Klopp (10:01)
Hmm.

Matt Carey (10:06)
No, how it happened, I wanted to say how it happened with me. So,

I met you both at the same time, guys. We met at a dinner organized by Chris from Granola.

Sunil Pai (10:16)
The granola thing, yeah, yeah, yeah, that's right. That's where we were.

Wilhelm Klopp (10:18)
That was fun. That was really fun.

Matt Carey (10:18)
Yeah, we met at the same time.

So I just think this is mad that I've spent a lot of time individually with each of you. Yeah, I am too very orange filled, but we've never done this together.

Wilhelm Klopp (10:24)
By the way

Sunil had an insane aura at that dinner. I just remember it. You were like commanding things. I was like, whoa, this guy.

Sunil Pai (10:31)
you

I wasn't trying, wasn't really, it was

just a good time. It was because I knew, I think I knew three or four people, but also I didn't. And it was just positioned so that I was like, also we had it in bow and I kind of knew the menu. It's one of my favorite restaurants. So I was like, you should eat this. You should use durable What's up, Matt? We should do a hackathon together. I don't know. Like there's just like multiple things going on at the same time. It was a good dinner. I remember that.

Wilhelm Klopp (10:49)
⁓ that's awesome,

Matt Carey (10:54)
Hahaha

Wilhelm Klopp (11:02)
That's a

good breakdown. That's a good breakdown.

Sunil Pai (11:04)
It was nice.

No, the durable object thing is, I don't know how familiar you are with things like actor model and stuff. functional programming nerds have known this for a while, especially the Erlang people will tell you they've had it for 30 years, right? Well, 40 something. Congrats to the 12 Erlang developers on the planet. ⁓ It's the first implementation of that at like an infrastructural level.

Wilhelm Klopp (11:13)
Mmm, not.

Yeah

Sunil Pai (11:30)
And I think the way I've started telling people is what if you could have little programmable mini computers? Look, the whole thing is that everyone thinks about servers as a stateless model right now, because everyone thinks about it in terms of Lambda function that takes a request returns a response. But the truth is back in my day, you had to actually spin up like node servers and manage them and

Wilhelm Klopp (11:43)
Mm-hmm.

Sunil Pai (11:54)
you would literally write code that started a server inside the process and things like that. Now imagine if you could do that, but very cheaply and at scale, like you could spin up millions of them and all of them were addressable. And I like the word addressable means you could give each of them a name. So what that means is what if I could spin up an instance of a server for every email address on the planet, for every user on the planet?

and everything happens in the context of that. This is unheard of for serverless programming because functions aren't addressable. There's no ID that you can give a function. You can't talk to the same function twice. Well, at least you can't guarantee, right? Like that it'll receive the two requests in a row. So you can't hold anything in local state. Like when I say local state, I mean literally like a let or a const. ⁓ But you can do that with a durable object. It just spins up and you can connect to it.

Wilhelm Klopp (12:28)
Right, yep.

Yep, yep, yep. ⁓

Yep, yep.

Sunil Pai (12:45)
And because it sticks around, can do stuff like web sockets and it has like scheduling and a whole bunch of other things fall out of this model. It's the simplest thing, but instead of a function, you imagine it to be a class and you can assign it for different things. So it makes doing things like, multiplayer, like super easy. So, party kit actually started because I was hanging around the TL draw team. And I assume you're going to get Steve on this podcast at some point.

Wilhelm Klopp (13:02)
Mm-hmm.

Matt Carey (13:10)
We had Luan already.

Sunil Pai (13:11)
Of course, I've already got you.

Wilhelm Klopp (13:12)
Yeah, you're

guest number two and Lou was guest number one.

Sunil Pai (13:15)
Amazing. Oh shit. Okay. All right, fine. At least the order is fine. Right after I quit Cloudflare, I was hanging around Steve and he wanted to replace his multiplayer provider, how they built shareable TL draws. And I was like, I know durable objects and it's going to be cheap as hell. So that's where we like, I actually proved out the idea. So every document in TL draw that you share that gets an ID is one durable object instance.

Matt Carey (13:15)
Yeah, sorry. They beat you to it.

Sunil Pai (13:40)
And the code is stupid, it's a client sends a message, the server broadcasts that message to everyone else. It's a for loop, by the way. It's two lines of code to do that thing. It's a lot more complicated, but it's impossible to do this with any other infrastructure. You can just be like, yeah, sure. Like there's a durable object that you can connect web sockets to and do these things. That's when I realized, okay, fine. There's clearly a business in this. Well, I knew that there was a startup in it. What I didn't realize was

Wilhelm Klopp (13:41)
Interesting.

Sunil Pai (14:07)
was that there isn't actually a business in it, which is why I fooled Cloudflare into acquiring me back. That's my story.

Wilhelm Klopp (14:09)
Hahaha. ⁓

Amazing. Okay, wait. So Party Kit started after the TL Draw expiration. And what was the kind of additional layer of simplicity or... I remember it had great branding as well, right? Like that you could like pop balloons and like it said something like, everything is better with friends or something like that, Such a line.

Sunil Pai (14:20)
That's right.

That's such a good line.

I'm still very proud of that one. Yeah, the other thing I did was I kind of, still do, Cloudflare's DX could be 10x better. So I wanted to take a crack at that, especially around like stuff like durable objects. and I've been working on something to fix that inside Cloudflare right now. can tell you about it later, but having to declare classes and bindings and migrations before you write a single line of code.

Wilhelm Klopp (14:47)
Mm-hmm.

Sunil Pai (15:00)
It's garbage. It's terrible. So I fixed that with PartyKit. built a whole new, which is to say I built a developer CLI for Cloudflare, quit and built another one again. So yeah, I fixed all of that. And to this day, we never even shipped a dashboard for it. The CLI was good enough for everyone, which was also awesome. You could just build, ship all we needed was a GitHub login, which you could do in the CLI. ⁓ So...

Wilhelm Klopp (15:00)
Mm.

Sunil Pai (15:23)
My favorite thing was when whenever I did customer calls, they'd be like, how much time should we put aside to build a prototype? And I was like, no, we can do it on the call right now. And they were like, what? I'm like, just share your screen. I won't even touch anything. You type it in and within like five minutes, 10 minutes, it would be done. And they'd be like, okay, so how are you going to provision servers to scale this? I was like, I don't care. This is cloud floods problem in scale. ⁓ So I think

Wilhelm Klopp (15:46)
It's already done, yeah. That's amazing.

Sunil Pai (15:50)
Having that really quick, yep, can do it like, we can ship it like right now, like got a lot of people into PartyKit and not worrying about breaking the bank and stuff. was kind of an amazing journey. I really enjoyed it.

Wilhelm Klopp (15:53)
Mm-hmm.

Yeah, that's awesome.

And then you said it couldn't become a business. Why?

Sunil Pai (16:05)
So when you're building on top of something like Cloudflare, there are two or three directions you can go. The first one is you build effectively a rent-seeking business. You provide the same product but a little better, and you charge a fraction, well, some multiple more than you this thing. ⁓ Well, because Cloudflare is so cheap.

Wilhelm Klopp (16:23)
Mm-hmm.

Sunil Pai (16:27)
It's not like you can charge that much more on top of it. So people loved it. There was a shit ton of traction still is by the way. think we have over 10,000 projects deployed on PartyKit. It's kind of insane. The other is that you build verticals. You're like, okay, fine. I'm going to build the best chat back in. I'm going to build the best this thing. I think that would have been a thing that I could have done. And the other is take it in a whole other direction.

Wilhelm Klopp (16:37)
wow, that's amazing.

Sunil Pai (16:49)
which is of course the AI thing. Like it was clearly like leaning in. And honestly, I don't think I had the, I had some other issues like with the startup. I don't think I had the energy after a while to figure out 40 things by myself while the entire nature of computing was like shifting underneath me. But for Cloudflare, it made sense because they'd been struggling to tell the story of durable objects for

three years at the time. And they're like, do you want to come continue doing that here? Because I'm still extremely close to everyone in the company. I mean, the CEO was on my cap table. had the most insane cap table. And I was talking to them so often, they knew my plans. They were like, you should just do this in Cloudflare. So for example, doing AI agents on durable objects was a plan that's about two and a half years old.

Wilhelm Klopp (17:14)
Mm-hmm.

You

Sunil Pai (17:36)
I mean, still on the website, even though I never implemented it at PartyKit. I built the agents SDK for CloudFlare and it's built on PartyKit. It's built on the PartyKit source code. It's basically the same underlying thing. It was always the plan to do that. And earlier this year, we were like, yeah, let's pull the trigger on it. The timing is right. But I don't know, man. I just like, like, I love building things, but having to figure out.

I don't know, MRR and shit. I was just like, I don't know if I can do all of this by myself, Yeah.

Wilhelm Klopp (18:02)
⁓ That's a whole other thing. Okay,

super interesting. Yeah, I feel like I have lots of questions about durable objects, but maybe some of them are explained by the whole AI agent's angle. So with durable objects now and the agent's SDK, I assume there's a thing where every durable object is an agent or something. I think, Matt, maybe you've said this to me. Okay.

Sunil Pai (18:22)
That's exactly right. That's exactly right.

Every agent is a DurableObject instance. They can talk to each other. you know what? That's it. Every DurableObject. My first version of the framework was literally export DurableObject as agent. It was a one line thing. And I said it as a joke. And then I just started adding some features around it to do some fun stuff.

Wilhelm Klopp (18:41)
⁓ nice.

Sunil Pai (18:45)
sometime last year internally, think I started ringing the bell. Hey, AI agents are coming. We need to be prepped for it. And it's very hard to just say it to people who have full roadmaps and priorities. they're like, cool, Sunil, good job. Thanks for letting us know. Like, shit. Which is why I started blogging a little about it. I started tweeting a whole bunch of things about it.

So then two things happened. One is I was able to influence the company from the outside. Like people who follow me on Twitter and my blog, they're like, oh shit, kinda knows. And then in January, I think our customers started asking for it. They're like, okay, fine. Like we want to experiment with these AI agent frameworks. We want to do this. We want to do that. Do you have anything for us? And they were like, well, this guy has been talking about it for the last few months.

You want to like talk to him. It was insane. I said, Cloudflare has, I don't want to say a lot of customers. Cloudflare has every customer. Okay. Like everybody uses Cloudflare. So then I'm dumped into meetings with, I think I spoke to at least two billionaires in the beginning. And I had to like get a fucking haircut to prep for that meeting. Of course it turns out billionaires don't give a shit what you look like.

And I was just like listening to them and I was like, yep, we can do this. This is actually going to be quite straightforward for us. And even Cloudflare people are like, really Sunil? I'm like, yeah, it's fine. Like we have durable object. Let's chuck the problem at it. So a question that keeps coming up as well. How are Cloudflare agents different from Lang chain agents? How are they different from crew AI agents? And it turns out that

Pretty much every AI agent framework slash company on the planet, they build the library for defining the logic, right? They're like, this is how you do multi-agent. This is how you do handoffs. This is how you do, I don't know, memory. We have memory providers, all of that shit. But the agent's SDK is actually the execution container. It's what you should run your agent framework in. It's like, we actually have a little class that you got that will give you memory.

that you can use to build websites on top of that has scheduling. You know how your agent framework says, can output something that says run this every night at 9 p.m.? Well, conveniently, we have the API that you feed that into that will run your thing every night at like 9 p.m. So that's been the big bet around the agents SDK. Well, that was our bet and it turns out to have been the right bet. It's been going.

Wilhelm Klopp (20:59)
tested.

Yeah.

Sunil Pai (21:03)
Swimmingly well. The way I like telling people is become important at work. shit. Okay, man.

Wilhelm Klopp (21:09)
that's awesome. Head of agents at Cloudflare with us. That's what we'll put in the title, in the podcast title.

Sunil Pai (21:12)
Sure, man.

Matt Carey (21:16)
I

was listening to Dax's podcast and they had Adam Wolf on. ⁓ He seems like he's, I mean, runs Cloud Code Anthropic. And it seems like he's actually done a very similar journey from you. Like I was listening to, I was making parallels in my own head. I was like, he worked on React, he worked at Meta, and then now he works at Anthropic. Yeah, mad, right?

Wilhelm Klopp (21:21)
yeah, listen to this as well.

Sunil Pai (21:33)
Dude, he was head of the React organ Facebook. he was, yeah,

Adam was the head, yeah.

Matt Carey (21:39)
Yeah, proper.

And then he went over to Anthropic and he was explaining the reasoning of why he went to Anthropic. And I was like, he's just ridden both those two trains. He rode web and mobile and now he's riding AI and it's sick. And I was like, shit man, Sunil's done the same thing. And I was like, that's so cool.

Sunil Pai (21:57)
I think he's made a lot

more in equity than I have, but yes, otherwise we are exactly the same person. Yes, Adam Wolfman and are the same person.

Matt Carey (22:03)
exactly the same.

Wilhelm Klopp (22:04)
Ha

I'm keen to get my level of durable objects one level deeper, if you'll indulge me. So what are the things Cloudflare agents couldn't do without durable objects? So I get that they can hold state, I guess, for as long as you want. But practically speaking,

Sunil Pai (22:23)
Okay, let's think of a feature, okay? Let's say you wanted to do this with plain serverless programming. You want to build a chatbot. You literally want to type into the chatbot, tell me a long story, okay? And your implementation is, or you use AISDK or whatever it is, and you make a fetch to the LLM and you start streaming it back. Let's say it's in the middle of streaming that and you close your tab. What happens?

Well, the stream dies. You go back to it and it's not there anymore. And you're like, well, shit, now I need to, I need to somehow keep streaming that even though the connection dies away. Okay, so that's one problem, quite hard to do with serverless programming. I need some kind of state. I need a database to store this in. So now you have to it into Postgres.

You want to make sure that multiple clients are seeing the same thing. So if I open up two tabs next to each other, or I have my phone on the same thing, you need to make sure that they're streaming the same thing. So now these things are connected like to your database, but now there could be like race conditions. What happens if one person types the other person types? How do you make sure that the ordering of messages are the same? Let's say that you want to build functionality for that agent to wake up and

do something at 9pm. Okay fine now you need to build a whole background job processing thing. How do you make it so that some users who use the thing very heavily don't... It's called a noisy neighbor problem. Like what happens if you have like 6,000 users and they're ruining the experience for other people. So first of all, what you thought would be a simple straightforward, like let's build this over a weekend, suddenly becomes a...

2000 story point, multi-week, potentially multi-million dollar investment, right? Because now you need to provision this. You need to figure out how to do real time, right? Screw you if you want to do like web sockets. You're like in another whole hell itself. You're not even using serverless programming. And this is just like for AI chat apps. There are like multiple versions of this problem. There's real time multiplayer, there's collaboration, there are game sessions.

Wilhelm Klopp (23:56)
You

Yeah.

Yep.

Totally. That's really interesting. So, yep.

Sunil Pai (24:17)
So now in this world, suddenly

if you could guarantee, no, like for every session you want to spin up one thing that every client that connects to will connect to the same process, the same V8 isolate that we spin up. Remember I was telling you about like broadcasting being a for loop. Like that's almost, that's an insanely hard distributed systems problem without the active model. You have to like coordinate it because you don't even have one database instance. You're using sharding to make sure you don't die over the load.

look. reason that the entire internet right now is a pull-based architecture instead of push-based is because we couldn't figure out how to scale web sockets like well, And it's why you invent graph QL. That's why you invent rest and HTTP. Like screw that man. Connect with a web socket, start sending messages. The things you have.

Wilhelm Klopp (24:54)
I see, see. Yep.

Matt Carey (25:03)
I feel like a lot of people

who are into durable objects, like least there's quite a large overlap with people who are into like local first programming. But would you say that? like maybe you could talk a little bit about some of the pros and cons, because when you're talking about the chat application, I mean, I see the zero guy on Twitter as well, just saying basically zero is the thing that you should be using for this use case. that's all you need. Nox ever have.

Sunil Pai (25:23)
So for

local first, it makes sense. So the zero story is interesting because they built replicash first, which was a syncing solution. And then they built a hosted service on top of it called reflect, which was powered by durable objects. So they have done that journey. And now this version doesn't run on durable objects yet. It probably will at some point. But it's more concerned about

just the data story, the Postgres data story. So for example, you still can't do something like shared cursors on a page with zero. It's not recommended. Aaron specifically says, don't use zero to do shared cursors.

and a lot of these syncing solutions actually act at the level of the database itself. So electric sync works on the database level, like Postgres, I think. Something like a LiveBlocks powered by durable objects. problem at the compute layer. They're more like at a data layer itself.

Wilhelm Klopp (26:11)
Mm.

Mm-hmm. Yep.

Sunil Pai (26:18)
Durable objects are a, honestly somebody builds a great sync solution on top of durable objects directly at that. It'll just happen. And I'm hoping that that solution is LiveStore. LiveStore is a local first thing made by Johannes Schickling. He's the ex founder of Prisma. Graphical, exactly. Yeah, I love him and Sorin. Sorin was actually on my cap table as well. So.

Wilhelm Klopp (26:25)
Mm-hmm.

yeah, and graph cool and all of this stuff, right? Yeah, that's really interesting.

this is so, okay, so can I hit you with like a completely different perspective? Because I come like from the Python Django world. And one of the things that's been super popular in like the past two years is this thing called HTMLX. Have you come across? And I think like this is like kind of going like the other way, right? It's like leaning more into the pole based model. And I have to say like, I also really like it because...

Sunil Pai (26:47)
Yeah.

Yeah. Yeah.

Wilhelm Klopp (27:07)
It's just like simpler in a way, right? So I mean, I guess I'll give a quick one-liner description for anyone who might not be familiar, but like, guess HTML is a way where like, as like a backend heavy developer, like a Django Python developer, you don't have React on your front end. You have this like tiny little JavaScript library and you essentially annotate your like HTML with like, when this button is clicked, fetch this thing. So it's kind of like a much improved, more deterministic jQuery or whatever, but you can like, ⁓

Sunil Pai (27:36)
It's probably

Wilhelm Klopp (27:36)
Thank

Sunil Pai (27:36)
closer to like a meteor, but I can definitely see the influence of, there's that elixir framework like Phoenix type. yeah, yeah, yeah. Those are also like quite similar. It's like meteor. Yeah. Basically you do these annotations on HTML elements directly and it assumes a bunch of things. ⁓

Wilhelm Klopp (27:39)
Sure, sure, yep.

yeah.

Yep.

And then

the HTML you return from the server on the back, like that can have further annotation. And so you can kind of keep chaining it and keep going. And you just write backend code, essentially. it's very, it's a, like, I think this is even aside from HTMLX, like, I think my biggest love for the pole-based model is that there's an incredible simplicity that comes from like statelessness, right? And it's much easier to debug. You're never like, there's this alive thing. Let me try and like,

I don't know, shell into it or like hook into it and then see like what the variables are or whatever. It's a lot. So, and simplicity is like a real nice thing to have in like a complex system. So yeah, what do you think?

Sunil Pai (28:36)

Fun fact, somewhere on my laptop, I actually have HTMX running on a durable object and it's awesome. And the way that I do real time for it, thing that like, should you know what, should actually put it together. What I really like is I've set it up so that any time, the way that I do multiplayer with HTMX is anytime there are any changes, I just send a ping to all connected clients to do a fresh pull. ⁓ So that like,

Wilhelm Klopp (28:41)
Wait.

Hmm.

Sunil Pai (29:03)
gets me close enough to streaming real time stuff with htmx. I would blow some minds if I tweeted out that repository someday where I'm like, you'd think that I'd be against htmx since I'm a react fanboy and stuff and I'm like, no, you've never seen htmx the way it's... Thanks for reminding me, it's been a few months since I've touched that, I should actually just get it running.

Wilhelm Klopp (29:08)
world.

Either way you use it.

Okay. But you find the kind of push model and the like aliveness and liveness that it can deliver like superior to the Paul model, even though it would you agree it's less simple? The push model.

Sunil Pai (29:35)
The thing that solves the push model are sync engines. That's the thing that happens because the moment you have a sync engine, all the code that you write on the front end is effectively, well, it's actually synchronous to like a data store that runs on your client. It's like working with a database in your browser. ⁓ And...

Wilhelm Klopp (29:38)
Okay.

Mm-hmm.

Sunil Pai (29:54)
which makes stuff like testing like so easy, right? Like, yeah, just put a bunch of data in the browser DB and like run tests on it, et cetera. the entire synchronization layer is its own thing that's tested by VC funded startups right now. ⁓ And either you're interfacing with another database on the backend directly.

Wilhelm Klopp (30:09)
Hahaha!

Sunil Pai (30:13)
or you're talking to API endpoints and you're just writing down logic where, this means call this API call. And again, that becomes like incredibly straightforward. Sync engines, I think are what solve this complexity. For the last couple of years, I've been hoping that sync engines make it big, like really go mainstream. And I think it'll still happen within a year or two. The other thing is in a world of streaming data and

highly interactive AI agent, what have you. Pull-based models just fall apart. If you don't have a push-based model, you're always looking at stale data.

Wilhelm Klopp (30:47)
Right, unless

the agent can be so autonomous that like whenever it's done, it like, I don't know, updates something or whatever.

Sunil Pai (30:52)
That's what it does. You're basically halfway

there to a push base model. It has to ping your client and say, I get some fresh data. that's the thing. Like the moment you have, like you said, like autonomous little processes running in the background, you kind of need a real time view into everything that's happening.

Wilhelm Klopp (30:56)
Yeah, yeah, fair enough.

Yeah, okay, that's a good pitch. I want to ask you about AI stuff actually, besides what you're building, also how you're using this stuff at the moment. Maybe we can start with where are you on the hype scale at the moment? Are you, this stuff still doesn't work for me too often? Are you like,

Matt Carey (31:22)
Okay.

Wilhelm Klopp (31:26)
could work really well for me if I spent even more time learning how to be a great context engineer, I guess we call it now, or you know AGI is going to take us all in the next 12 months. We're not going to be writing any more code. We'll just be writing English to agents. I'm curious where you fall on all these different hype spectra.

Matt Carey (31:41)
you

Sunil Pai (31:44)
Well, for writing code, think upwards of 90 % of my code is like cursor now. And now they have like background agents and all, and it's a shit ton of fun. It took me a while to figure out how to be effective. And by the way, this is extremely annoying to me that it turns out making a to-do dot MD file makes it like 10x better. I'm so annoyed that it works so well, by the way.

Wilhelm Klopp (32:06)
Mm-hmm.

Sunil Pai (32:07)
You're like, you think it's going to take like a much better model or like much better tools. Nope. To do dot MD. for context, actually wrote a whole blog post about how I think AI agents need, task tracking software. It's on my blog. ⁓ but it turns out the simplest form of that, which is to do dot MD is like the thing that works. you get the LLM to write the to do dot MD file by the way, as well, which is just the most hilarious thing.

Wilhelm Klopp (32:21)
Mmm.

Totally, yep.

Yep, yep, yep.

Sunil Pai (32:33)
You do that and

then like then you tell the agent hey close your eyes a little bit and look at all the assets I've made you I've made you little fixtures and the to do and cursors like thank you this is so helpful I will now do the rest of the job you're so nice dude I'm like cool like happy to take credit for it no I think coding like I think building front ends is I think building 80 to 85 percent of the world's front ends is kind of a solved problem

Wilhelm Klopp (32:45)
Ha ha ha.

That's awesome.

Sunil Pai (32:59)
It's another thing that it's going to take enterprise orgs a while to like use it, but they're already doing it, bro. Like I think doing UIs, it's so over. ⁓

Wilhelm Klopp (33:09)
Hahaha.

Matt Carey (33:10)
The

design, Samuel, the design, like how people interact with it, surely that's still going to be someone just like making things look pretty. Like Figma's not dead anytime soon.

Sunil Pai (33:21)
Bro, go work in JP Morgan for a year. By the way, every time I hear this thing about people care about the craft and design, I'm like, you haven't worked in a bank. you just, I don't know if you edit this post for profanity, but nobody gives a flying fuck dude, like for 80 to 90 % of the UIs that are built. That's just it. Of course I care. And the things I want to build have to be like really good. And those are the things that'll do really well. But

Matt Carey (33:24)
They don't have design.

Yes.

You

Sunil Pai (33:48)
Rank and file meat and potato software that's being built across the world. They don't care, dude. They're being built by like nine to five engineers who like just want to go home. They have a component system. So you can chuck that context. It spits out a form and you're like, I'm

Matt Carey (33:52)
Yeah.

Mmm.

I

hear a lot about like, like nine to five engineers, like people don't care, like, I don't Everyone thinks their software is the software that's not going to be taken by AI as well. Like, no, my thing's special, I promise. Like my thing is the only thing that we can't do with AI. And then everyone else is like, ha, no, my thing is the only thing we can't do with AI. I don't know, I don't know. I've heard a lot of this recently.

I was advocating for your thing but then as soon as you started advocating for your thing I was like no your thing is going to get taken by AI as well.

Sunil Pai (34:32)
Uh, so, I think, I think coding is dude. And this is a thing I've gradually been changing my mind about for the last six months. Right. Like I was taught how to use cursor by a 19 year old intern in cloudflare. That intern, by the way, is Dhravyasha who made superman. He got on a call with me. He wanted, by the way, that's just it. The kids still don't know how to debug the software. They reach out to senior engineers. So they're like, can you please help me? I have no idea. And then he, dude.

Matt Carey (34:49)
yeah, yeah.

Sunil Pai (35:00)
They use it for the smallest things, dude. They're like, can you like rename this variable? I'm like, you're like burning down a tiny patch of forest to do that. okay. But the way he showed it, I was like, okay, fine. This is clearly like the way things are gonna go. And these kids are like born in it, dude. Like they haven't even, they weren't alive for the matrix. Do you understand how offensive it is that they're the ones who get to live this mad futuristic life?

Wilhelm Klopp (35:11)
hahahaha

Sunil Pai (35:27)
And they're like, yeah, haven't watched that boomer movie. I'm like the matrix. Like, no, but the other one I think is, but that's like for coding and tech. think it's going to take years for normie professions to be like taken over. It's insane how hard it is, how bad it is. And not just because like they're unaware of the tech. By the way, you'll see this like in India, chat GPT is huge in India. I didn't know how big it was.

Wilhelm Klopp (35:28)
All right.

Sunil Pai (35:53)
until I like went there this time, everyone's using like ChatGPD. But you talk about using it at work for doing customer service agents. Some people are very excited about it. Other people are like, no, it will never work. And customer service, like voice agents are, both have either of you been to the Ivy in the UK? You must have, one of you must have been to the Ivy. Okay.

Wilhelm Klopp (36:12)
Yeah, I am.

Sunil Pai (36:14)
So try making a phone call to them. They've switched fully to LLM voice agents and it's amazing. It's the best phone. Don't get me wrong. I've spent hours and hours talking to goddamn HMRC and all, and I hate those things. The Ivy, they are like context specific stuff. Like it identifies itself as an AI and then it's like, hey, we have a private party at five, so we can't take reservations after that.

Wilhelm Klopp (36:19)
Really? No way.

That's wild.

Hahaha

No.

Sunil Pai (36:40)
This particular one, we don't allow pets, sir. We are very sorry. I'm like, what? Are you sure? Like, it was...

Wilhelm Klopp (36:40)
Whoa.

That's incredible. I think Matt, you should call them. Make a reservation.

Sunil Pai (36:50)
You should try to make a reservation with Ivy. But that I think is just one out of 10,000 things that haven't been taken over. It's going to be really hard. Like yours, that's the other thing. The other one is, bro.

Matt Carey (36:50)
Yeah, definitely.

Wilhelm Klopp (36:58)
Yeah.

Sunil Pai (37:03)
You know how Zuck poached a whole bunch of researchers from OpenAI just lately?

Matt Carey (37:08)
Yeah, we talked about it the last episode. It was kind of nuts.

Sunil Pai (37:11)
Do think they would have left if GPT-5 was around the corner? Or if it was as good as people think it might be?

Matt Carey (37:17)
Yeah. Yeah.

Wilhelm Klopp (37:18)
I think it's

hard to turn down $100 million, right?

Matt Carey (37:20)
No, but

it's definitely not a hundred million dollars.

Sunil Pai (37:21)
Okay, so is that the theory then? It's basically last chopper out of NAMM because that's not just fuck you money, right? That's private island money. That's that's nuclear bunker money. Like, do you think that's why they did it? I don't believe they got a hundred million. I think only like Nat Friedman or someone got it. like, so I see people in the valley being skeptical of when the AGI moment is happening.

Wilhelm Klopp (37:29)
Yeah, that's just too money.

Mm.

Yeah, it's a good question.

Sunil Pai (37:46)
I want to say about three months ago I thought it's happening in the next 12 to 24 months but now it's feeling like it might be longer.

Wilhelm Klopp (37:48)
I agree.

there's this big interview recently where I think Sam Altman and Brad Lightcap were talking that there's going to be a soft takeoff. There's no longer a belief that there's going to be a hard takeoff, so seems like they're reducing expectations a little bit.

Sunil Pai (38:05)
I feel like I'm one of very few people who are this way. Okay, so Sam Altman, Clearly a little bit of a psychopath. Okay, like he's not normal. Okay, he's not normal. His name is Altman, okay? I feel bad for him, bro. I kind of want him to win. Like he's one of the most hated people he's bringing. He has clearly accelerated the timeline. I kind of want him to win. I don't know.

Wilhelm Klopp (38:16)
huh, huh.

Matt Carey (38:17)
So.

you

Wilhelm Klopp (38:25)
Mm.

Mm-hmm.

Sunil Pai (38:30)
Like he's he's a freaking freak but like I'm a bit of a fan you know what I mean? I find it hard to even justify my stance here like I'm like look my wife is doing a PhD in creative writing this dude is out to destroy her job her career that entire field of people I kinda want him to win just a little bit

Wilhelm Klopp (38:34)
For sure, yeah.

Hahaha

That's amazing. You mentioning the whole using AI to rename a variable.

made me remember something I really wanted to ask you last week, Matt. But I think we can talk about it together now, which is there was this post on Hacker News a few, like maybe last week, that was about inputs versus outputs. And basically, if your workflow with AI is like, give it the prompt, the AI agent, like cursor, code code, and writes the code. And then do you end up fixing the AI's code and making little tweaks, like making it so that it passes your style check? Or do you just

Matt Carey (39:13)
Yeah.

Wilhelm Klopp (39:23)
go back to rewrite the prompt, add more to the rules files until you no longer have to make little tweaks. The author of the post was saying you should always be fixing the inputs and not fixing the outputs. And I'm

definitely not there yet. I'm fixing the outputs. But curious where you guys are at, or if you even agree with this.

Matt Carey (39:40)
That's what Adam said. Yeah, that's what Adam

said on on, on the access podcast. He was like, yeah, you should never interrupt the model because in training, the model is never interrupted. So if you interrupt the model, starts freaking out. And so you should always let it go to its logical conclusion.

Wilhelm Klopp (39:52)
Mm-hmm.

But he also said

he fixes the outputs though, right? Like he does tweaks at the end. Right, right, right.

Matt Carey (40:00)
Yeah, and then fix the I

think that's what he said. His main thing was just don't interrupt the model. But I saw this amazing blog post by one of the guys at Sourcegraph, I think Jeffrey, I don't know. And he was talking about like LLMs or a mirror of the operator's skill. I think that's the title of the blog post. ⁓ It's like if you have an intuitive grasp of how something works, the model is super good.

And as soon as you don't, then life gets really, really tough.

Sunil Pai (40:25)
Yeah, I think that actually tracks.

The models are so bad at knowing how to handle durable objects right now, which is why I have to write a bunch of code for it. Which is fine, because it just spat out 3,000 lines of UI code for me, so I'm like, okay, fine, I have time. I have time to do those bits now. Can I tell you the thing that I've been obsessing about lately? Do you know what the Cloudflare Sandbox is?

Wilhelm Klopp (40:43)
Mm.

Matt Carey (40:46)
Yeah, we talked about this.

Sunil Pai (40:48)
So Cloudflare just announced its containers product. And it's not meant to be a competitor to workers. It's actually meant to be a capability. You use it to do long running weird stuff for which you need an OS file system. So if you want to run FFmpeg in the background for things, if you order on coding agents where you can check out from Git and run literally Cloud code or open code or whatever it is.

We built a product on top of it called Sandbox, which is trying to optimize for that 80, 90 % use case of LLM coding stuff. That's one. Second is, workers is, you can't do eval in workers for a number of security reasons. But we have just announced, we just landed it last week, by the way. It'll be in Wrangler this week. It's called dynamic isolate loading, where you can create an entire worker.

with strings inside a worker and eval it, it becomes a full-fledged worker with bindings. You can do a whole bunch of fun things with it.

Matt Carey (41:40)
It's like

workers for platform or it's just like that, but a lot less complicated some matrix ass. Yeah. Yeah.

Sunil Pai (41:44)
It's less complicated. There's no deploy step. It's literally dot.

I think it's it's not execute, but I've started calling it evil. It's basically evil. OK. Exactly OK. So.

Wilhelm Klopp (41:52)
I see, I see. It's like a first party eval that actually works. Okay, interesting.

Matt Carey (41:57)
for Structure Layer

Eval.

Wilhelm Klopp (41:59)
And by eval you mean the JavaScript eval, not like an AI eval. Yeah, yeah, yeah. Okay.

Sunil Pai (42:02)
Kind of, yes. I'm calling

it eval. It's not exactly eval, but it's actually a little more powerful. ⁓

Wilhelm Klopp (42:09)
Hmm.

Sunil Pai (42:10)
Here's a scenario. Like, if all humans were perfect robots, your website would look literally like a database. You would let them come in and execute queries, SQL queries, to see your entire inventory of all the products you have. Run a SQL query to insert something in their cart. Run another SQL query against Stripe, if all your users were robots. But unfortunately, we are smelly little human beings who

poop and fart and have racist opinions, I don't know. ⁓ So you want to protect these users, you don't just want to protect yourself from these users, but you want to protect them from themselves, which is why you make user interfaces, right? Which is like, let's have a homepage and a search page and a details page, card, checkout, what have you. Which is the entire other extreme of giving them access to the entire database. And then you have a team that builds features, et cetera.

Wilhelm Klopp (42:38)
You

Sunil Pai (43:00)
But you have to kind of build the same UI for everyone. There's a new middle ground that is going to become real now, now that we have stuff like Cloudflare sandbox, Versal sandbox, Daytona, Northflank, I don't know your shitty Kubernetes cluster, whatever it is. Where on demand you will be able to generate not just UI and that's kind of been the dream. what if it contextual UI on a per user basis?

you will be able to generate the entire application based on like human desire. And you could save it for later. Maybe you want to save it like, or you could throw it away. It could be ephemeral. But I think whether or not models get better, right now, models are good enough to do this. So you're going to start seeing this crazy UX exploration of absolutely brand new styles of human computer interfaces.

The moment I started thinking about this a few weeks ago, I've lost it. I have like three attempts I've started on my laptop and every single time I'm looking at it, I'm like, I am so deeply unqualified to do this work. But the fun thing is that everyone in AI is so incompetent right now. Like, you know what my biggest thing, my biggest problem with AI founders is no one reads like science fiction. There are no Star Trek fans in the space.

Matt Carey (43:58)
Hehehehehe

Yeah, dude.

Wilhelm Klopp (44:03)
You

Hmm.

Sunil Pai (44:11)
at a time when we can finally start building these weird things. ⁓

Wilhelm Klopp (44:14)
Mm-hmm, mm-hmm, mm-hmm.

Matt Carey (44:16)
I have

some tweets from like, there would have been sort of like two and a half years ago, maybe even three years ago. I'll find them for you, but they are literally like, GPT-4 is amazing. Why can't I have my own UI? And at that moment I was like, I need to try this. And then I was like, I have no idea what I'm doing. Like literally zero idea. Didn't do anything, but, it's cool to see if that might actually happen. Yeah.

Sunil Pai (44:36)
But now you have, I'm saying you now

have a space where you can just in time generate code, backends, UIs and the Cloudflare model, like I said, right? Like it's one agent for every human being. There's going to be one sandbox for every human being, one UI for every human being. It's going to be this weird planetary computer that I need a joint. Fuck, it's been years since I've smoked weed, but I really want to have a joint and be like.

Wilhelm Klopp (44:59)
Huh.

Ha ha.

Sunil Pai (45:02)
just

sit back at the Jesmond Dean and be like, bro, like it's going to be crazy.

Wilhelm Klopp (45:06)
about Genitive UI. Okay, so what is the stuff that you're building with this like, yeah, human desire, dream up the UI kind of thing? I think I totally get the vision for it, but I also feel like, I don't know if I actually believe it. I don't know.

Sunil Pai (45:19)
Well, I think until people try, we're not going to know. think about it in terms of, look, there are like smaller patterns, think, contextual, UIs, et cetera. but I think the big unifying thing is going to be apps that build themselves. I think someone is literally going to build a JavaScript framework for which this is like first-class. ⁓

Matt Carey (45:38)
There's a notes guy, there's

a guy building a notes app on Twitter at the moment where he's like, I want to have the ability to make it bold. And then he goes to the new note and there is the ability, there is like a bold burn and he's like, he's like building it. It's so cool.

Wilhelm Klopp (45:50)
Yeah, yeah, yeah.

Sunil Pai (45:52)
Yeah, I think apps that build themselves are... You heard it here first. I think this is the first time I'm talking about it publicly, but this is starting to consume my life.

Wilhelm Klopp (46:01)
There is for sure a correct abstraction for the stuff that you want to be generated. I don't know if it's make the text bold. I don't know if you want all your end users writing that feature or by prompting that feature, but for sure there is a good abstraction.

Matt Carey (46:11)
What is it like?

Does it?

Does

it change from react to like a different mindset? are we gonna, is there gonna be a new framework like that's like impact instead of react, you know? It's like doing something instead of having something done to it.

Sunil Pai (46:26)
you

Wilhelm Klopp (46:27)
Hahaha!

Sunil Pai (46:29)
Again, take it from the React fanboy.

I think that's such a small slice of like the problem. There's nothing specific about React here. think that either holds it back or enables it. Sure, it's in the training data, but I feel that's highly to say. Dude, if you're saying that what's in the training data is what matters.

then we're calling it quits on humanity. We're done. We're stuck culture. I refuse to believe that.

Wilhelm Klopp (46:55)
That's so true.

am sorry, I have to run actually. just seeing I have a hard stop. But so no, it's been great. thanks so much. And.

Sunil Pai (47:01)
Actually, I do need to pop

off myself. It's been wonderful speaking to you people. I'm very grateful for the opportunity. Thanks a lot. meet you in the pub when I'm in London. I should be there in two or three weeks.

Wilhelm Klopp (47:13)
Nice. Let's do it. All right. Much love. Talk soon. Bye.

Matt Carey (47:14)
Yeah, it'll be good. It'll be good. I'm gonna stop.

Sunil Pai (47:18)
See you guys, bye

bye.

Sunil Pai, Agents SDK at Cloudflare, Becoming Accidentally Important at Work, React Core Team, Durable Objects EXPLAINED and Future of Computing
Broadcast by