Linus is so based for this
Read full transcript 19 segments
-
This AI fad has gone way too far. There This AI fad has gone way too far. There is no world in which this stuff will be is no world in which this stuff will be is no world in which this stuff will be useful for real projects. Things like useful for real projects. Things like useful for real projects. Things like the Linux kernel need a really high bar the Linux kernel need a really high bar the Linux kernel need a really high bar for code, and AI is just never going to for code, and AI is just never going to for code, and AI is just never going to meet it. That's why people like Linus meet it. That's why people like Linus meet it. That's why people like Linus Torvalds are so against AI. As you can Torvalds are so against AI. As you can Torvalds are so against AI. As you can see in this email he just sent to the see in this email he just sent to the see in this email he just sent to the official Linux mailing list, where he official Linux mailing list, where he official Linux mailing list, where he says that says that says that wait, Linux is not one of those anti-AI wait, Linux is not one of those anti-AI wait, Linux is not one of those anti-AI projects, and if someone has issues with projects, and if someone has issues with projects, and if someone has issues with that, they can do the open-source thing that, they can do the open-source thing that, they can do the open-source thing and fork it, or just walk away. Huh. and fork it, or just walk away. Huh. and fork it, or just walk away. Huh. Apparently, Linus has taken a hard Apparently, Linus has taken a hard Apparently, Linus has taken a hard stance here. He's no longer entertaining stance here. He's no longer entertaining stance here. He's no longer entertaining the people who are socially anti-AI, the the people who are socially anti-AI, the the people who are socially anti-AI, the ones who are doing it on principle, not ones who are doing it on principle, not ones who are doing it on principle, not on a technical basis. There's real on a technical basis. There's real on a technical basis. There's real technical merit to these tools, and technical merit to these tools, and technical merit to these tools, and they're not going away anytime soon. they're not going away anytime soon. they're not going away anytime soon. Hell, we're in a world now where there Hell, we're in a world now where there Hell, we're in a world now where there are open-source models, well, open are open-source models, well, open are open-source models, well, open weight models, that are incredibly good, weight models, that are incredibly good, weight models, that are incredibly good, more talented than any one dev can be more talented than any one dev can be more talented than any one dev can be across the field, and these are across the field, and these are across the field, and these are accessible for all of us to use for accessible for all of us to use for accessible for all of us to use for surprisingly cheap prices. surprisingly cheap prices. surprisingly cheap prices. Obviously, this is valuable. It's been Obviously, this is valuable. It's been Obviously, this is valuable. It's been fun to watch the mighty fall. All of fun to watch the mighty fall. All of fun to watch the mighty fall. All of these super anti-AI people that have these super anti-AI people that have these super anti-AI people that have been against it from the start are been against it from the start are been against it from the start are coming around. And even those who have coming around. And even those who have coming around. And even those who have been on the line, people like The been on the line, people like The been on the line, people like The Primeagen, are finding more and more fun Primeagen, are finding more and more fun Primeagen, are finding more and more fun with these tools as they figure out the with these tools as they figure out the with these tools as they figure out the right ways to use them within their right ways to use them within their right ways to use them within their workflows and aligning with their goals.
-
workflows and aligning with their goals. workflows and aligning with their goals. I want to talk about this, though. What I want to talk about this, though. What I want to talk about this, though. What does this mean for the rest of software does this mean for the rest of software does this mean for the rest of software development history? What are the development history? What are the development history? What are the pushback points that these people are pushback points that these people are pushback points that these people are making? And what does the future look making? And what does the future look making? And what does the future look like if we're all just prompting to like if we're all just prompting to like if we're all just prompting to write code? I can't see into the future, write code? I can't see into the future, write code? I can't see into the future, but what I do know is coming up is a but what I do know is coming up is a but what I do know is coming up is a quick break for today's sponsor. Today's quick break for today's sponsor. Today's quick break for today's sponsor. Today's sponsor is two different things, and I sponsor is two different things, and I sponsor is two different things, and I need you to hear me out on this one. need you to hear me out on this one. need you to hear me out on this one. BackerScope's an AI code review bot, and BackerScope's an AI code review bot, and BackerScope's an AI code review bot, and I'm sure you've used plenty of those. I'm sure you've used plenty of those. I'm sure you've used plenty of those. It's a really good, really fast one, and It's a really good, really fast one, and It's a really good, really fast one, and it's worth using just for that, but it's worth using just for that, but it's worth using just for that, but that's not why I am so hooked on it. that's not why I am so hooked on it. that's not why I am so hooked on it. BackerScope's dashboard is the thing BackerScope's dashboard is the thing BackerScope's dashboard is the thing that keeps me coming back. My team loves that keeps me coming back. My team loves that keeps me coming back. My team loves it cuz they get good reviews really it cuz they get good reviews really it cuz they get good reviews really fast. I love it cuz I can see what my fast. I love it cuz I can see what my fast. I love it cuz I can see what my team is doing. They have this awesome team is doing. They have this awesome team is doing. They have this awesome contributors view where I can get contributors view where I can get contributors view where I can get estimates of how many hours people have estimates of how many hours people have estimates of how many hours people have put in during a given sprint. Julius put in during a given sprint. Julius put in during a given sprint. Julius hasn't actually done 254 hours, but with hasn't actually done 254 hours, but with hasn't actually done 254 hours, but with agents, it looks like that. But much agents, it looks like that. But much agents, it looks like that. But much more importantly, I can see what's more importantly, I can see what's more importantly, I can see what's actually changing in our projects. This actually changing in our projects. This actually changing in our projects. This is a summary of everything that's is a summary of everything that's is a summary of everything that's happened in this last sprint, and it's a happened in this last sprint, and it's a happened in this last sprint, and it's a really useful way for me to know what's really useful way for me to know what's really useful way for me to know what's going on. So if you're a manager or a going on. So if you're a manager or a going on. So if you're a manager or a team lead trying to keep track of what's team lead trying to keep track of what's team lead trying to keep track of what's going on, Macroscop is going to save going on, Macroscop is going to save going on, Macroscop is going to save your butt. And then we get to macros, your butt. And then we get to macros, your butt. And then we get to macros, which is one of the coolest features which is one of the coolest features which is one of the coolest features they offer. Macros are a simple way to they offer. Macros are a simple way to they offer. Macros are a simple way to give an agent access to all of the data give an agent access to all of the data give an agent access to all of the data on Macroscop to do useful things, like on Macroscop to do useful things, like on Macroscop to do useful things, like summarize all of the work going on on a summarize all of the work going on on a summarize all of the work going on on a given project and then ping you on given project and then ping you on given project and then ping you on Slack. And it's not just Slack it Slack. And it's not just Slack it Slack. And it's not just Slack it supports, by the way. They let you have supports, by the way. They let you have supports, by the way. They let you have it get delivered to a webhook. So you it get delivered to a webhook. So you it get delivered to a webhook. So you set up a schedule, you write some set up a schedule, you write some set up a schedule, you write some markdown, and now you have real work markdown, and now you have real work markdown, and now you have real work being done using all of the data that being done using all of the data that being done using all of the data that Macroscop provides. If you want to keep Macroscop provides. If you want to keep Macroscop provides. If you want to keep bugs from shipping and know what bugs from shipping and know what bugs from shipping and know what features are shipping, look no further features are shipping, look no further features are shipping, look no further than swedev.link/macroscop.
-
than swedev.link/macroscop. than swedev.link/macroscop. I want to start with where this most I want to start with where this most I want to start with where this most recent Linux drama began. It started recent Linux drama began. It started recent Linux drama began. It started with this open-source tool called with this open-source tool called with this open-source tool called Sashiko. Sashiko's an agentic Linux Sashiko. Sashiko's an agentic Linux Sashiko. Sashiko's an agentic Linux kernel code review system. It uses a set kernel code review system. It uses a set kernel code review system. It uses a set Linux kernel specific prompt and a Linux kernel specific prompt and a Linux kernel specific prompt and a special protocol to review proposed special protocol to review proposed special protocol to review proposed Linux kernel changes. Sashiko can ingest Linux kernel changes. Sashiko can ingest Linux kernel changes. Sashiko can ingest patches from mailing lists or from local patches from mailing lists or from local patches from mailing lists or from local Git. It's fully self-contained. It Git. It's fully self-contained. It Git. It's fully self-contained. It doesn't use any external agentic CLI doesn't use any external agentic CLI doesn't use any external agentic CLI tools, and it can work with various LLM tools, and it can work with various LLM tools, and it can work with various LLM providers. If you're a kernel providers. If you're a kernel providers. If you're a kernel maintainer, please see our guide for maintainer, please see our guide for maintainer, please see our guide for kernel maintainers for information on kernel maintainers for information on kernel maintainers for information on interacting with Sashiko. interacting with Sashiko. interacting with Sashiko. They call out the quality of reviews They call out the quality of reviews They call out the quality of reviews here as well, which is pretty here as well, which is pretty here as well, which is pretty impressive. Sashiko's not perfect, but impressive. Sashiko's not perfect, but impressive. Sashiko's not perfect, but in their measurements, the quality of in their measurements, the quality of in their measurements, the quality of review is high. In their tests, Sashiko review is high. In their tests, Sashiko review is high. In their tests, Sashiko is able to find 53.6% is able to find 53.6% is able to find 53.6% of bugs based on unfiltered last of bugs based on unfiltered last of bugs based on unfiltered last thousand upstream commits with fixed thousand upstream commits with fixed thousand upstream commits with fixed tags, specifically using Gemini 3.1 Pro. tags, specifically using Gemini 3.1 Pro. tags, specifically using Gemini 3.1 Pro. It does seem like for various reasons, It does seem like for various reasons, It does seem like for various reasons, Linus is still using the Gemini models. Linus is still using the Gemini models. Linus is still using the Gemini models. I'd be very curious to see how this I'd be very curious to see how this I'd be very curious to see how this would go if he was to switch over to would go if he was to switch over to would go if he was to switch over to something from OpenAI or Anthropic.
-
something from OpenAI or Anthropic. something from OpenAI or Anthropic. Because 3.1 Pro is not great. It's a Because 3.1 Pro is not great. It's a Because 3.1 Pro is not great. It's a pretty dated model. In some sense, it's pretty dated model. In some sense, it's pretty dated model. In some sense, it's already above the human level given that already above the human level given that already above the human level given that 100% of these bugs had made it through 100% of these bugs had made it through 100% of these bugs had made it through human-driven code reviews and were human-driven code reviews and were human-driven code reviews and were accepted into the main tree. The rate of accepted into the main tree. The rate of accepted into the main tree. The rate of false positives is harder to measure, false positives is harder to measure, false positives is harder to measure, but based on limited manual reviews, but based on limited manual reviews, but based on limited manual reviews, it's well within 20% range and the it's well within 20% range and the it's well within 20% range and the majority of it is a gray zone. Please majority of it is a gray zone. Please majority of it is a gray zone. Please note that as with any other LLM based note that as with any other LLM based note that as with any other LLM based tools, Shishiga's output is tools, Shishiga's output is tools, Shishiga's output is probabilistic. It may or may not find probabilistic. It may or may not find probabilistic. It may or may not find bugs or find other bugs with the same bugs or find other bugs with the same bugs or find other bugs with the same inputs. This is a great realistic call inputs. This is a great realistic call inputs. This is a great realistic call out. They're not saying AI is going to out. They're not saying AI is going to out. They're not saying AI is going to replace all of our jobs, they're not replace all of our jobs, they're not replace all of our jobs, they're not saying it's the best developer they've saying it's the best developer they've saying it's the best developer they've ever seen. They are saying that it is ever seen. They are saying that it is ever seen. They are saying that it is similarly capable to a human and having similarly capable to a human and having similarly capable to a human and having more resources doing more review to keep more resources doing more review to keep more resources doing more review to keep the kernel stable is beneficial. the kernel stable is beneficial. the kernel stable is beneficial. Remember that video I did recently Remember that video I did recently Remember that video I did recently everybody was mad at me for where I everybody was mad at me for where I everybody was mad at me for where I talked all about how you need to be talked all about how you need to be talked all about how you need to be reading less code because you should be reading less code because you should be reading less code because you should be using AI to do more code review, to using AI to do more code review, to using AI to do more code review, to generate code, to do testing, to write generate code, to do testing, to write generate code, to do testing, to write elaborate end-to-end systems just to elaborate end-to-end systems just to elaborate end-to-end systems just to validate code. Using LLMs to take validate code. Using LLMs to take validate code. Using LLMs to take already written code and verify it already written code and verify it already written code and verify it better is so powerful. And I'm not better is so powerful. And I'm not better is so powerful. And I'm not saying that you shouldn't read the code saying that you shouldn't read the code saying that you shouldn't read the code before you merge it. If your project before you merge it. If your project before you merge it. If your project wants that, awesome. For most projects, wants that, awesome. For most projects, wants that, awesome. For most projects, it's probably a good idea you should it's probably a good idea you should it's probably a good idea you should read the code. But having AI also read read the code. But having AI also read read the code. But having AI also read the code, also build tools to test the the code, also build tools to test the the code, also build tools to test the code, also do additional things to code, also do additional things to code, also do additional things to verify the code, and maybe write a bunch verify the code, and maybe write a bunch verify the code, and maybe write a bunch of slop tests that never merge just to of slop tests that never merge just to of slop tests that never merge just to continuously verify your assumptions, continuously verify your assumptions, continuously verify your assumptions, that's all great. And it seems like the that's all great. And it seems like the that's all great. And it seems like the best maintainers in the world are best maintainers in the world are best maintainers in the world are realizing this, too, because the Linux realizing this, too, because the Linux realizing this, too, because the Linux kernel, whether or not you like Linus, kernel, whether or not you like Linus, kernel, whether or not you like Linus, it is a phenomenal example of the best
-
it is a phenomenal example of the best it is a phenomenal example of the best of open source. of open source. of open source. And it's really nice to see Linus not And it's really nice to see Linus not And it's really nice to see Linus not falling behind beyond his model choices. falling behind beyond his model choices. falling behind beyond his model choices. This is a pretty big flip for them, too, This is a pretty big flip for them, too, This is a pretty big flip for them, too, because previously they were complaining because previously they were complaining because previously they were complaining about all of the slop reports they were about all of the slop reports they were about all of the slop reports they were getting, but they've even announced getting, but they've even announced getting, but they've even announced since that that isn't the case. Greg since that that isn't the case. Greg since that that isn't the case. Greg Kroah-Hartman is one of the lead Kroah-Hartman is one of the lead Kroah-Hartman is one of the lead maintainers of the Linux kernel, and he maintainers of the Linux kernel, and he maintainers of the Linux kernel, and he said that there is a huge change in the said that there is a huge change in the said that there is a huge change in the quality of bug reports they're getting quality of bug reports they're getting quality of bug reports they're getting from AI generations. It went from junk from AI generations. It went from junk from AI generations. It went from junk to legit overnight. He can't explain the to legit overnight. He can't explain the to legit overnight. He can't explain the inflection point, but it's not slowing inflection point, but it's not slowing inflection point, but it's not slowing down or going away. This article was in down or going away. This article was in down or going away. This article was in March, by the way. The author of this March, by the way. The author of this March, by the way. The author of this article spoke with Greg about how over article spoke with Greg about how over article spoke with Greg about how over the last month AI-driven activity around the last month AI-driven activity around the last month AI-driven activity around Linux security and code review has Linux security and code review has Linux security and code review has really jumped in a way no one in the really jumped in a way no one in the really jumped in a way no one in the open source world saw coming. Months open source world saw coming. Months open source world saw coming. Months ago, we were getting what we called AI ago, we were getting what we called AI ago, we were getting what we called AI slop, AI-generated security reports that slop, AI-generated security reports that slop, AI-generated security reports that were obviously wrong and low quality. It were obviously wrong and low quality. It were obviously wrong and low quality. It was kind of funny. It didn't really was kind of funny. It didn't really was kind of funny. It didn't really worry us. Of course, there were many worry us. Of course, there were many worry us. Of course, there were many Linux kernel maintainers, so for them AI Linux kernel maintainers, so for them AI Linux kernel maintainers, so for them AI slop isn't as burdensome as it is for, slop isn't as burdensome as it is for, slop isn't as burdensome as it is for, say, Daniel Stenberg, the founder and say, Daniel Stenberg, the founder and say, Daniel Stenberg, the founder and lead developer of curl, where AI slop lead developer of curl, where AI slop lead developer of curl, where AI slop reports caused the curl team to stop reports caused the curl team to stop reports caused the curl team to stop paying bug bounties entirely. Things paying bug bounties entirely. Things paying bug bounties entirely. Things have changed, according to Greg.
-
have changed, according to Greg. have changed, according to Greg. Something happened a month ago and the Something happened a month ago and the Something happened a month ago and the world switched. Now we have real world switched. Now we have real world switched. Now we have real reports. So, what happened here? My reports. So, what happened here? My reports. So, what happened here? My guess is that in December and November guess is that in December and November guess is that in December and November of last year, we started using Opus 4.5 of last year, we started using Opus 4.5 of last year, we started using Opus 4.5 more actively. After the holiday break, more actively. After the holiday break, more actively. After the holiday break, it started to ramp up in real-world use it started to ramp up in real-world use it started to ramp up in real-world use cases in the enterprise space. And as cases in the enterprise space. And as cases in the enterprise space. And as more people and real developers started more people and real developers started more people and real developers started to take advantage of this and saw how to take advantage of this and saw how to take advantage of this and saw how powerful it was, they started building powerful it was, they started building powerful it was, they started building tools around it and figuring out how to tools around it and figuring out how to tools around it and figuring out how to take more advantage of the model's take more advantage of the model's take more advantage of the model's capability, which led to it downstream a capability, which led to it downstream a capability, which led to it downstream a few months after starting to affect few months after starting to affect few months after starting to affect things like the reports going to the things like the reports going to the things like the reports going to the Linux kernel. It's not like a new model Linux kernel. It's not like a new model Linux kernel. It's not like a new model drops and suddenly the quality goes up. drops and suddenly the quality goes up. drops and suddenly the quality goes up. It's that a new model drops, the best It's that a new model drops, the best It's that a new model drops, the best people start to see what it's capable people start to see what it's capable people start to see what it's capable of, and as that happens, they start to of, and as that happens, they start to of, and as that happens, they start to use it for more and more things, and use it for more and more things, and use it for more and more things, and slowly the quality of things goes up slowly the quality of things goes up slowly the quality of things goes up over time. Greg says that it's not just over time. Greg says that it's not just over time. Greg says that it's not just Linux and that all open source projects Linux and that all open source projects Linux and that all open source projects have real reports that are made with AI, have real reports that are made with AI, have real reports that are made with AI, but now they're good and they're real. but now they're good and they're real. but now they're good and they're real. All open source security teams are All open source security teams are All open source security teams are hitting this right now. Greg said that hitting this right now. Greg said that hitting this right now. Greg said that he doesn't know why this happened. he doesn't know why this happened. he doesn't know why this happened. Either a lot more tools got a lot better Either a lot more tools got a lot better Either a lot more tools got a lot better or people started going, "Hey, let's or people started going, "Hey, let's or people started going, "Hey, let's start actually looking at this." Seems start actually looking at this." Seems start actually looking at this." Seems lots of different groups and different lots of different groups and different lots of different groups and different companies have had this realization.
-
companies have had this realization. companies have had this realization. What's clear, though, is the scale. For What's clear, though, is the scale. For What's clear, though, is the scale. For the kernel, we can handle it. We're a the kernel, we can handle it. We're a the kernel, we can handle it. We're a much larger team, very distributed, and much larger team, very distributed, and much larger team, very distributed, and our increase is real, and it's not our increase is real, and it's not our increase is real, and it's not slowing down. These are tiny things, slowing down. These are tiny things, slowing down. These are tiny things, they're not major things, but we need they're not major things, but we need they're not major things, but we need help on this for all the open source help on this for all the open source help on this for all the open source projects. Small projects have far less projects. Small projects have far less projects. Small projects have far less capacity to to a sudden flood of capacity to to a sudden flood of capacity to to a sudden flood of plausible AI-generated bug reports and plausible AI-generated bug reports and plausible AI-generated bug reports and security findings. At least now they're security findings. At least now they're security findings. At least now they're finding real ones and not garbage. One finding real ones and not garbage. One finding real ones and not garbage. One of the biggest immediate wins is of the biggest immediate wins is of the biggest immediate wins is turnaround time. When an AI reviewer turnaround time. When an AI reviewer turnaround time. When an AI reviewer flags obvious problems, submitters get flags obvious problems, submitters get flags obvious problems, submitters get feedback long before a human maintainer feedback long before a human maintainer feedback long before a human maintainer would realistically read the patch. If I would realistically read the patch. If I would realistically read the patch. If I see it respond to something, it gives see it respond to something, it gives see it respond to something, it gives feedback to the submitter faster than feedback to the submitter faster than feedback to the submitter faster than the maintainer had a chance to, which is the maintainer had a chance to, which is the maintainer had a chance to, which is nice. We have a number of bots that run nice. We have a number of bots that run nice. We have a number of bots that run on patches as it is. If I see those on patches as it is. If I see those on patches as it is. If I see those fail, I just know I don't have to look fail, I just know I don't have to look fail, I just know I don't have to look yet as a maintainer. It gives the yet as a maintainer. It gives the yet as a maintainer. It gives the developer an oh, I can do another developer an oh, I can do another developer an oh, I can do another version tomorrow, which helps increase version tomorrow, which helps increase version tomorrow, which helps increase feedback a little better. Absolutely feedback a little better. Absolutely feedback a little better. Absolutely agree. AI code review is so powerful. agree. AI code review is so powerful. agree. AI code review is so powerful. It's so so nice. But on the other side It's so so nice. But on the other side It's so so nice. But on the other side here, going and auditing these big code here, going and auditing these big code here, going and auditing these big code bases with more manpower, manpower in bases with more manpower, manpower in bases with more manpower, manpower in quotes we've ever had before, is brutal. quotes we've ever had before, is brutal. quotes we've ever had before, is brutal. Because now we're seeing things like 2 Because now we're seeing things like 2 Because now we're seeing things like 2 days ago, there was how many of these days ago, there was how many of these days ago, there was how many of these happened? 432 CVEs in the Linux kernel happened? 432 CVEs in the Linux kernel happened? 432 CVEs in the Linux kernel in a single day. It's insane. It's in a single day. It's insane. It's in a single day. It's insane. It's absolutely insane.
-
absolutely insane. absolutely insane. And the reality is if these open source And the reality is if these open source And the reality is if these open source maintainers don't use AI to find and fix maintainers don't use AI to find and fix maintainers don't use AI to find and fix these things, then the malicious people these things, then the malicious people these things, then the malicious people are going to use that as an attack are going to use that as an attack are going to use that as an attack surface. surface. surface. If the maintainers don't check their If the maintainers don't check their If the maintainers don't check their code with AI to prevent these types of code with AI to prevent these types of code with AI to prevent these types of regressions and these types of security regressions and these types of security regressions and these types of security issues from being in the official issues from being in the official issues from being in the official product, then someone else will. It's a product, then someone else will. It's a product, then someone else will. It's a matter of who's going to use AI. Are matter of who's going to use AI. Are matter of who's going to use AI. Are they going to use it to fix the thing or they going to use it to fix the thing or they going to use it to fix the thing or is it going to be used to hack the is it going to be used to hack the is it going to be used to hack the thing? In a war of attrition like this, thing? In a war of attrition like this, thing? In a war of attrition like this, you got to use the thing. So let's see you got to use the thing. So let's see you got to use the thing. So let's see Linus's crash out. I feel like he does a Linus's crash out. I feel like he does a Linus's crash out. I feel like he does a great job of being stern but realistic. great job of being stern but realistic. great job of being stern but realistic. Even when he's crashing out at somebody, Even when he's crashing out at somebody, Even when he's crashing out at somebody, he's giving really clear reasons why he's giving really clear reasons why he's giving really clear reasons why they are wrong and how they could think they are wrong and how they could think they are wrong and how they could think differently about a thing. Like I cannot differently about a thing. Like I cannot differently about a thing. Like I cannot fathom anyone's ever had Linus crash out fathom anyone's ever had Linus crash out fathom anyone's ever had Linus crash out of them and didn't have something to of them and didn't have something to of them and didn't have something to learn from it. So let's see what he learn from it. So let's see what he learn from it. So let's see what he said. said. said. Again, this started because of the Again, this started because of the Again, this started because of the discussion around Sashito, the AI code discussion around Sashito, the AI code discussion around Sashito, the AI code review tool they were using. Someone was review tool they were using. Someone was review tool they were using. Someone was mad about Sashito and trying to push mad about Sashito and trying to push mad about Sashito and trying to push back on it, but it seemed like they back on it, but it seemed like they back on it, but it seemed like they didn't care about the tool. They were didn't care about the tool. They were didn't care about the tool. They were more upset about LLMs in general. So more upset about LLMs in general. So more upset about LLMs in general. So Roman tried to push the conversation to Roman tried to push the conversation to Roman tried to push the conversation to be about that to which Linus responded be about that to which Linus responded be about that to which Linus responded and said, "Yeah, this person's clearly and said, "Yeah, this person's clearly and said, "Yeah, this person's clearly expressing a very anti-LLM position in expressing a very anti-LLM position in expressing a very anti-LLM position in general. And this is not the position of general. And this is not the position of general. And this is not the position of the Linux kernel. I realize that some the Linux kernel. I realize that some the Linux kernel. I realize that some people really dislike AI, but this is an people really dislike AI, but this is an people really dislike AI, but this is an area where I'm willing to absolutely put area where I'm willing to absolutely put area where I'm willing to absolutely put my foot down as the top-level my foot down as the top-level my foot down as the top-level maintainer, the good old BDFL. Thank maintainer, the good old BDFL. Thank maintainer, the good old BDFL. Thank you, Linus. Linux is not one of those you, Linus. Linux is not one of those you, Linus. Linux is not one of those anti-AI projects, and if someone has anti-AI projects, and if someone has anti-AI projects, and if someone has issues with that, they can do the issues with that, they can do the issues with that, they can do the open-source thing and fork it or just open-source thing and fork it or just open-source thing and fork it or just walk away. AI is a tool just like other
-
walk away. AI is a tool just like other walk away. AI is a tool just like other tools we use, and it's clearly a useful tools we use, and it's clearly a useful tools we use, and it's clearly a useful one. It may not have been that clearly one. It may not have been that clearly one. It may not have been that clearly even just a year ago, but it's no longer even just a year ago, but it's no longer even just a year ago, but it's no longer in question today. Yep. For those who in question today. Yep. For those who in question today. Yep. For those who don't know, BDFL stands for Benevolent don't know, BDFL stands for Benevolent don't know, BDFL stands for Benevolent Dictator for Life. That's what I was Dictator for Life. That's what I was Dictator for Life. That's what I was talking about as the top-level talking about as the top-level talking about as the top-level maintainer. It means that Linus will maintainer. It means that Linus will maintainer. It means that Linus will maintain Linux until he's not alive, maintain Linux until he's not alive, maintain Linux until he's not alive, probably. Back to what he had to say probably. Back to what he had to say probably. Back to what he had to say here, though. here, though. here, though. There are other questions around AI, There are other questions around AI, There are other questions around AI, like what's this going to look like like what's this going to look like like what's this going to look like economically in the end, but the is it economically in the end, but the is it economically in the end, but the is it useful thing is no longer one of those useful thing is no longer one of those useful thing is no longer one of those valid questions. Anybody who doubts that valid questions. Anybody who doubts that valid questions. Anybody who doubts that clearly hasn't actually used the modern clearly hasn't actually used the modern clearly hasn't actually used the modern tools. I absolutely agree. And remember, tools. I absolutely agree. And remember, tools. I absolutely agree. And remember, Linus is using Gemini, supposedly, here. Linus is using Gemini, supposedly, here. Linus is using Gemini, supposedly, here. I don't know if he's tried Claude, Code, I don't know if he's tried Claude, Code, I don't know if he's tried Claude, Code, Codex, Cursor, whatever else, but he has Codex, Cursor, whatever else, but he has Codex, Cursor, whatever else, but he has confirmed before publicly that he is confirmed before publicly that he is confirmed before publicly that he is using anti-gravity and Gemini for real using anti-gravity and Gemini for real using anti-gravity and Gemini for real work. He knows these tools are useful. work. He knows these tools are useful. work. He knows these tools are useful. He does cave that it is sometimes He does cave that it is sometimes He does cave that it is sometimes painful, especially for maintainer painful, especially for maintainer painful, especially for maintainer workloads, and just from an it keeps workloads, and just from an it keeps workloads, and just from an it keeps finding embarrassing bug standpoint. finding embarrassing bug standpoint. finding embarrassing bug standpoint. Like, yeah, it hurts. Having somebody Like, yeah, it hurts. Having somebody Like, yeah, it hurts. Having somebody with unlimited manpower and money just with unlimited manpower and money just with unlimited manpower and money just digging into your [ __ ] and finding all digging into your [ __ ] and finding all digging into your [ __ ] and finding all of these things can feel awful. But it's of these things can feel awful. But it's of these things can feel awful. But it's awesome that we can do it, too. And if awesome that we can do it, too. And if awesome that we can do it, too. And if your goal is to do the best thing for your goal is to do the best thing for your goal is to do the best thing for your users, you should be embracing your users, you should be embracing your users, you should be embracing these tools where they are useful to you these tools where they are useful to you these tools where they are useful to you and your team.
-
and your team. and your team. But the solution is not to put your head But the solution is not to put your head But the solution is not to put your head in the sand and sing, "La la la, I can't in the sand and sing, "La la la, I can't in the sand and sing, "La la la, I can't hear you" at the top of your voice, like hear you" at the top of your voice, like hear you" at the top of your voice, like some people seem to do. Absolutely some people seem to do. Absolutely some people seem to do. Absolutely agree. I've seen these people, and if agree. I've seen these people, and if agree. I've seen these people, and if you want to see some, too, all you have you want to see some, too, all you have you want to see some, too, all you have to do is scroll down and see them in my to do is scroll down and see them in my to do is scroll down and see them in my comment section. While you're scrolling, comment section. While you're scrolling, comment section. While you're scrolling, though, if you see a little red button though, if you see a little red button though, if you see a little red button that says subscribe, it's cuz you that says subscribe, it's cuz you that says subscribe, it's cuz you haven't and you should consider clicking haven't and you should consider clicking haven't and you should consider clicking it because I cover these things, it's a it because I cover these things, it's a it because I cover these things, it's a lot of work, and if you want to stay on lot of work, and if you want to stay on lot of work, and if you want to stay on top of this stuff as it changes, top of this stuff as it changes, top of this stuff as it changes, probably a good idea to start watching a probably a good idea to start watching a probably a good idea to start watching a bit more. bit more. bit more. Only half of you guys are subscribed. Only half of you guys are subscribed. Only half of you guys are subscribed. Helps a lot if you hit the button. I Helps a lot if you hit the button. I Helps a lot if you hit the button. I really like where Linus goes here. He really like where Linus goes here. He really like where Linus goes here. He says the solution is to make sure these says the solution is to make sure these says the solution is to make sure these LLM tools are helping maintainers LLM tools are helping maintainers LLM tools are helping maintainers instead of just causing them pain. instead of just causing them pain. instead of just causing them pain. There's no question on that side, and I There's no question on that side, and I There's no question on that side, and I absolutely agree. It sucks that a lot of absolutely agree. It sucks that a lot of absolutely agree. It sucks that a lot of the creators of these agentic tools, of the creators of these agentic tools, of the creators of these agentic tools, of these models, of these things did not go these models, of these things did not go these models, of these things did not go more into the open source world and try more into the open source world and try more into the open source world and try to help directly. There has been some to help directly. There has been some to help directly. There has been some effort here since things like open effort here since things like open effort here since things like open source programs for both Cloud Code and source programs for both Cloud Code and source programs for both Cloud Code and Codex, things like the secure Project Codex, things like the secure Project Codex, things like the secure Project Glass Wing type stuff where they reach Glass Wing type stuff where they reach Glass Wing type stuff where they reach out to essential open source projects out to essential open source projects out to essential open source projects and do a bunch of free auditing and do a bunch of free auditing and do a bunch of free auditing privately. All of that stuff is awesome.
-
privately. All of that stuff is awesome. privately. All of that stuff is awesome. But, it's not enough, and it started too But, it's not enough, and it started too But, it's not enough, and it started too late, especially considering that these late, especially considering that these late, especially considering that these LLMs got where they were from an open LLMs got where they were from an open LLMs got where they were from an open source start using a lot of open source source start using a lot of open source source start using a lot of open source code. But, that doesn't mean these code. But, that doesn't mean these code. But, that doesn't mean these things aren't helpful to maintainers. It things aren't helpful to maintainers. It things aren't helpful to maintainers. It just means that the companies that made just means that the companies that made just means that the companies that made them weren't considerate enough about them weren't considerate enough about them weren't considerate enough about maintainers initially, and they're maintainers initially, and they're maintainers initially, and they're slowly working on it. But, it is our job slowly working on it. But, it is our job slowly working on it. But, it is our job as the developers who are between these as the developers who are between these as the developers who are between these big companies and the open source big companies and the open source big companies and the open source projects to keep on doing what we can to projects to keep on doing what we can to projects to keep on doing what we can to funnel value to the open source funnel value to the open source funnel value to the open source maintainers, whether that is paying them maintainers, whether that is paying them maintainers, whether that is paying them directly, whether that is contributing directly, whether that is contributing directly, whether that is contributing to the projects in ways that are less to the projects in ways that are less to the projects in ways that are less burdensome, whether it's giving them burdensome, whether it's giving them burdensome, whether it's giving them free inference or donating money for free inference or donating money for free inference or donating money for tokens, or helping them set up tools tokens, or helping them set up tools tokens, or helping them set up tools that are more useful to themselves. that are more useful to themselves. that are more useful to themselves. Whatever maintainers need, we should be Whatever maintainers need, we should be Whatever maintainers need, we should be going out of our way for because they going out of our way for because they going out of our way for because they are doing a thankless job, and we did are doing a thankless job, and we did are doing a thankless job, and we did make it harder. It is important to make it harder. It is important to make it harder. It is important to understand and appreciate the burden of understand and appreciate the burden of understand and appreciate the burden of open source maintainers in this time. It open source maintainers in this time. It open source maintainers in this time. It is harder and more annoying than ever in is harder and more annoying than ever in is harder and more annoying than ever in a lot of ways. a lot of ways. a lot of ways. But, when done right, it can be really But, when done right, it can be really But, when done right, it can be really powerful, too. Following along with what powerful, too. Following along with what powerful, too. Following along with what Linus said here, he's not trying to Linus said here, he's not trying to Linus said here, he's not trying to force anyone to use it, but he's very force anyone to use it, but he's very force anyone to use it, but he's very loudly going to ignore people who try to loudly going to ignore people who try to loudly going to ignore people who try to argue against other people using AI. And argue against other people using AI. And argue against other people using AI. And no, AI isn't perfect, but Christ, anyone no, AI isn't perfect, but Christ, anyone no, AI isn't perfect, but Christ, anyone who points to the problems that AI had who points to the problems that AI had who points to the problems that AI had better be looking in the mirror and better be looking in the mirror and better be looking in the mirror and pointing at themselves at the same time.
-
pointing at themselves at the same time. pointing at themselves at the same time. Because it's not like natural Because it's not like natural Because it's not like natural intelligence is always all that great, intelligence is always all that great, intelligence is always all that great, either. The kernel project has been and either. The kernel project has been and either. The kernel project has been and will continue to be around the will continue to be around the will continue to be around the technology. Sure, the social angle of technology. Sure, the social angle of technology. Sure, the social angle of working at open source is important and working at open source is important and working at open source is important and often a very motivating part of the often a very motivating part of the often a very motivating part of the project, but in the end, that's a side project, but in the end, that's a side project, but in the end, that's a side benefit, not the point of the project. benefit, not the point of the project. benefit, not the point of the project. This is not some kind of social warrior This is not some kind of social warrior This is not some kind of social warrior project, never has been, and never will project, never has been, and never will project, never has been, and never will be. In the kernel community, we do open be. In the kernel community, we do open be. In the kernel community, we do open source because it results in better source because it results in better source because it results in better technology, not because of religious technology, not because of religious technology, not because of religious reasons. And so, we make the decision reasons. And so, we make the decision reasons. And so, we make the decision primarily based on technical merit, not primarily based on technical merit, not primarily based on technical merit, not fear of new tools. fear of new tools. fear of new tools. [ __ ] based. [ __ ] based. [ __ ] based. I would love to see a Linus take I don't I would love to see a Linus take I don't I would love to see a Linus take I don't agree with. Seriously, agree with. Seriously, agree with. Seriously, one of the greatest of all time. Also, one of the greatest of all time. Also, one of the greatest of all time. Also, Nvidia's OG hater. Huge respect for Nvidia's OG hater. Huge respect for Nvidia's OG hater. Huge respect for that. While I feel physically incapable that. While I feel physically incapable that. While I feel physically incapable of disagreeing with Linus, others did. of disagreeing with Linus, others did. of disagreeing with Linus, others did. And he had plenty to say to them. And he had plenty to say to them. And he had plenty to say to them. Laurent said in the mail list that he Laurent said in the mail list that he Laurent said in the mail list that he considers today that there's no ethical considers today that there's no ethical considers today that there's no ethical justification for the use of generative justification for the use of generative justification for the use of generative AI in free and open source development. AI in free and open source development. AI in free and open source development. To which Linus said, "I guess this is To which Linus said, "I guess this is To which Linus said, "I guess this is where the discussion ends." As I where the discussion ends." As I where the discussion ends." As I mentioned, Linux has never been a social mentioned, Linux has never been a social mentioned, Linux has never been a social warrior project. If you don't have warrior project. If you don't have warrior project. If you don't have technical reasons, you don't have technical reasons, you don't have technical reasons, you don't have reasons. You can choose not to use AI, reasons. You can choose not to use AI, reasons. You can choose not to use AI, but that's your personal choice. It has but that's your personal choice. It has but that's your personal choice. It has absolutely no impact on anybody else, absolutely no impact on anybody else, absolutely no impact on anybody else, and you should not expect it to have and you should not expect it to have and you should not expect it to have any. Put another way, if you're a any. Put another way, if you're a any. Put another way, if you're a vegetarian because you think meat is vegetarian because you think meat is vegetarian because you think meat is murder, that's perfectly fine. I know murder, that's perfectly fine. I know murder, that's perfectly fine. I know for a fact we have several vegan kernel for a fact we have several vegan kernel for a fact we have several vegan kernel developers, and I'm sure they have developers, and I'm sure they have developers, and I'm sure they have varied reasons for it. Maybe they just varied reasons for it. Maybe they just varied reasons for it. Maybe they just don't like the taste. Maybe they have don't like the taste. Maybe they have don't like the taste. Maybe they have some social or religious reasons for it.
-
some social or religious reasons for it. some social or religious reasons for it. Lots of perfectly valid reasons, Lots of perfectly valid reasons, Lots of perfectly valid reasons, possibly driven by ethics. But they possibly driven by ethics. But they possibly driven by ethics. But they don't expect the rest of the kernel don't expect the rest of the kernel don't expect the rest of the kernel community to become vegetarian because community to become vegetarian because community to become vegetarian because of their personal ethical standpoint, do of their personal ethical standpoint, do of their personal ethical standpoint, do they? they? they? This is absolutely no different. This is absolutely no different. This is absolutely no different. And yes, I feel very strongly about And yes, I feel very strongly about And yes, I feel very strongly about this, not because I feel strongly about this, not because I feel strongly about this, not because I feel strongly about AI per se, but because we have a long AI per se, but because we have a long AI per se, but because we have a long history interacting with the Free history interacting with the Free history interacting with the Free Software Foundation. They have their Software Foundation. They have their Software Foundation. They have their ethical reasons, too, and use them as a ethical reasons, too, and use them as a ethical reasons, too, and use them as a weapon, and as a way to drive away sane weapon, and as a way to drive away sane weapon, and as a way to drive away sane people. It's why Linux is not GNU/Linux people. It's why Linux is not GNU/Linux people. It's why Linux is not GNU/Linux and why we call things open source and why we call things open source and why we call things open source instead of free software. instead of free software. instead of free software. So, keep your ethics where they belong So, keep your ethics where they belong So, keep your ethics where they belong in your personal life. Don't try to in your personal life. Don't try to in your personal life. Don't try to enforce your ethics on others. Based is enforce your ethics on others. Based is enforce your ethics on others. Based is [ __ ] hell. [ __ ] hell. [ __ ] hell. I have no notes. I have no notes. I have no notes. He's very accurate with this. He's very accurate with this. He's very accurate with this. And you're going to see more people And you're going to see more people And you're going to see more people doing the same. It's been fun watching doing the same. It's been fun watching doing the same. It's been fun watching more and more fall as the models and more and more fall as the models and more and more fall as the models and tools get better. I remember a year and tools get better. I remember a year and tools get better. I remember a year and a half ago when the things were just a half ago when the things were just a half ago when the things were just starting to get okay at code. Like when starting to get okay at code. Like when starting to get okay at code. Like when GPT-5 finally came out and I could talk GPT-5 finally came out and I could talk GPT-5 finally came out and I could talk about it. It was like, "Oh, wow. These about it. It was like, "Oh, wow. These about it. It was like, "Oh, wow. These are way more capable than I thought they are way more capable than I thought they are way more capable than I thought they would get." I thought we were going to would get." I thought we were going to would get." I thought we were going to hit a ceiling and we didn't. And I went hit a ceiling and we didn't. And I went hit a ceiling and we didn't. And I went from, "Oh, this is useful to like make from, "Oh, this is useful to like make from, "Oh, this is useful to like make some small edits in a file." to this can some small edits in a file." to this can some small edits in a file." to this can actually complete real work to barely actually complete real work to barely actually complete real work to barely even editing code myself anymore because even editing code myself anymore because even editing code myself anymore because this can do almost all of the work this can do almost all of the work this can do almost all of the work itself. And every developer, even the itself. And every developer, even the itself. And every developer, even the ones who are still against AI, if they ones who are still against AI, if they ones who are still against AI, if they have any real technical merit, will have any real technical merit, will have any real technical merit, will eventually see this, too. A bar will be eventually see this, too. A bar will be eventually see this, too. A bar will be hit where the tools are better than they hit where the tools are better than they hit where the tools are better than they thought was possible, not better than
-
thought was possible, not better than thought was possible, not better than them necessarily, but better than they them necessarily, but better than they them necessarily, but better than they expected, and they will have to reflect expected, and they will have to reflect expected, and they will have to reflect on that or just shove their head in the on that or just shove their head in the on that or just shove their head in the sand and pretend none of it's happening. sand and pretend none of it's happening. sand and pretend none of it's happening. Some have already done that and some Some have already done that and some Some have already done that and some will continue to do that, but the best will continue to do that, but the best will continue to do that, but the best maintainers all have been coming around. maintainers all have been coming around. maintainers all have been coming around. I'm going to give a weird analogy here, I'm going to give a weird analogy here, I'm going to give a weird analogy here, but I saw this with TypeScript back in but I saw this with TypeScript back in but I saw this with TypeScript back in the day. When TypeScript first happened, the day. When TypeScript first happened, the day. When TypeScript first happened, it was quite controversial. Not cuz it it was quite controversial. Not cuz it it was quite controversial. Not cuz it was bad or terrible or slow or was bad or terrible or slow or was bad or terrible or slow or something, just because the best people something, just because the best people something, just because the best people in the JavaScript community didn't see a in the JavaScript community didn't see a in the JavaScript community didn't see a need for it. They wrote JavaScript that need for it. They wrote JavaScript that need for it. They wrote JavaScript that was good and it worked and behaved how was good and it worked and behaved how was good and it worked and behaved how they expected it to. Why would we add they expected it to. Why would we add they expected it to. Why would we add all of this stuff on top where we now all of this stuff on top where we now all of this stuff on top where we now have to transpile our TypeScript into have to transpile our TypeScript into have to transpile our TypeScript into something else in order to even be able something else in order to even be able something else in order to even be able to run it. And a lot of those really to run it. And a lot of those really to run it. And a lot of those really talented maintainers just kind of talented maintainers just kind of talented maintainers just kind of pooh-poohed TypeScript entirely and pooh-poohed TypeScript entirely and pooh-poohed TypeScript entirely and ignored it. But, the goal of TypeScript ignored it. But, the goal of TypeScript ignored it. But, the goal of TypeScript wasn't to replace JavaScript and become wasn't to replace JavaScript and become wasn't to replace JavaScript and become the industry default. It was to solve the industry default. It was to solve the industry default. It was to solve very specific problems that Microsoft very specific problems that Microsoft very specific problems that Microsoft had. They built it at Microsoft because had. They built it at Microsoft because had. They built it at Microsoft because JavaScript had become the global JavaScript had become the global JavaScript had become the global language and they wanted to write things language and they wanted to write things language and they wanted to write things that were Microsoft size and scale. When that were Microsoft size and scale. When that were Microsoft size and scale. When you have a lot of engineers at various you have a lot of engineers at various you have a lot of engineers at various skill levels and none of them knew the skill levels and none of them knew the skill levels and none of them knew the whole code base cuz it was physically whole code base cuz it was physically whole code base cuz it was physically impossible to. Making sure changes in impossible to. Making sure changes in impossible to. Making sure changes in one place didn't break somewhere else one place didn't break somewhere else one place didn't break somewhere else was a real challenge. And TypeScript was was a real challenge. And TypeScript was was a real challenge. And TypeScript was built by Anders Hejlsberg, the creator built by Anders Hejlsberg, the creator built by Anders Hejlsberg, the creator of C#, in order to try and solve that of C#, in order to try and solve that of C#, in order to try and solve that orchestration problem when you have lots orchestration problem when you have lots orchestration problem when you have lots of engineers of various skill levels of engineers of various skill levels of engineers of various skill levels contributing to a thing. But that's also contributing to a thing. But that's also contributing to a thing. But that's also again where that problem comes in. If again where that problem comes in. If again where that problem comes in. If you're on a small team with incredibly you're on a small team with incredibly you're on a small team with incredibly talented devs building a small to talented devs building a small to talented devs building a small to medium-size JavaScript project, even a medium-size JavaScript project, even a medium-size JavaScript project, even a pretty big one, but everyone on the team
-
pretty big one, but everyone on the team pretty big one, but everyone on the team knows where everything is, you're not knows where everything is, you're not knows where everything is, you're not going to have that many problems that going to have that many problems that going to have that many problems that TypeScript solves. And it's going to TypeScript solves. And it's going to TypeScript solves. And it's going to seem like this big unnecessary thing seem like this big unnecessary thing seem like this big unnecessary thing that complicates your whole process. that complicates your whole process. that complicates your whole process. And a lot of people did feel that way. And a lot of people did feel that way. And a lot of people did feel that way. Here's a fun interaction I had back in Here's a fun interaction I had back in Here's a fun interaction I had back in 2022 with one of my good friends and 2022 with one of my good friends and 2022 with one of my good friends and somebody I owe for a lot of my success, somebody I owe for a lot of my success, somebody I owe for a lot of my success, Ryan Carniato, the creator of SolidJS Ryan Carniato, the creator of SolidJS Ryan Carniato, the creator of SolidJS and one of the best JavaScript devs and one of the best JavaScript devs and one of the best JavaScript devs alive. alive. alive. Joe is another friend of mine who was Joe is another friend of mine who was Joe is another friend of mine who was iffy on if TypeScript was worth it or iffy on if TypeScript was worth it or iffy on if TypeScript was worth it or not in 2022 and asked if he felt like not in 2022 and asked if he felt like not in 2022 and asked if he felt like TypeScript made people more productive. TypeScript made people more productive. TypeScript made people more productive. He will respond. I said that I firmly He will respond. I said that I firmly He will respond. I said that I firmly believe anyone who doesn't feel a believe anyone who doesn't feel a believe anyone who doesn't feel a productivity win out of TypeScript isn't productivity win out of TypeScript isn't productivity win out of TypeScript isn't using it correctly. Honestly, same if using it correctly. Honestly, same if using it correctly. Honestly, same if you feel like you're writing TypeScript you feel like you're writing TypeScript you feel like you're writing TypeScript and not {quote} JavaScript with warnings and not {quote} JavaScript with warnings and not {quote} JavaScript with warnings in your editor. TypeScript gave me back in your editor. TypeScript gave me back in your editor. TypeScript gave me back a huge chunk of my brain that was a huge chunk of my brain that was a huge chunk of my brain that was previously second-guessing every line. previously second-guessing every line. previously second-guessing every line. I have since refined this take. One of I have since refined this take. One of I have since refined this take. One of the things TypeScript did is it moved the things TypeScript did is it moved the things TypeScript did is it moved the burden of describing how your the burden of describing how your the burden of describing how your systems work off of the application devs systems work off of the application devs systems work off of the application devs and the people building things that are and the people building things that are and the people building things that are user-facing and onto the libraries we user-facing and onto the libraries we user-facing and onto the libraries we consume. Things like React and React consume. Things like React and React consume. Things like React and React Query, things like SolidJS, things like Query, things like SolidJS, things like Query, things like SolidJS, things like the GraphQL bindings a lot of us use, the GraphQL bindings a lot of us use, the GraphQL bindings a lot of us use, tRPC. All of these tools needed to have tRPC. All of these tools needed to have tRPC. All of these tools needed to have types defined in TypeScript and that is types defined in TypeScript and that is types defined in TypeScript and that is real work that is often complex that has real work that is often complex that has real work that is often complex that has to be done by open source maintainers to be done by open source maintainers to be done by open source maintainers for their things to be taken seriously for their things to be taken seriously for their things to be taken seriously with TypeScript. And that was a real with TypeScript. And that was a real with TypeScript. And that was a real burden that sucked. But by doing that, burden that sucked. But by doing that, burden that sucked. But by doing that, it made their tools way easier to adopt.
-
it made their tools way easier to adopt. it made their tools way easier to adopt. Remember what I said before though, the Remember what I said before though, the Remember what I said before though, the best developers didn't need that ease, best developers didn't need that ease, best developers didn't need that ease, they already were there. they already were there. they already were there. Ryan said the following, "I'm pretty Ryan said the following, "I'm pretty Ryan said the following, "I'm pretty much the person you're describing. I'm much the person you're describing. I'm much the person you're describing. I'm told it will click, but after 4 years of told it will click, but after 4 years of told it will click, but after 4 years of using TypeScript every day, I'm not using TypeScript every day, I'm not using TypeScript every day, I'm not convinced anymore." It's something that convinced anymore." It's something that convinced anymore." It's something that he puts up with for the greater good. he puts up with for the greater good. he puts up with for the greater good. He's used other type languages, but when He's used other type languages, but when He's used other type languages, but when it's applied to JavaScript it feels it's applied to JavaScript it feels it's applied to JavaScript it feels different. He gave an example of an API different. He gave an example of an API different. He gave an example of an API that he built in 20 minutes cuz it was that he built in 20 minutes cuz it was that he built in 20 minutes cuz it was intuitive to him and apparently others intuitive to him and apparently others intuitive to him and apparently others as well. And 5 years later they're still as well. And 5 years later they're still as well. And 5 years later they're still discussing how to type it properly for discussing how to type it properly for discussing how to type it properly for months at a time. Yeah, writing the months at a time. Yeah, writing the months at a time. Yeah, writing the types for complex APIs is a real types for complex APIs is a real types for complex APIs is a real difficulty, but that's not why I'm difficulty, but that's not why I'm difficulty, but that's not why I'm showing you guys this post. I'm showing showing you guys this post. I'm showing showing you guys this post. I'm showing you guys this post because of a diagram you guys this post because of a diagram you guys this post because of a diagram I drew on why this is the case. I drew on why this is the case. I drew on why this is the case. TypeScript takes the potential quality TypeScript takes the potential quality TypeScript takes the potential quality of a code base and it shrinks it from of a code base and it shrinks it from of a code base and it shrinks it from both ends. It greatly raises the floor both ends. It greatly raises the floor both ends. It greatly raises the floor and it slightly lowers the ceiling. So, and it slightly lowers the ceiling. So, and it slightly lowers the ceiling. So, a relic Ryan Carniato who is a 10 out of a relic Ryan Carniato who is a 10 out of a relic Ryan Carniato who is a 10 out of 10 JS dev almost feels like he has to 10 JS dev almost feels like he has to 10 JS dev almost feels like he has to lower his quality in order for lower his quality in order for lower his quality in order for TypeScript to be useful to him. But TypeScript to be useful to him. But TypeScript to be useful to him. But someone like me who is a dumb YouTuber someone like me who is a dumb YouTuber someone like me who is a dumb YouTuber benefits greatly from TypeScript yanking benefits greatly from TypeScript yanking benefits greatly from TypeScript yanking me off of the floor into a much better me off of the floor into a much better me off of the floor into a much better more maintainable place. This is kind of more maintainable place. This is kind of more maintainable place. This is kind of what AI does too.
-
what AI does too. what AI does too. Are the absolute best developers in the Are the absolute best developers in the Are the absolute best developers in the world capable of writing code better world capable of writing code better world capable of writing code better than AI in the areas they specialize? than AI in the areas they specialize? than AI in the areas they specialize? Almost certainly yes. I'd be incredibly Almost certainly yes. I'd be incredibly Almost certainly yes. I'd be incredibly surprised if some of the best surprised if some of the best surprised if some of the best maintainers of the Linux kernel couldn't maintainers of the Linux kernel couldn't maintainers of the Linux kernel couldn't write better code than Fable does for write better code than Fable does for write better code than Fable does for Linux. But how about the kernel code I Linux. But how about the kernel code I Linux. But how about the kernel code I would write? would write? would write? How about the kernel code that Ryan How about the kernel code that Ryan How about the kernel code that Ryan Carniato would write? He's incredibly Carniato would write? He's incredibly Carniato would write? He's incredibly talented. He does not know the Linux talented. He does not know the Linux talented. He does not know the Linux kernel at all. You don't know what his kernel at all. You don't know what his kernel at all. You don't know what his knowledge of low-level memory stuff is. knowledge of low-level memory stuff is. knowledge of low-level memory stuff is. But he's an incredibly talented dev But he's an incredibly talented dev But he's an incredibly talented dev where if he tried to contribute over where if he tried to contribute over where if he tried to contribute over there would benefit a lot from AI. Or we there would benefit a lot from AI. Or we there would benefit a lot from AI. Or we can go back to the original example of can go back to the original example of can go back to the original example of Linus 5 coding which is that he wanted Linus 5 coding which is that he wanted Linus 5 coding which is that he wanted to visualize some work he was doing on a to visualize some work he was doing on a to visualize some work he was doing on a fun side project and didn't know how to fun side project and didn't know how to fun side project and didn't know how to do that the right way, so he asked do that the right way, so he asked do that the right way, so he asked Gemini to. And while the code wasn't Gemini to. And while the code wasn't Gemini to. And while the code wasn't perfect and the UI stuff wasn't great, perfect and the UI stuff wasn't great, perfect and the UI stuff wasn't great, the thing he wanted came out much faster the thing he wanted came out much faster the thing he wanted came out much faster and he didn't have to go as far out of and he didn't have to go as far out of and he didn't have to go as far out of his way to go figure out all of these his way to go figure out all of these his way to go figure out all of these things. He was very happy with the things. He was very happy with the things. He was very happy with the result because he got to work outside of result because he got to work outside of result because he got to work outside of his area of expertise and the floor was his area of expertise and the floor was his area of expertise and the floor was higher and the work was less. That is an higher and the work was less. That is an higher and the work was less. That is an awesome thing. TypeScript was similar awesome thing. TypeScript was similar awesome thing. TypeScript was similar for me in this way where I was coming for me in this way where I was coming for me in this way where I was coming from other spaces. I had done most of my from other spaces. I had done most of my from other spaces. I had done most of my time in Elixir, Ruby, and Java.
-
time in Elixir, Ruby, and Java. time in Elixir, Ruby, and Java. So I didn't like working in JavaScript, So I didn't like working in JavaScript, So I didn't like working in JavaScript, but TypeScript raised the quality of but TypeScript raised the quality of but TypeScript raised the quality of what I was doing and guided me through what I was doing and guided me through what I was doing and guided me through fixing things in such a way that I ended fixing things in such a way that I ended fixing things in such a way that I ended up liking it a lot and ended up going up liking it a lot and ended up going up liking it a lot and ended up going all in on this idea of full stack type all in on this idea of full stack type all in on this idea of full stack type safety eventually, the T3 stack. safety eventually, the T3 stack. safety eventually, the T3 stack. That's kind of what AI has done to me as That's kind of what AI has done to me as That's kind of what AI has done to me as well. It has affected me and my career well. It has affected me and my career well. It has affected me and my career in a way very, very similar to in a way very, very similar to in a way very, very similar to TypeScript in this way. It has me bolder TypeScript in this way. It has me bolder TypeScript in this way. It has me bolder doing bigger, crazier things and trying doing bigger, crazier things and trying doing bigger, crazier things and trying to take more advantage of what the to take more advantage of what the to take more advantage of what the tool's capable of to make my life easier tool's capable of to make my life easier tool's capable of to make my life easier and to make my team more effective. And and to make my team more effective. And and to make my team more effective. And I'm very thankful Linus agrees here. I'm very thankful Linus agrees here. I'm very thankful Linus agrees here. Because as he said, anyone who doubts Because as he said, anyone who doubts Because as he said, anyone who doubts that these tools are useful clearly that these tools are useful clearly that these tools are useful clearly hasn't actually used them. And if you're hasn't actually used them. And if you're hasn't actually used them. And if you're still in that bucket, I hope you take still in that bucket, I hope you take still in that bucket, I hope you take the opportunity to experiment a bit the opportunity to experiment a bit the opportunity to experiment a bit more. If you're looking for things to more. If you're looking for things to more. If you're looking for things to use AI for that aren't just generating use AI for that aren't just generating use AI for that aren't just generating code in your projects, but can help you code in your projects, but can help you code in your projects, but can help you take the code you already wrote and take the code you already wrote and take the code you already wrote and validate it better and be more likely to validate it better and be more likely to validate it better and be more likely to ship less buggy software, you can check ship less buggy software, you can check ship less buggy software, you can check out my video about reading code because out my video about reading code because out my video about reading code because I go in depth on that. And I want to be I go in depth on that. And I want to be I go in depth on that. And I want to be clear, my stance is not that you clear, my stance is not that you clear, my stance is not that you shouldn't read code. My stance is that shouldn't read code. My stance is that shouldn't read code. My stance is that code is too useful and now too cheap to code is too useful and now too cheap to code is too useful and now too cheap to justify not generating a bunch of code justify not generating a bunch of code justify not generating a bunch of code to do random things that you want to to do random things that you want to to do random things that you want to have done. Whether that's going through have done. Whether that's going through have done. Whether that's going through open pull requests and giving you an open pull requests and giving you an open pull requests and giving you an audit at the start of the day on what audit at the start of the day on what audit at the start of the day on what you should focus on, or if it's you should focus on, or if it's you should focus on, or if it's verifying changes you make, or if it's verifying changes you make, or if it's verifying changes you make, or if it's writing a really elaborate test suite writing a really elaborate test suite writing a really elaborate test suite for one thing you really want to for one thing you really want to for one thing you really want to confirm. There is so much use to AI confirm. There is so much use to AI confirm. There is so much use to AI other than contributing slop to projects other than contributing slop to projects other than contributing slop to projects and I really hope more people take the and I really hope more people take the and I really hope more people take the opportunity to opportunity to opportunity to use these tools for the awesome things use these tools for the awesome things use these tools for the awesome things they can be used for. It's been a wild
-
they can be used for. It's been a wild they can be used for. It's been a wild journey for me and it's awesome to see journey for me and it's awesome to see journey for me and it's awesome to see so many other people realize the so many other people realize the so many other people realize the capability here as well. AI is capability here as well. AI is capability here as well. AI is continuing to get more and more useful continuing to get more and more useful continuing to get more and more useful and more and more powerful and as great and more and more powerful and as great and more and more powerful and as great as something like TypeScript is, it as something like TypeScript is, it as something like TypeScript is, it definitely hit a ceiling pretty early. definitely hit a ceiling pretty early. definitely hit a ceiling pretty early. AI does not seem to have any ceiling in AI does not seem to have any ceiling in AI does not seem to have any ceiling in sight. So, if you don't get in now, sight. So, if you don't get in now, sight. So, if you don't get in now, you'll have plenty of chances to later. you'll have plenty of chances to later. you'll have plenty of chances to later. Don't feel like you have to rush here Don't feel like you have to rush here Don't feel like you have to rush here everything's over. Just consider using everything's over. Just consider using everything's over. Just consider using these tools a bit more and finding more these tools a bit more and finding more these tools a bit more and finding more creative ways to apply them to your creative ways to apply them to your creative ways to apply them to your work. I have a feeling you'll be work. I have a feeling you'll be work. I have a feeling you'll be surprised. I certainly know I was. Until surprised. I certainly know I was. Until surprised. I certainly know I was. Until next time. next time. next time. Peace nerds.
Summary
The main theme is the evolving stance on AI in software development, exemplified by figures like Linus Torvalds and the increasing acceptance of AI tools. Key references include the Linux kernel, Linus Torvalds' emails, and the concept of open-source forking. The practical takeaway is that AI in development has technical merit and is here to stay, leading to a shift from principled opposition to finding practical applications.