I have been thinking about the dopamine hits we get from troubleshooting, debugging and getting programmes just right. We don’t get paid for this, so it features much less in the conversation about why people do this work.
Why a lot of us got here
A lot of people, especially millennials who came to tech from working on things on their own, got here because of the sense of achievement that tech gave us. We managed to get things working. That dopamine hit, that sense of accomplishment, of getting things done, of having control over all aspects of it.
It was our responsibility, our doing, that determined whether the thing worked or not. There were no external influences. It was solely our skill, knowledge and ability that decided whether we got the thing working. And we derived our happiness from that. We derived our happiness from a job well done.
There were extrinsic motivators for sure. It paid well. It’s a good job. We got to work with smart people. But ultimately, I think the thing that clinched the deal was that we got a nice little dopamine hit whenever we managed to get the thing done, whatever the thing was: writing a program, troubleshooting a system, fixing a bug.
The loop we lived in
To understand this, you have to understand the psychology of software development, at least as we practiced it before the advent of LLMs and agentic AI.
The loop went like this. You were faced with a problem, and then you went on a bit of a journey to explore and understand what exactly the problem was. You tried to nail it down, work out how to get the thing done, and do some research on prior art. You got your mind ready and got all the information in place. You used whatever note-taking system or knowledge base you had to organise your thoughts. You got your ducks in a row.
It was all the prep work. This is akin to any artisan getting the raw materials ready, getting their tools ready and making a plan, before starting the execution.
Then you started attacking the problem. You implemented a little bit of the solution and tested it out. You wrote a unit test, you wrote an integration test, you made it pass, and then you did it over and over again until you got to the place where you wanted to be, until you were satisfied with it.
Flow was the holy grail
You got into the flow. The flow state was the holy grail, it was what we were chasing. How long you could stay in the flow was the mark of how good you were as a programmer. That was the achievement we were all chasing, and that was the dopamine hit. When you got out of the flow, it didn’t matter how much time had passed. If you got there, that day felt productive.
Joel Spolsky talks about this in one of his blogs, Where do These People Get Their (Unoriginal) Ideas?
It was not an end goal by itself, but it mattered a lot to who we were. It was tied to our identity. We made knowing jokes about it. We talked about how to get better techniques and tools for achieving the flow state. It was almost a goal in itself. It didn’t matter to the business, but for the individual it mattered a lot. For your own satisfaction, it mattered a lot.
What LLMs and agentic AI change
With LLMs, that is going away. With agentic AI and whatnot, there’s your skill atrophy and all that. That’s fine to worry about, and it needs to be a concern we talk about. But the conversation about what losing this intrinsic motivator will do to people seems to get buried under the mountain of other things we’re talking about.
And that incentive structure going away is a fundamental change to how we operate. What sort of incentive structure is in place for us now? How do you explain to the newcomers, the new software engineers, how this works? And what do we replace it with?
What we have instead is short interactions with an agentic AI, followed by long spells of reviewing the system and the code. The problem with the review phase is that you’re not producing anything. You’re not generating, so there’s no sense of accomplishment. It’s a chore, a drudge that you have to go through. Even though it’s something big, something substantial, there’s no accomplishment at the end of it.
The questions I keep coming back to
I wonder how this is going to go for people.
- How would people derive satisfaction from doing this work?
- Would their job satisfaction be lower?
- I’ve always felt we had a unique position, where we enjoyed the work we do a lot. Would this become menial, trudging work, like other sorts of admin work?
- If that is the case, how would this field even attract new people?
- What is going to be our incentive? Money can only motivate people so much, as research has shown.
I don’t know what’s going to happen, but it’s fascinating to think about.
Photo by Alejandro Hikari on Unsplash