i just added an Atom feed. or at least i think i did!
i originally added an RSS feed because one of the three people who might read my stuff requested it, and i figured sure, why not. i've now added an Atom feed because i saw it mentioned somewhere as a good thing to do if you wanted to publish material using Gemini, which has idly interested me since i learned about it. i don't know if i'll ever get around to that, but the feed is a fine start and worthwhile (by this site's modest standards) on its own.
in late 2026, the "modern" way to implement any feature X is to type "copilot implement X" and walk away. when you come back it will be done, maybe, and you'll feel like an Accomplished Software Engineer. if it's not done, you'll smack yourself on the forehead for being so naive, type "copilot implement X make no mistakes," and repeat. as exciting as that workflow is, i decided to do it "by hand," so to speak.
first i looked up the Atom RFC. i read through the example snippets, started to develop some confidence, and then quickly fell into a morass of technical language and mind-numbing formal specification.
then i remembered: the W3C feed validator! for whatever reason, i recall learning about the World Wide Web Consortium during my high school days of hacking crappy websites together, and i figured a feed that validated according to them was good enough for the three subscribers i might end up getting. so i quickly hacked up an extension to the static site generator i use to emit something that approximately resembled the output of the Atom RFC, ran its output through the validator, fixed the problems that it reported, and repeated until there weren't any. i learned something about Atom without having to digest all the intricacies of a dense RFC, and i didn't have to delegate my cognition to a goddamn chatbot. the resulting F# code is about fifty lines, which i will not share here because it embarrasses me. maybe later i'll clean it up and post it. (my rationale for "running ugly" is that my biggest challenge with this site is inertia, and if i don't get something out, i won't get anything out.)
implementing an Atom feed surfaced some problems with the existing RSS feed that i might go back and fix later. the first is that i've been using post URLs as entry IDs, which is a bad idea, because if you ever switch domains or re-arrange your site, all your readers get a huge dump of "new" posts that's just all your existing posts, again. others have learned this problem the hard way (which i neatly avoided by having no readers). i did what they ended up doing and used tag URIs for my Atom feed, following the specific pattern described by this archived blog post i found.
(right now, my Atom entry IDs and my RSS entry IDs don't match, which is lame. i'll probably fix it by retroactively changing the RSS ids. sorry, single reader o' mine.)
implementing an Atom feed also forced me to implement its mandatory <updated> tag, which is kinda nice. sometimes i go back to posts and substantively change them (for example, as the saga of bradley johnson's memorialization kept progressing), and now i can start recording when that happened. i'm putting HTML into the <summary> section of each entry, which some commentators seem to sneer about, but W3C is happy, so i don't care.
so, uh, yeah, there's Atom now. if you find something wrong with the feed let me know.