I've been trying to figure out why agentic coding feels so different from every other tool I've used. I think this psychological theory has the answer.
Berlyne's curve describes an inverted U-curve of engagement: too little stimulation and you're bored, too much and you're anxious. Peak enjoyment and performance lives at the top of the curve. And agentic coding puts you there.
Last-gen tools like an IDE, design canvas, or a spreadsheet, are obedient. They do exactly what you say. They're useful, but they don't surprise you, since output is a direct function of your input. You stay on the flat, competent-but-understimulated side of Berlyne's curve.
Agentic coding is different because the tool thinks. It interprets, infers, and makes decisions. And a tool with agency is unpredictable in a bounded way, which is precisely what Berlyne says drives peak "arousal": novelty, surprise, and complexity within a frame you can still navigate.
Two things keep you at the top of the curve:
1. The flywheel
You prompt, anticipate, receive, and refine. The loop takes seconds, not hours. And because you don't know exactly what's coming back, each cycle carries a small charge of excitement. The gap between what you have and what you want shrinks with every iteration. Closing that gap is what keeps the flywheel spinning.
2. Ambiguity driven delight
You don't specify every detail. The model fills gaps with its own judgment, and sometimes those decisions are better than what you would have chosen. That's delight. The looseness of the prompt is an engagement mechanism.
For instance yesterday, I asked Claude to add a set of custom themes to my app. I didn't spec out the palettes, didn't name them, didn't say where to put the switcher. Nevertheless, Claude mapped my existing tokens to new theme tokens, made tasteful color choices, came up with names I wouldn't have thought of, and wired a switcher into my settings page using my components.
This is the crux of the flywheel, and the delight derived from ambiguity. I give the model something vague. It gives me something specific to react to. I prompt some refinement. The flywheel turns. Each delightful surprise makes you more willing and excited to leave room for the next one.
So agentic coding isn't just about productivity. It's about engagement. And that's why I can't stop building.