Paying Off [Some Tech] Debt

A long time coming after moving a third time

This is actually the third iteration of my personal site. The very first one deployed here to jimjiang.com was actually literally a college assignment just to get something deployed to the wider web on a static bucket. At the time, it happened to just be deployed to GitHub Pages. Back then it was a mix of Jekyll and just ahnd written html/css for some fun stuff.

Obviously, a college portfolio site is not meant to scale or be used. It lacks all the QoL for something for any static site these days. And your boy definitely no longer has the time to hand-write CSS/JS/HTML anymore. Could have just moved at that time to something boring like Squarespace or any other of the myriad of website builder vendors. But that felt like an attack on my soul. And even WordPress as a CMS felt excessive for a static site. And don’t even get me started about PHP.

The first migration

The prior version of this website actually lasted for a good 5 years. It was also served from a static site generator, Hugo. Back in 2021 hugo was the flavor of the month, and it actually let me port in a lot of my “edits” or “customizations”. So it let me use a static site generator to actually maintain the content layout from just JSON/MD content files.

It actually ran well, and all that process needed was just to build the static files and commit that to a GitHub repo and let that just serve via GitHub Pages.

It was a super minimal website ux design at the time, just to put my voice front and center. But now that minimalism is a bundle of debt. Not a fault of Hugo, but the cost to move to a new theme or template to have something more expressive.

Hugo walked so that this website can now fly.

To the stars with Astro

Now in late 2026, Astro is the flavor of the month as the MD/JSON to static site generator. The lift was not entirely painless. But for someone in code every day, it was just a fun side project. But also unlocks (or adds mountains of) access to JS packages via npm.

I was never a Go developer, not even Kotlin or Java. My preference is actually JavaScript/TypeScript + Python + C++. So moving “back” to the JS ecosystem for my personal website was a small itch I had.

But with agentic tools like ChatGPT and Claude, it made the bulk migration much less painful. With the grunt work fed to AI models to do the sheer pivot of content, which was already MD/JSON based. But just needed me to actually spend much less debugging time but a lot more crafting time. That long tail of time can be a dread or slog but for me here was an enjoyable experience to just fix all the tiny nits where my content hit a wall with the template’s baked-in CSS and layouts.

More to come

Just moving to an ecosystem that I am more closely in tune with didn’t just reinvigorate a spark. It also lets me make bigger bets with AI and lets me being able to tell when AI has gone off the rails. It’s a chip of debt off my mind, and now we have a brand new site!