Why I Still Code at 2 AM


There’s a specific silence at 2 AM. The notifications have stopped. Nobody needs anything. It’s just me, the cursor, and a problem I can’t put down.

I’ve been writing code for years now, and people sometimes ask if I’m worried about burning out. The honest answer is that the late nights aren’t the thing that burns you out. What burns you out is shipping things you don’t believe in, drowning in process, never seeing the thing you built actually run.

The 2 AM sessions are the opposite of that. They’re the reward.

The moment it clicked

I remember the exact night it happened. I’d been using a clunky little tool every single day and complaining about it. Then it hit me: I could just… build a better one. Nobody was going to stop me. The compiler didn’t care about my résumé.

I stayed up until the sun came through the window, and by morning I had something rough and ugly that worked. I’d turned an annoyance into a thing that existed in the world. That feeling never got old. Every project since has been a version of chasing it again.

Obsession that compounds

Here’s what I believe: curiosity, pointed at the right things, compounds like interest.

  • Read one function in a library you depend on. Tomorrow read two.
  • Rewrite one tool you use, badly, just to learn how it works.
  • Follow the rabbit hole when something surprises you, instead of closing the tab.

None of these pay off the day you do them. All of them pay off enormously over years. The developers I admire most aren’t the ones who grind the hardest — they’re the ones who never stopped being delighted by how things work.

Protect the fire

The one caveat: the fire is precious, so protect it. Don’t let anyone turn the thing you love into a thing you resent. Say no to the work that drains you so you have something left for the work that lights you up.

It’s 2 AM as I write this. The tests are green. I’m going to push it and grin like an idiot.

That’s the whole job, honestly. That’s why I do it.