(2025-06-02) Ptacek My AI Skeptic Friends Are All Nuts

Thomas Ptacek: My AI (LLM) Skeptic Friends Are All Nuts. Tech execs are mandating LLM adoption. That’s bad strategy. But I get where they’re coming from. Some of the smartest people I know share a bone-deep belief that AI is a fad — the next iteration of NFT mania. I’ve been reluctant to push back on them, because, well, they’re smarter than me. But their arguments are unserious.

All progress on LLMs could halt today, and LLMs would remain the 2nd most important thing to happen over the course of my career.

Important caveat: I’m discussing only the implications of LLMs for software development. For art, music, and writing? I got nothing. I’m inclined to believe the skeptics in those fields. I just don’t believe them about mine.

First, we need to get on the same page. If you were trying and failing to use an LLM for code 6 months ago †, you’re not doing what most serious LLM-assisted coders are doing. People coding with LLMs today use agents. Agents get to poke around your codebase on their own. They author files directly. They run tools. They compile code, run tests, and iterate on the results.

The code in an agent that actually “does stuff” with code is not, itself, AI. This should reassure you. It’s surprisingly simple systems code, wired to ground truth about programming in the same way a Makefile is. You could write an effective coding agent in a weekend. Its strengths would have more to do with how you think about and structure builds and linting and test harnesses than with how advanced o3 or Sonnet have become.

If you’re making requests on a ChatGPT page and then pasting the resulting (broken) code into your editor, you’re not doing what the AI boosters are doing. No wonder you’re talking past each other.

LLMs can write a large fraction of all the tedious code you’ll ever need to write. And most code on most projects is tedious

I can feel my blood pressure rising thinking of all the bookkeeping and Googling and dependency drama of a new project. An LLM can be instructed to just figure all that shit out. Often, it will drop you precisely at that golden moment where shit almost works, and development means tweaking code and immediately seeing things work better. That dopamine hit is why I code.

"but you have no idea what the code is""

Are you a vibe coding Youtuber? Can you not read code? If so: astute point. Otherwise: what the fuck is wrong with you?
You’ve always been responsible for what you merge to main. You were five years go. And you are tomorrow, whether or not you use an LLM.

read the code. In fact, you’ll probably do more than that. You’ll spend 5-10 minutes knocking it back into your own style.

People complain about LLM-generated code being “probabilistic”. No it isn’t. It’s code. It’s not Yacc output. It’s knowable. The LLM might be stochastic. But the LLM doesn’t matter. What matters is whether you can make sense of the result

For the last month or so, Google Gemini 2.5 has been my go-to (because it can hold 50-70kloc in its context window). Almost nothing it spits out for me merges without edits.

"but hallucination""

If hallucination matters to you, your programming language has let you down.

Agents lint. They compile and run tests. If their LLM invents a new function signature, the agent sees the error. They feed it back to the LLM, which says “oh, right, I totally made that up” and then tries again.

You’ll only notice this happening if you watch the chain of thought log your agent generates. Don’t. This is why I like Zed’s agent mode: it begs you to tab away and let it work, and pings you with a desktop notification when it’s done.

"but the code is shitty, like that of a junior developer""

Does an intern cost $20/month? Because that’s what Cursor.com costs.

Part of being a senior developer is making less-able coders productive, be they fleshly or algebraic

"but it’s bad at rust""

It’s hard to get a good toolchain for Brainfuck, too. Life’s tough in the aluminum siding business.

I work mostly in Go. I’m confident the designers of the Go programming language didn’t set out to produce the most LLM-legible language in the industry. They succeeded nonetheless. Go has just enough type safety, an extensive standard library, and a culture that prizes (often repetitive) idiom. LLMs kick ass generating it.

"but the craft""

Do you like fine Japanese woodworking? All hand tools and sashimono joinery? Me too. Do it on your own time.

I have a basic wood shop in my basement... But if I need, like, a table? For people to sit at? In my office? I buy a fucking table.

If anything we build endures, it won’t be because the codebase was beautiful.

They devour schlep, and clear a path to the important stuff, where your judgement and values really matter.

"but the mediocrity""

As a mid-late career coder, I’ve come to appreciate mediocrity. You should be so lucky as to have it flowing almost effortlessly from a tap.

Developers all love to preen about code. They worry LLMs lower the “ceiling” for quality. Maybe. But they also raise the “floor”.

Gemini’s floor is higher than my own. My code looks nice. But it’s not as thorough.

And LLMs aren’t mediocre on every axis. They almost certainly have a bigger bag of algorithmic tricks than you do: radix tries, topological sorts, graph reductions, and LDPC codes.

"but it’ll never be AGI""

I don’t give a shit.

"but they take-rr jerbs""

So does open source. We used to pay good money for databases.

We’re a field premised on automating other people’s jobs away. “Productivity gains,” say the economists. You get what that means, right? Fewer people doing the same stuff.

*But I’m not hypnotized. I have no fucking clue whether we’re going to be better off after LLMs. Things could get a lot worse for us.

LLMs really might displace many software developers. That’s not a high horse we get to ride. Our jobs are just as much in tech’s line of fire as everybody else’s have been for the last 3 decades. We’re not East Coast dockworkers; we won’t stop progress on our own.*

"but the plagiarism""

Artificial intelligence is profoundly — and probably unfairly — threatening to visual artists in ways that might be hard to appreciate if you don’t work in the arts.

the median artist isn’t producing gallery pieces. They produce on brief: turning out competent illustrations and compositions for magazine covers, museum displays, motion graphics, and game assets.

LLMs easily — alarmingly — clear industry quality bars. Gallingly, one of the things they’re best at is churning out just-good-enough facsimiles of human creative work. I have family in visual arts. I can’t talk to them about LLMs. I don’t blame them. They’re probably not wrong.

  • But if you’re a software developer playing this card? No profession has demonstrated more contempt for intellectual property...The median dev thinks Star Wars and Daft Punk are a public commons.*

positive case redux

When I started writing a couple days ago, I wrote a section to “level set” to the state of the art of LLM-assisted programming. A bluefish filet has a longer shelf life than an LLM take. In the time it took you to read this, everything changed.

Kids today don’t just use agents; they use asynchronous agents. They wake up, free-associate 13 different things for their LLMs to work on, make coffee, fill out a TPS report, drive to the Mars Cheese Castle, and then check their notifications. They’ve got 13 PRs to review.

No LLM has any of access to prod here. But I’ve been first responder on an incident and fed 4o — not o4-mini, 4o — log transcripts, and watched it in seconds spot LVM metadata corruption issues on a host we’ve been complaining about for months

To the consternation of many of my friends, I’m not a radical or a futurist. I’m a statist. I believe in the haphazard perseverance of complex systems, of institutions, of reversions to the mean. I write Go and Python code. I’m not a Kool-aid drinker.

but i’m tired of hearing about it

And here I rejoin your company. I read Simon Willison, and that’s all I really need.

But AI is also incredibly — a word I use advisedly — important. It’s getting the same kind of attention that smart phones got in 2008, and not as much as the Internet got. That seems about right.

I’m snarking about these people, but I meant what I said: they’re smarter than me. And when they get over this affectation, they’re going to make coding agents profoundly more effective than they are today.


Edited:    |       |    Search Twitter for discussion

No Space passed/matched! - http://fluxent.com/wiki/2025-06-02-PtacekMyAiSkepticFriendsAreAllNuts