Back to articles
10 min read

The Slot Machine in Your IDE

I caught myself doing the 'just one more prompt' thing at 2 AM. The feature was done. I just couldn't stop. Then I realized where I'd felt this before.

It was 2 AM and I should’ve been done hours ago.

The feature was working. Had been since 11 PM. But there I was, typing another prompt: “Actually, can you refactor this to use a custom hook instead?” The AI churned out a response. Not quite right. Another prompt. Better, but the naming felt off. One more.

Just one more.

That’s when it hit me. I’d felt this exact thing before. Not at a keyboard—in World of Warcraft. Running the same dungeon for the twentieth time, hoping this would be the run where the rare mount finally dropped. The “maybe this next one” energy. The inability to walk away even when you’ve already gotten what you came for.

I closed my laptop and stared at the ceiling. What was happening in my brain?

The Machine

Here’s the thing about slot machines. They’re not addictive because you win. They’re addictive because you sometimes win, and you never know when.

There’s a name for this—variable-ratio reinforcement. Basically, random rewards mess with your head way more than predictable ones. A paycheck every two weeks? You know it’s coming. You don’t obsess over it. But a reward that might come now, might come in five minutes, might not come at all? That creates obsession.

AI coding tools work exactly the same way.

You type a prompt. Sometimes you get garbage. Sometimes you get something passable. And every now and then—just often enough to keep you hooked—you get something brilliant. Code so elegant you couldn’t have written it yourself. The dopamine hit is instant.

Traditional coding never worked like this. The old satisfaction came from hours of struggle followed by breakthrough. You’d bang your head against a problem, try different approaches, and finally—finally—crack it. The reward was delayed, but deep. You understood what you’d built because you’d fought for every line.

With AI, the reward is instant but shallow. And there’s always the promise of something better just one prompt away. The code is “almost there.” You’re “so close.” Just tweak the prompt. Just give it more context. Just try one more time.

This is the trap.

The Uncomfortable Truth

Last year, researchers at METR ran a study on experienced developers working on real open-source projects. The results were… not what anyone expected.

Developers using AI tools took 19% longer to complete tasks. Not faster. Longer.

But here’s the part that keeps me up at night. Those same developers predicted they’d be 24% faster with AI. They didn’t just miss the mark—they got the direction wrong. They felt faster while actually being slower.

One participant put it pretty well: coding with AI requires less mental effort. Makes it easier to zone out. Even if it’s not actually faster, it feels faster because you’re more relaxed.

When I read that, I recognized myself immediately. All those sessions where I felt incredibly productive, shipping feature after feature, code flying across my screen—how many were actually efficient? How many were me in a dopamine-fueled haze, generating and regenerating code I barely understood?

The researchers watched screen recordings too. AI-assisted sessions had more idle time. Not just waiting for the model—complete inactivity. Developers zoning out. We’d traded the hard work of thinking through problems for the numbing work of evaluating endless variations.

And there’s a tolerance thing. Like any addiction, you need bigger hits over time. One developer described it like this: completing complex tasks doesn’t satisfy like it used to. Delivering an entire auth system in 3 hours felt insufficient. When building an auth system in an afternoon feels “insufficient,” something’s gone wrong with your reward circuitry.

What We’re Losing

Luciano Nooijen had been using AI tools heavily for months when he started a side project without access to them. It shook him.

“I was feeling so stupid,” he said. Things that used to be instinct became manual. Cumbersome, even. Skills he’d built over years had atrophied. The muscle memory was gone. Patterns he once reached for automatically now required conscious effort.

This isn’t an isolated story. One developer reported a 70% productivity drop during AI tool outages. Seventy percent. That’s not a tool—that’s a dependency.

And it’s not just individual skills. The collective knowledge that comes from debugging, from tracing through code, from truly understanding your system—that’s eroding too. We’re building on foundations we don’t understand, maintained by intelligence we can’t question.

The mental load shift is real, but it’s misunderstood. Yes, AI reduces the effort of writing code. But it increases the effort of reviewing code. Context-switching between prompts. Orchestrating multiple parallel tasks. The work doesn’t disappear. It just becomes more diffuse and, honestly, more exhausting.

We’re trading deep focus for shallow multitasking. Trading mastery for throughput. And we might not notice what we’ve lost until we need it.

The Other Side

Look—I’d be lying if I said these tools were purely harmful. They’re not. The benefits are real.

The biggest gift is eliminating starter’s block. That blank file paralysis. The cursor blinking at you. The overwhelming question of “where do I even begin?” AI just… dissolves it. You describe what you want and have something to react to in seconds.

For newcomers, this is huge. Y Combinator’s Spring 2025 batch had 25% of companies with codebases that were 95%+ AI-generated. People who couldn’t code last year are building full-stack apps by describing “vibes.” The barrier to entry has basically collapsed.

And even for experienced developers, there’s something to be said for staying in flow. When the AI removes the friction of syntax and boilerplate, you can stay in the problem-solving headspace longer. You’re not yanked out of your creative zone to remember webpack config syntax.

These benefits are real. They matter. But they don’t erase the risks.

Living With It

I’m not going to tell you to quit AI coding tools. I haven’t quit them myself. The genie’s not going back in the bottle.

But I am going to tell you to pay attention.

Notice when you’re in the loop. When you’re typing “just one more” for the fifth time. When you’re regenerating code you already know works. When you’re chasing a better answer instead of accepting a good one.

Notice what you’re not doing. When was the last time you debugged without asking the AI first? When did you last trace through a stack trace line by line? When did you last understand, truly understand, every piece of code you shipped?

The tools aren’t the problem. The unconsciousness is. The slot machine only has power over you if you don’t see the mechanism.

There’s a reason World of Warcraft doesn’t show you how many hours you’ve played this session. There’s a reason the AI always has another suggestion. The question isn’t whether to use these tools. It’s whether you’re using them, or they’re using you.

Close the laptop sometimes. Write a function by hand. Feel the friction. Remember what you know.

The machine will still be there tomorrow.