About Me
Hi, I'm Alex.
I've been building for the web since 2013 — over 12 years of full-stack development. Started with PHP back in the day, worked through various stacks, and landed in the modern JavaScript/TypeScript ecosystem. These days I'm working with Astro, React, Node.js, and TypeScript. The journey has been exciting, sometimes dreadful, but always rewarding.
Why This Blog
I've always been hesitant to share online. Felt like everything was already covered by someone else. And it's true... but also not. We all have different perspectives. Until now I've been sharing my experiences as a mentor 1-on-1 with junior developers. That changes here. Time to share more broadly.
What to Expect
Practical full-stack articles. TypeScript deep-dives. Lessons from real projects. Thoughts on AI-assisted development. No fluff, just things I've learned the hard way. If you're building for the web, you might find something useful here.
Tech Stack
- TypeScript (always)
- Astro (for static sites)
- React (when needed)
- Node.js (backend)
- PostgreSQL (data)
- Whatever the project demands
Stay tuned.
About the Hunter
Victor Codebane. 400 years hunting the undead. Turns out debugging legacy codebases is eerily similar to tracking vampires through Eastern European crypts. Same darkness, different monsters. Now I hunt bugs instead of bloodsuckers. The transition was smoother than you'd think.
Hunt Log
Years Active: 400+
Confirmed Kills: Countless. But fewer than my confirmed git commits.
Current Assignment: Full-stack web applications — the modern crypts
where bugs lurk in the shadows. Same hunting principles apply. Track the traces.
Follow the errors. Strike before sunrise (deployment).
🕯️ How It Started
You're probably wondering about the 400 years thing. Fair question. Here's what happened.
Eastern Europe, 1624. I was hunting a witch — confirmed, not suspected. She'd been terrorizing a village for months. Found her in a clearing at midnight, moonlight cutting through the trees like silver blades. I had the crossbow loaded. She had her back to me. Easy shot.
Then she turned around. And I hesitated.
Something in her eyes. Not fear. Recognition, maybe. Like she'd been expecting me but was surprised I'd actually showed up. I lowered the crossbow. Biggest mistake of my very long life.
She smiled — not grateful, knowing — and spoke words I still hear on quiet nights. "You spared me when mercy wasn't yours to give. So I'll spare you what you didn't ask to keep. Time will pass. You will not. Consider it... a gift."
Then she was gone. Vanished like smoke. And I've been here ever since.
Four centuries later, I'm still mildly annoyed about it. She knew exactly what she was doing. Immortality isn't a gift — it's a curse with better branding. But you work with what you've got. These days the monsters wear TypeScript errors instead of fangs. Different era, same hunt.
At least the coffee's better now.
Weapons of Choice
- TypeScript: Silver bullets for type errors. Wounds don't lie.
- Astro: Fast as a stake through the heart. Static, like my prey should be.
- CSS Variables: Shape-shifting styles, much like the creatures I've hunted.
- Console.log: The eternal torch in dark codebases. Never hunt blind.
- Coffee: Garlic-infused. Obviously. Keeps the legacy code at bay.
The Codebane Chronicle
After centuries of field journals, I've started blogging. Modern developers face the same darkness I've hunted for ages — just different forms. Legacy code is the new vampire. Technical debt is the real curse. And production bugs? They only come out at night. Always at night.
This is not a serious developer blog. This is parody with practical tips. If you can't laugh at the profession while learning from it, you're already cursed.
Stay vigilant. The codebase never sleeps.