The Standup with ThePrimeagen - Why Performance Actually Matters
Episode Date: August 2, 2025Watch the https://bolt.new Reward Ceremony Live! July 26th 10AM PST on / theprimeagen #sponsored https://balls.yoga 📌 Chapters: 00:00:00 - Intro 00:01:55 - The downward trend of performance expe...ctations 00:07:10 - The internet isn't to blame for slow speeds anymore 00:11:27 - Dial up 00:12:50 - School day routines and the reason behind modem sounds 00:18:00 - Trash was a Catfish 00:20:25 - Primes School Habits and his Moms prophetic Internet dream 00:23:58 - Teej's highschool experience 00:27:24 - Back on topic (its performance btw) WHO/WHAT is to blame 00:39:38 - Speed = Sales and WHERE is the problem 00:43:46 - Netflix BTW and WHEN performance is important 00:48:35 - Too performant and waste 00:53:14 - 'Hardware will catch up' 01:01:13 - GPU vs CPU 01:06:00 - Wrap up and closing thoughts Links: - Casey's Performance Course: https://computerenhance.com Featuring: Prime: https://x.com/ThePrimeagen Teej: https://x.com/teej_dv Casey Muratori: https://x.com/cmuratori Trash Dev: https://x.com/trashh_dev --- In this episode of The Standup, we tackle one of the most frustrating aspects of modern computing: why everything feels so sluggish despite having incredibly powerful hardware. Casey Muratori joins us to share his perspective on performance culture and how we've collectively lowered our standards over the past two decades. From nostalgic stories about dial-up internet and modem sounds to serious discussions about software architecture, this conversation covers the technical, cultural, and business factors that have led to today's performance problems. We explore real-world examples from Netflix, discuss the impact of layered abstractions, and examine how corporate development pressures contribute to the problem. Key topics include: - How performance standards have declined while hardware has improved exponentially - The role of abstractions and frameworks in creating performance bottlenecks - Real Netflix case studies showing the complex relationship between performance and user behavior - Why the "hardware will catch up" mentality is fundamentally flawed - The difference between GPU and CPU performance paradigms - How AI might make performance problems even worse - Potential solutions through better substrate design Whether you're a developer frustrated with slow tools, a user wondering why your powerful computer still feels sluggish, or someone interested in the intersection of technology and culture, this discussion offers valuable insights into one of computing's most persistent challenges.
Transcript
Discussion (0)
Okay, here's an idea.
What if we just spend 15 minutes talking about Prime trying to get his video done?
And then we all say we have to leave.
He says so much F.
Let me just send a quick tweet.
I said the worst part about Primes, A, V issues on the stand-up is that we are wasting at C Moratorie's time.
See Moratorie is not impressed.
Yeah, yeah, yeah, yeah, yeah.
Uh, anyway, sorry.
All right, everybody, things are ready, and we are ready to start the stand of the most authentic podcast of them all.
Yes.
Today we have with us, TJ, resident genius.
We have Casey Moritory, Riz expert, and of course, trash dev with whom we all love and say very nice things about.
But don't ask about his key caps, guys.
Do not.
We're not about key caps today.
Don't ask about the Oki.
Do not ask what is on the Oki.
That is the rule, the cardinal rule of the standout.
So with that said, we are going to be talking about performance today.
And of course, not only is Casey a Riz expert, he is a mediocre performance man.
At least this is what he says.
He says he's not a deep performance guy.
He just has some basic ability in it and he knows things that we don't know.
And so we want to hear some good stories from Casey about this.
And maybe we'll tell a couple stories ourselves about some.
the performance stuff that happened.
Let's start with the mediocre part, actually.
Can we start with the mediocre part?
Because that was the part I most wanted to talk about.
I wanted to, because you, I remember you specifically always saying,
I'm not a performance guy.
I'm not a performance guy.
That's why I called it mediocre, but if you didn't like that, you know.
No, I want to talk about that because that is exactly what I want to start with.
I just want to start with this depressing fact or observation,
which is that if you rewind time, like 20 years.
Right? You just turn the clock back
To when I'm much younger
Middle school. I don't think teacher was born yet. Teacher wasn't born yet.
I was 11, right? I was 11, okay?
Such a baby. I know, right? He was ziplining and dad camping
with his own dad. So true, so true. Really brings me back.
It brings you back. I was the person who did not know anything
about how CPUs worked or performance or anything, right? And that was pretty consistent.
Like, I generally was just like, I'm, you know, I'm just writing, you know, code to do stuff and worrying about how things are architected and stuff like that.
And what was weird is, I'm sure, like, I've definitely gained a lot of knowledge over the 20 years.
So I'm not going to pretend like I don't know a lot more than I did then, but I definitely did.
But my attitude on stuff has really not changed.
I've always just been about, I want this thing to run reasonably and then we're good.
but the perspective of everything that surrounded me
has constantly just been ratcheting downwards and downwards and downwards and downwards over the past two decades
to the point where now my like I just want things to run reasonably well that has not changed
but everyone's now like reasonably well is this unattainable you must be an optimization god to even consider it level
and that is so, so weird, right?
I've watched, I've just watched it go,
and I'm still like, I'm not hand-coding stuff in a semi-language.
I'm not, half the time I don't even really look that hard
at the performance of stuff that I'm working on.
I'm just vaguely making sure that it doesn't dip below, you know,
a nice 60 FPS output like it should have, right?
It's not that hard.
So it's been so weird to see the standards just drop through the flow,
and everyone act like nothing happened.
So I just wanted to start there with that observation,
because I think people think I'm like this heart,
like, I was back there, like, hand code and assembly on the Commodore 64,
and like, what's up with you losers?
It's like, no, I'm just like everybody else.
It's just, I, I don't know.
So do you know what I'm saying?
Is this landing at all?
So you're like everybody else, but you have a, you care slightly.
Because even now, 60 FPS, that's not considered a banger anymore.
You've got to be 144 at this point.
Exactly. I mean, I'm the guy who's like, yeah, 60 was probably fine, right?
You know, like, I'm literally, my standards are not like, oh my God, if it's not 500 megahertz, then you're not, you know, right?
Hackathon's over, but that doesn't mean the content is.
Join us on July 26th at 10 a.m. PST on Prime Stream to live react to the award ceremony.
See what everybody built, and we'll see you there.
It's okay. You've worked at Netflix. You have everything they want.
And I appreciate those performance goals.
Certainly, like, you know, if I was doing an action game or something, I would want that.
And even, I like even being able to move a window around at 140 hertz.
It feels great.
It does, right?
But I'm not out there, like, going like, oh, my God, I can't believe people didn't ship a 500 megahertz update for this, you know, Twitter or whatever.
But just, it dropping down to, like, update times in several seconds is just fine.
That, where did it come from?
You know what I'm saying?
Hmm.
Can I propose at least one small thing?
Please.
I do think that there was, if you remember the 90s, which I'm sure you do, there was an entire world where we went from not being on the internets to being on the internets and everything took many, many seconds to do anything.
Like everything was so big.
And so as everything kind of got faster, I think there was like at least among my generation, the millennials, where's my millennials at?
there was like a general acceptance that hey look at this it went from taking 10 seconds to taking like a second things are so fast now like look how amazing this is and so like a one second loading time was like a miracle passed down to us i remember the days of going because i used to watch my mom and i used to be really into the stock market when i was in sixth grade and do all the stocks with my mom
probably had a lot of friends too didn't you a lot of friends i did i went to a private school there was 12 of us in our grade i was into things okay
into things and I still remember
like during that day just
watching her on Charles Schwab
and it would take like 45 seconds
of screen so when things were taking a second
I think I never kind of lost that magic
and so perhaps like
there's like a part of me that still lives in the fact
that I used to try to download this 30 megabyte
game called Slayer Slayer.net
whereas like an RPG you'd go and like level
up and 30 megabytes was
every five minutes one megabyte
so that's five times 30 that's you know
that's a lot of time two and a half
hours just to download 30 megabytes. So I live in this
permanent world of I can't believe
this works. And so maybe that's,
I'm part of the problem, is that I
just like,
just love it. You know, I just cannot believe we have
all these nice things. All right, TJ.
Good side question.
Is the rumor true that you used a briefcase
instead of a backpack in sixth grade?
No, my mom would never let me use
a briefcase because that'd be bad for your spine.
So I was never allowed to walk. Oh, so instead you
one shoulder strapped and broke yourself. No, I never one shoulder
strapped either. That'd be bad for your spine. Nor do
I overload the books with it.
I always did a two shoulder strap.
I never needed to be cool.
Always was instead.
And I just simply had a couple books in there.
Okay, I was never that guy that ran with all the books.
You, TJ, strike me as a guy with all the books in the backpack kind of kid.
No, I didn't bring my books to school.
I listened in class and then got A's.
Oh, snap.
All right.
Nice shot done.
You've completely mischaracterized me.
Wow.
Okay.
So you didn't need the books.
books are, you don't need those books.
Books are irrelevant.
The only time I ever needed a book,
Spanish class.
Okay.
Because you have to memorize.
Because you had to read out loud.
He always read from my book.
So when Prime said he was going
to get a tortilla before, were you like, what?
Sorry, what?
Is pronounced tortilla.
Okay.
Like, sir.
Tortilla.
Even I can read.
Well, I think Prime's
suggested is probably a good one.
Like, I mean, I could totally see
that if people are all still thinking
that their computer is running over like a, you know, 9,600 bod modem connecting to AOL,
then maybe some of these speeds would be explicable, right?
Like, they would make a lot more sense.
But, you know, most people are on connections so fast right now, especially, like, when you're
talking about the high end.
So, like, if you're talking about, like, even my setup here where I don't, we don't have,
like, fiber to the home or anything like that.
We're, like, out in Comcast land.
But it's still, like, only a few milliseconds pink.
time and the bandwidth is like, you know, something like two gigabit, like it's very fast.
Basically everything should be instant. There's no, there's really, it's all just issues with
either, you know, data center or what's running or the servers or how you wrote it or the
client side or whatever. There's very, there's really not, like you're not gated by the things that
you would have been gated by in the 90s by any stretch of the imagination. But if people are still
thinking like somehow that's true, that would explain why they think this is fine, I guess,
They're like, wow, you guys are doing really good running this on a 9600 Bob modem.
I'm like, yeah, okay, that is pretty impressive for an ice under bomb modem.
What I really is that there's like a part of me that when something takes a moment to load, I go, internet, right?
Because it's just like I spent a decade going internet.
And so it's like still built in me just to assume that anything that takes a second is internet.
And it's not.
It never is.
I worked at Netflix also, and I know for a fact it's not internet.
But nonetheless, in my head, I'm like, internet, even though it's not.
Yep.
Okay.
I remember the moment I got like a solid state drive in the startup time of like my computer was just significantly faster.
And it like from that moment, I was like, okay, things can be way faster than they are now.
And then that kind of like from that moment on, everything just needed to be like really snappy.
But to like Prime's point, I always thought, yeah, just lay NC to some endpoint that they're calling.
But if it's like an app on my phone physically that takes like more than a second to open, I'm like, what?
And I kind of figure it's not an eight point.
It's probably just maybe the hardware in my phone.
But, like, as you upgrade your phone, right, the phones get snappier and snappier.
I'm kind of the guy that upgrades this fun every, like, five years.
I don't really care too much.
But then, like, once you upgrade, you're like, man, I'm missing out.
So, like, my threshold of, like, tolerance is, like, slowly, I don't know.
I think the public's might be as well.
Like, I see a lot more people complaining about this sort of stuff now.
So I kind of feel like maybe the tide is turning.
Because, like, I felt, like, 10 years ago or 15 years ago, I don't know how long.
I've been saying this kind of stuff for a long time.
I felt like it was just like,
ah, this guy, what is he just, you know,
he's way too high as standards, whatever.
I don't feel that much anymore.
It seems like people are kind of coming around to the fact that, no,
really it is like, it just sucks.
And like things should be a lot faster.
So I do feel like there's some kind of an attitude change,
but I'm not sure why that's happening either.
Just like I'm not really sure why no one cared before.
I'm not sure why they seem to start caring now.
But I'm glad they are, right?
I'm glad they're putting that pressure on.
at least a little bit.
TJ, you got to talk to us.
You look like you keep a graying and shaking your head, but I don't hear any words.
Well, the thing I really wanted to do is I was hoping everyone could go quick around in a circle
and everyone can do their best dial-up sound impression.
There's probably a lot of viewers here who have never heard one.
And then I'd love to have the YouTube commenters type out what they think their best dial-up impression.
Get that in the comments.
Yeah.
I got a story real quick.
Okay.
Dial-up sound.
Thank you because I don't want to make a dial-up sound.
No, we're coming back to that.
circling back to back.
I'll make one, but when I was younger and I was like, you know, doing that Dragon Balls E-Chat and I yo-L, this would be like 10 p.m. at night, you know, at school night.
I don't even know how old I was.
And I would literally take my huge, like, comforter from my bed, smother my computer just so you could not hear the sound and then just like pray.
Like by the time this like 20 second sound is done that my parents, I don't hear my parents walking.
It was like,
Hear,
here.
Very good.
That's perfect.
We don't need to do anymore.
No, we do.
He just,
Rick and crushed it to.
He crushed that.
From your parents?
Well, I smother the sounds
so they can't hear me
because it, like, radiates.
Well, is it because you weren't supposed
to be on the computer at that point?
It's 10 p.m. at night.
I had to go to bed.
I had school, like, at 7 in the morning.
So this, my parents,
were very nice and never cared about this kind of misbehavior.
So during, like, almost the entire last two years of high school, I want to say, my schedule
was as follows for some reason.
I would go to school because you had to.
I'd come home and I'd go immediately to bed because I was exhausted.
I would sleep for about two or three hours.
I would wake up, right?
and I would program until like three in the morning.
And then I went back to bed for just like two or three hours.
So I had to get up at like six something.
And I would go to school and I just be like completely tired and super annoyed that I had to do that.
And then the cycle would just repeat.
This is like, that's like the entire last two years of high school for me.
We're like, we're like that.
I was so checked out.
Yeah.
Yeah, do your dial-up sound now.
It would be much like trash.
I feel like yours was too beautiful.
Yours was more like a horror movie.
That was like some movie sound effects.
I feel like I just, I got teleported back in time.
That was really a UFO.
I'm waiting for Roonscape to download on my computer right now
to finally finish like updating in the browser and get the cash correctly.
Mom, I'm not on the internet.
Yeah, yeah.
Mom, shut the other thing is I don't actually know, like I didn't know as a kid, right?
I used to, and there's, as a kid, there's, like, no internet.
Like, they're just, it's not a thing.
I mean, it exists as ARP internet and all this sort of stuff and whatever, so it's there.
But, like, you don't have any knowledge of it.
You can't get on it.
So, BBSs or things like that is all you could information around.
There's not much information.
So I don't know anything.
Like, all the programming stuff, you kind of had to learn yourself or try to find books at, like, you know, the Borders bookstore or something like this, right?
And, uh, remember them.
And, uh, so one of the things, too, is, like, most of the things, too, is, like,
Modem sounds always used to get progressively more ridiculous, right?
Because, you know, there's 2,400-bodd modems, there's 9,600-bodd modems,
or whatever they were, I don't remember.
And the sound used to be just the first sound.
Used to be, it's like, and that's it or something.
But as they kept adding new negotiation tiers,
the sounds got longer and longer and more complicated.
So eventually you're using this modem, and it goes through all these phases,
and that's where the, like,
do do do
right?
And it's like
multi-step
it used to be shorter
because they just
it was just the one tone
but then they had to do
the handshake
and figure out
oh like
can you do
960000
could you do 144
like you know
and it kept
it keeps escalating
right?
Is that sound
actually real?
I feel like it was like
literally like
the same pitch
what the hell
do you even mean
was that actually real?
Well he's saying like
I'm Trash
you're saying like
is it basically like
the sound at the end
of the washing machine
when it makes a sound
right
where it says that it's done
or this
it like really connecting?
I'm just like trying to understand like how they came up with this like this sound.
Like it sounds like humans can't make to prove that it's not a human dialing into something
I assume.
Yeah, they didn't want it to be like someone answers the phone and then it starts like thinking
it's an actual modem I assume.
So it's just checking what you are.
It's like, hey, can you speak this?
Can you speak this?
Can you speak this?
And so they had different tones.
You know, like a dial tone and things like that to signal what you are.
Not going to lie.
Today I learned.
Not going on.
These are the numbers, right?
Like here's what the touch tone phone tones are, right?
These are the click sounds for a rotary dial phone.
There's like machines listening everywhere, right?
And they need to know who is who.
The machines are listening, Casey.
I had no freaking idea.
I thought they're just like, this would be kind of cool, man.
Yeah.
That I'm just like, what?
This is going to be an awesome sound that we can play out of the speakers.
I love.
The brand new modem from Cisco coming to you with the sickest sounds of dial-up.
Go-go-go-go-go-go-d-d-d-d-d-d-d-d-d-d.
They're just like in the AOL boardroom, Bob, what do you got, Bob for us?
Yes.
Yeah, and then they're all sitting there going like, hmm, nah, comp you serve has this one that's like,
that one was sick, dude, that one was sick.
We need something like that.
What do you got?
Go back and give me something fresh.
They've got the Rick Rubin of like vibes of them.
Yeah, yeah.
It needs a little more white noise sounds for me, man.
Oh, that's too funny.
Did you listen on your car speakers, though?
Because it sounds different, you know what I'm saying?
You got to try different computers.
The acoustics in this room are not conducive to my dial tones.
I can't work like this.
You don't understand.
Heart.
Yeah, it's very possible.
Like, I get this mentality if you were a kid.
If you were just an actual child.
He was a kid when it happened.
Same here.
We're the same age.
But you're now adult and you know how things work.
You never just like piece.
sit together that they're talking?
All I care about was going to my chat rooms
and having a good time.
Yeah.
Literally, literally
dude, ASL baby.
Calfing, catfish.
Dude, being all my neighbors,
we're,
we thought we had like girlfriends
or something.
Dude, one time, one time,
one time they actually called,
they actually called my house
and they're like,
we're like 10 or something, and we said we were like
16. And they called and my mom
was like, this person's on the phone and me
and like all my buddies start freaking out.
We're like, hang up.
He got the phone.
It was so bad.
Anyways.
What did it?
No, no, no, no, no, no, no, no.
Continue.
That doesn't end it in anyways, trash.
There's not an anyways ending to that.
There's an anyways.
There's a hundred percent in anyways.
There's a hundred percent in anyway.
So how did you explain it in the Dragon Ball Z chat room afterwards when you didn't answer.
Yeah.
Trash, you need to start a few steps back.
Step one.
Okay.
Yeah.
How?
I just start the whole story over.
because I need to know what happened and then what your mom said.
How do you think it was a good idea that they call you?
You're like, hey, you know what?
I'm 16.
Let them call me.
That's right.
I don't know what we were thinking, actually giving my phone number out on the internet for someone the call.
What's the worst could happen on this Dragon Ball's thing?
It was crazy.
It was, dude, I remember like after that moment, I can actually like vividly remember this.
We hung up.
And you said, I'm going to use one password.
for the rest of them.
They hung up.
We had a call waiting
so we didn't get
knocked off when they called
but they had to get offline
to call
so I could see like
went offline
and then we see that
they signed back on
they're like
what happened
and we're just like
we just like block them
so it was a real person
you're saying
of course dude
this was the day
in age of real people
this is how you met people
oh I thought you were getting
when you were saying
you were getting catfish
I thought you meant like
early fake AI chat bot
spammer
Dude, I mean, I'm sure that happened us, but like this specific instance was like...
No, this was way to...
There was no AI chapodders at this point.
This was, this was the old-fashioned catfish.
And he was the catfish.
This is like down home, such a catfish.
We were natural, natural...
Organic.
We learned a hard lesson that day.
Fishing caught with a fishing pole catfish.
It was wild times.
All right.
Wow, that was, that's great.
Hey, by the way, should we...
I like on DJ.
Welcome to our podcast about performance, everyone.
I'm now on dragon balls and getting catfish in 1998 or whatever.
Can we just get back to performance?
Can we talk about it?
No, because Prime, you and I both haven't done ourselves.
Okay.
We cannot.
All right, TJ, TJ, you're up.
Okay, do you want to tell you to tell you the story that my mom told me in about
third grade about what the internet will become?
Or do you want me to tell you about my habits in high school?
I'll give you one of you. Both. Both.
We've got time. We've got two. We've got time.
We're high school first.
Okay. Habits in high school were very, very simple. I would do something similar to Casey.
I'd get home from school and I'd play video games.
Sony Online Entertainment, which had infantry.
So they had this like 100-person game of Capture the Flag with guns and stuff like that.
Played a lot of that. Very good at the game.
Got pretty high up on the old rankings.
Uh-huh.
And then I'd stay up until about one in the morning.
Look at porn and then go to bed at whatever time afterwards.
and I'd do that every day, and then during high school,
I'd sleep in three to four of my classes,
and I took two gym classes.
A lot of gym classes.
Two gym classes every day, okay?
Really into it.
That was my high school.
That literally was it.
I did nothing else in high school other than play video games and stay up
until two, three in the morning and then sleep in class.
I also didn't get a good grade in high school.
It's crazy.
It's hard when you're sleeping through everything.
It's true.
I'm going to tell you my mom's story.
This is a great story.
So I must have been in third grade.
I still remember this quite well.
She said, okay, so, because she has, she's had, like, prophetic dreams, like weird ones.
When I say prophetic dreams, most people think, okay, you're weird.
No, she's like, like, my dad.
We were already thinking that, buddy.
Don't worry.
And he's, like, check these bank accounts because someone stole money.
And, yes, lo and behold, someone stole money for my mom checking.
So, like, real bizarre level dreaming my mom's had.
And this one she's had, she's like, I had a dream where, uh, effectively,
the world was covered in silver bands
and you could visit anywhere you want
and you could see anything you want
and eventually the whole world
got covered in these silver bands
and you could go everywhere instantaneously
it started you know it was like amazing
and then someone came and
everybody would rush towards this thing and that's
how the world's going to end
and I was just like that's the craziest
thing ever this was like in third grade and then
the internet came around I'm like oh wow
that's weird feeling
and then
that's like a
That's like a donkey.
That's like a donkey.
Modem plus donkey.
That was like culture guys for a second.
Oh my gosh.
I feel like I did pretty good.
Okay, because it starts off fast.
It's like, we got to zoom it on his face.
He turned so red.
I did.
I really did.
I laid it out.
What are you talking about?
I didn't do like a weak sound.
Yeah. That was intense.
So your mom basically presaged the fact that the whole world would get on one giant network.
Yeah, she told me that I was like third grade.
I remember this vividly. She had this dream.
What, 1950?
But what about the world ending part?
Because that part, should we be worried?
I don't know.
How did that part go?
Do we have any details about that?
No, that's all.
That already happened in 2012.
The mind came in the dark time.
That's good point out.
Okay, everybody has fair.
All right.
Okay.
Then, TJ, we're still missing a modem sound from you.
Yeah.
Okay, I'll do, well, so I'll say something random about high school then, too.
Closest thing, so I shared a room with my brother.
Melky?
Yeah, Melky, me and Melky when we were growing up after we immigrated.
And then, so the thing for me was I couldn't keep him up at night because he needed to get his beauty rest.
So I would literally go take my book.
I loved reading books.
I didn't need school books, prime, to be clear.
He read Wheel of Time.
Yes, I was reading Wheel of Time.
And I would turn on my closet light and go sit inside of the closet,
hoping that that light wouldn't be enough to see the light underneath the door.
So then my parents wouldn't be like, what's TJ doing?
He's reading again.
It's 1 a.m.
Why is this happening?
So there you go.
That's my.
Yes, the parents need to stop the child from reading.
Something that literally no parent has a problem with today.
They do when you stay up too late.
And then I wasn't going to spend time studying, right?
So I had to be awake for class time.
So that was my, that was the big thing there was I had to make sure I was actually awake during school hours.
I was a good student, though, in school, believe it or not, guys.
Wow.
Okay.
And then.
Not shocking.
Yeah.
Oh.
Except for Spanish class, apparently.
So my now wife, then girlfriend at the time, we were high school sweethearts.
She was very mad at me that I was going to get an A minus in Spanish.
She's like, you could get an A if you wanted to, and you better do it.
So I said, okay, then I started studying for Spanish.
Wait, wait, wait, whoa, whoa, whoa, whoa.
So both of you are kind of like academic overachievers or something?
Yeah, she was a much better student than I was, too.
I mean, I got good grades, but she was a better student.
You know what I mean?
She would take notes and, like, care about things and stuff like that.
All right.
with like with like nice handwriting and everything
oh it's unbelievable it looks like it's literally stamped
I know how that okay I see what yeah
I see where you're going with that
yeah and then she did like
she did biochemistry and college
and like did very well at that and everything
yes so she's a very good student
all right so maybe she should be on the podcast
I mean I'm not trying to kick you off TJ
yeah we could have on she sounds like an upgrade
yeah she could tell you some funny stories about me in high school
probably
yeah
yeah
I'll hear the noise most okay here we go
Hit me with the noise.
I'm just kidding.
I turned down my robot filter.
All right, I'll do my real one.
I'll do my real one.
All right.
I got to go.
Got to get the vocal cords worn up.
You got me.
Like a frog mode.
It sounds like Skrillx or something.
That trash you didn't know.
He literally said his inspiration for all of his music came from his dial-up mode.
I'm not going to lie
I was believing you
but I didn't want to look like I was believing you
I was like man that's crazy
I'm if Casey didn't laugh
I was actually looking at everyone else's faces
I was looking at everyone else's faces
to see if they believe you
sorry
I don't believe that
dude that doesn't make any sense
yeah that's crazy
I'm definitely not thinking that's real
56K dubstep is a pretty sweet
like that's pretty sweet
bad name like I could listen to some 56K
K right now
yeah that would be awesome
about performance.
What were we talking about with performance?
Can you get back to performance?
We haven't talked about anything related to performance, but that's, that's perfect.
I mean, that's how the, that's exactly how it should go.
Casey got his thing out where he said, guys, he's not even that serious about performance.
Why are all you lagging behind?
That was the message that he wanted to portray.
We need to talk more about this.
Okay, I want to hear more about it.
You're the one that brought up dialogue, Prime.
Yeah, let's let's, let's, let's, let's drill down a little bit.
So basically, here's the thing.
the only real change, I think, that it would take is just a general attitude, just shift the attitude a little bit to like, actually caring and going, you know, this stuff should be basically instant for the end user.
And, you know, we can't turn, you can't turn it around immediately.
Like all, every library, every substrate, every default platform people are shipping are,
all basically horrible performance.
So you're not going to just show up overnight, at least especially in the web world,
but even in, you know, even in games there's a lot of rot now in some engines, right?
But basically, like, you're not going to just show up and fix it tomorrow.
But if everyone was like, you know, we should stop just accepting software practices
because some, like, guy wrote a book and, like, it sounded good to us at the time.
And we should start actually going, like, why has software gotten terrible over the past?
20 years and way, way, way slower, right?
Why don't we actually figure out what is wrong with the way we're doing things that's producing
this result?
Because it doesn't have to be.
Nobody has to write anything in assembly language to make these software packages fast.
They just have to remove the 20 layers of crap that they're inserting between what the CPU
has to do and what you wrote.
That's it.
That's the only thing that has to happen is you've seen.
stacked so many things
interpreters on top of libraries
on top of emulation times of packages
and times of this and times of Docker
containers and blah blah blah blah blah
blah blah and this this just
it just chokes a modern computer
with crap with waste
basically right
it's as if you're eating like you know
you need to get a little bit of iron
in your diet and so you eat something
with like 1% of your daily
allowance of iron and 99%
like the fattiest carbohydrate
rate gunk that does nothing, right? And you're like, that's what you're feeding this poor CPU.
And there's nothing it can do, right? So really just change that and going, like, let's actually
consider this important. Let's try to start eliminating these layers and the layers that we do need
that we're using because we want to reuse this. Let's make them efficient. Let's figure out how to
actually make them efficient because we can. That's all it would really take over the next 10 years
to turn it all around. Do you know what I'm saying? Okay, hold on. Is there, is there at least some
of argument to be made that our world has gotten significantly more complex than 20 years ago?
No.
No?
There's literally zero argument at all.
Because way, way, way back then, you actually had to think about things like what order
these assembly language instructions would be going in or how you were going to make all
of this work in only eight registers in order for it to not be horribly unperformant, right?
and now even the smallest modicum of awareness about what you're feeding to the CPU and you will run blazingly fast.
Like a modern M4 chip or a Zen 5 CPU or something will run almost any reasonable piece of code instantly.
They are absolute beasts.
It's unfathom to me when I look at how performant they are.
They're just incredible, right?
but you just have to stop layering all this artificial crap in between them right like and these are it's not the world hasn't gotten more complicated we made it artificially complicated right we lost the ability to ship the idea of a stable operating system platform for example like what's a Docker container why does it exist why is that layer even there it's there because we lost the ability to think and write reliable stable APIs for
our substrate. So now
you have no choice but to bundle
up all the crap you were using in
exactly the crap state that it was
and dump the whole thing
onto the end user machine, right?
Now that, I don't want to pick on that specifically
because it's like, okay, whatever, like that's
going on, right?
But all of that stuff would not be
necessary. Same thing with like interpreted languages
or things like slow garbage
collection, right? We don't need
to have those things.
There are better ways and more efficient
ways. But what typically happens is these things, I mean, you take a look at something like
JavaScript, right? The first thing that gets shipped, it just propagates forever. And no one is
stopping and going, wait a minute, guys, hold on. We need to do a revision step here. We need to make
something that's fast by default. That ships cleanly by default. Let's do that work so that going
forwards, everyone isn't building on a faulty foundation. Python, don't get me started, right? Python
is 10 times worse.
I want to hear you get started about Python
and how the four loop to be there.
It's even worse in JavaScript because it really does,
it can't,
it hardly can even be Jit, right?
It's it,
it's even worse for something like that.
Like JavaScript at least,
certain cases for JavaScript can be made pretty fast
by something like a good Jit engine.
If you wrote the JavaScript code like,
so that it can map cleanly,
like so that the JIT can see what's doing,
it can do a lot better.
Python, a lot of people are just shipping Python.
And Python doesn't really even have an answer for that, right?
And so if you write actual loops in Python, they're just dog slow.
There's nothing you can do about that, right?
You have to actually do something like you.
You could drop it to Scython.
You could try to use a Python accelerator of some kind, right?
But by default, if you literally just ship some Python, it's a disaster, right?
On and on and on.
And again, I don't want to suggest that any of these specific things is the problem.
Like, there's nothing uniquely wrong with Python or something.
It's the whole general idea that it just doesn't matter and just let everyone else deal with
and let CPU vendors have to keep, you know, make everyone upgrade their phones and their computers all the time, creating huge amounts of e-waste and just a really bad use of resources for humanity, right?
Power consumption, everything else, because we just didn't care.
You know what I'm saying?
And so I don't think the world is any more complicated.
I think we made software artificially complicated and we're paying the price every day, forcing CPUs to run this horribly overburdened stuff to do a job that if the job,
just been written. Like, if you just rewrote that job in just simple C, you know, it would have been
500 lines of code and it would have ran blazingly fast, but instead it's like literally
millions of lines of code when you consider all of the pieces that actually were involved, right?
And it's just incredibly, incredibly slow to get it to actually do anything, right? So, you know,
that's the world. Because I want to, I want to try to pinpoint the problem because I don't think
it's a lack of care. I just, I do not buy that as the hypothesis for the
reason why it's happening.
Okay.
I'm trying to like, that's why I'm trying to come up.
That's why I'm asking these questions.
And so I guess the next question I'd have is a lot of corporate environments, you, there's a,
there's most certainly an expectation of moving at a certain speed.
There's a recommended path of like, hey, if you want to do, if you want to do something,
you need to operate in this kind of way.
I think, you know, like even at Netflix, if I were to create like an internal UI that
I knew that had to be used by a lot of people, I'd probably just choose React.
because it's just like, hey, I know how to play the game.
I know it's not.
I don't need to write this in Rust and HTMLX,
even though that would have been my choice back then.
It's just like, I don't need to do that.
There's like this whole layering that I have to do for a parent, you know,
like team playing.
Is the idea of pushing hard from management to deliver things,
does that help create these kind of things where I will just choose something off the shelf,
regardless of how many things that it shows off the shelf,
regardless of how many things,
you know,
like that multiplying effect of off the shelf is that has happened,
where it's just like I'm relying on someone else's house of cards
because I need the perception and the,
both the perception and the reality of shipping faster.
Yes and no.
So I guess what I say is it depends who you are talking about, right?
So for people who just are trying to write a UI,
like I want to make a UI for this thing that I'm doing internal to Netflix
or even external to it,
end user. No, it's not their fault, and it's not even their problem, really, in my opinion.
You should have been able to use an off-the-shelf thing and make your UI, and it should have
run blazingly fast and used basically no system resources, right? The problem is the layer below.
It's, and, you know, to a certain extent, there is a little bit of blame that shifts upwards,
because the pressure's not on. Like, nobody's pressuring people to say, look, we need these
things to be better. Like, why aren't there more initiatives? Why isn't there more money being put
into making these things very performant and very low system resource usage? But really, like,
most of the caring that I'm talking about is at this, like, standardization. Like, let's say,
W3C. I can tell you definitively from reading their notes that they don't care. They simply
do not care, right? They could have taken performance seriously. They don't. Right? I've seen time and
time again when I've been looked at things, I'm like, why the heck was this this way? And I
look at their minutes, nowhere to be found is like actual expert performance analysis.
And this is W3C.
They could call someone up, right?
They could call up a performance expert and say, we'll pay you some consulting fees to
come advise us on how to design this problem.
Never, right?
They just assume that they know best or that it's not a concern or whatever, and they
march along, right?
And so we end up with a lot of things where I think, yeah, like that lower level is just
a complete rot at this point.
And so
it's not someone's fault now.
Like someone who's a work-a-day engineer
at a company is just trying to get things done.
They can't go rewrite, react, right?
I mean, they could try to lobby internal.
Like, if you're going to be a hero,
you could lobby internally to create a project
to make a no-you-on-bri.
But that could fail, right?
Software projects fail sometimes, all that stuff.
So can you do stuff to try and help?
Yes, you can.
But is it your fault?
that it's not, is like, no. The fault is in the platform. And we kind of know this as well,
because if the fault was just individual people, right, then it wouldn't be this uniformly
terrible performance of software. It would be very varied. But what we actually see is
uniformly terrible performance, basically. And that's because everyone's building on top of layers
that are very slow. The actual way that they end up working in practice is very slow, right? So that's
what I think is happening.
And the care is everyone, like when I say shifting that mentality, everyone needs to start
caring.
But what that means is a little bit different.
Management and people who are just trying to get their jobs done doing, you know, stuff
above the substrate, they need to care because they need to be complaining, right?
Management needs to be worried that's slow and complaining that's slow.
The engineers need to be complaining that slow so that the dry powder exists.
But then the people who actually need to operationalize that caring and need to be funded to operational that carrying are the people doing the substrate work.
Because these things have to get faster by default.
That's the only way that things will get fixed because it can't be every time you want to ship a non-laggy UI, you've got to become some huge expert in React and rewrite parts of it or special case.
It can't be that.
It's got to be that I just use the normal UI library and it's fast.
that's got to be the way it goes
or it's not going to get better, right?
The thing that's been surprising to me,
like in the past about these conversations at companies,
is like every, every, like, study or, like, internal thing that I've seen anywhere,
when the page loads faster, you get more sales.
Yes.
Like, it lit, like...
We know this.
It does seem, like, from...
I've never found one where it's like,
it doesn't correlate or negatively correlates.
The only time I've ever seen that SSH terminal.
dot shop, we had to add a loading screen at the beginning to make people believe that it was a real
store in SSH. Like, it is literally a time dot sleep at the beginning to show the logo because people
thought we were making a joke store. Because they're like, well, you can't possibly load your state
this fast. Right. This is a, this is a problem people find. I have a story about that. Well,
it's not really a story. A guy I knew shipped a game on PlayStation and
he optimized the online part so that if you went to go get levels from the online like place
where users could post their user made levels, it was just instant because he cashed things
and he had it working properly and he didn't like present any latency that the servers
would have to the user, which is instant.
And everyone thought that it wasn't actually connecting.
Yeah.
Right?
Because they've been so used to the slowness that now they don't believe that software can
actually run at the speed that we all.
know it can. That's how
pervasive the suck is, right?
Is that people now don't even
don't even believe that a web page could be
instant or that a server thing could be, but
all of it could be.
Yeah. Right.
So. But so that's the thing
that's a little bit surprising is like I've had this
conversation internally before and I'm like
it does seem like it's worth making this
faster guys. Yeah. And then it's like
well, we don't know. Like every time I've ever
seen this. Everyone says it increases
user retention. Everything's better.
Time to first paint like matters.
Like a bunch of, and then I don't know.
So that for me has always been a like kind of surprising disconnect.
I don't know, trash.
Like you experienced this at all or like.
In terms of like performance and like internal politics and stuff like that.
Yeah.
I mean, there's like two crowds too because I've been on the internal tool side and then
the consumer facing side, which are completely different in terms of performance.
Like internal tools, whatever.
Like it's not like the biggest deal.
Like it doesn't have to be that fast.
But then consumer, right?
Take like Amazon, e-commerce, whatever.
Those have to be faster, right?
But in my experience, in terms of performance,
it's never really been much on the UI, like the JavaScript stuff.
It's always been like the server part, right?
We've always had to optimize our fetching patterns and, you know,
the database queries and stuff like that.
So it's like it's very rare, at least in my experience,
unless like you're like horribly just botching how you're writing your UI apps,
the bottleneck is always typically going to be like the server or like somewhere around there.
but yeah back to like what the prime was saying though like being uh performance being kind of
like bureaucratic in the sense because you know people just want to ship and stuff like it's just
kind of like the reality unfortunately but um i will say like i did notice like in the past
five years or so like people are pushing each other more and more because i don't know if it's
kind of like the echo chamber that we're in like on twitter i think there's more passionate
people there versus like maybe some other places.
So there's always people like, oh, look at my benchmark.
It's kind of to the point.
And I actually kind of like everyone kind of stopped doing it because everyone was kind
of like your benchmarks are BS.
But at some point, there was a point where everyone's like, yeah, we can actually be
faster.
And like a good example would probably like Node and Bun, right?
Just two new runtimes.
Like Bunn has pushed Node.
They're like, oh, okay, maybe we should invest.
Right.
But they're like open source and like they do this free effectively.
So there are efforts of like,
pushing the boundaries at the browser level.
I don't know.
I don't really pay attention to like the Chrome team and the Safari team.
I don't know what they're doing as far as like that granular.
But I have seen the community that people do want it to be better.
But, you know, these things take time, I guess.
And I don't know.
I don't have much to say on that one.
So, okay, I got a couple things.
So we did this.
This is pivotal test.
And I know if there was some coding guy in here,
he had know exactly what I'm about to say was Cell 6.
Cell 6 was infamous at Netflix.
This was early days.
This is when we were putting trailers for the first time as like a video that would show when you'd land in the television app for the first thing.
Like the big billboard.
Yeah, thanks, Prime.
Well, this wasn't me for this one.
So this was the initial, very initial one.
And Cell 6 was, okay, we think that the trailer is so important that we're actually going to prevent the user from even going inside the app until the trailer is done completely downloading, which I think.
it added some amount of seconds of time.
And there was no visible difference in any metric
between doing it and not doing it.
And so one of the conclusions that was early brought on by management
was that performance does not matter.
Like if you take some amount of seconds versus some amount of seconds,
the internal one, like the ones that some of us kind of came up with
was it doesn't really matter if you load in 11 seconds or 15 seconds.
It's already so far out that any of the learnings is already got.
And also Netflix is a high,
is what I would like to think of as a already baked into the cake loading time experience on a TV.
Like a lot of people open up these programs and then just walk away.
They'll take a second.
They'll just let them load because they already know it's going to be a long, long time.
It didn't really matter if it took a while.
And then I'll tell one more fun story about Netflix.
So there was that.
Then the second big one was we did a test where we had to reduce the,
effectively are using too much memory
and we are fetching all this data
for everything around the boxes
because we are doing like predictive play delay
and so it's like if you were going to play
some other show we wanted to be like ready
to play so it starts up as fast as possible
it took me two years to convince everybody
to turn it off. It was a lot of meetings
like meeting after meeting and finally I actually just did it
I just said okay forget it freedom and responsibility
F and R baby and I went and just turned on a test
allocated 10 million people and called it today
and I just turned it off
I just said, no, we're not going to do PlayPredict.
And what ended up happening, we actually showed a slight green into revenue.
And the reason being is that we just used a bunch less resources, things slightly quit crashing as much.
People had a faster experience.
And boom, turns out more people actually enjoyed using the product when it wasn't lagging inside.
So I came up with a couple good conclusions, I think.
There is a huge difference between an out-of-app spinner and an in-app spinner.
If you're using the app, I think the expectation should be no loading.
But if you're waiting for the app, I think people have a much.
much greater tolerance for something loading.
So being able to be like, hey, there's a five second startup time or a seven second
second startup time.
I don't think you're actually going to make a huge argument there.
If the difference is, you know, 500 milliseconds versus 10 seconds, I think you can make a great
argument there.
But if it's inside the app and then you have to wait a few seconds, I think people highly
care.
And I got one more good one for you, TJ.
Well, can I say one other thing, too?
Okay.
There's got to be some difference, too, of when you have made, like, a conscious choice to,
like, type Netflix.com into your browser versus, like, just, like, just, you
encountering something random
or like you're doing something within the app.
Right.
Like that's even not just like the loading aspect.
Like I already took the conscious decision to go to
Netflix.com.
I'm, I've got 20 minutes.
I'm going to watch a show.
It's going to turn into 45.
I'm already, I've already given up on it.
I've just spent an hour doing nothing.
So it's like that time.
There's definitely a mentality there.
But okay, this is probably our most interesting test we did,
which was, uh,
when you press over, there was like a
270 millisecond animation or whatever it is.
And someone's like,
We should remove all this slowness so when you can just like go faster.
And it turns out when we allowed people to go faster, there was like a dip in watch metrics and people quit using Netflix as much.
And the big drawaway, this was like six years ago, seven years ago, eight years ago, was that what ended up happening if you actually measured where people were at, they would get deeper into the Lolo Mo where the less recommended objects were.
And they would go so fast, they'd skip over things they were more likely to watch and enjoy watching because they could move so fast.
And so there actually is like a performance tradeoff that does exist where you give someone too much speed.
And they go right by everything they could like because they're just like, bam, bam, bam, bam, bam.
In a shopping analysis, they call this the decompression zone.
And this is why oftentimes like supermarkets or things like that will have some stuff right at the front that they don't really care if you buy or not.
And so you got to get a little bit deeper, like in retail or in clothing stores oftentimes.
There just be some stuff on like a front thing that you have to kind of go around like.
a rock in the water, and that's like just something that they expect you to look at later.
Like you're not going to see it on the way in, right?
Yeah.
I do think, so here's one thing I will say about performance.
Pretty much universally, and as much as everyone seems to want to deny it, pretty much universally,
performance dramatically improves the enjoyment that people have when they use something on a
computer.
And to your point prime, that may not be what you're trying to do.
If Netflix wants you to click on a movie and start playing it,
and they don't really want you to enjoy moving around the movie.
Like, if you're really having fun,
there's such a thing as making your app too awesome
if the whole point of it is that you actually want them to link out to some other experience, right?
So, sure, I could even see there being sometimes
when someone could say legitimately, they go like, look,
our app was too baller.
We had to dial it back.
And if you said that to me, I'd be like, okay, cool.
Right. If you're arriving at that place, not because you're making an excuse, but because you actually made something too awesome and went, oh, crap, this is too awesome. Now everyone's doing this thing instead of the thing we actually wanted them to do. Totally, totally valid point, right? It's the other part that sucks where they're like, look, I would like this map to scroll at 60 frames a second and zoom in at 60 frames a second so I can see the freaking place where my car is going. But instead it's like, click, click, click, click, click, click, click, click, click. And I'm like, you.
Guys, you are aware that this phone runs like Fortnite at 60 frames a second, right?
Fortnite.
And you're drawing three lines and a dot at freaking 10.
What's going on?
And that's a constant thing, right?
Where you're just like, there's no excuse for this.
It's the same problem.
Fortnite is rendering a map just like you are.
But somehow, like you could not figure it out.
And so it's weird when you see those kinds of things because I'm like,
I don't think anyone would use, you know, a Maps app less if it was super buttery smooth.
And the other way that I know that is if people were sitting around going,
you know, I just don't care how fast the Maps update, I just don't care.
They'd never buy a new phone.
Like, they wouldn't be buying a new phone with a faster processor.
Apple would just put the same processor in the phone as they put in last year and just upgrade the camera or something.
Because it's like if all you wanted was a better,
photos, they wouldn't spend money on making a new chip.
They ship the old chips, right?
Yeah.
But they know that when everyone gets a phone and it can scroll fast again,
because now they are shipping a chip that can catch up with all the suck
that developers added over the past three years, right?
That consumers are going to be happy with their experience again, right?
And so, again, you just see this, you're going like, guys, like, you can see that it's,
like, the market is telling you that performance matters.
It's unambiguous because otherwise we'd just be shipping the same.
same chips we shipped 10 years ago if it didn't matter, right?
But it does matter.
And so it's really, what you're basically doing is forcing people to spend all this
extra money and, again, creating a tremendous amount of e-waste.
That's the worst part of it, is these things are just going into giant landfills.
You can't really repurpose an old, you know, some A-series chip.
You can't repurpose that.
It can't be like melted down and remade into a new A-series chip.
It doesn't work that way, right?
And so you're literally just creating a giant dump of garbage because we didn't want
to figure out how to ship a faster substrate, right?
And that's no good. That's bad, right?
It's bad all around.
Yeah, don't worry, Casey. As soon as we start putting AI
on the phones, we're going to keep on
we're going to keep on spending
a lot of reasons. So, my God,
dude. Yeah, because now there's going to be
a huge part of the ship that's dedicated for TPU
stuff, right, and that's going to have,
this artificial right is not doing anything.
You know they're going to be asking AI
questions that can be solved with the calculator
app. You know what I mean? You type
in, what's five plus five?
burn down the forest
10 or 11 we're not sure
your calculator is going to round trip to a server
because they won't have like we don't have
the TPUs to give you a result
in a reasonable amount of time for 5 plus 7
right so we add a round trip to the cloud
so that's going out there adding a ton
of latency right you spike
the power grid half of America is in a
blackout so that you could add 5 plus 3
which is something that we could do instantly
in 1973
and that's the world that people
are actually barreling towards for some strange unknown reason.
And like, you know, and people like me are just like so depressed all the time because you're like, God, this world.
Like everything could be instant.
Like, everything.
You're going to get the AI summary, Casey, of your text messages when you could have just read the text message and not spend any TPU power on it.
I will say there's like this mentality that I've seen where like within engineers where they kind of just they want to build these experience.
experiences and then their attitude is like, well, hardware will catch up to where I can build this.
So it will be shitty for now.
Yeah.
Yeah.
Eventually it will be good.
Someday.
And then everyone will, yeah, exactly.
So that's like something I've seen.
Like I saw someone in chat there like shitty software is driving hardware innovation or something.
And I was like, yeah.
The problem is we can write bad software faster than making that new chips.
That is the current problem, actually.
We should talk about that.
I'm sorry.
I don't interrupt you.
I got to jump on this one because I have to, I have to like, because I have to like, because
I've heard these kind of arguments, and I always have to counter it.
I remember, so there's this thing called Sigraph.
I'm sure Casey's at least familiar with Sigrath.
There was this presentation where this guy had a thousand bouncy lawn chairs fall down,
and they all had like wiggle physics and everything.
And this was in 2006.
And he was able to do that on 2006 hardware with a thousand chairs at once all falling into a big group and popping around.
And he invented algorithms for it, a whole new ways to calculate stuff.
It was like an incredible presentation.
And so whenever I hear someone being like, oh, hardware is going to catch up.
My only thought is that, like, the plot was so long ago that we've lost it because you cannot tell me that there's a single web application that's as complicated as calculating bendy physics of lawn chairs and a thousand of them colliding into each other because they're very complex shapes.
I don't know, putting a video in the middle of the screen.
I know, like, the fact that I can't get the play button to say play when I'm playing and pause when I'm paused on YouTube.
And we're sitting there, like, looking at bouncy physics chairman who solved this on a computer that's, that is like half the speed of my phone.
And that's just like, I can't even scroll Twitter beyond 40 tweets without it actually like turning into like the opposite of jiggle physics, whatever that is, like stutter physics.
I think you're thinking of something else, Brian.
Yeah.
But there is, but there's a, I just like I'd like to talk about that one point as well, right?
I know.
I just get really angry about that.
Like this whole notion of like Hard War World Catchup.
I'm like, no.
can't be that. It just can't be that.
Because Doom was made on the shittiest computer
and it has to be more complex than
any website I visited in the last
10 years. Like, you're totally right about
that. You're totally right about that for sure.
But I guess to trash,
what I think trash was sort of
talking about there was the idea it's like,
yeah, like I realize
that someone, not me,
right, could have made this
experience faster and
run well. But
rather than me learning how to do that,
or like learning to understand those things,
I would prefer to just keep doing the slow version that I've been doing,
and we'll just wait for the hardware to make that fast enough in five years or something, right?
And the problem with that mentality is that the curve of acceleration for single-threaded code
has not exactly leveled out.
It's still going up, but it is really kind of like the knee of the curve has passed.
And I think that's also one of the reasons why software today is feeling super crappy
is because people are still thinking that the hardware is going to be twice as fast every 18 months.
But actually, the hardware is not twice as fast every 18 months at all.
It's not even close if you're single-threaded.
Because a lot of the things that we're doing now are like widening of extra execution units,
which no one's taking advantage of, adding more cores, which no one's taking advantage of,
sticking TPUs on there, which will only be useful to run a lot of.
incredibly slow AI stuff that's even slower than the thing you're running now, right?
And so the actual ability to accelerate single-threaded code has definitely been plateauing.
And as process shrinks have become more and more challenging, Harvard designers have to get
more and more creative about how they're going to get any performance increase at all
out of new generation chips.
And so it's possible that the single-threaded march continues to eke out.
it's also possible that the party may be permanently over sometime soon.
Not for performance increases,
but for single-threaded performance increases like that.
Single-threaded, non-Simdi performance increases.
It could.
Which means JavaScript can't be capped out.
Which is a lot of, yes, JavaCrip very much caps out there
because, like, not that JavaScript can't generate SIMD code,
it can, but most code in JavaScript is not set up to actually be able to do that, right?
Yeah.
And again, like, it's, sorry,
Go right ahead, T.J.
Yeah, I was going to say, the other thing is, like, not everyone gets new hardware when it comes out.
Yeah.
You're like, okay, cool, congrats.
It runs fast on the 70-90.
Okay.
So, congrats on not selling your game to a bunch of people.
Exactly.
Because they don't have the 70-90.
And the other feeling for that, too, is, like, I don't know.
I know I'm not that old, okay?
But, like, I still remember it was exciting to get, like, a new computer because you're like,
holy cow guys this thing is four times as fast yeah as what mom and dad bought me last time you know
for the house i mean everyone used the computer of course it wasn't just for me to play runescape right
um that wasn't what happened but that's not what it was full a lot of rooscape yes a lot of ruinscape
uh but but now it's kind of like oh i mean like i guess it's better you know you're like i guess
i have to get a new one because like i want to play this game or there's like a few things that
I'm interested in doing or I'm going to like get 50% more RAM.
There's not like that magical wonder I feel like of coming home be like the computer's four
times faster.
I loaded.
What was that Jack Rabbit game?
Jazz Jack Rabbit.
Jazz Jack Rabbit.
Oh, it loaded in zero seconds instead of two this time, you know, like.
By Tim Sweet.
Epic, that's epic.
That's the epic that makes Fortnite.
Really?
Jack Rabbit.
Yes.
Oh, dang.
I didn't know that.
Yes.
That's, I got one more thing that we did.
We tried to make this happen.
And so this trash, I don't know if you were at Netflix during this time.
But we tried to get people to use Sugar Land, which is the old, old Roku.
Like this was way back in the day.
We're like everybody, if you're going to use, like, all employees must use Sugarland
because it's the worst device we currently support.
Right.
And nobody would do it because the experience was that bad.
Literally no one would use it.
Instead, they just said, no, I'm not going to do it.
And I realized there's this, there is definitely a part of the problem that you're discussing
is a perception problem
because a lot of software is written
in these kind of concentrated tech cities
or like in a concentrated more wealthy environment
where the people writing it
tend to have more affluency than say
the average people around them.
And so every last person that you talk to is like
I got an M4 MacBook Pro
oh so do I. High five, right?
They're all operating on like really quality software
and they don't have
like there's no there's no fluency in going
oh actually this is really really painful.
This is actually really, really hard because I would use older ones.
I was like on a 2016 device in 2020 and people were just like, oh, how would you even use that?
I'm like, I'm trying to make it.
Like it helps me think through problems better because I'm looking at a problem where it's like this probably matches more what people are experiencing worldwide than in the Silicon Valley.
The Silicon Valley has zero understanding of what the world is like because they live in such an extreme bubble of wealth and technology that they don't even know that the average person doesn't have.
have the latest iPhone the second that it drops at all times.
And a lot of things are slow even on that iPhone, which is the shocking part, right?
Like, it's not like you get that iPhone and your web experience is flawless and instant.
It's like, nope.
It's still incredibly slow in a bunch of places.
It's just some things like scrolling or something where it can be done mostly just with the
device and is being handled by, you know, some stuff that was pretty well optimized by browser
authors, right?
Not the people shipping the website.
that actually will work, right?
Now, I wanted to mention something that T.J.
I just wanted to touch on that.
Like, you're talking about the 70-90.
So I think it's important to draw a little bit of distinction here
between GPU and CPU, though.
A lot of times, like, if something's running slow, graphics-wise, right,
it may not be because people weren't trying,
like, GPUs are inherently parallelized.
And the platform that they have set up for programmers to use
is very parallel, right?
So typically, you know, people can still write really dumb stuff that makes the GPU have to do way more work than it should.
Don't get me wrong.
They're certainly fat and stuff like that, you know.
But there's such a world of difference.
And the reason that there's a world of difference is because the people who made the substrate for development on GPUs were performance experts.
the people who made Vulcan and DirectX
and whatever OpenJL they're currently on, right, and metal.
All of it was designed in the shading languages especially,
like basically how shading languages work and get compiled
and create distributed work on the GPU.
That whole substrate was done by performance experts.
And as a result, anyone, people who have no idea how a GPU works,
no idea what's going on.
They can go to something like Shader Toy,
type in a bunch of math,
and it runs insanely fast.
Even in the browser,
it runs insanely fast
because it's distributed to the GPU
because they created a substrate
that was made for performance
and allows an end user
to simply and concisely describe
what they want
and make it run blisteringly fast.
That should be the model
for what we're trying to accomplish
on the other side, right?
where's the people making the new version of the web
where when you make something it just runs
nicely parallelized and very fast by default
without anyone having to do anything special
without having to be a performance expert
just the thing you're going to type in will work right
that's the thing I was going to say to Casey with that is like
to use the GPU like the default and kind of only
it seems like option in the unless you like somehow really
mess it up is like you have to write it that it works for parallel you can't you can't do it any other way
really yeah so then does that right right so then because the default and like easy path
moves to we go fast and can get faster in the future right because we are figuring out how to do lots
more cores and stuff i get i get that part and we're like we are magically finding out we can just
smash a bit like a trillion of these i don't know how many we have it seems insane like that's the
difference right it's like the web default version is like the web default version is like
like slow, you can't figure out how to make it go parallel.
You can't figure out how to write it good.
By default, the option is like, we're going to garbage collect like crazy and blah, blah, right?
And then, so that's where I'm, like, I agree with you.
I feel like that's kind of the interesting part that I don't hear people talking about as much, right?
Is like, if you want to make this faster, you have to figure out how the default experience can go fast and help people onto that path, not make it like an uphill battle to be like, oh, okay, well, now I have to figure out.
out how web workers work and how
like all these things work. I have to do object pooling
myself and exactly. Right?
Prime's favorite JavaScript technique
you know object pooling. So it's like
The reason he likes that is because you can
actually make things go faster. Right?
It's like okay but then we need to figure out
a way to like can we figure out a way to make that
happen by default so everyone can just do it.
This is exactly the point
right. The point is like
to bring it right back to the beginning
of where we started this particular arc right?
not everyone is going to be a performance expert.
The goal is to make it so that your performance experts are there at the bottom substrate
and that they have designed something excellent.
And then everyone who builds on top of it, can they still slow it down?
Yes, and they will, to some extent.
But the difference is they'll only, you know, your apps will only run half as fast as they could,
instead of a hundred times slower than they should, right?
Like one one hundredth of the speed is what we're going to run.
we're having now. And if we went from one one hundredth to one half the speed, holy cow,
would that blow everyone away in terms of the response of these things, right? So everything
needs to be kind of reconsidered at that level and propagated upwards. And then things just get
way, way, way, way, way better, because then everyone's just reaching for these new substrates that
are designed to be minimal, fast, and everything's perform it by default the way you use it. And the only
suck that gets added then is any specific suck that you created. But you're not just sucking by
default, which is what we have now. Yeah, I got to go pretty soon. But before we do, Casey,
or maybe Prime knows a website. Prime, do you know any websites where people can learn how to enhance
their computer experience and learn lots of cool things? Dude, if there was a website, like, I don't
know, computer enhanced.com. That would be a perfect website name. It's like a website name.
I'll end with that. Yes. If you're interested in performance stuff, you can come check.
my stuff out at computer enhance.com,
but let me give you the perfect
illustration of what I mean by this.
I don't want to do web dev.
So what do I do?
Computer enhance.com is just a substack
page. The performance
of my performance-aware
programming course sucks
because you get it from the
default thing that you use to street six
and is terrible, right?
So I'm literally, I'm literally
saying exactly what I
said this entire time is my own
experience. I just, I didn't write anything. I just clicked like I'm making a thing,
a publication on a site that people use to get their publications, right? Because I don't
want to go write a whole thing. And the end result is the performance is terrible. You can literally
go take a course by me where I show you all these awesome things about performance and we make
super fast stuff and all this great things. And the way you're getting the content sent to you is
credibly slow, right? For now, Casey, for now. Me and B.
We're talking.
We're thinking about we might write something for you.
All right.
I just have like closing thoughts in general.
Yes.
Hit us right.
I do agree like the foundation we're building on.
And I was speaking like specifically like in my domain.
Is it the greatest right?
Oh.
Like no.
No, dude, it's type script compiler problems.
That's where that's where.
Yeah.
Yeah, yeah, yeah, yeah.
Well, no, I'm just saying like there's just we, us as engineers at this point in time,
we build on top of so many abstractions that we just don't even know.
what's even happening underneath, but I think, like, in my ideal world, like, you should care about what you're shipping.
Like, do your due diligence to, like, if something sucks, like, dude, just like, do you try to make it better.
And so I kind of, like, hate people that kind of just, like, ship stuff.
I don't hate them, but I'm, like, disappointed when, like, someone can, like, ship something and they're, like, it's good enough or, like, it's performing bad, but they give, like, no effort to, like, even peel back one layer of the onion to, like, understand to make it better.
And so I think like, I don't know,
I just want people to like care a little bit more
about their craft, I guess.
Like in my, like, at least, I don't know.
I obviously in the perfect world
that everyone's going to do like that.
But I just think like the mentality at the moment
was just like, ship, ship, ship as fast as you can.
I'm going to make 10, 12 startups in like five days.
And increase the pressure.
Like that attitude, like you're saying,
if you had an attitude that was like,
I care, like what, I know this can be much faster.
Why isn't it?
Just that also just increases the pressure
on the system.
as a whole for people to make the substrates better,
which in time will give you the ability to continue to not care.
Like, you'll eventually not have to care as much
because the things that you grab off the shelf at that point
will already be much faster.
So you won't have to know as much
or peel back as many layers of the onion
to figure out why things are going wrong, right?
So, like, it pays dividends in the long run
to just have that modicum of care
where you're like, this should be faster.
and I'm at least going to complain about it, right?
Like, I'm not, even if I'm not going to have the opportunity to go rewrite this myself or fix it myself,
just increasing the pressure and the general systemic awareness that something is very wrong here,
that helps us push these things forwards and have the substrates get replaced with better things, right?
I do also want to say that, you know, there could be a whole bunch of people that fall into this category
that don't even know they're in this category.
Like, I think there's a lot of people that just use Twitter the website and think it's perfectly fine.
when I press the post button, it takes about two seconds for the thing to show up.
When I click outside of it, it takes about two, three seconds for the thing to go away.
And no one actually has this categorized as a bad experience.
This is just the experience.
So when they make something that falls into a similar amount of performance,
they're just like, oh, this is what normal is.
Well, the best one is mentions.
I am meeting the same bar of goodness that I see all around.
And so there's also like a trained mentality that this is perfectly fine behavior.
and so they may not even see this as something that's wrong.
They don't even perceive it as bad.
It just is what it is.
Mentions is the best one on Twitter,
at least I don't know if you guys are similar.
I click on mentions.
I have to wait 30, 40 seconds
before it will actually show new mentions.
It's forever.
It's like it's infinitely long, right?
Just shows an old stale page,
and even if I refresh it, still stale.
And then at some point, I don't know,
some Ajax kicks in,
like finally got a thing back.
And it's like, oh, here's the,
all the benches that you, right? And it's like,
it's insane how long some of these things take on Twitter.
So it's weird to me like, yeah, I know what you're talking
about. So we both say like, for once it's fine, so it's like,
what? Yeah, yeah, yeah.
Are you crazy? So.
All right. Well, let's wrap this thing up.
Hey, this is a great conversation. I think
nothing better has come out of this than
trash this story about the internet and covering
it with a blanket. I'm going to go home and cover my cable modem with a
blanket right now. And also, today we all
learned that modem sounds were shorter. I did not
know that. See, I did not know that.
That is news to me.
So that was a great.
Real educational stand-up today.
By the way, I'm kind of blocked right now, waiting on T.J., so next week I'll be able to get work done.
I'm going camping.
Sorry, you'll have to circle back with me on Monday.
Bye.
Bye.
Bye.
