Skip to content

latest updates

site management & compromises

I was not anticipating completely rewriting most of the site, ripping out jekyll, and changing host providers... but here we are 🙃.

It began about a week ago, when I had finally decided it was time to try and have some kind of in-site editor for posts/songs/etc. While the previous workflow of adding a new md file wasn't really too painful, it was kind of annoying that it meant I have to be in VSCode, I had to be careful about not committing other things while in progress, and I needed file names in sync with certain meta data, and it meant that site data had to be committed to source, which, if I want to make the site public in the future, is not something I was really keen on (especially images, which to be fair should always have been not in source, but I didn't have a separate deploy and it was just convenient at the time). However, keeping the site static and fast was a priority, so a DB was sort of out of the question, until I came across the Cloudflare's D1 edge-databases and R2 data stores, which promised lightning fast data access calls. And after much pain getting something into Cloudflare to begin with, I can confirm, lightning fast.

But this posed a problem, as my site was being built with jekyll and was figuring out paging based on the actual local data, but this would no longer be possible in the same way since we were building based on DB rows, especially since I also wanted to introduce the concept of draft status items- items in the data store that are viewable by me when (new!) logged in, edited and previewable on site (on any device!). Jekyll was already struggling to deal with this in the way I wanted initially, where draft items didn't even leak into the DOM in any way, as having two different home pages for example that could look wildly different for most users vs. me in one was a very square peg round hole kind of thing. And all the brainstorming I did left me unsatisfied one way or another- exclude drafts and only have the posts be previewable in the editor wasn't quite it, and to keep editor pages unreachable meant the pages had to be rendered via js, which under the old deployment scheme was very slow- just unsatisfactory all around. I considered turning it into a SPA, but I didn't quite want that either.

In order to take advantage of Cloudflare's infrastructure then, I had to, well, migrate to Cloudflare, which was in and of itself quite a bit of work (but free!), and necessitated huge rework as mentioned previously for these dynamic pages to spring into being. All of the infrastructure jekyll demanded was now gone (you shall not be missed paginate-v2), and all md/html files were moved around/converted to be picked up by the appropriate javascript to create the pages needed on the fly.

All of this so I could live-update by adding/editing posts, songs, games, etc. and not deal with the long delay of a github push and redeploy on Digital Ocean. This means now that redploys only happen on more core site changes rather than every content update, which I think I prefer quite a bit better, as it was just sort of awkward otherwise. Cloudflare seems more robust in certain ways as well, so I'm keen to continue exploring what I can do with it. I'm going to let it sit for a while and see how much I actually do enjoy the new editing experience (and how much I hate working with all the new js when I'm adding more substantive things), so we'll see how things go!

That's all for now- until next time!

fancier images

Among the minor things that I think enhance a website are images and how they're handled. Well, images in general obviously enhance a page, but it's the surrounding bits I'd been a bit concerned about. I have been using embedded images mainly in blog posts and in song/game pages, and while you could always right click to open in a new tab, it isn't a great experience, and is possibly annoying on mobile (which always finds its way into design decisions). And speaking of mobile, because of the area limitation many images would be way too small anyway, so something was needed. ...

read more...

woes of navigation

I would like to begin by stating that I am not a UX designer. I did technically take a very phoned in UI design course in college, but it was only dubiously useful and mostly boiled down to 'talk with the client.' Which, all things considered is a really good piece of advice, but also is something that clearly a lot of large tech companies seem to stomp all over in favor of their own ideas of streamlined, or worse, maximizing dark patterns. Fortunately on this website, the stakes are a lot lower, and it mostly comes down to my own preference in combination with the degree to which I want to go. Starting from a fairly basic starting layout and being a static website with limited javascript at the moment means larger changes are simpler (except when confusing css is involved), but how exactly I achieve my goals can be a bit constrained. Here, we'll be talking a bit about what I call the horizontal navigation bar....

read more...