Blog
Thoughts on code, learning, and building things.
Building a GitHub Heatmap Into My CV (And the Bugs That Nearly Broke It)
I wanted my CV to feel a bit more alive, so I pulled real GitHub activity data into the header background. Simple idea, two nasty bugs, one pretty cool result.
DragonMorphs Is Live!
DragonMorphs is now live. A clean, purpose-built website for a bearded dragon breeder featuring a public storefront, detailed animal listings with lineage, and a simple admin system to manage everything from hatch to sold.
Building FormBouncer, A Layered Spam Filter for Contact Forms
I was getting hammered with form spam on my own site so I built an API to stop it. Here's what I ended up with: a four-layer scoring pipeline in Spring Boot with an optional machine learning micro service bolted on the side.
DNS Records Are A Pain (And Why Nameservers Matter)
Spent two hours setting up a subdomain. Should have taken five minutes. The problem? I was editing DNS records in Hetzner while my domain was asking IONOS for answers. Turns out nameservers matter.
Upgrading the Markdown Parser (Because Regex is a Bad Idea)
Ten minutes after publishing my first post, I realized my markdown parser was terrible. Regex for structured text? Bad idea. Here's how I fixed it with Parsedown and what features actually work now.
Building This Blog (And the Chaos That Came With It)
Eight hours, one evening, too much caffeine. Built a complete blog system with Laravel, then redesigned it, broke the sidebar, fixed it, made it mobile responsive, and added an admin panel. Here's what actually happened.