HomeVideos

Stop being skeptical about AI for development with Charity Majors

Now Playing

Stop being skeptical about AI for development with Charity Majors

Transcript

2457 segments

0:00

Can you measure an engineer's individual

0:02

productivity?

0:03

>> There's been this whole push towards

0:04

individual output, but teams are still

0:07

what matter, team output.

0:09

>> You mentioned how you're seeing two

0:11

camps. There's the AI pills folks who

0:13

get it and then the people who seem to

0:16

like they just hate AI.

0:17

>> See, the problem is that neither side is

0:20

making it [music] up. They are seeing

0:21

really scary trends. They're grappling

0:24

with real hard problems that are getting

0:27

worse. What would it take for you to be

0:29

comfortable shipping code without you

0:31

reading it and understanding it? Cuz

0:32

that's engineering.

0:33

>> How do you see the role of good skilled

0:36

engineering managers and engineering

0:38

directors change? [music]

0:39

>> It's just easier now than it's ever been

0:41

to pick it back up, fill in the blanks.

0:44

And it's always been the case that

0:47

[music]

0:50

why are there firmly two camps within

0:52

software engineering when it comes to

0:53

AI? [music] those hating its effects and

0:55

those who are AI pill. Charity majors

0:57

emphasizes with both camps and thinks

0:59

they are talking alongside one another.

1:01

Charity is a co-founder and CEO of

1:03

Honeycom, previously worked at Facebook

1:05

and [music] Parse and is one of my

1:06

favorite voices in engineering. Today we

1:09

discuss what it [music] would take for

1:10

us engineers to ship code we have never

1:12

read and why this is more of a when

1:14

question not an if question. Why are

1:16

reliability quietly getting worse across

1:18

the [music] industry and why it will

1:20

take some time to recover. Career advice

1:22

in this age of AI? Why middle manager

1:24

should consider going back to being IC

1:26

and why junior engineers will be okay.

1:27

[music]

1:28

If you want to hear from someone who was

1:29

skeptical about AI in 2025 but has

1:31

changed her mind based on the evidence,

1:33

this episode is for you. In today's

1:35

episode, Charity will say, spoiler

1:37

alert, that the question is not if we

1:39

will stop reading code written by AI,

1:40

but when. And we should take lessons

1:42

from ops and QA on how they prove that

1:44

software that others wrote works in

1:46

prod. And she's got a very good point.

1:48

As any ops engineer or SR will tell you,

1:51

that's how software has always been

1:52

written by unreliable agents from their

1:54

point of view. That is software

1:55

engineers like me, your colleagues, or

1:57

you. And let's face it, you probably

1:59

haven't read all the code in your

2:00

codebase either. This is where I need to

2:03

mention our presenting sponsor,

2:04

Antithesis. Antiysus verifies software

2:06

written by unreliable agents. It runs

2:08

your whole system in a hostile

2:10

simulation and roots out the bugs for

2:11

you. It does this by using an approach

2:13

called deterministic simulation testing

2:15

or DST. Antithesis is turbocharger

2:18

testing by running your whole system

2:19

under aggressive fault injection.

2:21

Imagine Anticys is hundreds or thousands

2:23

of versions of the Mario game running

2:25

each instance aggressively trying to

2:26

break the game with increasingly weird

2:28

input combinations. If it finds a

2:30

breakage, this is where the determinism

2:32

comes in. Instead of you having to try

2:34

to reproduce a tricky bug you saw in

2:36

production, antithesis can provide you

2:37

with a perfect deterministic replay of

2:39

anything it finds every time. With

2:41

antithesis, you can specify properties

2:43

at the whole system level and antithesis

2:45

will actively try to disprove them. So

2:47

you can be confident that if your system

2:49

holds up in antithesis, it will hold up

2:51

in production. Head over to

2:52

antithesis.com/pragmatic

2:54

to learn more. Charity, it's so nice to

2:57

do this in person.

2:58

>> You're in my city. This is amazing.

3:01

>> So today I want to kick off with AI. But

3:04

before we kick off with AI, I just want

3:05

to make it kind of clear for people who

3:06

don't know you that, you know, you're

3:08

not an AI hater or an AI lover. You

3:10

actually built a lot of cool stuff pre-

3:12

AI, right? Starting at we just saw Lynon

3:15

Labs. Was that your first job?

3:16

>> My first job at Lynon Lab right across

3:18

the street.

3:19

>> Right across the street. We were just

3:20

talking about that. So you were building

3:22

Second Life.

3:22

>> Yeah, we were building Second Life.

3:24

Yeah.

3:24

>> And then from there on one of the the

3:26

the big hits was Parse the developer

3:29

tool which was beloved by developers

3:31

backend for all for best backend for

3:33

mobile services. I I used to use it and

3:35

then what happened? Facebook bought you.

3:37

>> Facebook bought it. Yeah. It was my

3:39

first great lesson in most acquisitions

3:42

fail. Most were terrible. This one

3:45

failed. They shut it down. Um, but

3:47

ultimately I'm very grateful to have had

3:50

the experience because if it wasn't for

3:52

that, I've always been a startup kid.

3:54

And so nobody knew my name. And it

3:55

wasn't until I was leaving Facebook that

3:57

investors were like, "Oh, would you like

3:58

some money?" And that's that's how we

4:00

started Honeycomb.

4:01

>> And then you saw stuff at Facebook,

4:03

right? It inspired you that.

4:04

>> Yeah. Yeah. Facebook. There was a tool

4:07

called Scuba.

4:08

And so we were in a weird position. We

4:11

were building on AWS, Ruby on Rails, all

4:13

this stuff. And then we got to use the

4:15

internal Facebook tools. And Facebook

4:18

had this tool called Scuba. And it was

4:20

we were experiencing hockey stick

4:22

growth. It was just like we had over a

4:24

million mobile apps hosted on Parse by

4:25

the time I left.

4:26

>> Yeah.

4:27

>> And every single week a new one would

4:29

break. It would hit the top 10 on iTunes

4:31

or something and out of nowhere it would

4:33

just be like ah. And these apps needle

4:37

in the hay stack, you know, and it went

4:39

from would take hours or weeks. We have

4:41

to get lucky. We finally find cuz it's

4:43

not it might be one app that's spamming

4:45

the logs, but that might not be the

4:46

reason. They might all be backed up

4:48

behind the reason, you know. Uh we

4:50

started getting our data sets into Scuba

4:52

and finding them. It just went from

4:54

being a really hard engineering problem

4:56

with a lot of luck to just being like

4:58

report problem. Click click click. Oh,

5:00

there it is. And it was just mindb blown

5:03

like you just that was a huge problem

5:05

for our entire existence and then it was

5:07

solved

5:08

>> with scuba. And then when you started

5:10

honeycom so was this a bit inspiration

5:12

that you wanted to build something that

5:13

feels like scuba did?

5:15

>> I I just the idea of I was planning to

5:17

go be an engineering manager an engineer

5:19

at Slack or Stripe or something and I

5:22

was just like

5:24

I would be so much less powerful as an

5:27

engineer without this. And so, you know,

5:30

the grand plan in the beginning, I'm

5:32

just like, well, all startups fail. So,

5:34

you know, we'll fail, but I'll go sit in

5:36

a corner and write go code for a year or

5:38

two and then then I'll open source it

5:40

and I can take it with me wherever I go.

5:43

>> Then that that's how honeycom started.

5:45

[laughter]

5:45

>> That's how honeycomb started.

5:46

>> And we'll we'll we'll get back to like

5:47

observability or honeycomb. But be

5:50

before we do now with with AI, you know,

5:52

it's changing everything.

5:53

>> But I kind of had a bit of a blast from

5:55

the past, which is one of the first

5:57

places we connected was in 2020. So

5:59

almost 5 years ago or so uh someone

6:02

submitted a question to both my blog and

6:04

your blog and it was the question was

6:07

like can you measure individual

6:08

developer productivity? Now I wrote an

6:11

answer and you wrote an answer. And I

6:13

wanted to ask you that was five years

6:15

ago. No AI, no nothing. Today someone

6:18

shoots you a question saying, "Hey

6:20

Charity, can you measure one of an

6:22

engineer's individual productivity? You

6:24

know, they're using AI tools and all the

6:26

all this stuff." What would you tell

6:28

them?

6:28

>> I would tell God, I don't even remember

6:30

what I said. I remember that blog post,

6:31

but

6:32

>> we we both agreed by the way that it was

6:33

it was that you can measure some

6:36

dimensions and they're not going to give

6:38

you the full thing and they will for

6:39

example not tell you how a team is doing

6:42

if someone is is actually really key

6:44

part of the team and that as long as you

6:47

measure individual things. We both

6:49

agreed that you need to be in the

6:50

details to know and and as a good

6:54

manager or a good team lead you will

6:55

know.

6:56

>> You will know but you have to have data

6:58

to back it up. It's like color in a

7:01

painting on the wall and and is it

7:04

goodart's law that yes it's goodart's

7:06

law. So like never go well it's this

7:09

thing that matters right you need to

7:11

actually understand but you need it to

7:14

not just be your opinion that was tossed

7:16

off because you you have an opinion

7:18

about some per you know we're we're all

7:20

we have biases we we are selective you

7:23

know you need to look at the picture I

7:26

also believe that you know there's been

7:27

this whole push towards individual

7:29

output but teams are still what matter

7:32

team output and honestly if there's one

7:35

thing that I am encouraged and excited

7:37

about with the AI movement. I think it's

7:39

forcing us all to ask ourselves early

7:43

and often.

7:45

What does good look like? What does good

7:47

mean? What does productivity mean? What

7:50

would better look like? What would great

7:52

look like? You know, and these questions

7:54

are hard. I think it's telling that we

7:58

all jumped so fast to speed.

8:01

>> Yeah.

8:01

>> Oh, fast. We can do it fast.

8:04

same thing faster, you know, just boom.

8:06

And I've come to feel like that is a

8:08

very immature description of what better

8:13

is. Yeah. Just just today I saw the

8:17

entropic team posted a podcast with

8:21

Spotify's head of engineering or or VP

8:23

of engineering. I'm not sure which one

8:24

in which they talk that wow Spotify with

8:26

cloud code, they're shipping 4,500

8:28

changes per day per week. I'm not sure

8:30

which one, but they talked about speed

8:32

and I was kind of thinking like my

8:33

experience has been different cuz I I

8:35

struggled to publish any like some of my

8:37

my episodes did not go on Spotify cuz it

8:39

was down.

8:39

>> Yeah.

8:40

>> And yeah, they were talking about speed,

8:42

but we're not talking about quality.

8:44

We're not talking about

8:46

>> more functionality, better

8:47

functionality, or just things that

8:49

people want.

8:50

>> And in a comment, some people were

8:52

asking like, "Okay, so what exactly does

8:53

that mean that they're shipping more

8:55

frequently?"

8:56

>> Yeah. Do customers really want the

8:58

buttons on their app to move around all

9:00

the time? I don't think they do.

9:02

>> Yeah, it's an interesting one.

9:04

>> It's the easiest thing to measure.

9:05

>> Let's jump back to last year in 2025.

9:08

You wrote a blog post

9:11

right at the end of the year looking

9:13

back saying that 2025 for AI was what

9:16

2010 was for the cloud. Can can we talk

9:19

about before we go into like what this

9:20

year but like last year like how was

9:23

your perspective? Of course, you're

9:24

working at observability company. AI

9:26

will will give you lots of like business

9:28

as well, but you said it went

9:30

mainstream, right? Last year.

9:32

>> Yeah. In March of 2025, Fred Habar and I

9:35

gave a keynote at SRCON. We gave the

9:38

closing talk and it's Fred and I

9:40

standing in front of a the term vibe

9:42

coding had just been invented.

9:43

>> Oh, yes.

9:44

>> And we were like, you guys should try

9:46

vibe coding. Pause. Groans. Audible

9:50

groans. Just like people laughing like,

9:51

haha. Our big pitch was that people

9:54

should learn AI because you can complain

9:56

better if you learn it, which is legit.

9:58

I mean, I really mean it. Um, but at the

10:02

time,

10:03

I think I still saw it as a really big

10:06

feature or like a bigger than a

10:08

programming language like the cloud, but

10:11

not like generational, you know, not

10:13

changing everything.

10:15

>> And and I think that was accurate. Um,

10:18

for me it was November of 2025 when they

10:21

released Opus 4.5. But actually wrote

10:24

about this recently a couple blog posts

10:26

back about how in retrospect you could

10:30

see it coming sooner. You could see and

10:32

it wasn't actually the models, it was

10:34

the harnesses, it was all the tooling.

10:37

And it was people starting to say that

10:40

around July they were like this is

10:41

coming faster than you think and this is

10:42

what it's going to look like. And as

10:44

those people who were saying it, they

10:45

were once who were playing with either

10:46

cloth code or maybe pi or open code. So

10:49

the harnesses, you're right,

10:51

>> they were getting better at the tooling

10:52

that you know it went from just being

10:54

kind of a shell script that would try

10:55

again to like they built a lot of stuff

10:57

around it and then you know the opus

11:00

thing kind of it was a weird time at the

11:02

beginning. It's been a weird time every

11:04

every time for a long time but the early

11:06

months of this year it felt like

11:08

everyone around me was just trying it

11:10

again and changing their mind. everyone.

11:13

>> Yeah. But I think we were just talking

11:15

about right before we started recording

11:17

that both you and me respect people who

11:19

do change their mind.

11:21

>> And I don't think we were wrong to be

11:23

skeptical that the first time. It's a

11:25

pretty extraordinary claim that AI is

11:28

going to write code about as well as the

11:30

median software engineer can in you know

11:33

for limited bounds of that.

11:34

>> Well, especially because if we look back

11:36

at the history of software engineering,

11:38

this claim has happened again and again.

11:39

>> Yes. you know, neural nets should have

11:41

been doing something magical.

11:43

>> I there's a sticker in your pack that

11:44

says we already have a programming

11:46

language that lets you cobalt is the

11:49

punch line. So, I don't think we were

11:50

wrong to be skeptical

11:51

>> and and also don't forget no code and

11:54

low code.

11:54

>> Oh, yeah.

11:55

>> I mean, we know it turned out to be a

11:56

joke, but the the promise was the same.

11:58

And we were skeptical and we were right.

12:01

And now we're skeptical again.

12:03

>> We were right

12:03

>> and we were wrong. What I was saying in

12:05

that piece though was I think we were

12:07

right to be skeptical that time. But now

12:10

I see the same thing playing out with

12:13

would you be willing to ship it some

12:16

code that you didn't read. There's no

12:17

point in arguing about if it will happen

12:19

or when it will happen. Talk about what

12:21

it would take.

12:23

>> Mhm.

12:24

>> What would it take for you to be

12:25

comfortable shipping code without you

12:27

reading it and understanding it? Cuz

12:29

that is that's engineering.

12:31

>> Yeah. And it it goes back to like, you

12:32

know, my my gut reflex would have been

12:34

saying, "Oh, no. I would not do that

12:36

because I've been used to that."

12:38

However, you're right. You know, it

12:40

would if if I could have a way to, for

12:42

example, I could see the change, I could

12:45

I could tell that this was tested in

12:48

like a harness or or something. Same way

12:51

where, for example, preai, if there was

12:54

a I had a team member who said, "I

12:56

vouched for this and I've I've hammered

12:58

it and I trust that person." So like

13:00

you're right there there's these things

13:01

which are

13:02

>> of course would never but I have thought

13:04

that AI or something can do anything

13:06

like that but if it could you're enough

13:09

right

13:09

>> or for example if you and the AI would

13:12

would both do it in tandem for a few

13:14

months and you would be like you would

13:16

get to how much are they catching how

13:18

much am I catching is it about the same

13:19

is it more is it less and you're

13:20

training it and it's getting better

13:22

whether it takes 5 days or 5 years or

13:24

whatever I think it's pretty clear that

13:25

directionally that's where we're going

13:27

and the other thing I would say is this

13:29

is good for us. If you spent much time

13:32

with the Phoenix architecture stuff that

13:34

Chad Feller has been writing,

13:36

>> you you you have been quoting. Yeah.

13:37

>> Ah, I've been quoting liberally. I I

13:39

should probably let you get to it in

13:40

your your own order, but I just feel

13:42

like anyone who's ever done a painful

13:44

rewrite should be on board with this.

13:48

>> Yeah. And but here here's a quote from

13:49

from from Chaff Fowler. Immutable

13:51

infrastructure, stateless services,

13:53

containers, blue deployments, infra

13:55

infrastructure as a code. These ideas

13:57

all share common premise. Never fix a

13:59

running thing. Replace it. AI pushes

14:02

this premise beyond infrastructure and

14:04

into application code itself. When

14:06

rewriting is cheap, editing in place

14:08

becomes risky. Mutation accumulates

14:10

entropy. Replacements resets it.

14:13

>> Yes, code is cash. This is a very

14:15

interesting idea because you've compared

14:18

cha chaff compared and and you you've al

14:21

of course uh shared this that when we

14:24

look at how infrastructure changed

14:26

before you know like specifically a

14:28

server you need to be configured it I

14:30

think we call it like pets

14:32

servers

14:32

>> having pets versus

14:34

>> and at some point we stopped configuring

14:36

individually we stopped like fixing

14:39

individual machines we just like throw

14:41

it away and have a new thing And with

14:44

code, we've always been used to the

14:46

history of the profession, you know, 60

14:48

plus years or maybe a bit longer is that

14:51

we edit code. And are are are you

14:54

thinking this might

14:55

>> because of the economics of it? I mean,

14:57

if you if you think about it, you could

14:59

generate 10,000 variants of a function

15:03

faster than you could write it once. And

15:07

so when you start thinking about it that

15:08

way, it's like, well, okay, we're going

15:10

to need a lot of evals. We're going to

15:12

need a lot of tests, but the generation

15:15

is so cheap that it it really I think it

15:18

it it forces us in that direction. And I

15:21

think that the the expensiveness of

15:23

writing code and maintaining code and

15:27

the expense of software has always been

15:29

bound up in its maintenance and those

15:32

lines of code.

15:34

The reason that we we trust something is

15:37

because we've been using it. because we

15:41

we know we we

15:43

like there's this deep thing about

15:44

production. It's like, well, it's

15:46

trusted. We know. And I've been I know

15:50

that as well as anyone. And I will also

15:52

say this. Anyone who's ever done a hard

15:54

database migration should have some real

15:56

humility about our ability to

15:58

extrapolate those contracts, store them.

16:01

Like I am not one of those people who's

16:03

like this is we're going to generate all

16:05

code. I don't know how much code. I

16:07

believe that we can go some distance in

16:09

that direction and it will be good for

16:10

us. I don't know how far we can go. I

16:13

believe we can go farther than we are

16:14

now. I just man the last project I did

16:18

at pars

16:19

so we had spent like six months writing

16:22

the original Ruby on Rails API.

16:24

>> Yep.

16:24

>> Spent two years rewriting it in Golang.

16:27

>> Wow.

16:28

>> Yeah. It was it was it was

16:30

>> and what was was it two years because

16:31

new stuff being kept being added that

16:33

you need to

16:34

>> some extent and also Golang was a pretty

16:36

immature language at the time. And we

16:38

had to write, you know, the MongoDB

16:39

drivers and like the all the other bunch

16:42

of things and also just like when you're

16:43

writing in Ruby and MongoDB and

16:45

JavaScript and everything is, you know,

16:47

there's no type safety and and it's just

16:50

painful just, you know, and this

16:52

strangler figs that they do where you

16:54

build the architecture outside the

16:56

architecture and you literally find the

16:59

contracts with your users by breaking

17:01

them one after the other. Like that just

17:04

does not seem like the ideal artifact.

17:06

We should be able to store them

17:07

somewhere. We should be able to have

17:08

architecture diagrams that we can review

17:12

and discuss that generate that code to

17:15

spec.

17:16

>> This is very interesting because some of

17:17

these ideas they've been around decades

17:20

ago speci specifically you know if we

17:22

had Grady BH as a third person sitting

17:24

here the idea of like hey we can have

17:27

architecture diagrams that translate to

17:29

code UML started there. I think Grady

17:33

would disagree that like he never wanted

17:35

it to to go there but irrational

17:37

software back in the 90s they said hey

17:39

you'll define UML it generates code it

17:41

will be beautiful now it wasn't

17:43

beautiful because I guess some

17:45

complexity and turns out the generating

17:47

code was still expensive and and

17:48

reviewing it but I wonder if some of

17:51

these ideas now might be just feasible

17:54

>> that's my hope that's my hope I mean I I

17:58

I'm just barely old enough that my first

18:00

job I was like 17 at university. I was

18:02

assisted. I remember when, you know, I

18:06

didn't I wasn't really aware of what was

18:07

going on. I was just a kid. But yeah, I

18:09

remember how stressful it was and how

18:11

people were agonizing about how we'll

18:14

never be able to get that information

18:16

back. And everyone adapted just fine.

18:19

They I I think I read the systems that,

18:21

you know, they built the systems that

18:23

replaced them, but not as in replace

18:26

them and worked them out of a job. built

18:27

the systems and they spent their time

18:29

writing code instead of like running

18:32

updates by hand on every server in the

18:35

closet.

18:35

>> And I guess this is an interesting one

18:37

because clearly like the CIS admin role

18:39

and profession has been it doesn't exist

18:42

today. It it's kind of legislated has

18:43

been eliminated. However, the people who

18:46

were CIS admins, they did understand the

18:48

operating systems, they understood

18:49

hardware. Yes,

18:51

>> they were in a really good position to

18:52

adopt and a lot of them just became

18:54

either software engineers, product

18:56

managers. I know someone who became a

18:58

tech sales person.

18:59

>> Yeah. Yeah.

19:00

>> So, it's almost like uh like

19:02

>> and I will hold that our generation of

19:04

engineers still the best debuggers. I'm

19:08

glad that people don't all have to learn

19:10

about CPU and memory and all this stuff,

19:12

but like there's value in knowing that

19:14

stuff. It comes in handy. I think

19:16

there's some analogies there to the

19:18

generation of code stuff.

19:20

>> Also, you know, you you took a bunch of

19:22

inspiration in your recent writing about

19:24

both CIS admins, but also QA. And you

19:26

wrote something interesting. You said

19:28

lines of code are not the ideal artifact

19:30

to review. And I'll quote a little bit

19:31

from you. The tools to do this don't

19:33

exist yet, but many of the ideas do

19:35

exist. Most come from operations and QA,

19:37

two domains that software engineering

19:39

has historically been been rather

19:41

snobbish about. Should we revisit our

19:43

relationship to to QA and and ops where

19:47

I I I I I I feel we always put ourselves

19:50

as software engineers here and ops and

19:53

QA somewhere and maybe maybe time to eat

19:56

some humble pie.

19:57

>> Ops equals toil,

20:00

right? Yeah. I think it's time. I mean,

20:04

ops and QA have always been more

20:06

concerned with what is. Software

20:08

engineering has always been much more

20:09

concerned with what how should it be.

20:11

Mhm. So ops and QA have always been more

20:15

concerned about validating, about

20:17

correctness, about does it work as a

20:21

>> well does it work to start with?

20:22

>> Does it work? Yeah. Yeah. I mean it it's

20:24

always weird to me just how much

20:26

software engineers really seem to

20:27

believe that the world exists in the

20:30

repo and it doesn't.

20:33

It's production. You know, the code has

20:35

part of the information. Some of it it's

20:38

very necessary. We need that. But like I

20:41

know some software engineers who and

20:43

okay some some some places don't even

20:45

let software engineers look at

20:47

production just like how I know a lot of

20:50

people are very upset about AI and but

20:51

there the things that get me up very

20:54

excited genuinely excited about AI are

20:56

that it is pushing the discipline in

20:59

directions we have desperately needed to

21:01

go for a very long time. Production is

21:03

not what happens after development. It

21:06

is a stage of development. And you've

21:08

been saying this consistently for preI.

21:11

I'm just going to say it for those who

21:12

don't because I remember we've I think

21:14

we also bonded a little bit over. There

21:16

was this thing called trending on

21:17

Twitter when it was still Twitter and it

21:19

was tech Twitter. Everyone was there who

21:21

mattered and there was a trend going

21:24

it's Friday don't deploy some something.

21:27

There was maybe a hashtag even like like

21:29

I'm not sure don't deploy Friday or

21:31

something like that. And the point was

21:33

uh it was well-meaning. It said like

21:35

look when you deploy often there's an

21:36

outage and on the weekend we don't want

21:38

to do so there was saying every every

21:40

Friday it went viral saying don't deploy

21:42

on Fridays and you came in and you said

21:44

you know what you should be able to

21:46

deploy anytime without fear because you

21:49

should be able to just know you know

21:51

however that might be CI/CD and then on

21:54

top of this you were like no like you

21:56

should actually just not even have a

21:58

user acceptant testing environment at

21:59

UAT you should just deploy to production

22:01

like and test in production right

22:03

>> as soon as you merge merge, it should go

22:05

be going out like you should have to

22:07

stop the train to make your code not go

22:09

into production as soon as you've

22:10

merged. Absolutely.

22:12

>> And one more interesting thing is is you

22:14

had a long train of thought about like

22:15

like AI and and what it could be is one

22:17

thing you said is our brains are not

22:19

built for validation. Almost everyone I

22:21

talked to including um Andres Hayesburg

22:25

he said that look like it's very clear

22:27

that code generation is cheap. we are

22:29

generating more code and the bottleneck

22:31

for human engineers is for code review

22:34

and everyone's trying to figure out how

22:36

do we make code review easier how do we

22:38

build nicer tools Uber has built amazing

22:40

tools to like try to like surface

22:43

important code reviews but everyone's

22:45

pushing like all right let's do more

22:46

code review as an engineer I'll I'll be

22:48

honest like I I never liked doing a code

22:51

review when there's very little to do

22:53

and it's with someone I care about I'll

22:55

entertain it

22:56

>> it's more of a coaching opportunity then

22:58

right

22:58

>> but But but especi as soon as there's an

23:00

AI, it's kind of like I don't know. I I

23:02

don't really care. Like I'm just being

23:04

honest here. Like do you care when

23:06

>> I don't I've never So the pro one of the

23:09

problems is that I think code review

23:10

means so many things to so many people

23:12

in so many places. And so a lot there's

23:14

a lot of projection going on. A lot of

23:16

people are if you say that you don't

23:18

want code review, you're saying you

23:20

don't want to talk to your co-workers,

23:21

you don't want to mentor juniors, you

23:23

don't want to, you know, which is not

23:24

true. we've just bundled so many things

23:27

into this like, you know, it's like

23:28

>> hugely overloaded. [snorts]

23:30

>> Hugely overloaded. And some of those

23:31

things are really good. Some of those

23:33

things um could be done better in other

23:36

ways. You know, some of those things are

23:38

very cultural, very specific. My friend

23:41

David Pole, who um I worked with at

23:43

Parse and he's now working at GitHub on

23:46

poll requests.

23:47

>> Amazing.

23:48

>> The mafia.

23:50

>> Yeah, exactly. Uh he's like to me the

23:54

code review is when we decide do we want

23:55

this in our product or not. I'm like

23:58

well that is a that's a great it's a

24:00

great discussion that is what humans are

24:02

good at. We should talk about is this

24:04

mental model coherent? Should we add

24:06

this? Should we not like love that

24:09

architectures? You know but like the

24:12

code is not necessarily a great artifact

24:15

for all of those. So should we be

24:17

talking to people? Uh yes.

24:20

Is the code review the right form

24:23

factor? Maybe. But I I think that the

24:26

emotional reaction that's so when people

24:27

are getting to the like the validation

24:29

in my book is at the very bottom of the

24:31

list.

24:32

>> I I'd like to like touch like stay here

24:34

a bit more. Can you break out the the

24:36

parts because it feels me code review

24:38

overloaded but the parts of code review

24:40

or or the things that you have seen are

24:42

good things and maybe we don't need to

24:44

do as code review and the things that

24:45

are just like just have never been that

24:47

good and maybe we just need to throw it

24:49

away.

24:49

>> Yeah. I mean I think do we want this in

24:51

our product is that is great. I mean

24:54

ideally you'd talk about that before you

24:55

write the code for it but you know

24:57

whatever. And you know is this is this

25:00

API design? You know, those are great

25:02

conversations. Reading for syntax and

25:06

bugs and that sort of thing. It's not

25:08

evil, but it feels like it could be.

25:10

It's a it's a teaching opportunity if

25:12

that's the best teaching opportunity you

25:14

have. And I guess some folks at some

25:15

point maybe you need them, but it

25:16

doesn't feel high. This like a great use

25:19

of anyone's

25:20

>> it feels the only time where it's useful

25:22

is if someone joins a team and initially

25:24

it can be a little bit of feedback,

25:26

>> especially when there's like not nothing

25:28

is written down. There's no guidance.

25:29

There's no linting rules that would give

25:31

you that.

25:31

>> Well, see, that's again, yes, we can

25:34

fill in the cracks if we haven't built

25:36

the guard rails. We can fill in the

25:38

cracks all kind of ways with with our

25:40

own time. But there are so many things I

25:43

think that we never think to extract out

25:46

of the process of building and

25:48

validating software. So, we rely on us.

25:52

So, I am a huge fan of Intercom, now

25:54

Finn, their engineering um or

25:58

I have been forever. Like, I noticed

26:01

their CTO a decade ago had this saying,

26:04

shipping is your company's heartbeat.

26:06

And I love that they ship a Ruby

26:09

monolith like 10, 15 minutes, hundreds

26:13

of times a day. That is not trivial.

26:15

It's not trivial thing to do, right? So

26:19

they're kind of a high water mark in my

26:21

mind right now for teams that were

26:23

founded preAI have a lot of engineering

26:25

discipline who have become AI native and

26:29

they wrote a great post about how they

26:31

do PRs that are AI validated and the bar

26:36

for them is very high. It's like they

26:38

have all the wisdom of their most senior

26:40

engineers looking at every single diff

26:42

and that is fantastic. Which means that

26:44

you don't have to worry about

26:46

remembering and looking and nitpicking

26:47

and all the things that we're not good

26:48

at anyway and they can talk about is

26:51

this the direction we want to go. Is

26:53

this the right is this the right path?

26:55

>> You've also written that

26:56

nondeterministic systems require more

26:58

entering discipline not less. So like

27:01

what is the thing about the these

27:02

non-deterministic system we're

27:04

specifically AI right we're talking

27:05

about AI let's just just name it that is

27:08

we see that AI does amplify

27:12

both discipline and lack of discipline

27:13

why do we need more and when you say

27:15

discipline what specifics are we talking

27:17

about

27:17

>> well I mean tests and eval right like if

27:22

if we're treating the code like a

27:25

trusted artifact and we're you know

27:27

trying to predict everything with our

27:29

human brains and everything, then we're

27:31

writing the tests that we can predict

27:33

that it might break, you know, and then

27:34

anytime it anytime the system breaks, we

27:36

like try and write a test for that, but

27:39

that is not an especially high bar. And

27:41

and so I think the sort of um the the

27:44

behavioral tests or the I don't remember

27:47

the where it starts with C, but the QA

27:50

folks have these suite of tests where it

27:52

captures

27:53

>> there's also smoke tests.

27:54

>> Yeah, there's so many. There

27:55

there can be like performance tests.

27:57

There can be low tests there. There can

27:59

be Yeah, there can be like just kind of

28:01

fuss testing as well.

28:03

>> Something that's like if okay, if I'm

28:04

not going to read this code, how do I

28:06

know it's going to perform within

28:09

boundaries of the last code that I

28:11

generated? That is conformance testing.

28:14

>> Conformance testing

28:15

>> just as important for lots of workloads

28:17

as, you know, absolute performance. Is

28:20

it just not changing too much? And so we

28:22

I think we're going to need the trust

28:24

has to go somewhere, right? If you're

28:27

debiting from this trust account in the

28:29

creation of the code, it has to get

28:31

built up somewhere else. And I feel like

28:33

one of the things that I'm really

28:34

excited about in the coming months is

28:36

just I actually really like thinking

28:37

about it less as AI and more as

28:40

deterministic and nondeterministic

28:42

systems that have to play nicely

28:43

together because determinism is not

28:45

going anywhere. It's incredibly valuable

28:48

and we have to

28:50

learn to make AI kind of boring. You

28:52

know, it's a non-deterministic tool,

28:55

which means that it is all over the

28:57

place, but it's so valuable, but it's

28:59

all over the place. So, we have to learn

29:01

how to give it carved pathways and

29:04

places where we kind of corral it, where

29:05

we use it in the way that it it's a

29:08

superpower and not in the way that like

29:10

erodess our foundations. This is

29:13

interesting as Martin Fowler a year ago

29:15

when he was on the podcast the thing

29:16

that he talked about is how the biggest

29:18

change with AI is the non-determinism

29:21

and when we think back in the history of

29:23

software it's always been deterministic

29:24

safe same for neural nets but that was

29:27

most of us software engineers didn't

29:28

really touch too much of it because it

29:29

just wasn't that useful for us but we've

29:32

been used to that when we programmed it

29:34

you know it just happened the same way

29:36

unit tests were easy because you just

29:37

run them once you don't really run them

29:39

twice cuz why would you and I wonder if

29:42

This is we need to just realize how big

29:44

of a deal this change is and that the

29:47

any business that employs us like you

29:49

know they they want software that works

29:52

the same way. We we we just had a a

29:56

recent post on hacker news. Uh there's

29:58

this ATS application tracking system

30:00

scoring system that hacker rank

30:02

outsource which scores your resume. And

30:05

so software engineer just like and and

30:07

you can run it locally. It's open

30:08

source. You can use a local model. I

30:10

think they recommend Gemma Google's

30:12

small model. And when you run it like

30:15

100 times, it will score the same resume

30:17

anywhere from like 66 points to 99

30:20

points. And typically most companies

30:21

have 85 set as the bar. And you're like,

30:23

"Hang on. So, we've turned what is what

30:27

they were advertising as a tool to help

30:29

your recruitment. We just we just proved

30:30

that it's just a coin flip." Like,

30:32

that's bad.

30:33

>> Yeah. And we have to be able to say that

30:35

it's bad. AI is not the right tool for

30:37

every use case, you know? And I think I

30:40

think every company is going through

30:42

this in microcosm. And something I was

30:44

saying to folks just earlier today, we

30:47

we've been doing this series of

30:48

conversations on our AI norms and

30:50

values. And it was like a year ago I

30:53

don't trust us. Like a year ago if we

30:54

were like yes we should use AI. No we we

30:56

didn't we didn't know enough. We've gone

30:59

on such a journey over the past year and

31:01

we know so much more now that like if

31:03

one of my co-workers is like AI is the

31:06

wrong tool for this job. I'm like I

31:08

trust you. You know you got to get worse

31:10

before you can get better.

31:11

>> So tell me about where you are right now

31:15

with your how inside of Honeycom how

31:17

you're thinking about AI. how you're

31:19

thinking about how to think about AI and

31:21

and what what what values you came up

31:23

with that works right now for you.

31:24

>> Yeah. It starts with just acknowledging

31:26

that the bar has gone up for all of us.

31:28

That's what happens um when we get

31:30

powerful new tools.

31:31

>> Has the bar gone up or has the the you

31:35

know the floor gone up?

31:37

>> That is a great question. Maybe yes,

31:39

maybe. Yeah, I don't know. We're we're

31:41

definitely in a sort of wandering in the

31:43

wilderness phase. Um but you can't not

31:46

wander or you will be left behind. You

31:48

know we acknowledge that the bar is

31:49

going up for all of this and that the

31:51

only viable way to define that bar is

31:54

better outcomes

31:56

and asking ourselves like is this good?

31:58

Is this better? What does good look

32:00

like? Another another thing that we

32:02

point out is just there is no human in

32:05

the loop. You own the loop. The loop is

32:07

yours. The loop is mine. It would not

32:09

exist if this was not for me. So I am

32:11

the owner, right? There's no, "Oh,

32:13

Claude said this, so." No, no, no. It's

32:15

your work. You own it.

32:17

>> Charity just talked about owning the

32:19

loop. Owning the loop also means

32:21

controlling what every agent inside of

32:22

that loop is allowed to do. Which brings

32:24

us to our season sponsor, Work OS.

32:27

Today, agents are increasingly able to

32:29

act on their own. And the old off model

32:31

was never designed for that. Who is this

32:33

agent? What's it allowed to touch? On

32:36

whose behalf? You really don't want to

32:38

get answers to these questions wrong.

32:39

Work OS is built exactly to solve this

32:42

problem. Work OS is fine grade

32:43

authorization FGA designed for how

32:46

agents actually operate plus SSO and

32:48

skim and not just user off with agents

32:50

bolted on after the fastest growing AI

32:53

companies. Entropic OpenAI cursor

32:55

perplexity already trust works. Check it

32:58

out at work o.com. I also want to talk

33:00

about built kite the CI orchestration

33:02

platform trusted by cursor openai

33:04

entropic uber kama and more. Charity

33:07

talked about owning the loop, but here's

33:09

a challenge. Thanks to AI, your agents

33:11

are writing a lot more code. To trust

33:13

this code, every change that an agent

33:15

makes still has to be built, tested, and

33:16

proven safe before it ships. So,

33:19

obviously, you need CI more than ever.

33:21

But when agents are pushing 5, 10, or 50

33:23

times the commit volume to your

33:24

pipelines, faster CI runners won't be

33:26

enough to keep up with it. Shaving 30

33:28

seconds off a single build is

33:30

meaningless when the queue is 100 plus

33:31

jobs deep. What you really want is a CI

33:34

system that gets faster as the volume

33:36

grows and CI that offers instant

33:38

parallelization to give you unlimited

33:40

concurrency and to intelligently route

33:42

changes at runtime. This is what

33:44

Buildkite does and why global software

33:46

leaders at every level continues to rely

33:48

on it. The same architecture that

33:50

observed the scale of Shopify and Uber a

33:52

decade ago now runs about 1.4 billion

33:54

job minutes a week across Cursor, Meta,

33:57

Reddit, and Snowflake. While the rest of

33:59

the CI world are crackling under the

34:00

weight or rearchitecting their platform,

34:03

build kite continues to reliably grow.

34:05

Agents run on your infrastructure or on

34:07

build kite. Any cloud, any chip, your

34:09

secrets, your scale. Every artifact and

34:12

log is captured. So when something

34:14

fails, either you or your agents have

34:16

immediate insight for why. As you're

34:18

injuring the context you give to your

34:20

agents, think about how you verify what

34:22

they hand back. If your system is

34:23

buckling under the increased volume,

34:25

head to buildkai.com/pragmatic.

34:27

30-day all access trial, no credit card,

34:30

and an actual human engineer on standby.

34:32

His name is Ola, and he's very helpful.

34:34

And with this, let's get back to charity

34:36

and communication norms with AI. I think

34:38

there was this frenzy of, "Oh my god, I

34:40

could do this. Oh my god, it's so cool."

34:42

And I I I know you have also become very

34:47

weary of this slot. Very I I just don't

34:50

even read it anymore. As soon as I can

34:51

tell,

34:52

>> as soon as I recognize this might have

34:54

been AI, it's like trash.

34:55

>> Here's a baseline. Uh, you cannot send

34:59

anyone something you haven't read. And

35:01

in fact, if it would take them longer to

35:03

read it than it took you to make it,

35:04

it's probably slot. That's really

35:06

disrespectful actually. And I think like

35:09

just like asking someone to like you're

35:11

asking anytime I give you something, I'm

35:13

asking for your time and attention. And

35:15

if I'm giving you something that I don't

35:17

even know what's in it and I and I'm

35:19

putting it on you, it costs you instead

35:22

of me, that is [clears throat]

35:24

not good. I also think that even before

35:28

that it's like I've noticed as I start

35:29

working on these norms and and values

35:31

I'm noticing myself as I start to ask

35:35

someone a question without trying to

35:36

look up the answer. Oo I shouldn't do

35:39

that or if I'm giving someone something

35:41

that I kind of generated and I'm like oo

35:44

you know it's so part of it is just

35:46

self-awareness. It's interesting because

35:48

everything you talked about it reminds

35:49

me of when a new joiner would join a

35:53

team, a junior engineer, a new grad.

35:55

Either they they had emotional

35:57

intelligence or they picked up on really

35:58

quickly that for example you go and ask

36:00

a senior of their time once you put in a

36:04

little bit of work and you start to

36:05

respect their time as well. And

36:06

obviously it doesn't start like that. We

36:07

don't want them but there's this balance

36:09

and I almost feel it's the same thing.

36:10

We're like look like respect your

36:12

colleagues, respect fellow humans. if

36:14

you are communicating with them, make

36:17

sure that you're not wasting their

36:19

attention cuz now I guess attention is

36:21

we're we're kind of running low. Like we

36:23

have all of these all of these a like a

36:25

bunch of people have a bunch of agents

36:26

doing but the point is that's kind of

36:28

the currency and as long as you respect

36:31

that it it doesn't matter like I I think

36:32

we're not talking about don't use AI for

36:34

this or that like you use it as much as

36:36

you want or what make yourself more

36:37

efficient just don't degrade because it

36:40

it really degrades those personal

36:41

skills, right? You can use AI as a

36:44

shortcut to help you not have to think

36:46

too much. And you can use AI to help you

36:49

think more deeply and more rigorously.

36:51

And both of those use cases have their

36:53

place. But when it comes to your core

36:56

job function, we primarily want the

36:58

second one, right? And especially if

37:00

you're involving someone else and you're

37:01

asking them to review or you know and

37:03

this is not absolutist like there are

37:05

people who English is a second language

37:07

and they use it. people who like neurode

37:09

divergent and and that is again that is

37:11

still being respectful you know it's so

37:14

it's not like like you said it's not no

37:16

AI but it's like make reasonable asks of

37:19

each other and and you know we don't

37:22

need to reinvent a new bar for quality

37:25

or respect because we have great bars

37:28

already for quality and respect we just

37:30

need to apply for a while there I think

37:32

that there was a bit of oh my god this

37:35

is so cool do you see what this cool

37:36

thing can do and I think we're all just

37:37

like so over

37:39

>> well the reason I I really respect that

37:41

you came from the the cis you know this

37:43

the cis dev background you also you're

37:46

very invol these are all folks who have

37:49

been pretty skeptical of AI and and you

37:51

you mentioned how you're seeing two

37:54

camps two very clear camps there's like

37:56

kind of the the AI pill folks who like

37:58

get it and then the people who seem to

38:01

like they just hate AI and you're you

38:04

said that you're not seeing these two

38:06

camps have any sort of way to go between

38:09

any feedback loop? Can can we talk about

38:11

what you're seeing and like maybe you

38:13

know like where you see some of these

38:15

camps forming?

38:17

>> See the problem is that neither side is

38:20

making it up. Like they are seeing

38:23

really scary trends. They're see they're

38:27

grappling with real hard problems that

38:30

are getting worse, you know. And on the

38:32

enthusiast side, it's like they're

38:34

acutely conscious that it's it's a bit

38:37

of a race and that we need to push

38:40

ourselves out of our comfort zone and

38:42

they see other companies moving faster,

38:44

catching up, leapfrogging.

38:47

They're really worried about, you know,

38:49

we're falling behind. And and the first

38:51

thing I don't want to make it sound like

38:52

false equivalents because well, there

38:56

are elements of this that are true. Lots

38:57

I think every company is more one or

38:59

more the other, but like they're not

39:01

wrong. They're not wrong. These we've

39:03

never seen technological change this

39:05

fast. We're on the inside of an

39:07

exponential curve, which is very rare

39:10

and it never usually lasts that long,

39:12

but it's still happening. you know, um,

39:15

things that are happening that shock us

39:17

and we would be wise to prepare for

39:19

them. So, like that's real. That's real.

39:21

And, and these folks are usually at most

39:23

companies, usually they are the small

39:25

minority and they are constantly feeling

39:27

outman. One of the things that's ironic

39:29

though is that both of these sides feel

39:30

like they are the tiny minority and

39:32

they're outman and they're being

39:34

suppressed and they are standing up for

39:36

what is truth and valor in the face of

39:38

the big AI folks or the big skeptics.

39:41

But the other side, so and this often

39:44

starts to come down to the group that is

39:47

on call and the group that is not.

39:50

>> Yep.

39:50

>> Because the people who the buck stops

39:53

with them, they are seeing melting

39:56

mental models. They're seeing slop.

39:58

They're seeing all their hard work just

40:01

dissolve and they're see and they don't

40:02

see any end in sight. And

40:04

>> so ju just to be clear, we're seeing

40:05

that the people who are on call for a

40:07

lot of these systems, they're seeing

40:08

more incidents. They're seeing

40:10

carelessness being caused by it. They're

40:12

actually seeing that since that group

40:14

started to use more AI, our systems are

40:16

getting way worse.

40:17

>> Way worse. Yeah. And and it's that's

40:19

very real and not making it up.

40:21

>> No, no, no. Actually, I was just talking

40:23

to someone inside of Meta. Uh there's

40:25

been this big drama where people have

40:26

been saw

40:27

>> your post.

40:28

>> Uh so not just my post since then and I

40:30

haven't written about this since and I'm

40:32

not sure when this podcast came out. I

40:34

might have not talked about it is inside

40:36

of Meta. uh they track SE zeros which is

40:39

the highest severity. Well, you remember

40:41

Sevzeros. There has been a flurry of

40:44

Sevzer, so many of them. And you you

40:47

cannot hide like this is, you know,

40:49

meta. Like this is black or white. And

40:52

the past about two months, it's been

40:55

crazy. And and just so it happens, it's

40:57

happening inside of Instagram. It's

40:59

happening inside of WhatsApp where the

41:00

the trust and safety, the basically the

41:03

the reliability folks have been axed,

41:07

removed.

41:09

So it's impossible to deny the

41:12

connection as well that there of course

41:13

it's not a direct one but again and each

41:16

each one has as a postmortem but meta

41:18

has not had this badge for closer to a

41:21

decade. Yeah, move fast and break

41:24

things.

41:24

>> And you put two plus two together. And

41:26

when I told this story at a conference,

41:28

people came up to me and they said, I'm

41:30

so glad you talked about this cuz my

41:32

company, different company, often VC

41:35

funded or publicly traded like same is

41:37

happening. People are like whispering to

41:39

me like like we are not metal, but the

41:41

same thing is happening.

41:42

>> Same thing is happening.

41:42

>> And and you know what they all told me?

41:44

They told me I thought it's just us or I

41:46

thought it's us and then my buddy who

41:48

works at this other company. And

41:50

suddenly it's like, "Oh, it's all of

41:51

us."

41:52

>> No, it's all of us. Yeah. No, it's the

41:54

real thing. And the intercom folks, you

41:57

know, what I love about them is they

42:00

publish the real gnarly stuff, right?

42:04

>> Yeah. They don't color it out.

42:05

>> They don't color it out. And they showed

42:07

that for 18 months,

42:10

reliability and code quality went down

42:12

and it had just started to possibly be

42:16

going back up. But it's it's still not

42:18

there where it was. And they're very

42:20

honest about

42:21

>> and they're honest about it.

42:22

>> Finally. So on

42:25

>> this is the thing like stop like

42:27

spitting in my and telling me that you

42:30

know like it's just this is my thing.

42:32

It's like

42:34

we need to hear the wins. We need to

42:36

hear what's we need to hear about what's

42:38

possible. We need to hear what's

42:39

exciting. But you got to couple it with

42:43

the costs. You got to couple it with a

42:46

is it worth it? You got to couple it

42:49

with what are we doing? What is

42:50

happening? And I feel like part of the

42:53

reason both of these sides are getting

42:54

so frustrated is because they're not

42:56

those they're not connecting at all. And

42:58

so the people who are seeing really

43:01

incredible there are some really

43:02

incredible things happening in software

43:03

right now like with rewrites and with

43:06

you know automating away like real toil

43:09

and like not a single person that I've

43:11

talked to would give it up. Yeah.

43:13

>> Which is amazing. like they don't they

43:15

get so excited. Nobody wants to take it

43:18

away, but half of the people are seeing

43:21

the wins and they're not connecting it

43:24

to the cost, which makes them think that

43:26

that their co-workers are just fucknuts

43:29

who are just like, "Oh, they just don't

43:30

want to lose their jobs. They're just

43:31

afraid of getting automated out of

43:33

existence. They're just blah blah blah

43:35

blah blah." Like, no, dude. You you be

43:37

on call and then see how you feel. you

43:39

know, and and there's a mirror effect

43:41

kind of happening where the folks who

43:42

are on call, who are responsible for

43:44

this stuff, they don't actually believe

43:46

that these winds are real. They think

43:48

they're all cooked because they're not

43:50

hearing the quiet part said out loud

43:53

that, "Yeah, we're seeing this wind, but

43:54

this is what it cost. We're still

43:56

cleaning this up. We're still And so

43:58

that that's my that's my beg to everyone

44:01

who loves GG's podcast and listens to

44:05

this is tell the whole story.

44:09

talk about the costs. We're all do we're

44:12

all in it together.

44:13

>> Yeah, cuz you're right like this

44:15

technology is not going anywhere. It it

44:17

will make really big positive change at

44:19

a bunch of it's here,

44:20

>> but it's not magic.

44:21

>> It's it's not magic. And I I think this

44:23

is what you said in in make AI boring

44:26

again. Another great article of yours.

44:28

What you said is AI is just technology.

44:31

It's

44:31

>> just technology.

44:32

>> And you were arguing that let's just

44:35

realize it's technology. It's a tool and

44:37

let's learn to use it. Well, now one

44:40

other thing you said which is very

44:41

interesting is software will be the

44:44

killer app with AI.

44:46

>> Yeah, I think

44:47

>> which is very unique. Let's talk a

44:48

little bit about that.

44:49

>> Software is made of logic and language.

44:51

AI is made of logic and language. And

44:55

because of that, we can bake in guard

44:58

rails. We can bake in checks. we can

45:01

bake in validation that we I don't know

45:05

how we do that in other parts of our

45:07

lives or other applications. And so it

45:09

totally makes sense to me that software

45:11

is what AI is best at. I mean you you

45:14

see like in the courts they're starting

45:16

to get lawsuits for for the court is

45:18

suing lawyers who are submitting briefs

45:21

that have hallucinated crap in them. How

45:24

do you check for that? You know with the

45:26

same I we have structured data. we have

45:30

you know a whole and I just don't know

45:32

how you account for that in the same way

45:34

>> it it might also mean that whatever will

45:36

work outside of the software industry

45:38

for AI it will be a subset of what will

45:41

work in the second basically if we can

45:43

do something with AI if we can automate

45:44

a process or something you might be able

45:47

to do it in other industries but but

45:50

maybe not but if we cannot do it good

45:52

luck you will not be able to do it

45:54

because we we have the domain where you

45:56

can validate stuff we have we have

45:58

incredible training training data on on

45:59

code that compiles, right?

46:01

>> Yes.

46:01

>> Like in in a place bunch of places, you

46:03

might have like training data like with

46:05

with magazines, you might have like

46:06

lowquality magazines or whatnot, right?

46:08

You see what I mean?

46:09

>> I mean, back to your point about humans

46:11

like their determinism. They like things

46:14

to happen the same way.

46:15

>> And it's very interesting because as I

46:17

think of it, you know, one of my

46:18

businesses is writing. I write a

46:19

newsletter that is is I I like to think

46:22

it's good and it's worth reading.

46:24

>> It is. And I would have said if you

46:26

asked me what is AI really good at? Now

46:28

obviously it's good at coding but before

46:30

that it was good at writing. It was like

46:31

my mind was blown that it can actually

46:34

control the language. When all the newer

46:36

models come out I do this test where I

46:38

say like all right like you know write

46:40

an article in the style of the pragmatic

46:42

engineer and every single time I can

46:44

tell it's a generic because because it's

46:46

it's repetitive it has this thing. So my

46:48

point is AI is actually not as good as

46:50

writing pros as it's a lot better in

46:53

writing code.

46:54

>> Way better at writing. when I asked to

46:55

write code like I often I'm like yeah

46:57

this is something I could have written

46:58

whereas when I asked it to write words

47:00

I'm like I would have never written this

47:01

and it has training data on me so who

47:03

knows this might prove that software is

47:06

the best fit

47:07

>> I think it is software is a simplified

47:10

version of of language for a purpose

47:13

yeah I you know at first um everybody

47:16

was like trying to come up with ways to

47:18

be more efficient and write with AI and

47:19

everything and I sunk a lot of cycles

47:21

into that and I have decided not to sink

47:24

anymore Because writing is thinking on

47:27

paper and there's no shortcut for doing

47:29

that thinking. Anything that I write,

47:32

it's not content, you know? It's not

47:34

content where it's just like, well,

47:36

generate me couple thousand, which I'm

47:39

not shaming anyone who generates

47:41

content, but that's not what I'm trying

47:42

to do. I'm trying to think through hard

47:45

and interesting problems and share them

47:48

with people. And I don't think AI is the

47:50

appropriate tool to use for that. I use

47:51

it for structure. I I'll be like, "Hey,

47:53

read this and give me feedback and

47:55

stuff." But don't worry.

47:56

>> So, I think we should not forget that as

47:58

we improve our, you know, our our

48:01

skills, our capability, our experience,

48:04

our our thoughts, we do become more

48:07

valuable. And I I have this idea and

48:09

this this might be a flawed idea, but I

48:11

think it's I think it will be correct

48:12

that, you know, 5 years from now, how

48:14

will people be hired? Now, of course, we

48:17

know the tools will be better and all

48:18

that, but in the end, I think it'll be

48:19

like this. someone's sitting here and

48:21

I'm going to be interviewing at you. I'm

48:23

going to be trying to get into your

48:24

company, honey, probably Honeycom,

48:26

right? And we will be having a

48:28

conversation and you will judge me based

48:30

on how I respond and the more I have

48:35

spent thinking and bettering myself, the

48:38

more valuable I will be to you because

48:39

you will have all these candidates and

48:41

some of them will have outsourced or

48:42

other things to AI and they will have a

48:44

blank because that thing is off. Guess

48:47

who you will want to work with, right? I

48:49

am so excited about leaning into the

48:52

parts of being human together. I don't

48:55

like the feeling of chatting all day

48:57

back and forth between agents and people

48:59

on Slack. Like it feels way too similar.

49:02

It's just gross. Honeycomb is a fully

49:04

distributed company, which was never. We

49:07

always wanted to have a hybrid model,

49:08

but the office has not come back. And

49:10

and I and I feel all kinds of ways about

49:12

this because I love not leaving the

49:14

house.

49:15

But at the same time, I I crave this

49:18

more full like I'm so glad you're here.

49:21

It's so nice to see you.

49:23

>> We were just talking how it it is

49:24

different. We we've done a podcast uh

49:26

remote and it was a decent one, but but

49:29

this is more enjoyable.

49:30

>> Yes. And so part of what I hope we do is

49:33

just remember that we're in charge of

49:35

the machines.

49:37

They serve us and this is still what

49:40

matters.

49:40

>> Yeah. I I want to pull back to back some

49:42

to something different to talk a bit

49:44

more about ops and and DevOps and give

49:46

one of your spicy stakes. So now that we

49:48

have AI, we can actually just, you know,

49:49

badmouth some of the other thing or or

49:51

just be real. Let's talk about DevOps.

49:53

Just can we go back a little bit in

49:54

time? You were there. Why was it

49:57

created? And in the end there was this

49:59

massive DevOps movement in the 2010s. Do

50:02

you think it succeeded? Do you think it

50:03

failed? So before DevOps, we needed a

50:07

DevOps because there was devs and ops

50:11

and there was the proverbial wall that

50:13

code got thrown over, right?

50:15

>> And ops were the people who were in

50:16

charge of the IT. They deployed, they

50:19

managed the servers, they said the Linux

50:21

version,

50:22

>> handcrafted Linux,

50:24

>> yeah,

50:24

>> you know, pluggable storage models and

50:26

everything. That was always a bad idea

50:28

because it's split brain. Half of you

50:31

are writing the code and the other half

50:33

are understanding it. I would argue that

50:35

you can't really understand the code you

50:36

write unless you're operating it. So,

50:38

you know, the DevOps movement did a lot

50:40

of good trying to knit back together

50:43

that sort of original original sin. And

50:46

you know, around the time that I was a

50:48

CIS admin, there was this big push. All

50:50

right, ops people learn to code. And

50:52

great, I'm glad that happened. Everyone

50:54

who works with computers should be

50:56

writing code. I feel like the wave after

50:58

that was a little less successful which

51:01

is like okay software engineers time to

51:03

learn to understand your code in

51:05

production. But I also think that in my

51:09

mind 20 years of DevOps was really about

51:13

one thing trying to create one feedback

51:17

loop that connected people writing code

51:20

to that code in production. And it

51:22

failed. I mean it failed to this day.

51:25

like it they're done they're done by

51:27

they're two different domains you know

51:28

there are some people who I mean it's

51:30

>> and I I'll show you this this diagram

51:32

that that that you drew we now added

51:34

agents we'll we'll put it on the so

51:36

viewers can see it but this is your I I

51:39

think it's a really nice uh draw up of

51:42

how there is no feedback loop like the

51:44

office people or often times we call it

51:46

platform teams they manage the inflayer

51:48

engineers deploy there

51:50

>> and so to be clear I think that's

51:51

actually good and fine and healthy I

51:52

think that there are separations of

51:54

concerns where you can't expect anyone

51:56

to do everything and the nice separation

51:58

of concern is do I own am I responsible

52:02

for the stability of the things that you

52:03

put code on or am I responsible for the

52:06

code that I put on the thing right that

52:08

is a nice seam because you want the

52:12

infrastructure to

52:14

be stable be like to protect itself to

52:17

be resilient and all these things and

52:19

you want your code like to be oriented

52:22

towards is every single user having a

52:24

good experience. You could have one of

52:25

those things be true and the other not

52:27

be true. Like they're they are

52:28

decoupable.

52:29

>> And and actually this is like even the

52:31

most modern companies I I often refer to

52:33

entropic as this company which operates

52:36

in a very different way to most

52:37

companies. They're very successful

52:38

despite doing a lot of different things.

52:40

However, internally they have platform

52:43

teams. They had the cloud platform teams

52:45

and then they have applied AI who which

52:48

is more of the kind of the feature

52:49

teams, the integration and the two I

52:52

talked to both of them. They just have a

52:53

very different outlook. They have a very

52:55

different view on even basic stuff like

52:57

will software engineers be obsolete. The

52:59

the people on the platform team were

53:01

like no we're working really hard and on

53:03

the apply they're like well maybe it

53:04

will happen.

53:05

>> Yeah. That does not surprise me one tiny

53:07

iota.

53:08

>> No but but so so this company Antropic

53:11

that started with a blank page they

53:13

arrived at the same place.

53:14

>> Yeah. Yeah. No, I think it's the right

53:16

separation of concern. And I'm not

53:18

trying to erase it, but I think that to

53:22

be a good engineer, you need fast

53:24

feedback loops. And and this is part and

53:26

parcel with the whole, oh, the source of

53:27

truth is the code. If that's where you

53:30

live, if you live in the land of how it

53:32

should theoretically work,

53:35

no. And I think that with agents,

53:38

they're breaking that, right? They're

53:40

breaking that and they're forcing

53:42

another thing on the observability trip

53:44

is a lot of people if you say like what

53:46

is observability they'll be like ah well

53:48

there's three pillars there's metrics

53:49

logs and traces we talked about this

53:51

last time metrics and logs I would say

53:53

are system exhaust they're the exhaust

53:55

pipe they're and and they're never going

53:58

away because every team runs a ton of

54:00

third party software they didn't write

54:03

it they don't own it they just have to

54:04

run it and it's outputting [ __ ]

54:06

>> yeah and and you want

54:07

>> and you just got to put it somewhere you

54:09

>> observe that you see was and then you do

54:11

stuff with it.

54:12

>> Yeah. And you know, you should put it

54:14

somewhere cheap. There's a ton of it.

54:15

It's not super high value, but you

54:17

definitely need it, right? And you can't

54:18

do anything about you. Just take it and

54:20

put it somewhere. Then there's your

54:24

code. There's your crown jewels, the the

54:27

code that makes you a company.

54:30

And for for that code, your telemetry

54:33

should be a product decision. It should

54:36

be you store it once with all all the

54:40

connective tissue because the value of

54:43

rich data goes up not linearly not even

54:46

exponentially combinatorally.

54:48

If you have a wide event or a trace with

54:51

29 bits of data and you add a 30th that

54:54

30th is more valuable than all the

54:56

others multi like it is just so powerful

54:59

and with non-deterministic software you

55:02

know right up front you can't predict

55:04

what it's going to do. You have to c

55:07

like that is a product decision to

55:09

capture that trace. So, so let's talk

55:11

specifically about modern observability

55:13

and like companies that are, you know,

55:14

like either building AI related code or

55:17

just complicated code that they're

55:19

generating. You know, in the old world

55:20

again like I'm just being, you know,

55:23

observably 101 back in the day. The way

55:25

I would have written the code is you

55:26

write the code and you think like, hm,

55:28

something funny might be going on here.

55:30

Let me do a log or an info or a warn.

55:33

And then I would also try to maybe if

55:35

we're printing this in production, I

55:37

realize like okay, well I guess it's

55:38

crashing and we don't have any logs

55:40

there. So I guess it's some other part.

55:41

Let me do put a tool that will like log

55:44

everything and now I have a bunch of

55:45

stuff. Now this is the old the the very

55:47

simplest way of thinking in kind of a

55:49

modern business where I'm like I know

55:52

this is high value stuff. What are ways

55:54

that I can go about that's actually

55:55

maybe a bit like more practical than cuz

55:58

I I I just will use super basic one.

56:00

Auto instrumentation has gotten so good

56:03

in recent years. If you're using open

56:05

telemetry and everyone should be using

56:07

open telemetry. All of the common

56:09

patterns like all of the models are

56:11

trained on them. So it is literally

56:14

faster and easier to build with

56:15

instrumentation than than not to.

56:18

>> And with instrumentation to just once

56:21

once I have the code in a compile step

56:23

or an extra step, it just adds it to the

56:24

right lines.

56:25

>> This is what's important, right? It's

56:27

part of just developer intent, right?

56:29

this is how you declare your intent and

56:31

that's how you check up on your intent

56:33

in production. It's honestly gotten so

56:35

much simpler. And you know, I don't I

56:37

don't fault developers or anyone else

56:39

for not kind of closing that loop with

56:41

with DevOps because the fact is it was

56:44

it was prohibitively hard and

56:46

timeconuming and difficult because you

56:49

know you're old school software engineer

56:51

and you're you sit down write some code

56:54

you're like ah here I should instrument

56:55

it and look at it in production. So

56:58

you're like, "Okay, I've got a bit of

56:59

data and I want to do something with

57:01

it."

57:02

>> All right. Is it a metric, a log, a

57:06

trace, an exception, an error, a

57:09

profiling, you know, just like, okay, if

57:11

it's a metric, is it a

57:13

>> is it a counter? Is it a gauge? Is it,

57:16

you know, just like all down takes? So,

57:18

and then well, what type of data is it?

57:20

Is it going to have high cardality? Is

57:22

it going to be a needed to worry about

57:24

you can blow it? Yeah. It's just like if

57:26

it's a log line, do which log level do I

57:28

do? Do I append it to like it's just you

57:31

could double, triple, quadruple the

57:33

amount of time that you spent writing

57:34

the code trying to instrument it and

57:35

then still wouldn't be done. Like you

57:37

deploy it and then it's like, okay, I

57:39

know the name of the thing that I added,

57:41

but how do I find it? How do I display

57:44

it? How do I create a dashboard? It's

57:46

just like that was prohibitively that

57:49

was really hard. But now we can bring

57:53

all of this to you right in your

57:55

development environment. It is easier

57:56

and faster to instrument with telemetry

58:00

than without it. And you don't have to

58:02

leave your development environment to go

58:04

and get it. You know, you could have the

58:06

agent like we've built some really cool

58:08

[ __ ] at Honeycomb where it'll just it'll

58:10

be like, "Oh, hey, that thing that you

58:12

wrote, you know, maybe you want to look

58:14

at this." And you can you can control

58:16

how it is. you can you know but it's

58:19

it's right there and that's how it

58:20

should be it should be part of your

58:22

development loop

58:22

>> can do we talk about what spans are

58:24

because uh I'll quote Eric Eric Riddok

58:26

who recently wrote LinkedIn the basic

58:28

idea of observability for applications

58:30

is don't use logs or metrics just put it

58:32

all in spans what are spans

58:35

>> spans are bits of of a of a trace

58:39

I mean a trace is just structured log

58:41

with some fancy fields right and so the

58:44

span is a subset of the trace that makes

58:47

up the entire duration. And I don't know

58:51

if you've followed any of this, but like

58:53

the default building block has been the

58:56

transaction for as long as the web has

58:58

been around.

58:58

>> Yeah.

58:59

>> That doesn't work anymore

59:01

>> with specifically with AI.

59:03

>> Yeah. We just we just ship something

59:05

called timeline that is like that sits

59:08

on top of spans. So, you know, if if you

59:12

you know, if you if you run something

59:13

like intercom, you have got a chat thing

59:14

and and a customer's like, I'm

59:16

>> conversation going on.

59:17

>> Yeah. A customer's like, I'm

59:19

complaining. You're like, okay. So, you

59:20

spin up an agent, supervisor agent that

59:22

spins up more agents, and each of them

59:24

calls APIs. Each of them calls like

59:26

storage backends and stuff. Then they

59:27

return and then the customer has another

59:29

that could span hours, right? And you

59:31

need to be able to zoom out and

59:34

visualize the whole thing. It's super

59:37

cool. And so this is a new primitive

59:40

that you came up for these use cases

59:42

where there's a conversation or or like

59:45

a an LM is involved and and you you have

59:47

like

59:48

>> it's like a metatrace.

59:50

>> Okay. Yeah. So I guess this

59:51

>> a trace of traces.

59:52

>> So we need these new building blocks

59:54

actually just you be able to work with.

59:57

>> Yeah.

59:57

>> Interesting. So I guess this is

59:58

something to keep in mind like any any

60:00

any engineer who's like building on top

60:01

of of LMS who is an AI engineer now as

60:04

as we know. It's either that or you've

60:06

just got all these tabs open with traces

60:08

and you're just copy pasting IDs from

60:10

one to the next.

60:11

>> Yeah. Or if if you're a large enough

60:14

company, you might have built your own,

60:16

but we know that's it's doable, but it's

60:19

painful.

60:20

>> It's it's doable. It's painful. I'm

60:21

really looking forward to seeing over

60:23

the next few months or year or whatever

60:26

just the the marriage of tests and tele

60:31

and evals from a telemetry perspective

60:34

>> with agents and AI agents being around a

60:36

lot of them are are now very useful to

60:38

connect to observability stores you you

60:41

can go and and do stuff. However,

60:44

one question that comes up is, well,

60:47

agents have a finite context window and

60:50

with observability, you can really

60:51

easily overload that. What are

60:53

approaches you've seen of of agents

60:55

either using honeycoms or or or some

60:58

other data sources to like make them

61:01

productive? Have you seen some patterns?

61:03

>> There's a lot of trash data out there.

61:06

Um and and a lot of traditional

61:10

telemetry data, metrics, logs, traces,

61:12

what was all it tends to fill up your

61:15

context window with crap when the most

61:18

important part of the data is again the

61:21

relationships between the data. So if

61:23

you can and in fact one of the AI SRE

61:28

startups posted this great

61:31

piece a couple months ago about how they

61:33

they see the agents that they deploy in

61:35

the wild bypass the observability data

61:39

most of the time and they go upstream to

61:41

find richer intact telemetry data. So

61:46

that's what I would say either you give

61:48

your agents the but it's it's the

61:49

relationships that matter right because

61:52

that's what actually helps the AI make

61:54

decisions

61:55

>> and when it comes to observability I

61:56

cannot not mention your book observably

61:58

engineering and you have a second

62:00

edition can you tell me why you felt the

62:03

need to write it and what's new in it

62:05

>> oh man uh the whole thing is new so

62:09

O'Reilly any anytime a book is

62:11

considered successful and if the topic

62:13

is still relevant they'll ask if you

62:15

want to write a second edition So, it's

62:16

not really um but I was really excited

62:18

to write it. The first book,

62:22

I don't want to say I wasn't proud of

62:24

it. You like you're not like your

62:25

children in your books, you're not

62:27

supposed to like say anything bad about

62:28

them, you know, cuz uh it's fine.

62:31

They're but it was written 2019 to 2021.

62:35

The definition of observability meant

62:37

one thing when we started and another by

62:40

the time we ended. And there was at no

62:42

point where I was like, "Oh, this book

62:44

is great. Let's ship it." It was just

62:45

like, "Oh god, I can't do this anymore.

62:47

Just like please take it and I hope

62:49

that's enough." Now it feels like the

62:50

definition of observability is more

62:52

settled. Um, it's everything else in the

62:54

world that's like changing and and crazy

62:55

and all. So, I think it's a good book. I

62:57

hope it can help a bunch of folks. I

62:59

It's got six parts. So, the first part

63:02

is and I wrote parts one and six. first

63:05

part is just kind of like grappling with

63:06

what does it mean to run deterministic

63:08

and nondeterministic systems you know

63:10

and then you know my co-authors uh Liz

63:13

and Austin and George the part two and

63:16

three is how how do you instrument your

63:19

code and how do you understand it and

63:22

there are parallel tracks for doing this

63:23

with or without AI

63:25

um and a couple great guest columns from

63:28

uh from Jeremy and then parts four and

63:32

five are we have a whole

63:34

lineup of guest authors and

63:38

use cases and deep dives. Hansen Ho did

63:41

one on front end and um

63:44

>> interesting

63:45

>> and mobile. Uh we've got some great ones

63:48

on CI/CD. Click House did one on Color

63:51

Storage. Some really really stellar

63:54

things. Uh there's a chapter from Kesha

63:55

at Finn on how they use iteratively to

63:59

like do observability.

64:00

>> Oh, so so this is this is a brand new

64:01

book. It's not A a lot of second

64:04

editions are like, "Oh, we added like,

64:06

you know, two chapters."

64:07

>> This is an entire rewrite and it's twice

64:08

as long. The first one was 250 pages.

64:10

This one is 600 pages.

64:12

>> Okay. So, I'm interested now. I'm going

64:14

to get this book.

64:15

>> And the part six, it's my baby. And it

64:18

was originally supposed to be three

64:19

chapters for observability engineering

64:21

teams, and it turned into, it's a third

64:22

of the book. It's 200 pages, but it's

64:24

it's topics for observability governance

64:27

for for leaders. And it starts with an

64:29

open letter to CTO's telling them why

64:32

all their big AI goals are blocked

64:34

behind their ability to make sense of

64:36

their system, you know? And then we talk

64:38

about, you know, software delivery for

64:41

no buzzwords, any just systems theory,

64:44

right? Just if you like Danella Danella

64:48

Meadows stuff, then you will like it.

64:50

And then and then stuff and then there's

64:51

a chapter on how to quantify the impact

64:53

of observability for your finance. How

64:56

to how how to treat observability as an

64:58

investment versus a cost center and when

65:01

you should use observability as a cost

65:02

center and when you should treat it like

65:04

an investment because it inherits the

65:06

type of software that you're observing,

65:07

you know. And there's a great guest

65:10

chapter from Rick Clark on staff plus

65:13

principal distinguished engineers who

65:14

are trying to drive massive change

65:17

without authority. How do you do that? H

65:20

and how is observably vital to that? And

65:23

then there's a chapter on build versus

65:27

buy versus open source.

65:29

>> I mean it it sounds to me that anyone

65:30

who is inside or wants to be inside a

65:34

platform engineering team, maybe you be

65:35

an engineer or a leader.

65:37

>> You're in charge of

65:38

>> you probably want to read this book. And

65:41

at the end there's a chapter that is

65:44

possibly one of my favorites that which

65:46

is it's called the art and science of

65:48

vendor partnerships and it's just

65:50

talking about how we can't build all the

65:52

software that we need and great vendor

65:56

partnerships are ones where you have

65:58

influence over their road map and they

66:00

trust you to you know do these things

66:01

and like talking about how most

66:03

transformations fail. The ones that

66:07

succeed succeed because someone on the

66:08

inside has trust and credibility. People

66:11

believe when you say something, it is

66:13

true. You know, it cuts through

66:14

bureaucracy like a hot knife through

66:16

butter. When it comes to partnering

66:18

with, you know, the sales or of another

66:20

company, you do not have trust

66:22

incredibly. You you work to build trust

66:24

through reciprocity.

66:26

You learn just how much you can trust

66:28

them over time, right? Uh but the best

66:32

vendor relationships are the ones where

66:34

you genuinely you feel like their

66:36

successes are your successes. Your

66:38

successes are their successes. You're

66:40

happy to see each other because each of

66:41

you are delighted because you know

66:42

you're getting something from the it

66:44

feels like you are two different teams

66:45

working at the same big company. That is

66:48

rare. Doesn't usually happen and that's

66:49

fine. Most vendor relationships are ones

66:52

where you shake hands, you exchange

66:53

money and services and that's fine. But

66:55

I think in an era of AI, these are

66:59

durable skills. These are durable skills

67:02

for very senior engineers who care about

67:04

impact.

67:05

>> Senior engineers and also engineering

67:06

leaders and anyone who wants to become

67:08

an engineering leader cuz I guess like I

67:11

mean both of us have been in in

67:12

engineering leadership like you've been

67:14

in much higher positions than I have.

67:16

But I think it's fair to say that the

67:17

way for you to get to that CTO role,

67:20

that head of engineering, that director

67:22

of engineering is to do the work for six

67:26

or eight or or 6 months, a year to year

67:28

and a half. And to do so, you need to

67:31

know these things. I feel observe the

67:33

engineering might be underelling this

67:34

book. I'll be honest, the title, but I'm

67:37

I I'm I'm also going to get it and I'm

67:39

I'm I'll probably think of ways to share

67:41

a bit more. But thank you for writing.

67:43

Thanks to you all to your to all your

67:44

co-authors. But speaking of leadership,

67:48

I'd love to talk about a little bit of

67:49

engineering leadership because there's a

67:51

a lot of things are changing, but I

67:54

loved one of your very recent takes on

67:56

leadership. And I'm going to quote you.

67:58

The most effective leaders are kind,

68:00

caring humans and skilled business

68:02

operators. The second most effective

68:04

leaders are terrible humans and skilled

68:06

business operators. And after that comes

68:08

any anyone everyone else. There are

68:10

plenty of good, kind humans who are

68:11

sloppy operators and bad at business

68:13

because being good at business is very

68:15

hard. And you said this in relation to

68:18

what happened at Twitter/X,

68:20

referring to as Elon as a terrible

68:23

human, but a skilled business operator.

68:26

Yeah, I well I I don't know that I would

68:29

call him a skilled business operator,

68:31

but my point was that Twitter had 16

68:35

years to figure it out and everyone

68:38

[clears throat] could see that they were

68:38

not figuring it out. and whatever else

68:41

he

68:42

>> figuring around the business

68:42

specifically

68:43

>> the business yeah building products you

68:46

know reaching folks and you could argue

68:49

that X has gotten better or worse but

68:51

you can't argue that he is running it

68:53

with 20% as many people

68:56

>> Yep. And it's working

68:57

>> and it's working and some of that you

69:00

know 30 engineers on core on the core

69:03

product and another 30 and but like 60

69:06

engineers there were 1700 before you

69:09

know and you could argue and I think it

69:10

would be true that it's some of the work

69:12

that those engineers did that allow but

69:15

like this is the point if we don't do it

69:17

ourselves meaning hold ourselves to a

69:19

high standard build with efficiency

69:22

constantly be like trying to get better

69:25

if we don't do it ourselves

69:26

someone will come and do it to us.

69:28

>> And and this is what what you also said

69:29

you close saying if we want to remain in

69:31

leadership, if we want to set the

69:32

culture and the tone and take the

69:33

ethical senses that we believe in, we

69:35

first have to win at the business. And I

69:37

I think this is like especially now that

69:39

there's so many changes happening and in

69:41

technology changes. There will be

69:42

whirlwinds. Business will go up and

69:44

down. I guess it's a reminder that like

69:46

you want to keep your eyes on the prize,

69:47

which is especially if you're a leader.

69:49

the 2010s there was so much money

69:51

slloshing around in Silicon Valley and

69:54

time started to get tough and all of

69:56

these companies canceled their DEI

69:58

programs and blah blah blah. Yeah, they

70:00

never believed in that that they were

70:01

just trying to buy people off, you know,

70:03

and and that is very telling to me and I

70:07

have taken a lot of lessons away from

70:08

that which is just that it's it's not

70:11

enough to be a good person. I believe

70:13

that people who are kind and care about

70:15

people can and and usually do do better

70:18

than sociopaths in the same roles, but

70:20

only if they are good at business.

70:23

>> Learn learn the business, stay close to

70:24

it.

70:24

>> You got to

70:26

>> with AI now that coding has become

70:29

cheap, now that engineers are are

70:31

running agents, how do you see the role

70:34

of of good skilled engineering managers

70:37

and engineering directors change? What

70:40

what has changed? Well, the first thing

70:42

that's changed is I think everyone has

70:45

to gets to be hands-on

70:47

>> specifically to generate some code to

70:51

ship to production to some extent.

70:53

>> Know what it feels like to submit a diff

70:55

to get a PR through, you know, you

70:57

should should know what it feels like.

70:59

It's just easier now than it's ever been

71:01

to pick it back up, to fill in the

71:04

blanks, you know, and it's always been

71:06

the case that leaders were better if

71:08

they had a hand in it. And now it's just

71:11

it's just there's no excuse not to. Um

71:14

teams are getting smaller in general. I

71:17

think this should be a good thing. If we

71:19

can figure out how to own more surface

71:20

area,

71:22

it should be a good thing. I worry that

71:24

the way it's happening is is it's being

71:27

done by CEOs who are like, "Oh, well

71:30

this other company is doing it or it's

71:32

magic or we're going to do layoffs or

71:34

like it." And I really dislike the the

71:37

anti-management tone. So like no

71:40

argument that power tends to drift

71:42

towards managers over time and needs to

71:44

get pushed back to engineers. No

71:46

argument there's a tendency to have too

71:49

many managers. You know the bureaucracy

71:51

kind of like generates a sort of you

71:54

know it's it's easier to say yes than it

71:56

is to say no. And so these things happen

71:58

so they need to be pushed back from time

72:00

to time. But I believe that management

72:04

and middle management is deeply

72:06

essential and I look forward to seeing

72:09

how that works out for them not having

72:10

any bit but like the role of a manager

72:13

middle management in my view is sense

72:16

making and context giving and cuz like I

72:19

don't believe in a world where engineers

72:21

are just given tasks here's your JI go

72:24

do the things AI can do that I want

72:27

people who understand what we're trying

72:29

to do understand how we're trying to do

72:32

it or who are there to help us figure

72:33

out how we're going to do it. And you

72:35

can't engage emotionally, creatively,

72:38

collaboratively without an

72:40

understanding. And that understanding is

72:42

incredibly difficult to build and it's

72:43

fragile. It never lasts very long.

72:46

>> For those of us listening who are middle

72:47

managers, it's been a tough few years

72:50

because what they're seeing is

72:55

there's a push to have fewer of them. A

72:57

lot of their colleagues if they're in

72:59

unlucky places they were made redundant

73:02

and many of them have struggled to get

73:04

similar positions. We're talking

73:05

director positions. We're talking head

73:07

of engineering, senior senior engine

73:09

manager that that role is is

73:11

disappearing faster than ever. I think

73:13

directors might still be there. For

73:15

folks who are in this position and they

73:17

they do like middle management, they

73:20

they do believe they're good at it.

73:22

What do you think tactics could be to

73:25

give them a bit more career options?

73:27

>> Tactically, I would say go back to BNIC

73:30

for a while, even if you know it's not

73:31

what you want to do.

73:33

>> If you're at all capable, if you're not

73:34

capable of it, then I would try to work.

73:36

You've got to get AI on your resume. You

73:38

just have to like and if and this is a

73:40

huge career risk. If you're working

73:42

somewhere where you're not getting these

73:43

skills, that is a massive risk. I would

73:47

do whatever I could. And and this is

73:49

very interesting that you're saying get

73:50

get AI in your career because I remember

73:52

about a year a year year and a half ago

73:54

I started to pay attention to like okay

73:56

this is happening and I remember a year

73:59

ago I wrote an article about how to

74:00

become an AI engineer and I talk with

74:02

engineers who just like at their

74:04

workplace start to do AI and now they're

74:05

AI engineers. Next thing I'm hearing

74:07

right now is the people who have like

74:09

two to three years of AI engineering

74:11

experience are so in demand. I'm I'm

74:14

doing a research research on a job

74:15

market and they're like, "This is the

74:17

best job market ever." However, you

74:20

know, the people who were like, "Okay, I

74:21

have none, but I want to get it." They

74:23

and let's say they're out of a job.

74:25

They're struggling because no one's

74:26

giving them the benefit of a doubt.

74:27

>> It is really hard. And I'm not saying

74:29

it's right, but it's how it is.

74:30

>> And and I guess the reason the reason

74:32

we're ringing this alarm bell is is we

74:33

know this change has not been asked

74:35

fast. So do it now because later

74:38

>> do it now. The next time you go out for

74:40

a job interview, anyone, you're going to

74:42

be asked and you're going to be filtered

74:43

out if you don't have it. And and the

74:45

delta between those who are just getting

74:48

started, most who've been doing it, it

74:50

was here for a little while and it's

74:52

very easy to get started. Now it's here

74:54

and it's but it's opening up. The longer

74:57

it goes, the more the harder it will be

74:59

to catch. You just got to get you just

75:00

got to get some.

75:01

>> Let's talk about directors. Yeah,

75:02

directors are usually the ones who they

75:04

have been in management for like 10

75:06

years usually and there's a real feeling

75:09

of fear often of like god tech has

75:14

changed a lot in 10 years and

75:18

and this is where I would say your body

75:21

like the way we experience

75:24

anxiety and the way we experience

75:26

excitement is physiologically almost the

75:28

same. Like I used to play piano, right?

75:31

And before a performance, I'd be like,

75:32

I'm excited. I am so excited to do this,

75:34

you know, because I'm like trembling and

75:36

sweat. But like the difference is

75:38

agency. If you sit back and wait for the

75:42

water to come to you, you're just going

75:44

to be freaking out. But if you run

75:47

towards the waves, if you're like just

75:50

like run towards try it, you know, if

75:53

you have a job now and you're a director

75:54

and you're afraid of it, it's always

75:56

seen as kind of noble when managers want

76:00

to go back to being IC's. I think it's

76:02

very well respected. Own it. Run towards

76:06

the waves. Own it. Be part of the wave,

76:09

the frontier of people who are like, I'm

76:11

so Just tell yourself, doesn't have to

76:13

be true. I'm so excited to be an IC

76:15

again. It's never been easier to go back

76:16

and try. I'm going to do it and then I'm

76:18

going to talk about my experience and

76:20

tell everyone else about just you got to

76:23

own it. Don't wait.

76:25

>> And then let's talk about junior

76:27

engineers. Obviously, it's it's a harder

76:29

time to get started as a junior. But how

76:31

do you think about the value that they

76:33

bring?

76:34

>> The hardest thing about quantifying the

76:35

value of junior engineers is if we don't

76:37

know how to quantify the value of any

76:38

engineer. It's all vibes. You know, it's

76:40

so interesting because I I feel like

76:42

we're over here doing all this hand

76:44

ringing about will juniors be okay? Will

76:46

they ever learn the basics? When

76:48

>> but like my my friend Boris who has a

76:51

new observability startup and he talks

76:53

to these high school college kids all

76:55

the time. He's like they are cooking.

76:57

They are they don't know what the

76:58

software development life cycle is but

77:00

they are just like off to the they are

77:02

doing so much cool [ __ ] I believe that

77:04

the kids are going to be okay. We just

77:06

have to hire them. We just have to give

77:08

them a shot. They're going to come up

77:10

with a lot of the conclusions and the

77:12

ways and the hows that are going to be

77:13

things that we wouldn't have thought of

77:14

because uh but we just have to hire

77:17

them. We just have to be willing to give

77:18

them a shot.

77:19

>> Yeah. This week in SF, I've talked with

77:21

a bunch of founders uh young startups

77:23

and they've been telling me the stories

77:25

of this open source contributor who was

77:28

outstanding. So they wanted to hire him

77:30

or her. Turns out it was 17-year-old

77:32

kid. They still hired and now they're

77:34

telling me like, "Oh my gosh, the things

77:35

they do." So I think when you're saying

77:37

the kids kids are going to be fine, just

77:38

give them a chat and give them a shot.

77:40

>> Even if it's uh an internship,

77:43

>> Yes.

77:43

>> I I feel more com because internship is

77:45

is low risk, low duration.

77:48

>> Yeah.

77:48

>> And and even if that person doesn't work

77:50

out

77:51

>> with an internship under their belt.

77:53

>> Yeah.

77:54

>> So much better for everyone.

77:55

>> Totally.

77:56

>> One question that came up when when I

77:58

asked that you're going to be in the

77:59

show, what I should ask? They said AI

78:01

fatigue. like there someone someone

78:02

asked like can you please ask charity as

78:04

an engineer if I'm starting to get just

78:07

really really drained of this. Have you

78:09

had this? Do you see people having it?

78:12

And what is a good way to you know just

78:14

deal with it? We know it's here. We know

78:16

it's here to stay. But still

78:17

>> I mean my follow-up question would be

78:19

like which variety of AI fatigue?

78:21

>> Okay, tell us some other varieties

78:23

>> you know cuz cuz some for some people

78:25

when they say AI AI fatigue they're

78:28

talking about receiving swap. Some

78:31

people are talking about all the hype

78:34

and the the Oh, have you heard the the

78:36

phrase or the term uh doom trolling?

78:40

>> No.

78:40

>> Uh Cal I think Cal Newport is I think

78:43

his name. He's a computer he's an AI

78:46

researcher professor on the east coast

78:48

and it's his term for what the CEO of

78:51

anthropic and open AI keep doing about

78:54

oh my god this might be the end of blah

78:56

blah blah. And she's he's like, "It's

78:58

just doom trolling and they shouldn't

78:59

they they need to stop it because

79:01

they're stressing everyone the [ __ ]

79:02

out."

79:02

>> Yeah.

79:03

>> And stop because it's it's just not

79:05

responsible, you know? So, like, yeah, I

79:07

think there's a lot of fatigue around

79:08

that. I think that a lot of people their

79:10

family members are afraid, you know,

79:12

it's just it's always before in the

79:14

history of technology, it's been

79:16

something cool or fun or this will make

79:19

the iPhone, it'll make your life better

79:20

and now it's just like fear. It's pretty

79:24

crappy. So, there's that. There's

79:26

there's the fatigue of like I found

79:29

myself being off social media because

79:31

I'm just so tired of all of the AI slop

79:34

posts. It's just like I'm not

79:35

interested. There are a lot of different

79:37

varieties here and yes, we are all

79:39

feeling it. Um so I guess I would repeat

79:42

my call for us to remember that we are

79:45

in control. We are in charge. I think

79:48

the universal nature of the frustration

79:51

means that this is a great time to

79:52

propose experiments where we take back

79:55

control. Maybe you and your team agree

79:59

we don't actually want any more AI

80:01

generated uh PR descriptions. We don't

80:05

maybe we none of us use AI on

80:07

Wednesdays. Maybe we take a week, you

80:09

know, just like take control back, try

80:11

something, propose something.

80:12

>> I guess because change is so big,

80:14

experimenting is has never been easier.

80:16

And and I guess most businesses, most

80:19

directors, most leaders would welcome

80:22

teams saying, you know, we're going to

80:24

try out because their answer will

80:24

probably be, I mean, you're in this

80:26

position. Your answer, I guess, will be

80:27

sure.

80:28

>> Better yet, don't even tell me. Come and

80:30

tell me what worked afterwards

80:31

>> and what didn't and what you learn.

80:33

>> What didn't and then other teams can

80:34

learn from that. Right there. I think

80:36

sometimes people are waiting for top

80:38

down permission but like we don't know

80:40

what permission to give until it it

80:42

works so much better when it's bottoms

80:44

up when people are just try just take

80:46

control of your time and your calendar

80:47

>> and I I guess maybe we just forgot that

80:50

there have been major changes in the

80:52

industry. I remember the iPhone change

80:54

and I remember the people when when the

80:56

iPhone came out, iPhone and Android, so

80:58

smartphones. The people who were the

81:01

most kick-ass iOS engineers, you know

81:03

who they were? They were typically like

81:06

18 or 19 year old kids who went into

81:08

this and they tried it out. And guess

81:09

what? Two years later, they were the

81:11

domain experts. The staff engineer was a

81:12

22year-old and then the entry- level

81:15

engineer was a 40-year-old. And again,

81:17

not always, but my my point is in the

81:19

when there's such big change, you can

81:21

actually become an expert by

81:22

>> very little time

81:23

>> by you taking

81:25

>> just taking charge

81:26

>> taking taking charge and also no one's

81:29

really going to tell you no because no

81:30

one knows what's working.

81:31

>> Exactly. Exactly. There's some liberty

81:33

there.

81:34

>> So, as as closing, just to go back to a

81:36

little bit of of being human and slowing

81:38

down, what are one or two books that

81:40

gave you something? Ooh,

81:44

I

81:45

really

81:47

got a lot out of Catastrophe Ethics.

81:50

It's not I haven't seen it mentioned

81:51

many places and I think it might be I

81:53

think real philosophy nerds would be

81:55

like uh that's kind of a pop book you

81:57

know and and I think the people who are

81:58

not real philosophy books are like

81:59

that's kind of a lot of philosophy but

82:02

you know he's he's a bioethicist I think

82:05

Travis Reer I ed catastrophe ethics and

82:08

he talks about how the puzzle of modern

82:11

life was that it feels like everything

82:13

we're implicated every choice we make

82:15

are you going to use milk while you know

82:17

the cows are tortured are you going to

82:18

use almond milk while water is a

82:20

problem. Well, you swim like a little

82:22

hormones and it's just like there is no

82:25

whatever you do, you are hurting someone

82:27

and it feels like the problems are so

82:31

large that none of our decisions really

82:33

matter

82:35

and that tension like what? And then he

82:38

kind of walks through traditional

82:41

ethical frameworks like utilitarianism

82:43

and stuff and just shows how there is no

82:46

recipe anyone can follow. That doesn't

82:48

lead you to some really stupid and and

82:52

he's like this is just no gods, no

82:54

masters. We are which doesn't mean that

82:57

everything's relative. doesn't mean what

82:59

it means is that the way to live an

83:02

ethical life of integrity is you need to

83:06

educate yourself about the world. You

83:08

know, you need you need to be you need

83:10

to know things, right? And then listen

83:14

inside, you know, where where are you

83:16

drawn? What suffering really speaks to

83:18

you or what what caused you, you know,

83:21

cuz cuz no one can tell you what

83:23

matters. You have to decide what

83:24

matters. And so that that introspection

83:28

and

83:29

it's so at odds with the sort of

83:32

performative rage, you know, and that

83:34

which I'm just so exhausted. All right,

83:36

so that's one. Number two, this is a

83:38

book that I've recommended a couple

83:39

times, but I'm just going to keep

83:40

recommending it because it's so good.

83:42

It's by Adam Becker and it's called More

83:44

Everything Forever and he is a

83:48

journalist based in San Francisco. He

83:50

has a philosophy undergrad and a PhD in

83:52

astrophysics. And he just demolishes all

83:56

of the AI religion, the singularity and

84:00

the effect of altruism and

84:03

accelerationism and the whole like what

84:06

if we could have infinite growth

84:07

foreverism. And he's like the heat death

84:09

of the inter of the universe, you guys.

84:11

Literally the only thing we know about

84:12

in about exponential growth is that it

84:14

must end. It must end in an S-curve or

84:17

in a crash. must end. And he's got this

84:21

dry sense of humor. And there are a

84:23

couple times where he's just like

84:25

describing some of the very real things.

84:29

It's just like why do Oxford ethicists

84:33

want this? He's talking about like

84:35

taking over star systems and it's just

84:37

ridiculous. And he also he gets in this

84:40

a whack. He's just like talks about

84:43

these people who are working so hard on

84:44

life extension. And he he's like, "These

84:47

are a bunch of sad little boys who miss

84:49

their daddy." And I was just like, "Oh

84:51

my god, it is the oldest fear of

84:54

humanity is the fear of death." And you

84:56

just see it. You cannot unsee it. So

84:58

yeah, those are my two. They're both so

85:00

good.

85:00

>> Well, Charity, thank you so much. This

85:02

finally made it happen.

85:03

>> Finally. It's good time.

85:05

>> I always really really enjoy talking

85:07

with Charity. I hope you also liked it.

85:09

I appreciated how charity talks about

85:11

the trust account. If we are debiting

85:13

trust from the creation of code because

85:14

AI wrote it and no human read it, then

85:16

that trust needs to be refilled

85:18

somewhere else. Testing evals and guard

85:20

rails are all ways to add more trust

85:22

that we lost by using AI. I also

85:24

appreciated how she talked with empathy

85:25

about both AI camps. [music] The

85:27

enthusiasts or AI pill folks are seeing

85:30

the practical wins while those operating

85:32

production systems see the slop. Neither

85:34

side is wrong, but they should talk to

85:35

each other more. So if you see wins with

85:37

AI, share with the broader team, but

85:39

also talk about it when it creates more

85:41

work, reduces reliability, or when it

85:43

degrades quality. And for those of us

85:45

feeling anxious about all this change,

85:47

especially directors and managers, I'll

85:49

leave you with Charity's advice. Anxiety

85:51

and excitement are psychologically

85:53

almost the same. But the difference

85:55

between them is agency. So instead of

85:57

waiting for change to come to you, take

85:59

charge however you can and make changes

86:01

yourself. Do check out the show notes

86:03

below for related to pragmatic engineer

86:04

deep dives on how AI is changing

86:06

software engineering and for another

86:08

discussion with charity on

86:09

observability. And I can very much

86:10

recommend her book Observ Engineering

86:12

second edition. If you enjoyed this

86:14

podcast, [music] please do subscribe on

86:15

your favorite podcast platform and on

86:17

YouTube. A special thank you if you also

86:18

leave a rating on the show. Thanks

86:20

[music] and see you in the next

Interactive Summary

This video features a discussion with Charity Majors, CEO of Honeycomb, on the transformative impact of AI on software engineering. They address the division between AI-skeptics and enthusiasts, the concept of shipping AI-generated code, the necessity of new observability practices, and the evolving role of engineering leadership in the AI era. The conversation emphasizes that while AI offers powerful capabilities for productivity, it also introduces non-determinism, requiring engineers to increase discipline through better testing, evaluation, and observability rather than relying on traditional code review.

Suggested questions

4 ready-made prompts