HomeVideos

Stop Assuming Open Source Is Anti-AI

Now Playing

Stop Assuming Open Source Is Anti-AI

Transcript

745 segments

0:00

This AI fad has gone way too far. There

0:02

is no world in which this stuff will be

0:03

useful for real projects. Things like

0:05

the Linux kernel need a really high bar

0:07

for code, and AI is just never going to

0:09

meet it. That's why people like Linus

0:10

Torvalds are so against AI. As you can

0:13

see in this email he just sent to the

0:14

official Linux mailing list, where he

0:16

says that

0:17

wait, Linux is not one of those anti-AI

0:20

projects, and if someone has issues with

0:22

that, they can do the open-source thing

0:23

and fork it, or just walk away. Huh.

0:26

Apparently, Linus has taken a hard

0:28

stance here. He's no longer entertaining

0:30

the people who are socially anti-AI, the

0:33

ones who are doing it on principle, not

0:35

on a technical basis. There's real

0:37

technical merit to these tools, and

0:38

they're not going away anytime soon.

0:40

Hell, we're in a world now where there

0:42

are open-source models, well, open

0:44

weight models, that are incredibly good,

0:46

more talented than any one dev can be

0:48

across the field, and these are

0:50

accessible for all of us to use for

0:52

surprisingly cheap prices.

0:54

Obviously, this is valuable. It's been

0:56

fun to watch the mighty fall. All of

0:58

these super anti-AI people that have

1:01

been against it from the start are

1:02

coming around. And even those who have

1:04

been on the line, people like The

1:05

Primeagen, are finding more and more fun

1:07

with these tools as they figure out the

1:09

right ways to use them within their

1:11

workflows and aligning with their goals.

1:13

I want to talk about this, though. What

1:15

does this mean for the rest of software

1:17

development history? What are the

1:19

pushback points that these people are

1:20

making? And what does the future look

1:22

like if we're all just prompting to

1:24

write code? I can't see into the future,

1:26

but what I do know is coming up is a

1:27

quick break for today's sponsor. Today's

1:29

sponsor is two different things, and I

1:31

need you to hear me out on this one.

1:32

BackerScope's an AI code review bot, and

1:34

I'm sure you've used plenty of those.

1:35

It's a really good, really fast one, and

1:37

it's worth using just for that, but

1:39

that's not why I am so hooked on it.

1:40

BackerScope's dashboard is the thing

1:42

that keeps me coming back. My team loves

1:44

it cuz they get good reviews really

1:45

fast. I love it cuz I can see what my

1:47

team is doing. They have this awesome

1:48

contributors view where I can get

1:50

estimates of how many hours people have

1:52

put in during a given sprint. Julius

1:54

hasn't actually done 254 hours, but with

1:56

agents, it looks like that. But much

1:58

more importantly, I can see what's

2:00

actually changing in our projects. This

2:02

is a summary of everything that's

2:03

happened in this last sprint, and it's a

2:05

really useful way for me to know what's

2:07

going on. So if you're a manager or a

2:08

team lead trying to keep track of what's

2:10

going on, Macroscop is going to save

2:11

your butt. And then we get to macros,

2:13

which is one of the coolest features

2:14

they offer. Macros are a simple way to

2:16

give an agent access to all of the data

2:18

on Macroscop to do useful things, like

2:21

summarize all of the work going on on a

2:23

given project and then ping you on

2:24

Slack. And it's not just Slack it

2:26

supports, by the way. They let you have

2:27

it get delivered to a webhook. So you

2:29

set up a schedule, you write some

2:30

markdown, and now you have real work

2:33

being done using all of the data that

2:34

Macroscop provides. If you want to keep

2:36

bugs from shipping and know what

2:37

features are shipping, look no further

2:39

than swedev.link/macroscop.

2:41

I want to start with where this most

2:42

recent Linux drama began. It started

2:44

with this open-source tool called

2:46

Sashiko. Sashiko's an agentic Linux

2:48

kernel code review system. It uses a set

2:50

Linux kernel specific prompt and a

2:52

special protocol to review proposed

2:54

Linux kernel changes. Sashiko can ingest

2:56

patches from mailing lists or from local

2:58

Git. It's fully self-contained. It

3:00

doesn't use any external agentic CLI

3:02

tools, and it can work with various LLM

3:05

providers. If you're a kernel

3:06

maintainer, please see our guide for

3:08

kernel maintainers for information on

3:09

interacting with Sashiko.

3:11

They call out the quality of reviews

3:12

here as well, which is pretty

3:13

impressive. Sashiko's not perfect, but

3:15

in their measurements, the quality of

3:16

review is high. In their tests, Sashiko

3:18

is able to find 53.6%

3:20

of bugs based on unfiltered last

3:23

thousand upstream commits with fixed

3:25

tags, specifically using Gemini 3.1 Pro.

3:28

It does seem like for various reasons,

3:31

Linus is still using the Gemini models.

3:33

I'd be very curious to see how this

3:36

would go if he was to switch over to

3:38

something from OpenAI or Anthropic.

3:41

Because 3.1 Pro is not great. It's a

3:43

pretty dated model. In some sense, it's

3:46

already above the human level given that

3:47

100% of these bugs had made it through

3:49

human-driven code reviews and were

3:51

accepted into the main tree. The rate of

3:53

false positives is harder to measure,

3:55

but based on limited manual reviews,

3:56

it's well within 20% range and the

3:58

majority of it is a gray zone. Please

4:00

note that as with any other LLM based

4:02

tools, Shishiga's output is

4:03

probabilistic. It may or may not find

4:05

bugs or find other bugs with the same

4:07

inputs. This is a great realistic call

4:09

out. They're not saying AI is going to

4:11

replace all of our jobs, they're not

4:12

saying it's the best developer they've

4:14

ever seen. They are saying that it is

4:16

similarly capable to a human and having

4:19

more resources doing more review to keep

4:21

the kernel stable is beneficial.

4:23

Remember that video I did recently

4:25

everybody was mad at me for where I

4:26

talked all about how you need to be

4:28

reading less code because you should be

4:29

using AI to do more code review, to

4:32

generate code, to do testing, to write

4:35

elaborate end-to-end systems just to

4:37

validate code. Using LLMs to take

4:39

already written code and verify it

4:41

better is so powerful. And I'm not

4:43

saying that you shouldn't read the code

4:45

before you merge it. If your project

4:46

wants that, awesome. For most projects,

4:48

it's probably a good idea you should

4:50

read the code. But having AI also read

4:52

the code, also build tools to test the

4:54

code, also do additional things to

4:56

verify the code, and maybe write a bunch

4:58

of slop tests that never merge just to

5:00

continuously verify your assumptions,

5:02

that's all great. And it seems like the

5:05

best maintainers in the world are

5:06

realizing this, too, because the Linux

5:07

kernel, whether or not you like Linus,

5:10

it is a phenomenal example of the best

5:12

of open source.

5:13

And it's really nice to see Linus not

5:15

falling behind beyond his model choices.

5:18

This is a pretty big flip for them, too,

5:20

because previously they were complaining

5:21

about all of the slop reports they were

5:23

getting, but they've even announced

5:25

since that that isn't the case. Greg

5:29

Kroah-Hartman is one of the lead

5:30

maintainers of the Linux kernel, and he

5:32

said that there is a huge change in the

5:34

quality of bug reports they're getting

5:36

from AI generations. It went from junk

5:38

to legit overnight. He can't explain the

5:40

inflection point, but it's not slowing

5:42

down or going away. This article was in

5:44

March, by the way. The author of this

5:46

article spoke with Greg about how over

5:48

the last month AI-driven activity around

5:50

Linux security and code review has

5:52

really jumped in a way no one in the

5:53

open source world saw coming. Months

5:55

ago, we were getting what we called AI

5:57

slop, AI-generated security reports that

5:59

were obviously wrong and low quality. It

6:01

was kind of funny. It didn't really

6:02

worry us. Of course, there were many

6:04

Linux kernel maintainers, so for them AI

6:06

slop isn't as burdensome as it is for,

6:08

say, Daniel Stenberg, the founder and

6:10

lead developer of curl, where AI slop

6:12

reports caused the curl team to stop

6:14

paying bug bounties entirely. Things

6:16

have changed, according to Greg.

6:17

Something happened a month ago and the

6:18

world switched. Now we have real

6:21

reports. So, what happened here? My

6:23

guess is that in December and November

6:26

of last year, we started using Opus 4.5

6:29

more actively. After the holiday break,

6:32

it started to ramp up in real-world use

6:34

cases in the enterprise space. And as

6:37

more people and real developers started

6:38

to take advantage of this and saw how

6:40

powerful it was, they started building

6:41

tools around it and figuring out how to

6:43

take more advantage of the model's

6:44

capability, which led to it downstream a

6:47

few months after starting to affect

6:48

things like the reports going to the

6:50

Linux kernel. It's not like a new model

6:51

drops and suddenly the quality goes up.

6:54

It's that a new model drops, the best

6:55

people start to see what it's capable

6:57

of, and as that happens, they start to

6:59

use it for more and more things, and

7:01

slowly the quality of things goes up

7:03

over time. Greg says that it's not just

7:05

Linux and that all open source projects

7:07

have real reports that are made with AI,

7:09

but now they're good and they're real.

7:10

All open source security teams are

7:12

hitting this right now. Greg said that

7:14

he doesn't know why this happened.

7:15

Either a lot more tools got a lot better

7:17

or people started going, "Hey, let's

7:19

start actually looking at this." Seems

7:21

lots of different groups and different

7:22

companies have had this realization.

7:25

What's clear, though, is the scale. For

7:26

the kernel, we can handle it. We're a

7:28

much larger team, very distributed, and

7:30

our increase is real, and it's not

7:32

slowing down. These are tiny things,

7:34

they're not major things, but we need

7:35

help on this for all the open source

7:37

projects. Small projects have far less

7:39

capacity to to a sudden flood of

7:41

plausible AI-generated bug reports and

7:42

security findings. At least now they're

7:44

finding real ones and not garbage. One

7:46

of the biggest immediate wins is

7:47

turnaround time. When an AI reviewer

7:49

flags obvious problems, submitters get

7:51

feedback long before a human maintainer

7:52

would realistically read the patch. If I

7:54

see it respond to something, it gives

7:56

feedback to the submitter faster than

7:58

the maintainer had a chance to, which is

7:59

nice. We have a number of bots that run

8:01

on patches as it is. If I see those

8:03

fail, I just know I don't have to look

8:04

yet as a maintainer. It gives the

8:05

developer an oh, I can do another

8:07

version tomorrow, which helps increase

8:09

feedback a little better. Absolutely

8:11

agree. AI code review is so powerful.

8:14

It's so so nice. But on the other side

8:17

here, going and auditing these big code

8:19

bases with more manpower, manpower in

8:21

quotes we've ever had before, is brutal.

8:23

Because now we're seeing things like 2

8:25

days ago, there was how many of these

8:27

happened? 432 CVEs in the Linux kernel

8:30

in a single day. It's insane. It's

8:33

absolutely insane.

8:35

And the reality is if these open source

8:36

maintainers don't use AI to find and fix

8:38

these things, then the malicious people

8:40

are going to use that as an attack

8:42

surface.

8:43

If the maintainers don't check their

8:45

code with AI to prevent these types of

8:48

regressions and these types of security

8:49

issues from being in the official

8:51

product, then someone else will. It's a

8:54

matter of who's going to use AI. Are

8:55

they going to use it to fix the thing or

8:57

is it going to be used to hack the

8:58

thing? In a war of attrition like this,

9:00

you got to use the thing. So let's see

9:02

Linus's crash out. I feel like he does a

9:04

great job of being stern but realistic.

9:07

Even when he's crashing out at somebody,

9:08

he's giving really clear reasons why

9:11

they are wrong and how they could think

9:13

differently about a thing. Like I cannot

9:15

fathom anyone's ever had Linus crash out

9:17

of them and didn't have something to

9:18

learn from it. So let's see what he

9:20

said.

9:21

Again, this started because of the

9:23

discussion around Sashito, the AI code

9:26

review tool they were using. Someone was

9:28

mad about Sashito and trying to push

9:29

back on it, but it seemed like they

9:31

didn't care about the tool. They were

9:32

more upset about LLMs in general. So

9:34

Roman tried to push the conversation to

9:36

be about that to which Linus responded

9:38

and said, "Yeah, this person's clearly

9:41

expressing a very anti-LLM position in

9:43

general. And this is not the position of

9:45

the Linux kernel. I realize that some

9:47

people really dislike AI, but this is an

9:49

area where I'm willing to absolutely put

9:51

my foot down as the top-level

9:53

maintainer, the good old BDFL. Thank

9:55

you, Linus. Linux is not one of those

9:57

anti-AI projects, and if someone has

9:59

issues with that, they can do the

10:01

open-source thing and fork it or just

10:02

walk away. AI is a tool just like other

10:05

tools we use, and it's clearly a useful

10:07

one. It may not have been that clearly

10:09

even just a year ago, but it's no longer

10:12

in question today. Yep. For those who

10:14

don't know, BDFL stands for Benevolent

10:16

Dictator for Life. That's what I was

10:17

talking about as the top-level

10:19

maintainer. It means that Linus will

10:21

maintain Linux until he's not alive,

10:22

probably. Back to what he had to say

10:24

here, though.

10:25

There are other questions around AI,

10:26

like what's this going to look like

10:28

economically in the end, but the is it

10:30

useful thing is no longer one of those

10:32

valid questions. Anybody who doubts that

10:34

clearly hasn't actually used the modern

10:36

tools. I absolutely agree. And remember,

10:39

Linus is using Gemini, supposedly, here.

10:42

I don't know if he's tried Claude, Code,

10:43

Codex, Cursor, whatever else, but he has

10:45

confirmed before publicly that he is

10:47

using anti-gravity and Gemini for real

10:49

work. He knows these tools are useful.

10:52

He does cave that it is sometimes

10:54

painful, especially for maintainer

10:56

workloads, and just from an it keeps

10:57

finding embarrassing bug standpoint.

10:59

Like, yeah, it hurts. Having somebody

11:01

with unlimited manpower and money just

11:04

digging into your [ __ ] and finding all

11:06

of these things can feel awful. But it's

11:09

awesome that we can do it, too. And if

11:11

your goal is to do the best thing for

11:12

your users, you should be embracing

11:14

these tools where they are useful to you

11:15

and your team.

11:16

But the solution is not to put your head

11:18

in the sand and sing, "La la la, I can't

11:20

hear you" at the top of your voice, like

11:22

some people seem to do. Absolutely

11:24

agree. I've seen these people, and if

11:26

you want to see some, too, all you have

11:27

to do is scroll down and see them in my

11:29

comment section. While you're scrolling,

11:31

though, if you see a little red button

11:32

that says subscribe, it's cuz you

11:34

haven't and you should consider clicking

11:35

it because I cover these things, it's a

11:37

lot of work, and if you want to stay on

11:39

top of this stuff as it changes,

11:41

probably a good idea to start watching a

11:42

bit more.

11:43

Only half of you guys are subscribed.

11:45

Helps a lot if you hit the button. I

11:47

really like where Linus goes here. He

11:49

says the solution is to make sure these

11:50

LLM tools are helping maintainers

11:52

instead of just causing them pain.

11:54

There's no question on that side, and I

11:55

absolutely agree. It sucks that a lot of

11:58

the creators of these agentic tools, of

12:00

these models, of these things did not go

12:03

more into the open source world and try

12:05

to help directly. There has been some

12:07

effort here since things like open

12:09

source programs for both Cloud Code and

12:11

Codex, things like the secure Project

12:14

Glass Wing type stuff where they reach

12:16

out to essential open source projects

12:17

and do a bunch of free auditing

12:19

privately. All of that stuff is awesome.

12:22

But, it's not enough, and it started too

12:24

late, especially considering that these

12:26

LLMs got where they were from an open

12:28

source start using a lot of open source

12:30

code. But, that doesn't mean these

12:32

things aren't helpful to maintainers. It

12:33

just means that the companies that made

12:35

them weren't considerate enough about

12:36

maintainers initially, and they're

12:37

slowly working on it. But, it is our job

12:40

as the developers who are between these

12:41

big companies and the open source

12:43

projects to keep on doing what we can to

12:45

funnel value to the open source

12:47

maintainers, whether that is paying them

12:49

directly, whether that is contributing

12:51

to the projects in ways that are less

12:53

burdensome, whether it's giving them

12:55

free inference or donating money for

12:56

tokens, or helping them set up tools

12:58

that are more useful to themselves.

13:00

Whatever maintainers need, we should be

13:01

going out of our way for because they

13:03

are doing a thankless job, and we did

13:04

make it harder. It is important to

13:07

understand and appreciate the burden of

13:08

open source maintainers in this time. It

13:11

is harder and more annoying than ever in

13:12

a lot of ways.

13:14

But, when done right, it can be really

13:15

powerful, too. Following along with what

13:17

Linus said here, he's not trying to

13:19

force anyone to use it, but he's very

13:21

loudly going to ignore people who try to

13:23

argue against other people using AI. And

13:26

no, AI isn't perfect, but Christ, anyone

13:28

who points to the problems that AI had

13:30

better be looking in the mirror and

13:31

pointing at themselves at the same time.

13:33

Because it's not like natural

13:34

intelligence is always all that great,

13:36

either. The kernel project has been and

13:37

will continue to be around the

13:39

technology. Sure, the social angle of

13:41

working at open source is important and

13:43

often a very motivating part of the

13:44

project, but in the end, that's a side

13:46

benefit, not the point of the project.

13:48

This is not some kind of social warrior

13:50

project, never has been, and never will

13:52

be. In the kernel community, we do open

13:54

source because it results in better

13:56

technology, not because of religious

13:58

reasons. And so, we make the decision

14:00

primarily based on technical merit, not

14:02

fear of new tools.

14:04

[ __ ] based.

14:05

I would love to see a Linus take I don't

14:07

agree with. Seriously,

14:10

one of the greatest of all time. Also,

14:11

Nvidia's OG hater. Huge respect for

14:14

that. While I feel physically incapable

14:16

of disagreeing with Linus, others did.

14:19

And he had plenty to say to them.

14:21

Laurent said in the mail list that he

14:22

considers today that there's no ethical

14:24

justification for the use of generative

14:26

AI in free and open source development.

14:28

To which Linus said, "I guess this is

14:30

where the discussion ends." As I

14:32

mentioned, Linux has never been a social

14:34

warrior project. If you don't have

14:35

technical reasons, you don't have

14:37

reasons. You can choose not to use AI,

14:39

but that's your personal choice. It has

14:41

absolutely no impact on anybody else,

14:43

and you should not expect it to have

14:45

any. Put another way, if you're a

14:47

vegetarian because you think meat is

14:48

murder, that's perfectly fine. I know

14:50

for a fact we have several vegan kernel

14:52

developers, and I'm sure they have

14:53

varied reasons for it. Maybe they just

14:55

don't like the taste. Maybe they have

14:56

some social or religious reasons for it.

14:58

Lots of perfectly valid reasons,

15:00

possibly driven by ethics. But they

15:02

don't expect the rest of the kernel

15:03

community to become vegetarian because

15:04

of their personal ethical standpoint, do

15:06

they?

15:07

This is absolutely no different.

15:10

And yes, I feel very strongly about

15:11

this, not because I feel strongly about

15:13

AI per se, but because we have a long

15:15

history interacting with the Free

15:16

Software Foundation. They have their

15:18

ethical reasons, too, and use them as a

15:20

weapon, and as a way to drive away sane

15:23

people. It's why Linux is not GNU/Linux

15:26

and why we call things open source

15:28

instead of free software.

15:30

So, keep your ethics where they belong

15:31

in your personal life. Don't try to

15:33

enforce your ethics on others. Based is

15:36

[ __ ] hell.

15:38

I have no notes.

15:39

He's very accurate with this.

15:43

And you're going to see more people

15:44

doing the same. It's been fun watching

15:46

more and more fall as the models and

15:48

tools get better. I remember a year and

15:50

a half ago when the things were just

15:53

starting to get okay at code. Like when

15:54

GPT-5 finally came out and I could talk

15:57

about it. It was like, "Oh, wow. These

15:59

are way more capable than I thought they

16:00

would get." I thought we were going to

16:01

hit a ceiling and we didn't. And I went

16:03

from, "Oh, this is useful to like make

16:05

some small edits in a file." to this can

16:07

actually complete real work to barely

16:10

even editing code myself anymore because

16:13

this can do almost all of the work

16:15

itself. And every developer, even the

16:17

ones who are still against AI, if they

16:20

have any real technical merit, will

16:22

eventually see this, too. A bar will be

16:25

hit where the tools are better than they

16:26

thought was possible, not better than

16:28

them necessarily, but better than they

16:30

expected, and they will have to reflect

16:33

on that or just shove their head in the

16:35

sand and pretend none of it's happening.

16:37

Some have already done that and some

16:39

will continue to do that, but the best

16:41

maintainers all have been coming around.

16:43

I'm going to give a weird analogy here,

16:45

but I saw this with TypeScript back in

16:47

the day. When TypeScript first happened,

16:49

it was quite controversial. Not cuz it

16:51

was bad or terrible or slow or

16:53

something, just because the best people

16:56

in the JavaScript community didn't see a

16:58

need for it. They wrote JavaScript that

17:00

was good and it worked and behaved how

17:01

they expected it to. Why would we add

17:03

all of this stuff on top where we now

17:05

have to transpile our TypeScript into

17:07

something else in order to even be able

17:09

to run it. And a lot of those really

17:11

talented maintainers just kind of

17:13

pooh-poohed TypeScript entirely and

17:14

ignored it. But, the goal of TypeScript

17:16

wasn't to replace JavaScript and become

17:17

the industry default. It was to solve

17:19

very specific problems that Microsoft

17:21

had. They built it at Microsoft because

17:23

JavaScript had become the global

17:25

language and they wanted to write things

17:27

that were Microsoft size and scale. When

17:29

you have a lot of engineers at various

17:31

skill levels and none of them knew the

17:33

whole code base cuz it was physically

17:35

impossible to. Making sure changes in

17:37

one place didn't break somewhere else

17:38

was a real challenge. And TypeScript was

17:40

built by Anders Hejlsberg, the creator

17:42

of C#, in order to try and solve that

17:45

orchestration problem when you have lots

17:46

of engineers of various skill levels

17:48

contributing to a thing. But that's also

17:50

again where that problem comes in. If

17:52

you're on a small team with incredibly

17:54

talented devs building a small to

17:56

medium-size JavaScript project, even a

17:58

pretty big one, but everyone on the team

18:00

knows where everything is, you're not

18:01

going to have that many problems that

18:03

TypeScript solves. And it's going to

18:04

seem like this big unnecessary thing

18:06

that complicates your whole process.

18:08

And a lot of people did feel that way.

18:11

Here's a fun interaction I had back in

18:13

2022 with one of my good friends and

18:16

somebody I owe for a lot of my success,

18:17

Ryan Carniato, the creator of SolidJS

18:19

and one of the best JavaScript devs

18:21

alive.

18:22

Joe is another friend of mine who was

18:23

iffy on if TypeScript was worth it or

18:25

not in 2022 and asked if he felt like

18:27

TypeScript made people more productive.

18:29

He will respond. I said that I firmly

18:31

believe anyone who doesn't feel a

18:32

productivity win out of TypeScript isn't

18:34

using it correctly. Honestly, same if

18:36

you feel like you're writing TypeScript

18:37

and not {quote} JavaScript with warnings

18:39

in your editor. TypeScript gave me back

18:41

a huge chunk of my brain that was

18:42

previously second-guessing every line.

18:44

I have since refined this take. One of

18:47

the things TypeScript did is it moved

18:48

the burden of describing how your

18:50

systems work off of the application devs

18:53

and the people building things that are

18:55

user-facing and onto the libraries we

18:57

consume. Things like React and React

18:59

Query, things like SolidJS, things like

19:02

the GraphQL bindings a lot of us use,

19:03

tRPC. All of these tools needed to have

19:06

types defined in TypeScript and that is

19:09

real work that is often complex that has

19:11

to be done by open source maintainers

19:13

for their things to be taken seriously

19:14

with TypeScript. And that was a real

19:16

burden that sucked. But by doing that,

19:18

it made their tools way easier to adopt.

19:21

Remember what I said before though, the

19:22

best developers didn't need that ease,

19:24

they already were there.

19:26

Ryan said the following, "I'm pretty

19:28

much the person you're describing. I'm

19:29

told it will click, but after 4 years of

19:31

using TypeScript every day, I'm not

19:32

convinced anymore." It's something that

19:34

he puts up with for the greater good.

19:36

He's used other type languages, but when

19:38

it's applied to JavaScript it feels

19:39

different. He gave an example of an API

19:41

that he built in 20 minutes cuz it was

19:43

intuitive to him and apparently others

19:44

as well. And 5 years later they're still

19:46

discussing how to type it properly for

19:49

months at a time. Yeah, writing the

19:51

types for complex APIs is a real

19:53

difficulty, but that's not why I'm

19:54

showing you guys this post. I'm showing

19:56

you guys this post because of a diagram

19:58

I drew on why this is the case.

20:01

TypeScript takes the potential quality

20:04

of a code base and it shrinks it from

20:06

both ends. It greatly raises the floor

20:09

and it slightly lowers the ceiling. So,

20:11

a relic Ryan Carniato who is a 10 out of

20:13

10 JS dev almost feels like he has to

20:15

lower his quality in order for

20:17

TypeScript to be useful to him. But

20:19

someone like me who is a dumb YouTuber

20:21

benefits greatly from TypeScript yanking

20:23

me off of the floor into a much better

20:25

more maintainable place. This is kind of

20:27

what AI does too.

20:29

Are the absolute best developers in the

20:31

world capable of writing code better

20:33

than AI in the areas they specialize?

20:36

Almost certainly yes. I'd be incredibly

20:38

surprised if some of the best

20:40

maintainers of the Linux kernel couldn't

20:41

write better code than Fable does for

20:44

Linux. But how about the kernel code I

20:46

would write?

20:47

How about the kernel code that Ryan

20:49

Carniato would write? He's incredibly

20:50

talented. He does not know the Linux

20:52

kernel at all. You don't know what his

20:54

knowledge of low-level memory stuff is.

20:56

But he's an incredibly talented dev

20:58

where if he tried to contribute over

20:59

there would benefit a lot from AI. Or we

21:01

can go back to the original example of

21:03

Linus 5 coding which is that he wanted

21:05

to visualize some work he was doing on a

21:06

fun side project and didn't know how to

21:09

do that the right way, so he asked

21:11

Gemini to. And while the code wasn't

21:12

perfect and the UI stuff wasn't great,

21:15

the thing he wanted came out much faster

21:17

and he didn't have to go as far out of

21:19

his way to go figure out all of these

21:20

things. He was very happy with the

21:21

result because he got to work outside of

21:24

his area of expertise and the floor was

21:26

higher and the work was less. That is an

21:28

awesome thing. TypeScript was similar

21:30

for me in this way where I was coming

21:32

from other spaces. I had done most of my

21:33

time in Elixir, Ruby, and Java.

21:36

So I didn't like working in JavaScript,

21:38

but TypeScript raised the quality of

21:40

what I was doing and guided me through

21:42

fixing things in such a way that I ended

21:44

up liking it a lot and ended up going

21:46

all in on this idea of full stack type

21:48

safety eventually, the T3 stack.

21:50

That's kind of what AI has done to me as

21:52

well. It has affected me and my career

21:54

in a way very, very similar to

21:56

TypeScript in this way. It has me bolder

21:58

doing bigger, crazier things and trying

22:00

to take more advantage of what the

22:02

tool's capable of to make my life easier

22:04

and to make my team more effective. And

22:06

I'm very thankful Linus agrees here.

22:09

Because as he said, anyone who doubts

22:11

that these tools are useful clearly

22:12

hasn't actually used them. And if you're

22:15

still in that bucket, I hope you take

22:16

the opportunity to experiment a bit

22:18

more. If you're looking for things to

22:19

use AI for that aren't just generating

22:21

code in your projects, but can help you

22:23

take the code you already wrote and

22:25

validate it better and be more likely to

22:27

ship less buggy software, you can check

22:29

out my video about reading code because

22:32

I go in depth on that. And I want to be

22:33

clear, my stance is not that you

22:35

shouldn't read code. My stance is that

22:36

code is too useful and now too cheap to

22:39

justify not generating a bunch of code

22:42

to do random things that you want to

22:44

have done. Whether that's going through

22:46

open pull requests and giving you an

22:47

audit at the start of the day on what

22:48

you should focus on, or if it's

22:50

verifying changes you make, or if it's

22:52

writing a really elaborate test suite

22:54

for one thing you really want to

22:55

confirm. There is so much use to AI

22:58

other than contributing slop to projects

23:00

and I really hope more people take the

23:02

opportunity to

23:03

use these tools for the awesome things

23:05

they can be used for. It's been a wild

23:06

journey for me and it's awesome to see

23:08

so many other people realize the

23:09

capability here as well. AI is

23:11

continuing to get more and more useful

23:13

and more and more powerful and as great

23:15

as something like TypeScript is, it

23:16

definitely hit a ceiling pretty early.

23:19

AI does not seem to have any ceiling in

23:21

sight. So, if you don't get in now,

23:22

you'll have plenty of chances to later.

23:24

Don't feel like you have to rush here

23:26

everything's over. Just consider using

23:28

these tools a bit more and finding more

23:30

creative ways to apply them to your

23:31

work. I have a feeling you'll be

23:32

surprised. I certainly know I was. Until

23:35

next time.

23:36

Peace nerds.

Interactive Summary

This video discusses the evolving role of AI in software development, particularly within high-stakes environments like the Linux kernel. The creator highlights Linus Torvalds' pragmatic, pro-AI stance, noting that technical merit outweighs ideological resistance. The video covers how AI-driven tools like 'Sashiko' have moved from producing low-quality 'slop' to generating legitimate, high-value bug reports. Drawing parallels between AI adoption and the rise of TypeScript, the creator argues that AI tools raise the floor for development by assisting with code review, testing, and system validation, ultimately enabling developers to be more productive and effective.

Suggested questions

3 ready-made prompts