HomeVideos

4 words triggered a war

Now Playing

4 words triggered a war

Transcript

481 segments

0:00

Would you like to hear a controversial,

0:01

yet brave take in the 2026 year of our

0:05

Lord?

0:07

I read the code. Yes, that, my friends,

0:11

is now officially controversial. Now,

0:14

you're probably wondering, how is that

0:16

controversial? Well, it all started with

0:18

this nice little tweet here by Mitchell

0:20

Hashimoto, just expounding upon, "Hey,

0:22

what's going on with Fable?" A random

0:24

bot account said, "What metrics are you

0:26

using to measure success of this

0:27

approach?" I read the code. And this

0:31

right here got 800,000 views, just

0:33

saying, "I read the code." And then a

0:36

lot of people started chiming in saying

0:38

how much they also can see why reading

0:40

the code is actually a good thing,

0:42

except for Burke right here. Hey, Burke,

0:43

I actually appreciate that response.

0:45

Honestly, out of all the responses of I

0:47

don't read the code,

0:48

based. So, I figured I'm going to have

0:50

to open up a Yapp request on this one,

0:52

because we have to We just have to talk

0:53

about this, okay? There's no stopping

0:55

There's no stopping the words coming out

0:56

of my mouth at this point. And so, I

0:58

would actually like to maybe add a bit

1:01

more color to this talk, because here's

1:03

the problems that I just generally see

1:04

with the internet. First off, there's

1:06

just a bunch of bad engineers on the on

1:09

the internet. And they can say whatever

1:10

they would like to say, and this kind of

1:12

adds fuel to the fire of this entire

1:15

discussion. You know this. You've worked

1:17

at a job Well, most of you've worked at

1:19

a job. And you guys have seen teammates

1:21

and co-workers, and you're like, "How

1:23

are you employed? What is go" And yet,

1:25

these are the people also giving great

1:27

advice on Twitter. Second, there's

1:28

always people selling something, right?

1:30

They're always selling you something,

1:31

and this is that entire crowd that

1:33

exists. And third, there's always this

1:35

compiler argument that people make on

1:37

the internet. I don't know what it is

1:38

about. Stop, please, for the love of all

1:41

things good and holy. Stop comparing an

1:43

AI to a compiler, okay? This It's just

1:45

It's just a bad comparison. We can just

1:47

move on, okay? No need to expound upon

1:49

that. It's just bad. It has been bad. It

1:52

will continue to be bad. All right, but

1:54

I am actually going to give you what I

1:55

consider my framework for should you

1:57

read the code? Yes, I cannot believe I'm

1:59

saying these phrase I can't believe I'm

2:01

saying this, but hey, we're going to say

2:03

it anyways and we're going to actually

2:04

I'm going to actually going to give you

2:05

what I think is actually really good

2:07

spot-on advice. I'm going to give it to

2:08

you in three different ways, but before

2:10

I give it to you, babe, I would like to

2:11

say a quick thank you to the sponsors.

2:12

Don't read the code. I've personally

2:14

conducted hundreds of interviews and I

2:15

know how hard hiring is and that's not

2:18

even with today's problems of fake AI

2:20

profiles, resumes that are difficult to

2:22

read, and senior engineers who have

2:25

never even read code. G2I fixes that.

2:28

Not the reading code part, the hiring

2:29

part. G2I can help you hire front-end,

2:32

back-end, and even AI engineers

2:35

because they have pre-vetted 8,000 plus

2:37

engineers through real technical

2:39

interviews, so you can review quality

2:41

candidates in days, not months. Check

2:43

out g2i.co/prime

2:46

and take the headache out of hiring. Or

2:47

just read the code. So, I'm going to

2:49

give you my thoughts on this whole read

2:50

the code, don't read the code argument

2:52

and where I think everybody's

2:54

effectively wrong. I think the answer is

2:56

just significantly more complex than

2:57

that. And so, I'm going to give you kind

2:59

of three different examples or three

3:00

different ways in which I approach a

3:02

problem that kind of change the varying

3:04

degrees in which I'm going to read the

3:06

code. I think the third one is the most

3:08

interesting one because it's probably

3:09

the one that I think most people are

3:11

going to start falling into over the

3:13

course of the next year. But let's just

3:14

start with the first one, the don't read

3:17

the code ever. I do think that there's

3:18

actually just an entire set of projects

3:21

and things you should be doing where you

3:22

just don't read the code. The whole

3:24

purpose of it is MVP exploration. Now,

3:26

there's this thing that I used to get to

3:27

do at my job back in the day before all

3:29

of this AI crap kind of came out is you

3:31

used to get to put on some headphones,

3:33

throw on the Lord of the Rings and the

3:35

soundtrack and then just program for

3:37

like 16 hours straight cuz your goal was

3:40

to just create a nice little prototype

3:42

of some new things so everyone can come

3:43

together and kind of discuss how does it

3:45

feel? Is this the right direction? Is

3:47

this what we want to see? And that

3:48

experience was quite magical. You'd end

3:51

up building it, you throw it all away,

3:52

and you do a bunch of learnings. And for

3:54

the unlucky souls, you would build it,

3:56

they would do your bosses would say,

3:57

"SHIP THAT STRAIGHT TO PRODUCTION." And

3:59

that's what you would be now using for

4:01

the next year and trying to fix. So,

4:02

something I've been really kind of

4:04

playing around with the idea of is

4:06

actually getting an agent and the linear

4:08

MCP and saying, "Okay, let's discuss all

4:10

the things I kind of want to build."

4:12

Having it all go and be made as tickets

4:14

on linear and then just saying, "Hey,

4:16

loop and make all of that for me." I'll

4:19

come back in 12 hours and boom, the

4:21

thing is done. And I can try out my

4:23

idea. Was this a good idea? Like, I

4:25

don't even have to use expensive models

4:27

for this to work. I'm just there to see

4:29

does the idea actually work? Can it feel

4:32

good? I'm not going to keep any of the

4:33

code. Lord, no. I'm going to just simply

4:36

use it as a way to test out new ideas

4:39

and new ways to approach this. I've been

4:40

kind of starting to toy with this with

4:42

my game development. I go, "Okay, I

4:43

really want to try out this kind of

4:45

different way of doing things." Hey, I'm

4:46

going to kind of specify a bunch of

4:47

stuff, create 15 linear tickets, loop

4:50

And then just come back later and just

4:52

see how it feels. Now, I think this is

4:54

an excellent case for don't read the

4:55

code. I don't care what the code is cuz

4:57

I'm throwing it away. This is purely for

4:59

feels and for good times, right? I if it

5:02

does feel really good and I want to

5:03

proceed with it, I might just take a

5:04

peek at the code, see, "Hey, how did you

5:06

accomplish this?" If there's anything I

5:08

can like or glean from it, I will take

5:10

it. But generally speaking, I RMRF that

5:12

crap as fast as possible. I also think

5:14

there's just this second category of

5:16

just internal tools that need to be

5:17

created. No one's going to create them.

5:19

You just need to get them out there

5:20

because they're going to make

5:21

everybody's life a lot easier and

5:23

they're going to be fantastic to use.

5:24

And so, just it doesn't matter the

5:26

quality. It is about the perceivable

5:28

value of them. At some point, you may

5:30

need to go in there and you may need to

5:31

start reading the code. But to kind of

5:32

get the idea out there to see if it

5:34

actually really makes people's lives

5:36

better. Again, this is kind of prototype

5:37

MVP phase. I think it's just so

5:39

important. All right, so the second kind

5:41

of category of read the code, if we

5:43

will, if it's a spectrum, is just read

5:45

every single line. Now, me personally,

5:47

been developing a sweet little video

5:49

game. Here's the sweet little video game

5:50

right here. Yeah, I made all those

5:52

animations. I made the card draw. I made

5:54

all these kind of things. They're

5:55

absolutely fantastic. Made these little

5:57

boop. Put it in there. Do this. Faster

5:59

turns. Right now, I don't really care

6:01

about the speed, how it looks. Right

6:02

now, I look this the arrow's even

6:04

sideways cuz I have the rotation off by

6:06

90°. I don't currently really care about

6:08

that because right now my goal is to

6:10

make this game. The process of making

6:13

this game, the process of going through

6:14

everything is part of the entire quest,

6:18

right? I want to be able to create this

6:21

and love this, not just externally, but

6:23

also internally. I want this to be the

6:25

best thing I've ever created. And so, I

6:27

actually care about this a whole bunch.

6:28

And there's a different kind of style of

6:30

development I would like to take about

6:32

the things I really care about and I

6:34

really want to be exactly the way I

6:36

want. Because the more I were to

6:38

introduce a vibe coding into this

6:40

situation, there's things I couldn't

6:42

control like exactly how does this feel?

6:45

I don't know if I could control that

6:46

nearly as well if I didn't if I didn't

6:48

have the full kind of programming

6:51

ability where I understood and knew

6:52

everything that was happening on here. I

6:54

know exactly how this highlight works. I

6:56

know exactly how this drag works. I know

6:58

exactly how that shrink works. I know

6:59

exactly how that placement works, how

7:01

the upgrades are calculated, how

7:03

everything flows through the system. And

7:04

so, this is a very special kind of

7:06

project to me. And there's also just

7:08

tons of great software out there that's

7:09

making tons and tons of money where

7:12

people just do this. I don't think this

7:13

is really an argument for or against

7:16

software being made by hands or by

7:18

agents. It's more that this is just what

7:20

I care about deeply. I do think that

7:22

this realm of programming is shrinking.

7:24

Like the in in all honesty, I think that

7:26

the amount of times you need to be

7:27

perfectly concerned about every single

7:29

line of code is just fundamentally going

7:31

down. But for this particular project, I

7:33

want to be concerned about every line of

7:35

code. I actually do want to be engaged

7:37

in how it looks, how it feels, just

7:38

exactly every last part of it. And since

7:41

I want to be that engaged, I feel like

7:42

the only way to be that engaged is also

7:45

to be engaged on the line count and

7:47

exactly what is being produced for

7:48

everything as well, for better or for

7:50

worse. All right, so the third category,

7:52

the one that I actually think is much

7:53

much more interesting on this whole read

7:55

the code debate, is is there a halfway

7:57

ground? Is there some sort of in between

7:59

of like I don't read code and I read

8:01

code. Obviously, there is some sort of

8:02

level, but what does that actually look

8:04

like? Well, if you look at this thing

8:05

right here, what you will see right here

8:07

is a program that I have created. It

8:09

actually plays that same game in which

8:11

you just saw, but it plays it in a

8:13

headless mode, so I can actually see an

8:15

AI play my game. Right now, you can see

8:17

exactly what's in my hand, you can see

8:19

my towers, how much ammo each one of the

8:21

towers have left, the upgrades that are

8:23

on the towers, the in-game upgrades that

8:25

happen to each tower. You can see

8:27

everything about it. Pretty kind of

8:29

cool, right? This is being completely

8:30

played by composer 25 fast. I don't It

8:33

just goes and it runs and it plays the

8:35

whole game. So, that thing that you just

8:37

saw there, the actual runner itself, I

8:39

kind of have what I would consider a

8:40

unique way to approach this. So, the

8:42

first thing I do is I go and like I

8:43

build the components, right? So, I'm

8:45

like, "Hey, okay, this is how I want you

8:47

to run cursor. This is how I want you to

8:49

run the agents. This is what it looks

8:50

like. This is what the interface should

8:52

look like. I should be able to call dot

8:53

prompt on it, and I want to be able to

8:55

pass in these things. This is the exact

8:58

shape I expect." It goes off and it

9:00

builds it. I go and kind of test it and

9:01

okay, yes, that's exactly it. Next, for

9:03

this particular thing, I built the

9:05

client server, right? It's the client

9:07

server interaction, and I want to be

9:09

able to add certain methods to it so I

9:10

can call calls onto the server that will

9:13

then route them into my game and be able

9:15

to run. Like, I want to be able to start

9:16

a new game. I want to be able to end a

9:17

game by by ID. I want to be able to go

9:19

and move a mouse by certain game IDs. I

9:22

want to be able to have 10 games running

9:23

at the same time with 10 agents all

9:25

running the games at the same time. So,

9:27

after I take the time and think really

9:28

hard about the API APIs I need for each

9:31

one of the parts, the thing I do is I

9:33

actually handwrite the actual piece of

9:36

like integration logic. So, for this

9:38

one, this is the run loop that actually

9:40

goes, "Okay, if I'm in my title screen,

9:42

character selection, or victory, or

9:44

defeat, I want to kick off the starter."

9:46

The starter is this starter contents

9:48

persona, and the starter MD is just

9:50

something all it does is like, "Hey,

9:52

your only goal is to go in and figure

9:54

out how to get from the defeat screen or

9:56

the victory screen back into game mode."

9:58

Like, that's it. If you're in the title

9:59

screen, get to game mode. If you're in

10:01

the character select, select blacksmith.

10:03

That is it. Go to the game mode. And so,

10:05

this is by the way, this is what they

10:06

call building a harness, blah blah blah,

10:08

but I didn't write this mode function

10:10

right here. I know what it does. I set

10:12

up the interface for it. I wanted this

10:14

exact interface. I made sure it's doing

10:16

all the right calls. I make sure that

10:17

start actually starts a Mordoria game in

10:20

the background. I make sure that end

10:21

ends the exact, you know, item that I

10:24

want to make sure it's ending. It's not

10:25

just ending some random game. But,

10:27

nonetheless, this whole idea of being

10:28

able to be like, "Okay, here's all the

10:30

pieces I want. I will do the integration

10:32

programming. I'll actually do the

10:34

application programming, whereas you do

10:36

all the rest of the stuff." I found this

10:38

to be very, very nice because I didn't

10:39

write starter. I said, "Hey, make it

10:41

like a top-level thing and read a file

10:43

sync and do all that." And if you look

10:45

through exactly what it does, it jumps

10:47

in here, and somewhere along the way it

10:48

does a whole reading of the values, does

10:50

everything, puts all that crap together.

10:52

I don't care how it got there. I just

10:54

care that it got the prompt at the end

10:56

of the day. That's it. That's all I

10:57

wanted. And then for me, it's like, I'm

10:59

the one going, "Okay, here, this is what

11:01

I'm going to do in this mode. This is

11:02

what I'm going to do in this mode. If I

11:03

encounter a mode I don't know how to

11:04

handle, I want to intentionally print

11:05

that out and throw an error. And then I

11:07

want to kill the server at the end. I

11:09

want the whole thing to die, and I want

11:10

the game underneath it to die." And so,

11:12

for me, this is like this third approach

11:13

that I actually think is going to be

11:15

much, much more popular over the next

11:17

year, effectively. Is that you really

11:19

are starting to design on the interface

11:21

{slash} the function level. The function

11:23

contents themselves you care less about,

11:26

but at the function level, at the type

11:27

level, you're like, "This is what I want

11:29

to see. Now move quickly." Now, this

11:31

works really, really well if you have a

11:34

couple pieces. First off, you have to

11:36

know how to build things, right? I think

11:38

if you don't know how to build things, I

11:39

think this is really hard. You don't

11:40

even know what the right interfaces are,

11:42

let alone you don't know how to actually

11:43

like iteratively build it with an agent.

11:45

Hey, build this command to be able to

11:46

run stuff from the command line. Okay, I

11:48

want to take that. Okay, this is how I

11:50

want the server to look. Okay, this is

11:51

how I want each endpoint to look, right?

11:52

Like you don't have how you would

11:54

normally build it already built into

11:56

your head, so how are you going to get

11:57

the, you know, the client or the agent

11:59

to be able to respond properly. But

12:01

second, more importantly, I think that

12:02

this approach, it really allows you to

12:05

kind of flex all of that knowledge and

12:07

move quick enough to where you get a lot

12:09

of the benefits of the agents and being

12:11

able to move really fast, where the

12:12

parts that you're actually concerned

12:14

about, you can really kind of just dial

12:15

it and go, "Okay, these are the things I

12:17

really want to have happen. I want this

12:18

and I want this and I want this, and I'm

12:20

going to have this nice compact 50, 100

12:23

lines of code that are just mine, and

12:25

the rest of it, the 1,000, 2,000 uh

12:28

lines of code that is just like getting

12:29

everything set up so that the actual

12:31

thing works, uh out of my hands now. So,

12:33

I think that most of the ideas about

12:35

read the code suck. Okay, I think you're

12:37

going to go on the internet, you're

12:38

going to read a bunch of people's

12:40

tweets, and they're all going to come

12:41

down to, "You should never read it." or,

12:43

"You should read it 100% of the times."

12:44

And I think there's just a much more

12:46

kind of gray answer to this whole thing.

12:48

I will keep on reading more Dory source

12:50

code line by line, and I'll be hand

12:52

editing a good portion of it always and

12:54

making sure that it always stays at the

12:56

exact level I want it to be, because it

12:58

is my game, the way I want it to be. I

13:01

want every last feel of the game to be

13:02

exactly the way I feel like want it to

13:04

feel in the exact polish I want it. I

13:07

want to be able to control that. Now,

13:08

there's a whole set of programs where

13:09

that concern is much more fluid, if you

13:12

will. Yeah, that looks about right. Yes,

13:14

this is okay. And that I can move

13:16

faster. And then there's some programs I

13:17

don't care at all, right? I can just

13:20

vibe I just want them to work once, or

13:21

maybe I just want to work this one

13:23

little simple kind of reproducible

13:24

script to just run whenever I need it to

13:26

run. I don't really care how it looks, I

13:28

just want it to work. And so, please,

13:31

for the love of all things good, don't

13:33

compare AI output it to a compiler. Stop

13:36

saying you should always do one or the

13:38

other, and just also have a little bit

13:40

of fun, okay? If you're a person that

13:42

just refuses to ever use an LLM because

13:44

you think that it writes terrible code,

13:46

just buy code something for once. It's

13:47

kind of fun. You'll go, "Oh, yeah,

13:49

that's pretty cool. That was pretty

13:50

nice." But don't do anything too

13:51

serious, you'll drive yourself nuts,

13:53

right? Like you just got to know your

13:54

weaknesses and strengths. It's pretty

13:56

easy. And then you can actually have a

13:57

much better time because I think we live

13:59

in such a wonderful and beautiful part

14:01

of the world ever in the sense that

14:03

everything that is up here, you can now

14:05

manifest onto a computer. Like that is

14:08

so cool, and it's never been easier.

14:11

Every single year that bar for

14:13

manifesting goes significantly down.

14:15

This ain't the '90s anymore. We don't

14:17

even have Most of you don't even think

14:18

about memory allocations. When was the

14:20

last time you thought about the stack,

14:21

bucko? When was the last time you

14:23

managed some memory? I don't think you

14:25

have. I think you just live with a

14:26

garbage collector. You slob. Honestly,

14:28

garbage collector's pretty great, also.

14:30

Can I just say that for a second? The

14:32

thing is is this kind of argument always

14:33

makes me a bit sad because it's just a

14:35

bunch of people who had something that

14:37

worked for them in some particular

14:38

situation, and then they prescribe for

14:41

everybody else this exact same approach

14:43

when not all software is the same. Like

14:45

the software I want NASA to write should

14:47

look nothing like the software I want

14:49

some random web web crud app, right?

14:53

Like these should have vastly different

14:55

experiences, and I'm okay with that, and

14:58

you should be too. The name

15:01

is the primogen.

Interactive Summary

The video discusses the controversial topic of "reading the code" in software development, especially concerning AI-generated code. The speaker criticizes common internet debates and proposes a nuanced three-category framework: "don't read the code" for rapid prototyping and internal tools, "read every single line" for deeply personal and high-control projects, and a "halfway ground" where developers design interfaces and integration logic while AI agents generate function contents. This "halfway ground" is predicted to become the most popular approach, balancing speed and control, requiring developers to understand how to build systems and design good APIs. The video advocates for a flexible approach, acknowledging that different software types require different levels of code scrutiny, and advises against rigid rules or comparing AI to compilers.

Suggested questions

7 ready-made prompts