#dev 2025-12-24
2025-12-24 UTC
#
Loqi ok, I added "^ appears to be new behavior sometime between 2025-11-12 (ogp desc = caption, no meta keywords) and 2025-12-14" to the "See Also" section of /Instagram https://indieweb.org/wiki/index.php?diff=106998&oldid=106997
#
Loqi ok, I added "^ new behavior for new posts since ~2025-12 only. Posts created before 2025-11-12 do not seem to have meta keywords or an auto-generated og:description (needs further narrowing down)." to the "See Also" section of /Instagram https://indieweb.org/wiki/index.php?diff=106999&oldid=106998
#
gRegor I thought there was an OGP type for "photo" too but maybe not according to the (admittedly old) https://ogp.me/
troojg, [dmitshur], grufwub and sp1ff` joined the channel
#
[aciccarello] I think article and profile are the only ogp types I've seen in the wild
gRegor, [Sophia_wood], Daijo-, Daijo, [Murray], Daijo|, [jeremycherfas], ttybitnik, barnaby, balintm, posixlycorrect, brian434, troojg, [aciccarello]1, thegreekgeek, Waylon_Staff and [tw2113] joined the channel
#
[Al_Abut] I'm glad so many people came out of the woodwork last night about accidentally publishing drafts to feed readers! I was mortified when I realized what happened and that there was no way to unring that bell.
#
[Al_Abut] So what have you all done when the new post was ready to go in its place?
#
[Al_Abut] I want to keep the same slug for a variety of reasons, so it seems like my options are:
#
[Al_Abut] 2) Have roughly the same URLs in the `<link>` and `<guid>` but add a parameter like `?updated=2025-12-24` to the `<guid>`
#
[Al_Abut] If that all looks correct, I'll blog it out as a best practice too, since I didn't see one when searching for answers so far.
#
[Al_Abut] 1) Be ok with triggering a new entry, there's no replacing the old wrong one.
#
[Al_Abut] 3) Set `isPermaLink=“false”` as an attribute in the `<guid>` (even though I'm not 100% sure what that does, just seems like vague hygiene reasons)
#
[artlung] great article about purpose of guid: https://www.rssboard.org/news/217/unique-and-use-rss-guid-like-everybody
#
[schmarty] [Al_Abut] - i'm under the impression many feed formats and readers do support updates. they just don't necessarily tell the user that the content changed. so if someone has already read the old version it will stay marked as read.
troojg joined the channel
#
[schmarty] it sounds like, from a practical standpoint, you want to treat the old entry like an oops and show a new entry to folks. for feed formats with GUIDs, that means you'll want a new GUID.
#
[artlung] also it's worthwhile to know GUID comes from outside rss entirely. https://en.wikipedia.org/wiki/Universally_unique_identifier
ttybitnik joined the channel
#
[Al_Abut] [schmarty] yep, need a new GUID, hence the param spam to trick readers into thinking there's a new one and creating a new entry.
#
[Al_Abut] I should clarify and say that as far as I can tell, there's no _universally-applicable_ way to replace the old entry with a new one, so the fact that some do and others don't isn't worth the risk of republishing with the old GUID. Hence embracing the double entry as a lesser of two evils, if that makes sense?
#
[schmarty] [Al_Abut] the ol' cache-busting query string
#
[Al_Abut] [tantek] & [gRegorLove] no need for draft- prefix as a solution, I have a drafts folder. That's what makes it even more embarrassing, haha. Don't know what I was thinking with breaking my own protocol.
#
[Al_Abut] (also appreciate the all caps AL for anti-a.i. disambiguation, even if it sounds like you're shouting)
#
[Al_Abut] No no, it's a user error - I made the draft in the writing folder, not the drafts folder. Not an Astro error unless I start using Astro as my superhero name to avoid being confused for a chatbot
#
[Al_Abut] …and get confused for a web framework or baseball team instead, whoops
#
[Al_Abut] I deleted the draft post but don't want to change the slug, hence the parameter thing I've been angling for
#
[Al_Abut] Adding “-3-no-way-dude-my-knees-can't-handle-dancing” would change the slug, right?
#
[Al_Abut] [artlung] that article makes sense to me now but holy hell would it have been confusing before I did a deep dive into GUID. I still can't find a single valid practical and common use case for the `isPermaLink` attribute and that's why I kept spinning out about what to do. I figured there must be a reason and I wasn't finding it, until I learned that the URLs in GUID is also mainly a hygiene pattern too because the LINK tag is what does the
#
[Al_Abut] real lifting.
#
[Al_Abut] The GUID could be “banana:mo:mana”
#
[Al_Abut] It's just a unique string
#
[Al_Abut] Right?
vriska joined the channel
#
[Al_Abut] “Probably” is what I kept running into
#
[Al_Abut] Can't find an actual working use case for what it's used for
#
[Al_Abut] Maybe some of the fancy readers that [schmarty] mentioned that know how to dedupe entries? But I would've guessed they use the LINK entry for that.
#
[schmarty] [Al_Abut] unfortunately, you are unlikely to find any certainty in the world of feed readers outside of the ones you test by hand. for what it's worth i think if you can think of a feature that is complicated in any way, feed readers will not do that. 😂
#
[Al_Abut] That's great feedback. Strategies for testing is what I should be asking for, haha
#
[Al_Abut] Like, what do I know how things break or not without 1) installing as many feed readers as possible and 2) publishing a private RSS for testing them all out?
#
[Al_Abut] It's like I'm back in the browser wars
#
[artlung] I love the user-centricity of the question and the lack of *certainty* about how the feed readers behave is a function of the space. Often in software producing data exports of various sorts we *can't* know precisely how the data will be used. Which is why we try to be as descriptive as possible about what the data contains, what kind of values it contains, what data it can and can't contain. What are date formats? How do we know a date is
#
[schmarty] as a developer, i find validators good for really basic stuff like "i have not produced unparseable garbage" and then i test in Monocle's preview, and then i stop worrying abou tit.
#
[schmarty] *about it
#
[schmarty] because, to add on to gRegor's "overkill" comment, discovering and fighting the inconsistencies is a losing battle and makes me sad. 😂
#
[Al_Abut] I mean validators are fun and all but I'm still stuck at the conceptual level of what it's even supposed to be validating
#
[schmarty] is there a particular reason you really want the permalink for this post not to change?
#
[Al_Abut] Like wtf is this jumped up isPermaLink attribute thinking it’s going to do for me when it's riding dirty inside a tag that's apparently just a unique string?!?
#
[schmarty] haha, i get the feeling i'm coming at this from a place of pain and problem-solving but [Al_Abut] is approaching it with curiosity and delight. i will stop Trying to Fix It™ and let you cook! 😂
#
[Al_Abut] Oh, ha!
#
[Al_Abut] [schmarty] Sorry, I thought I was clear earlier that I found a fix (just add parameters to the existing url) and was just looking for reasons why I shouldn’t do it that way because I wasn’t clear what the drawbacks were. And also why I should change the url instead of add parameters
#
[schmarty] [Al_Abut] i definitely misunderstood and thought you were still pondering. params work fine! nice work.
#
[Al_Abut] [schmarty] to wrap up that line of thought on the practical level (and to unleash the rest of the unfettered bikeshedding that I also prodded along, haha) I think that changing the slug itself would have achieved the same effect of making a new post, but I have a photo gallery tied to the old post’s slug and would've risked breaking some other backend machinery about bidirectional links between related posts and galleries
#
[artlung] I *used to* painstakingly add Open Graph data to all my posts and pages. I wanted good metadata. I do like the *intent* but in practice their utility was less than hoped. I have retreated to "I want preview images to show up in social media sometimes" and include *only* that for my practical benefit.
#
[schmarty] [Al_Abut] makes sense! i believe you are correct about the effect and a good reason not to change the permalink!
#
[Al_Abut] And oh hey, speaking of photos, the last approval from attendees rolled in yesterday, so I'm happy to share the draft state of the pics from the last IWCSD event: https://alabut.com/photos/iwcsd2025/
#
[Al_Abut] (behold that fancy beautiful slug that I didn't want to change, haha)
#
[schmarty] artlung: same same. i have some big regrets about how my site attempts to make OG/twitter metadata for social previews and would like to overhaul this to reduce it greatly.
#
[Al_Abut] And just for funsies, if you all want to see how broken the draft post was that went out in bullet list format: https://alabut.com/drafts/iwcsd2025/
#
[schmarty] i have a new commodore 64 ultimate. it emulates dial-up networking with telnet, and there are BBSes with IRC clients and text-based web browsers. i should do an indie reader de-make and continue regressing into retro-computing. 😂
#
[Al_Abut] Thanks dude! I still have the *cringe* feeling of showing my underwear on half-finished stuff but can power through it sometimes.
#
[Al_Abut] And might learn to do more of that if it's actually useful to others, that was really surprising to hear
#
[Al_Abut] [gRegorLove] ooo, does that mean that after I dropped off last night, the cool kids after party had a session on how to surface the microformats feed to social readers and Granary to the legacy RSS ones? I was going to ask if that's even possible, before I switched mine over to the Granary one hopefully sometime this week.
#
gRegor [Al_Abut], not a session, heh. I thought you were there, but maybe not. I just demoed how I set up https://gregorlove.com/stream/feed.atom as a redirect to Granary, which in turn is parsing my h-feed to return Atom
#
[Al_Abut] [artlung] oh cool! Just had another popup idea: practical use cases for microformats. Admittedly a self-serving one where I'd do all the learning and zero explaining if I hosted it.
#
[Al_Abut] Triggered the thought because I don't have a great grasp on rel=“me” rel=“alternate” or really anything at all so far actually other than maybe u-photo
#
[Al_Abut] [gRegorLove] oh yeah, that demo
#
Loqi rel=alternate is a way to indicate that a hyperlink links to an alternate representation of the current page https://indieweb.org/rel-alternate
#
[Al_Abut] Definitely saw that one, just didn't know if there was an automated way to let social readers know they can parse the page directly and skip the granary url
#
[schmarty] [Al_Abut] link RELations as a concept and in practice have a deep and drama-filled history 😄
#
[Al_Abut] [gRegorLove] going to be blunt here - that wiki entry did nothing to clear things up for me
#
[Al_Abut] At least in terms of grokking the use case I was describing?
#
gRegor The rel-alternate there is saying "The Atom alternate version of this page is https://gregorlove.com/stream/feed.atom
#
[artlung] A lot of great the great books about design in the world point out that MOST OF THE BUILT WORLD exists as it does because of such conflicts and decisions. Railroad gauge. Curb cuts. Tire width. Lifeboats per passenger. Everything is the result of practice and experience. Software is the product of human effort.
#
gRegor I didn't test this now but should work in theory: if you went to Feedly and entered https://gregorlove.com/stream/ to subscribe, it should find that Atom feed and subscribe to that. If it finds multilple alternates, it should give you the option which one to subscribe to.
troojg joined the channel
#
Loqi Artemis is a calm web reader developed by capjamesg that updates once a day, has a minimal UI, and is free to use at https://artemis.jamesg.blog https://indieweb.org/Artemis
#
Loqi It looks like we don't have a page for "unicity" yet. Would you like to create it? (Or just say "unicity is ____", a sentence describing the term)
u3ndb5pshbmte, u3yhdkmhrsndg, czmrfxxt6bvm, u2672pjdeolzs, ixj7ynqxdhny and o3sjfushppvn joined the channel
#
gRegor [Al_Abut], https://indieweb.org/File:2025-12-24-Artemis-feed-discovery.png So the first option there is Artemis giving me the option to subscribe directly to my stream page, parsing the h-feed. The second option is the Atom feed it found in the rel-alternate tag on my stream page.
ldabflpwgexw, wpm2rub4jyhq, yf6nhunfpdwc, f6qelqjlhn7u, tnnsm3y3csxf, bhewb3tuxtwe, oxasfjzdclsm, u6s6ntcrsbthi, lnkpyvxrknqb, tttxyrwy4pbt, j7r4s3ncjfg7, iazfc363rlr3 and j52u47ks2esf joined the channel
#
[Al_Abut] [gRegorLove] oh cool, so it looks like I do understand how rel=“alternate” works for a single feed, but is there a way to specify multiple feeds and have the reader pick the one it understands first?
#
[Al_Abut] ok, and then how do readers handle that? give the user a choice? use the first one it understands?
#
[Al_Abut] hmm
#
[Al_Abut] not exactly my style
#
[Al_Abut] haha
#
[Al_Abut] I’d rather have the social ones take the microformats feed and then all the legacy ones take the granary
barnaby joined the channel
#
[Al_Abut] But the only universal solution I can think of is to serve the granary one to everyone. And somehow keep the microformats one as a secret handshake for friends.
pea353iouu4v and px7txphyucfk joined the channel
#
[Al_Abut] *sigh* Yeah, I don’t think it’s less friction to have multiple feeds listed, for my use case, since they’re all identitcal
#
[Al_Abut] e.g. not photos, notes, etc
#
[Al_Abut] actually I don’t think it’s great UX to have multiple types of feeds anyway, but that’s a design decision
#
[Al_Abut] yeah, gotcha
#
[Al_Abut] but then how does that work if the page is a blog post, not the feed page itself?
u7cmy3pl2xtjm joined the channel
#
[Al_Abut] yeah totally, I can see that as a useful pattern
#
[Al_Abut] and I might go down that route with offering a photos-only feed eventually
#
gRegor Looking at a GWG post as an example: https://david.shanske.com/2025/12/21/jewish-museum-of-florida/ has an Atom feed for all posts, one for all comments, one for comments on this specific post, one in mf2 JSON format, and one in JF2 JSON format.
wlrdv74, gRegor, Maxpm, troojg, barnaby, [gRegorLove], [snarfed], crouns, fleodies, meipy, groitiest, treitiest, vieling, fleapies, ceurs, flaevf, troedest, zaasp, wroesf, ceiny, ruities, gaaver, guilc, flaapf, taenf, sniitled, traudian, luofiest and truetest joined the channel
