← Blog

Linus Torvalds Says AI Codes Better Than Him; Here's What It Really Means

Just as we thought Linux is the last place where vibe coding will come, we got news that Linus Torvalds is happily vibe coding and enjoying it. The creator of Linux and Git admitted AI writes better code than him. But the full story reveals something more nuanced about how experienced engineers should approach AI tools.

Hi, my name is Tom Smykowski. I'm a staff software engineer who has been coding for over 15 years without AI assistance. I build and scale products to millions of users. I've written extensively about vibe coding and recently published a book on the topic. I've seen the industry evolve from manual coding to AI-assisted development, and I have thoughts on what Linus's move means for all of us.

For those who don't know, Linus Torvalds is a Finnish-American software engineer who created Linux in 1991 and Git in 2005. He received the 2012 Millennium Technology Prize and is considered one of the most influential engineers in computing history.

Good eyes noticed that 5 days ago Linus made a commit in his project AudioNoise. AudioNoise is Linus's side project for experimenting with digital guitar pedal effects - he describes it as "toy effects that you shouldn't take seriously" where the main goal is learning about digital audio processing basics. The Python visualizer tool in this project was, as Linus admits, "basically written by vibe-coding."

The commit suggests he used one of the emerging AI IDEs with this comment:

"It mostly went smoothly, although I had to figure out what the problem with using the builtin rectangle select was. After telling antigravity to just do a custom RectangleSelector, things went much better. Is this much better than I could do by hand? Sure is."

The most dramatic part are the last two sentences. Does it mean that AI got better than one of the most influential engineers in the world? Or is Linus just not as good at coding as he was?

Follow me on Medium

The Internet Reacts

The comments under his commit are mixed:

  • Some say "It's so over"
  • Others write "Chat, I'm gonna tell my kids I was here"
  • There of course had to be a comment aimed at Python: "Even Linus knows Python isn't worth his brain cycles"

But jokes aside, when we look closely at the commit, it looks nice. It's just a short script in Python interactively visualizing audio waveform for int32 PCM audio files. Just some math basically.

I don't like that width or start_time is used for many things in the code, it's confusing. There's more things like that that make the code hard to read. But it's ok, it's just a side project. Linus can write such code, and literally no one can say anything bad about it, because we all know Linus is the king of coding. Everyone has side projects with mess in them.

Clap this post multiple times if you like it

Why AI Makes Sense for Linus Here

Python isn't the main language of Linus. Linus is an English speaker, and a C coder. So it's useful for him to use AI to generate the code since he knows what he wants to achieve in a language that's secondary to what he usually does.

Additionally the project won't grow to enterprise size, so it doesn't matter so much if it's written perfectly. I wrote about this in my article about vibe coding and tech debt - small projects have different quality requirements than enterprise systems.

While we're at it, we need to answer the question I've stated before. Linus isn't writing a lot of code lately. Historically he did. But now Linux has thousands of contributors, and Linus naturally moved to a position where he reviews changes, maintains the project, mentors and guides people. He's not a 100% coder for a long long time (while once you're a coder you're always a coder of course, it's an honorary title).

Share this blog post with your colleagues

So Is AI That Good or Linus That Bad?

I'd say both. Linus doesn't write much code in Python, and doesn't code as he did back in the days, and AI got better. It really shines in such small tasks, because it can offer good results out of the box without any optimisation.

AI can do a lot more. But there's one thing here. A lot of people use AI for such small tasks like one file with 300-400 lines of code, and they get an impression AI can replace software engineers. More and more CEOs do it, get a nice small script running in 1 hour, and look at their tech department and ask themselves why they pay all of these software engineers if AI can do it.

I wrote in Software Engineering for Vibe Coders: "People will vibe code anyway - including you. My job is to help you do it well."

Linus doesn't ask such silly questions thankfully. He refrains from it, because he knows his craft and knows it's not so simple. He often says AI can be a tool, assistant, but not replacement.

Share this blog post on social media

The Linux Kernel Rules

Regarding contributions to the Linux kernel, his rules are clear: people can't prompt engineer code and commit it for review, it will be swiftly rejected. Contributors can of course use AI, but they have to have full understanding and ownership of the change. So they have to be able to explain what it does, what it affects, how it does it and so on. The contributor is the responsible one, not AI. AI doesn't give a damn about it.

That's why it may be shocking that on one side Linus says people can't vibe code without understanding, but on the other hand he vibe codes his own project.

But there's a major difference. Linux is quite a big project compared to the project where he vibe coded. I think for Linus it's also just a way to play with vibe coding and safely see how to live with it. This is exactly the sagacious approach - experimenting in low-stakes environments before forming strong opinions.

Subscribe to my articles

The Rust Parallel

The realistic view of Linus on programming also expresses in his approach to Rust, that some considered as too conservative. Rust as a safer language than C was at a point strongly advertised as a language to which Linux kernel should be rewritten.

But Linus put a stop to this nonsense. He told that ok, Rust can be used in new things, or in some places, but as an addition, not replacement of C. The reasons for that are long. But the main point is that there's no point in jumping on a bandwagon. There were many of these. And C was, is and will be.

The kernel has coherent code in one language, so there would have to be a very very strong reason to break coherence to start the long process of migrating to another one in the heart of the whole Linux world. It's not a side project you throw away after 3 hours of coding when AI says "nah, idk, whatever". The process would take many years to be finished, even with AI it would take much lonegr than expected.

What This Means for Engineers

So it all sets the scene. Linus shows again he is realistic and this is probably what gave Linux its success. He's just doing his thing and he's doing it good.

That doesn't mean he doesn't use AI. He's vibe coding some changes and tries the new tools that we got. I think this is a realistic approach. I know there are many skilled engineers, but also founders, and people with ideas who still think AI isn't for them. Sure, maybe. But why not try?

When I first got Corel, I made a scene where you could zoom in indefinitely and see hidden things in the image. At that time it was mind blowing that you can do infinite scenes in Corel. I think AI is in a way the same. It gives so many possibilities.

Maybe AI is also like Linux in a sense. It's free if your time has no value. To all Linux and AI fans: of course I'm joking. They didn't read this article anyways because they don't have time :) Cheers!

If you want to read more of my articles visit https://tomaszs2.medium.com/

If you're interested in vibe coding, check out my Vibe Coding Newsletter for weekly insights. My book Software Engineering for Vibe Coders teaches the essential engineering principles that prevent AI-generated projects from becoming unmaintainable. Also available on Amazon

Want to master Python like Linus uses for his side projects? Check out Python Flashcards - a deck designed to help people learn Python programming functions quickly and effectively

What do you think about Linus using AI for coding? Would you use AI for a side project but not for production code at work?


Sources

Get the newsletter

Posts and notes straight to your inbox

Get new posts and short notes by email — no spam, unsubscribe anytime.