Are You a Programmer or Someone Who Programs?

Are You a Programmer or Someone Who Programs?

There is a question I have been asking myself lately. It sounds like a trick. Like a riddle. Like something designed to sound deep without actually meaning anything.

But it is not a trick. And it matters more than I expected.

Are you a programmer? Or are you someone who programs?

At first, these sound like the same thing. Programming is what programmers do. Someone who programs is a programmer. Same words. Same meaning.

But I have come to see a difference. A difference in identity. In relationship to the work. In what happens when the work gets hard. In what happens when the work goes away.

Let me explain what I mean.

The Identity Trap

I spent years thinking of myself as a programmer. Not just someone who writes code. A programmer. Like it was a fixed part of who I am. Like it was written into my bones.

This felt good when things were going well.

When I solved a hard problem, my identity was confirmed. When I shipped a feature, I was being a programmer. When people asked what I did, I had a clean answer.

But this identity became a trap when things went wrong.

When I could not solve a problem, it was not just frustrating. It threatened who I was. A programmer who cannot solve problems? That does not compute. The identity made failure feel like a crisis of self.

When I struggled with a new language, it was not just difficult. It felt like proof that I was not a real programmer. Real programmers can learn anything. Right?

The identity gave me something to hold onto. But it also gave me something to lose.

The Person Who Programs

Someone who programs has a different relationship to the work.

They program. It is something they do. It is not everything they are.

When they cannot solve a problem, they are frustrated. But their identity is not threatened. They are a person who is currently stuck. Not a failed programmer.

When they struggle with a new language, they are uncomfortable. But they do not question whether they belong. They are a person learning something new.

The difference is subtle. But it changes everything about how you handle difficulty, failure, and change.

The Programmer Someone Who Programs
“I am a programmer” “I write code”
Identity is fixed Activity is chosen
Failure threatens who I am Failure is a problem to solve
Struggling means I am not real Struggling means I am learning
Losing the ability would destroy me Losing the ability would be sad, but I would still be me

What Happens When the Identity Is Tested

I have watched colleagues lose their jobs. Layoffs. Project cancellals. Company closures.

The ones who identified as programmers struggled more. Not just with finding new work. With their sense of self. If they were not programming, who were they? The question had no answer.

The ones who saw themselves as people who program handled it differently. They were sad. They were stressed. But their identity did not crumble. They were still themselves. They just were not programming at the moment.

I have also watched people age in this industry.

The ones who tied their identity to being programmers struggled as they got older. The industry values youth in ways that are not always fair. Feeling like a programmer when the world tells you that programmers are young is painful.

The ones who saw themselves as people who program just kept programming. Age did not threaten their identity because their identity was not tied to being a programmer. It was tied to being themselves. Programming was just something they did.

The Question That Reveals the Difference

Ask yourself this question. Be honest.

If you could never program again, would you still know who you are?

If the answer is no, your identity is too tied to programming. You have made programming not just something you do, but something you are. That is dangerous. Because programming can be taken away. Injury. Illness. Industry change. Burnout. Many things can take programming away.

If the answer is yes, you have a healthier relationship. Programming is important to you. You love it. But it is not the foundation of your identity. You are a person first. A person who programs second.

I am not saying you should not love programming. I love programming. I hope to keep programming for decades.

But I am trying to love it as an activity. Not as an identity. Because activities can change. Identities should not have to.

How the Identity Forms

I understand why the identity forms. I fell into it myself.

When you spend most of your waking hours doing something, it starts to feel like who you are.

When people ask what you do, you say “I am a programmer.” The language itself encourages the identity. I am. Not I do. I am.

When your work requires constant learning, it becomes part of your self-concept. You are the person who knows things. Who solves problems. Who builds things.

When your work pays well and earns respect, it feels good to claim that identity. Programmer feels like a title. Like something to be proud of.

All of this makes sense. None of it is wrong.

But it comes with risks. Risks I did not see until I felt them.

What I Lost and Found

There was a period when I could not program much. Health issues. Long story. But for a few months, I could not do the thing I thought defined me.

I felt lost.

Not because I missed programming. I did miss it. But the lost feeling was deeper. I did not know who I was without it. The activity had become my identity. When the activity stopped, the identity had nothing to stand on.

That period was hard. But it taught me something valuable.

I had to find out who I was underneath. Not the programmer. Not the problem solver. Not the builder. Just me.

It took time. It was uncomfortable. But I found that I was still someone. Someone with relationships. Someone with other interests. Someone who could be valuable without writing a single line of code.

I still love programming. I still do it every day. But I am no longer a programmer. I am a person who programs. The difference has made me happier. And more resilient.

The Pressure to Be “Real”

The programming community puts pressure on people to adopt the identity.

Real programmers do X. Real programmers know Y. Real programmers would never use Z.

I have heard these statements my whole career. They are everywhere. In blog posts. In comments. In conversations. They create a club. And they make you feel like you are either in the club or you are not.

This pressure pushes people toward the identity. You want to be real. So you adopt the identity. You start thinking of yourself as a programmer. You start measuring yourself against the imaginary standards of what a real programmer should be.

It is exhausting. And it is unnecessary.

There is no such thing as a real programmer. There are only people who program. Some do it more. Some do it less. Some do it in certain ways. Some do it in other ways. All of them are just people. Doing an activity.

The “Real Programmer” Myth The Reality
Real programmers know everything Everyone has knowledge gaps
Real programmers never struggle Everyone struggles
Real programmers use certain tools Tools are just tools
Real programmers are defined by their work People are more than their work

What Changes When You Let Go of the Identity

Letting go of the programmer identity was freeing for me.

I stopped being afraid of not knowing things.
If I am not a programmer, not knowing something is fine. I am just a person who has not learned that yet. I can learn it. Or not. No identity is threatened.

I stopped comparing myself to imaginary standards.
There is no such thing as what a person who programs should know. There is only what I know and what I want to learn. The comparison game lost its power.

I started programming more joyfully.
When programming is just something I do, I can do it for fun. Not just for identity maintenance. Not just to prove I am real. Just because I enjoy it.

I became more resilient to failure.
Failure no longer threatened who I was. It was just a sign that I had tried something hard. That is all. No identity crisis required.

The Question for You

I cannot answer this question for you. Only you can.

Are you a programmer? Or are you someone who programs?

Look at your reactions to difficulty. To failure. To not knowing something. To the idea of not being able to program anymore.

Look at how you talk about yourself. Do you say “I am a programmer” with the weight of identity behind it? Or do you say “I write code” like someone describing a hobby or a job?

There is no right answer. The identity works for some people. It gives them purpose and motivation. It makes them happy.

But for me, letting go of the identity was the right choice. I am happier as a person who programs than I ever was as a programmer.

Closing Thoughts

I still write code every day. I still love it. I still get better at it. I still care deeply about doing it well.

But I am not a programmer. I am a person who programs.

The difference is small in words. But large in feeling.

When I struggle, I am a person who is struggling. Not a failed programmer.
When I do not know something, I am a person who can learn. Not an imposter.
When I imagine a future without programming, I see myself. Still here. Still valuable. Just doing different things.

Programming is something I do. It is not who I am.

That distinction has made me freer. More resilient. More joyful. And, strangely, a better programmer. Or rather, a better person who programs.

If the identity works for you, keep it. No judgment. But if you have felt the weight of it. The pressure. The fear. The fragility.

Consider letting it go.

You are not a programmer. You are a person. Who programs. For now. And that is enough.

Leave a Comment