#dev 2024-02-22

2024-02-22 UTC
bterry, burley, [tw2113] and jacky joined the channel
#
jacky
fiddles with URNs over URLs for arcane logic
#
jacky
hands Loqi a long URN
#
jacky
I'm guessing Loqi doesn't eat URNs
#
jacky
slides a URI to Loqi
#
[0x3b0b]
Aaron earned an iron URN
#
aaronpk
gives Loqi a URN
#
Loqi
hearts the URN
#
jacky
Loqi, open `portal:to:cthulhu`
tPoltergeist, [0x3b0b], lanodan, [pfefferle], CRISPR and superkuh joined the channel
#
_tommys
currently learning how to send email using Netlify Functions - i try whenever i can to avoid Amazon services, but seems like they are the preferred 'free tier' for this sort of offering. any recs besides them?
#
_tommys
trying to use open source solutions as much as i can
mahboubine, Guest6, tPoltergeist and bterry joined the channel
#
_tommys
went ahead with SendGrid, was really simple to use!
#
_tommys
i just noticed that my indieweb.social .rss feed doesn't contain the full list of toots - is this a Mastodon thing, or an indieweb.social thing?
AramZS, tPoltergeist, jacky, kleb and to2ds joined the channel
#
to2ds
⚱️== URN?
#
to2ds
Does anyone use webmentions for their bookmarks/links pages?
[dominik] joined the channel
#
[dominik]
Sending or receiving?
#
to2ds
Sending primarily.
#
[dominik]
Sending: yes.
#
[dominik]
Receiving: Sort of. I do log incoming webmentions but I don't show them anywhere
#
to2ds
Ok. I wonder if it made sense to send an outgoing webmention when I bookmarked an article or note.
#
to2ds
With respect to microformats, would a bookmarks page be considered an h-feed?
#
[dominik]
Mine is, yes. With `h-entry`s and `u-bookmark-of`-links
#
to2ds
Ah! Thank you.
[benatwork] joined the channel
#
[dominik]
You're welcome. I'm not sure how correct it is, but so far it seems to make no problems and the mentioned articles usually sort it under "likes, reposts and bookmarks" or similar
#
to2ds
That's good to know. Bookmarks will probably be the first section to implement webmentions once the backend issues are ironed out.
#
[0x3b0b]
I think it gets a little confusing because of different uses of the term in different places, especially so for me because I was vaguely aware of the Delicious-and-company "social bookmarking" service boom a while back but didn't really participate, and more recent silo evolutions _seem_ either to focus less on the social or to focus more on an accompanying discussion thread. Browser and Mastocetera bookmarks, meanwhile, aren't public and don't...
#
[0x3b0b]
... notify the target.
#
to2ds
That's a good point. In this case the bookmarks are a single section on an IndieWeb site, so public. Just wasn't sure if webmentions for bookmarks was a common use case or not.
#
[0x3b0b]
Makes sense. It is, although I don't think it's universal practice; it's also the only Indieweb post type for which I've seen that question repeatedly come up. That and the sharing of the term were a point of interest for me to mull over about a year ago.
#
to2ds
Hopefully the receiving end doesn't attempt to slurp in the entire source page and treat it as a comment. 😄
#
[schmarty]
what are bookmarks?
#
Loqi
bookmarks are sometimes part of the information about a post displayed on the post itself, sometimes in a post footer, like a total number bookmark responses, icons of recent bookmarkers, or even a datetime ordered list of bookmarks https://indieweb.org/bookmarks
#
[schmarty]
^^ a few examples in there of folks who display webmentions received from "bookmark-of" posts.
#
[schmarty]
the receiving end should be looking for microformats on the page to indicate what to "slurp" for display. if the bookmark is contained in an h-entry, that might get summarized for display as just "so-and-so bookmarked this post" without any of the associated content, similar to how adactio does.
#
[schmarty]
if the page doesn't have microformats, or the receiving site doesn't make sense of them, most folks just treat that as a "mention" - a generic "this page linked here".
to2ds joined the channel
#
to2ds
Thank you. Still pondering the microfromats. Mine are are grouped by category on the same page, so unsure if it's a single h-feed or if h-feed can be nested.
#
[dominik]
Yeah, okay. I got around that problem by giving each bookmark it's own permalink as well
#
[schmarty]
I'm not aware of many consumers that "understand" nested h-feed, but giving entries (and h-feeds) their own permalinks with fragment identifiers works in many cases.
#
[schmarty]
One of the main considerations when dealing with microformats is understanding what consumers and consuming cases you want to support.
#
to2ds
Nested would be a parent h-feed with a child h-feed for each bookmark category, but that may be unnecessary.
#
to2ds
Though in reality, an h2 tag is what separates the categoried, so hopefully the microformats parser would ignore them.
#
[schmarty]
to2ds: that description makes sense to me. however, unless you are targeting some existing software or service that "understands" those nested h-feeds, or planning on writing your own, it doesn't really benefit you.
#
[schmarty]
for what it's worth, microformats typically models categories as belonging to the specific entry. for example: an h-entry with properties for u-bookmark-of and p-category. i'm not aware of any consumers that would "look for" a category on an h-feed and "apply" that to all the h-entry children inside.
#
to2ds
Ok. Category inside h-entry makes more sense.
#
aaronpk
the way I like to think about it is this: Microformats turns your HTML into JSON. So if you're saying "can I nest this under this" the answer is probably yes, but think about it like what would someone do once they see that random JSON you just created
#
to2ds
I definitely don't want to complicate it.
jacky joined the channel
#
to2ds
Is it safe to assume the microformats parser only constructs the tree from the applicable CSS classes and ignores the rest?
#
jacky
It does, to2ds
#
jacky
(as in, it ignores anything that isn't h-*, e-*, p-* or dt-*)
#
jacky
a more verbose description of it can be found here https://microformats.org/wiki/microformats2-parsing#algorithm (of everything that _should_ be found)
#
to2ds
Thank you jacky.
#
jacky
no problem!
#
jacky
this is topical as I need to rework a parser and I had it open too :)
#
to2ds
That sounds like a fun project.
#
jacky
ahh I thought so too :)
#
to2ds
[tantek] - Definitely needed this clarification, since I'm always mixing up selectors and classes.
#
[KevinMarks]
We're also fighting a continuous rearguard action against the proliferation of so-called utility classes, which can ass extra noise to parsing
jacky and to2ds joined the channel
#
to2ds
Are the those utility classes user defined and not part of the spec?
#
aaronpk
"utility classes" refers to classes defined by a CSS framework, like this https://tailwindcss.com/docs/width
#
aaronpk
some of them have the unfortunate overlap of sharing prefixes with microformats classes https://tailwindcss.com/docs/padding e.g. "p-0"
#
to2ds
Ah! Was just going to ask about overlap. Seems like a never ending battle.
#
aaronpk
(they are also one of the silliest things because if you're writing css like "pt-6" to add padding to the top of the element, just write out what you mean!)
#
aaronpk
what is tailwind?
#
Loqi
Tailwind is a relatively new CSS framework, created to enable responsive website design, which appears to replicate similar functionality as the standard HTML style attribute, though using abbreviated cryptic class names, despite which, some in the IndieWeb community have found useful in designing their sites https://indieweb.org/Tailwind
#
Loqi
ok, I added "https://joaquinmarti.com/posts/tailwind-utility-classes-as-an-antipattern/" to the "See Also" section of /Tailwind https://indieweb.org/wiki/index.php?diff=93407&oldid=89163
#
jacky
only never ending if neither side is in conversation :/
#
aaronpk
microformats hasn't added new parsing prefixes since it was created
[Joao_Paulo_Pes] joined the channel
#
[Joao_Paulo_Pes]
hi all 👋 very new to the indie web here, great discussion on HTML classes!
#
[Joao_Paulo_Pes]
any thoughts on creating custom markup for presentation purposes to make it easier to reuse common styles without using utility classes? for example this grid system: https://rsms.me/raster/
#
[Joao_Paulo_Pes]
is custom markup also evil in any way?
#
to2ds
A quick check of my styles shows 8 ✌️utility classes✌️ 😄
#
aaronpk
that looks interesting, i've never seen that kind of thing before. i'm still new to custom html elements
#
aaronpk
i think the question would be does this reinvent anything that plain HTML and CSS gives you? that's essentially the problem with tailwind
#
to2ds
aaronpk - Definitely agree!
[tantek] joined the channel
#
[tantek]
Yeah that's going on the Tailwind page
#
Loqi
ok, I added "https://twitter.com/sanketsahu/status/1243935639776550914 https://pbs.twimg.com/media/EUNYTRaU0AEObaG?format=jpg&name=small&x=.jpg" to the "See Also" section of /Tailwind https://indieweb.org/wiki/index.php?diff=93409&oldid=93408
#
[Joao_Paulo_Pes]
playing the devils advocate here, the benefits of tailwind is the convenience separating the concerns (style and content). there's a convenience of not having to jump from css to html all the time. and you can't do everything in `style` (media queries, hover, _etc_). as i see it, people are ignoring semantic (as in "semantic web") in favor of convenience. not saying i agree.
#
[Joao_Paulo_Pes]
the creator of tailwind has an explanation of his reasons for building it here: https://adamwathan.me/css-utility-classes-and-separation-of-concerns/
#
[Joao_Paulo_Pes]
the convenience of not separating concerns*
#
[tantek]
there is almost no separation of concerns with Tailwind, that's the problem.
#
[tantek]
in practice
#
[Joao_Paulo_Pes]
exactly, typo there. there's a convenience in not separating the concerns.
#
aaronpk
if you're not separating the concerns, then why bother plastering over css with classes in the first place?
#
aaronpk
just write the css attributes
#
[tantek]
sure, same reason it's easier to use the style attribute to make quick changes while a structure is in flux, and then eventually figure out how to move inline styling into rules
#
[tantek]
aaronpk, I saw "media queries" as one reason given
#
[Joao_Paulo_Pes]
it's like the convenience of eating fast food because it's easier than cooking. not saying i agree hehe
[Murray] joined the channel
#
[Murray]
fast food is a very apt analogy, because much like Tailwind, it's faster now but leads to ongoing issues that mount up over time. If used lightly, probably not a problem. If used totally, serious health issues (health issues here are technical debt 😄)
#
[Murray]
(I may have strong opinions here though 😄)
#
[Joao_Paulo_Pes]
> i think the question would be does this reinvent anything that plain HTML and CSS gives you?
#
[Joao_Paulo_Pes]
custom html elements for presentational purposes kinda reinvent the wheel because you can always copy and paste a bunch of css properties to a new selector
#
[Joao_Paulo_Pes]
the css https://tabatkins.github.io/specs/css-extend-rule/ would help with that
#
[Joao_Paulo_Pes]
i was just wondering what are your thoughts on custom html elements because the alternative i see to never using presentational/utility classes would be either to create custom html elements or add a css pre-processor (another dependency, which i'm currently trying to avoid 😢)
#
[Joao_Paulo_Pes]
> If used lightly, probably not a problem
#
[Joao_Paulo_Pes]
i like this middle-way approach
#
[Murray]
yeah, I'm intrigued by how people are mixing Tailwind and CUBE
#
to2ds
Do web components fall into the custom html elements camp?
#
[Murray]
I'm also a fan of HTML components, though I'd probably draw the line (personally) at something like that grid layout. It just feels so much less efficient than writing CSS classes at that point 😉 But for other reusable blocks of style/functionality, yep, love them!
#
[Murray]
@to2ds I believe they are the same thing, though I'd be interested to know if there's a distinction
#
[Murray]
I tend to see people referring to web components as "with JS bundled" (and often just drop-in) vs custom HTML elements (or various other names) for more lightweight, wrapping elements, that allow sharing of style and some light structure, but not sure that's 100% the case
#
to2ds
[Murray] - I haven't used them yet myself, so curious.
#
to2ds
More so after capjamesg did a demo.
#
capjamesg
Web components are awesome.
#
to2ds
They definitely are!
#
superkuh
As long as they wrap real html elements so the text/whatever is still there if JS doesn't go well.
#
superkuh
And the hyphenated custom HTML fail.
to2ds joined the channel
#
to2ds
Do they require a <noscript>?
gRegor joined the channel
#
to2ds
That's cool! Did not know web components could render before JavaScript.
#
capjamesg
Ahhhhh!
#
capjamesg
That's what a HTML web component is!
#
capjamesg
superkuh++
#
Loqi
superkuh has 1 karma in this channel over the last year (2 in all channels)
mahboubine and benji joined the channel
#
[tantek]
^ curious if that means web<=>bluesky BridgyFed will be enabled soon-ish 🙂
lazcorp joined the channel
#
gRegor
to2ds, catching up from scrollback. Another thing about mf2 is that social readers will consume a list of h-entry elements without an h-feed as an implicit feed, so h-feed is kind of optional. h-feed is mainly useful if you want to provide a title/author for the feed as a whole, which consumers can use.
#
gRegor
So you might start off even simpler, just a list of h-entry on the page
#
jacky
gRegor++ on that point
#
Loqi
gRegor has 27 karma in this channel over the last year (103 in all channels)
#
jacky
progressive enhancement
#
gRegor
https://monocle.p3k.io/preview is a helpful preview tool I use for this a lot
#
gRegor
what is h-feed
#
Loqi
h-feed is a microformats2 draft specification with a top level feed object to contain root class(h-*) objects, usually h-entry posts and optionally a common author, name, and representative photo https://indieweb.org/h-feed
#
gRegor
Trying to find examples of a page with multiple h-entry and no h-feed
#
[tantek]
gRegor, my "monthly" archive pages have multiple h-entry and no h-feed, e.g.: https://tantek.com/2024/01
to2ds joined the channel
#
to2ds
Okay. The plot just thickened. 😄
#
[tantek]
Hey that actually looks pretty good
#
aaronpk
i would hope so
#
[tantek]
always a relief tbh 😅
#
[tantek]
(that my markup is still good on code I haven't touched in months)
#
to2ds
[tantek] - Is h-feed unnecessary in your monthly archive page due to a rel=author already in the header? Had rel=author not been in the header nor elsewhere in the page, then h-feed would be ideal so it could contain the rel=author information?
#
[snarfed]
[tantek] re web <=> bluesky Bridgy Fed, yes! no specific ETA yet, but hopefully soon ish
to2ds joined the channel
#
gRegor
what is authorship testing tool
#
Loqi
The authorship testing tool is a service to run the authorship algorithm for a URL. It's sometimes referred to as Sturdy Backbone based on the URL Glitch automatically generated https://indieweb.org/authorship_testing_tool
#
gRegor
Yeah, the algorithm will use rel-author https://indieweb.org/authorship-spec#Algorithm. There's other options without h-feed, though, like including the author information in each h-entry
#
gRegor
I do the latter (although with an h-feed) because I like to include my then-current avatar in each post
#
to2ds
gRegor++ - Nice!
#
Loqi
gRegor has 28 karma in this channel over the last year (104 in all channels)
#
gRegor
I use the mf2 author property, that is, not a rel-author