I'm making a tagging system for this site

My website is evolving

April 1, 2021


Websites naturally evolve as they age, most of the time this is a good thing, and while I'm not making any major changes I am adding something that should make things easier to find. Up until I changed the layout of my homepage last month the only easy way to find different content here was from my RSS feed or the page that has all my posts listed. Naturally both of these things listed things chronologically, which is fine if there is not that much content and it is not very diverse. That system worked for a time but that time has passed, I've wrote and published nearly 100 different articles on this site on a fairly broad number of topics. If you are more interested in the stuff I write about health then you probably wouldn't be that interested in a tutorial on enabling colored text in a simple terminal application. So I've decided that I'm going to add a page where things are sorted by topic.

Despite the fact that I'm calling this a tagging system I am not going to be retroactively adding a bunch of links to existing content, that would be quite tedious and take up a bunch of time that I'd rather spend doing something interesting, I also won't be adding that sort of a thing to existing content since I don't really like that sort of a thing anyways. Instead I'm going to have a single page with everything sorted in one place, here is a prototype of that page I'll be putting all of the tag data in a collection of JSON files which that page will all be displayed on that page. That prototype page currently uses JavaScript to do all that, and while that is a fairly legitimate use of JavaScript I do eventually plan to make a version of it that does not use it at all.

Of course putting all that data into various JSON files could also be quite tedious, so I've written a script to automate that Currently the script is functional but incomplete, as it only works interactively while it would be most convenient if I could do everything on the command line. I'll add that functionality soon, I just have to do some other things before I teach myself how to do that in Python.

This probably raises the question in a few of you as to why I don't just find some existing piece of software that can do all of this for me. I am aware that a variety of static site generators exist that could do this but I chose not to use them. Right now I'm an unemployed programmer, and much like a professional homeowner needs to give himself a bunch of projects to keep himself busy and happy, an unemployed programmer needs to give himself programs to write so that he keeps himself thinking like a programmer and is constantly reminded why he chose his career path that has yet to give him work. And another more simple answer to why I like to write my own software is the fact that I like building things and making things my own. I spent a lot of time playing with LEGOs as a kid, I played a lot of Minecraft in high school, I work on my own car, I come up with my own recipes so I went into computer science so that I could build more things. When we find things that we like doing we should give ourselves as many excuses as possible to do those things.