This site is built using Jekyll, and one of Jekyll’s (and other SSGs I’m sure) most powerful features is Collections - used to group related content together. When I was building the Activity log page recently, I was looking for ways to pull in content from around the site to feature in that timeline. I already had posts, notes and logs in their respective collections but changes and podcasts existed in singular page files, making it more difficult to pull individual records out without using some wacky JS/jQuery. It was then I had the idea to convert these monolithic pages, breaking them out into more atomic collection items. So that’s what I did!

For changes, I’ve decided to go with a “change collection item” being 1 week in length, with a file for each week. For podcasts, each podcast has its own record file and for now those files simply redirect to the Podbean permalink page where it is hosted. But! since I have the full-text shownotes in each file, I can programmatically loop through each podcast collection item and populate the main Podcast page with a bulleted list of show descriptions, much like I’ve always had, but now it is no longer statically typed. Woo! Similarly for changes, the Changelog still has some legacy changes listed in monolithic format (i.e. a gigantic list of bulleted sections), but for all changes in 2024+, they are programatically pulled in from the changes collection and populated much the same way they’ve always been right inside the main Changelog page. Nice!

My takeaway here is to consider in the future (and now looking back) what repeated/similar content would make sense to exist as a collection rather than a single, giant file. I haven’t pored through everything in my site to see if there’s any worthy candidates for additional conversion yet but eventually I will. Collections give you the ability to do multiple things with the same set of data. As I’ve seen with both changes & podcasts, I can now populate both their landing pages as well as the Activity feed with minimal additional effort.