This is Version 2 of my personal site

This is the second version of my personal site. I've had this vision for a personal website as well as this domain for a few years now, but only barely have I been active. I'd like to talk about how I pared down the setup for this site significantly compared to the first go-around.

When I first decided to make a site, I was still in my CS program in college, and I wanted vaguely to tailor the web dev skills I developed to the "market." I used Nuxt, because it was a static site generator using Vue, which I liked and figured I could specialize in.

Well, Nuxt and other tools like it are pretty overkill for the intentions I had with my website. From the beginning all I really wanted were

  • A blog section where I could generate blog pages based on Markdown
  • A gallery section where I could generate gallery pages based on Markdown
  • Being able to generate most of the "content" part of the site using Markdown pages
  • Some kind of functionality that would let me reuse HTML code bc I was not about to copy paste certain structures that I liked all over the HTML files, and not be able to instanly change all copies of those structures when I changed my mind about them

When you use something like Nuxt, you need to set up a whole NodeJS environment and maintain all kinds of dependencies to do so, and I had made the decision to start out with Nuxt/Vue 2, so after a while of neglecting to come back to the website to upgrade it (waffling fr) the whole setup was deprecated and I couldn't even check how my site looked to work on it. I didn't know there were simpler options for reusable HTML (I think that students of job-focused colleges like the one I went to hype up the 'trendiest' new tools to use vs the older ones that are just fine), but I knew something was off with the work I was putting in for what little I wanted, so I decided it just wasn't really worth the effort to fix it up.

My change in attitude coincided with the slow souring of my view of the tech industry, especially as they pushed NFTs, and then AI at the expense of artists, which I had a pretty personal stake in. Things being said on the "small web" part of the internet I was exploring also clued me into the fact that I should probably avoid Javascript when I don't need it. Nuxt is, of course, married to Javascript. Also, it generates extremely fucking ugly static HTML files that consist of a single Long line and many imports of Vue and other JS libraries. After deciding I wasn't going to prepare my skills for the tech industry sphere, I freed myself to go as minimal as I wanted, as was my growing inclination.

I found out about how they had already been doing a similar thing to what Javascript component frameworks were doing with templating languages, which were already a part of a lot of the static site generators I had come across. I also found out that there were some really minimal single file static site generators that people had cooked up. I figured that a generator consisting of just one file with zero dependencies would be ideal, since I could just put it into my website folder and bring it around wherever it went, and I wouldn't have to ever update from that version of the generator ever if I didn't want to.

Then I found Zola on the 32-bit Cafe's "big resources list" forum post (I'm just a lurker but Y'ALL ARE DOING GOD'S WORK!!! thank u). Single binary file, no dependencies, very simple, all the functionality I would need for my small scope, while just generating HTML/CSS and no Javascript. It's taken quite a long time to get this new site off the ground from when I started it like a year ago because i have been waffling again, but I've been having a good experience so far!

I think it is a valuable lesson to learn that simpler is often better in many use cases, and it takes a solid sense of scope to understand what option will be the simplest for you. I think that my needs are even more complex than some. In which case, it is probably fine working mostly directly with the HTML if you don't need to enforce visual/structural cohesion and only plan for a handful of pages, or using something like Zonelets. My problem was that I thought that the tech space I was being exposed to in my education was showing me the simplest options. I think learning the importance of that level of scrutiny has made me a better "developer" even at just the hobbyist level.