

I Don't Enjoy Coding All the Time—and That's Normal
Quiet expectations vs. messy reality: maintenance, vibe coding, and why the hardest parts of the job are often the least fun—and still the ones that matter.
There's this quiet expectation in tech that if you're a developer, you should enjoy coding all the time.
That you wake up excited to write code. That you build side projects for fun. That you want to spend hours debugging something just to get it right.
I used to believe that too.
But the longer I've been doing this, the more I've realized something simple: I don't enjoy coding all the time. And that's not a problem.
The part no one talks about
A lot of real development work doesn't feel exciting.
It looks like:
- reading logs for hours
- tracing where data broke
- fixing something that used to work yesterday
- rewriting parts you already wrote before
There are days where coding feels less like “building” and more like untangling.
And if you're working on real systems—automation pipelines, scraping flows, reporting tools—it's even more obvious.
You're not always creating something new. Most of the time, you're maintaining something that already exists.
Where AI changed the feeling of coding
Tools like GitHub Copilot or Cursor made coding feel different. Faster. Smoother. Sometimes even… easier.
There are moments now where you can just describe what you want, and code appears. It's tempting to just follow that flow—to keep accepting suggestions, keep generating code, and stay in that “momentum.”
People call this vibe coding.
Where you're not deeply thinking through every line—you're guiding the system and letting it fill the gaps.
And honestly, sometimes it works.
But here's the part that doesn't get said enough
Vibe coding is enjoyable. But it's not always satisfying.
There's a difference.
Enjoyment comes from speed and ease. Satisfaction comes from understanding and control.
When everything works, vibe coding feels efficient. When something breaks, it feels… shallow.
You realize quickly:
- you don't fully know why something works
- debugging becomes slower, not faster
- small issues take longer because context is missing
And that's where the illusion breaks.
Why I don't chase enjoyment anymore
I used to think enjoying coding meant I was doing it right.
Now I see it differently.
Some of the most valuable work I've done didn't feel enjoyable at all.
It felt:
- repetitive
- frustrating
- slow
But it was also:
- necessary
- stabilizing
- impactful
Fixing a fragile pipeline. Optimizing a script that keeps failing. Making something reliable instead of just “working.”
Those aren't exciting tasks—but they matter more than writing new code from scratch.
What AI is actually good at
AI tools are great at:
- reducing boilerplate
- speeding up iteration
- giving you a starting point
They make coding more accessible and often more pleasant.
But they don't remove the parts that feel hard:
- understanding the problem
- handling edge cases
- making systems reliable
- owning the outcome
And those are the parts that usually aren't enjoyable.
What I've learned
Not enjoying coding all the time doesn't mean you're losing interest. It usually means you're working on the parts that actually matter.
The deeper you go into real systems, the less it feels like constant creation—and the more it feels like responsibility. And responsibility isn't always fun.
Closing thought
I still enjoy coding—but not in the way I used to.
It's not about always being in the flow. It's not about always building something new.
Sometimes it's about:
- staying with a problem longer than you want to
- understanding something deeper than necessary
- fixing something no one else notices
AI can make coding easier. It can even make it more enjoyable. But it doesn't change this:
The parts of coding that matter most are often the parts you won't enjoy. And that's normal.