#dev 2023-04-17

2023-04-17 UTC
[tantek] joined the channel
#
[tantek]
compatibility with the IndieWeb
[schmarty] joined the channel
#
prologic
Hmm I thought we were talking about Twtxt not JSON feed 🤔
Soni, nih, [marksuth], mro, angelo, geoffo, [chrisbergr] and [Murray] joined the channel
#
[tantek]
confirmed that Twitter’s API now rejects my site/app's attempts to auth using the old Twitter sign-in API
#
[tantek]
so I can either spend the time trying to update my code to use a new token, API etc. OR I can rip it all out. Really leaning towards the latter at this point
#
[tantek]
Twitter--
#
Loqi
Twitter has -1 karma in this channel over the last year (-3 in all channels)
#
[tantek]
TwitterAPI--
#
Loqi
TwitterAPI has -1 karma over the last year
#
prologic
Twitter--
#
Loqi
Twitter has -2 karma in this channel over the last year (-4 in all channels)
[KevinMarks] and [TMichelleMoore] joined the channel
#
[tantek]
rethinking (maybe from scratch) what it means to "publish" and what steps/phases/authn/authz that involves
mro joined the channel
#
bkil
capjamesg: About syntax easier to parse than markdown: https://en.wikipedia.org/wiki/Gemini_(protocol)#Gemtext_format
#
[tantek]
For anything plain text like:
#
[tantek]
Easier to parse < easier to read & write (as a human)
#
[tantek]
The "what does publish mean" question I think is especially interesting when considering offline first
#
bkil
[tantek]: What difficulty do you identify in reading & writing gemtext as a human? Note that I came up with a very similar shorthand and coded a generator for it even before markdown existed, so I wouldn't call it far-fetched. The markdown variants and their implementation complexity do worry me, however.
#
bkil
But also, the Web is about hyperlinked rich formatted documents, and you can't plausible solve that use case with plain text. I link to subsections of longer documents when referencing content for the benefit of my readers for example. I strive to attach quotes next to links to show previews so they don't have to click on potentially clickbait content.
#
bkil
I use preformatted block citations in place of photographs of code to reduce bandwidth load and to cater to the needs of the visually impaired (or just people consuming content on the go and working hands free). I think these are elementary and valuable formatting features without any complexity or ambiguity.
#
[tantek]
bkil, the most obvious thing is that if gemtext was super easy to read / write, then it would have more adoption by now, so tbh I haven't bothered to evaluate it
#
[tantek]
I regularly write rich hypertext using auto-linked plain text so that assertion that "you can't" is probably false
#
bkil
You can't link to headings within plain text document as they lack the means of creating headings.
#
bkil
You may autolink _from_ plain text documents. However, according to my experience, it is difficult to get autolinking to get right and most actually get it wrong all the time. And then iterate over it and produce regressions (i.e., your past links won't be clickable tomorrow). Just encountered such a regression in Nheko, but the author refused to fix it, maintaining that it was a "feature".
#
[tantek]
Yes, auto-fragment headings are on my list :)
#
bkil
And then you just came up with markdown/gemtext!
#
bkil
An incompatible, NIH, in-house version that is.
#
bkil
Regardless of linking various RFC clauses that would prove _my_ preference for how autolinking should be implemented, in the end the developer chooses which RFCs they cherry pick to back up _their_ interpretation of how it should be done "properly". Compare this to how it can be done in markdown: <https://indieweb.org>
#
bkil
=> https://indieweb.org gemtext
#
bkil
The way it is represented in gemtext needs getting used to, but at least makes for great consistency and zero corner cases (i.e., trivial to parse by both machines and humans).
#
bkil
Gemini, as an ecosystem and protocol has its drawbacks that limits its adoption rate. I actually have an alternative plan to achieve its goal with better adoption, but didn't pursue it lacking collaborators. And also: https://indieweb.org/antipatterns#mass_adoption
#
bkil
TL;DR My alternative would be to take a strict subset of HTTP & HTML that 100% corresponds to the gemini/gemtext subset and support dual-stack hosting of content over that. The generators would observe a strict (but somewhat forgiving) rendering of HTML to allow for gemini parsers to consume its output that were written on a single weekend.
#
bkil
The most complicated part would be replacing input with a fixed form, but that's also doable. I think it would have added to the retro romance of the movement to start mass producing web content by hobbists that could be consumed by web browsers from 1992!
#
[tantek]
Nah, MediaWiki already created a devs to method for creating fragments for headings that work just fine. I'll reuse that
#
[tantek]
a reliable* method
#
bkil
Then the more worrisome issue with plain text publishing is how should the user agent know which parts are monospace and which parts not? Without that, you either need to give up all forms of charts and art (no-monospace), or make it very tiring to read (all-monospace).
#
[tantek]
And no, starting a line with "=>" to indicate a link is ugly and not based on any prior plaintext usage so it is trivial to reject that
#
[tantek]
Like no one did that in plain text email previously
#
[tantek]
which monospace or not is a good question!
#
bkil
I respect your opinion, but I recommend you read through what gemini is about to understand what the end goal is and how it can and can not be accomplished. I have shared above why I think that autolinking is not a very good way to go.
#
[tantek]
what is space
#
Loqi
space (also negative space or empty space) is typically used in IndieWeb contexts to refer to presentational blank space(s) on web pages, and the space between words and lines of text, including line-breaks, sometimes used to format note posts, like to indent lines, or with specific meaning like text lists without markup https://indieweb.org/space
#
[tantek]
^ some exploration there
#
[tantek]
Nope what I wrote above is primarily from original Markdown principles, and based mostly on empirical behavior
#
[tantek]
auto-linking is so ubiquitous that it's not going away. Users expect it and it's the most natural
#
[tantek]
And I've already implemented it
#
bkil
I think I forgot to comment this earlier, but it is again relevant. I think many here are confusing the syntax typed in by publishers, what appears on the screen of viewers and how this all is serialized over the wire. As mentioned, ActivityPub (and its predecessors) serialize to HTML tags while publishers usually enter one of plain text, BBCode, Markdown, rst or HTML.
#
bkil
Similarly, nothing is keeping one from offering an editor widget that is autolinking, but it should offer a preview to the publisher to see how it will appear in the end, and it should be "set in stone", i.e., serialized in a stable format (be it gemtext, HTML or some CommonMark variant).
#
bkil
I don't consider it due diligence of authoring practice to serialize in txt and assume that the consumer will follow certain undocumented heuristics to present it.
#
[tantek]
There are different considerations to authoring vs interchange yes. I’m speaking in the context of author-centric plain text design, and I believe it is correct to save & edit what the author wrote in the first place, not some post processed result (because the post-processing can improve over time!)
#
[tantek]
For interchange IMO either HTML+microformats for the widest interop across space & time, and JSON for ephemeral API access
IWSlackGateway and [tantek] joined the channel
#
[tantek]
Markdown is absolutely unsuitable as an interchange or long term archive format because it has very poor interop across dozens of variants and implementation quirks and incompatible extensions
[campegg] joined the channel
#
[tantek]
"Plain text" with or without auto-linking works because auto-linking doesn't change the meaning, only the UX
[chrisbergr] and sp1ff joined the channel
#
[tantek]
I took a look at the Wikipedia description of Gemtext format. Gemtext is not a plain text format. As Wikipedia says, it is a (yet another) line-oriented format, in this regard more like config files, or RFC822 format, vCard/iCalendar, robots.txt, .htaccess etc. It's not for user content authoring even though it is vaguely readable (just as config files and raw RFC822 are)
chenghiz_ joined the channel
#
bkil
I faced the same dilemma of "post-processing improvement" vs. consistency back in the days when I started blogging. I would like to refer to the following principle: https://indieweb.org/antipatterns#at_some_point In reality, I have seen orders of magnitudes of more cases of altered heuristics breaking old content than improving it. In the few cases where it did, it was about fixing past bugs, but that could have been avoiding by providing a preview (or was
#
bkil
caused by imports).
#
[tantek]
other way around, the "post-processing improvement" expectation is based in empirical experience, not "at some point"
#
bkil
Could you provide a link to some cases? I honestly can't recall any case.
#
[tantek]
I've done this repeatedly with many many iterations of post-processing improvements in auto-linking, auto-tagging, auto-hashtag-linking, etc.
#
bkil
If the composer widget fails to auto-tag users or auto-link hashtags, shouldn't the publisher notice before pressing the save button?
#
[tantek]
nah, because what's saved is the plain text, not the post-processing
#
[tantek]
the principle here is maintaining the fidelity of user entered input
#
bkil
After the system serializes it in any machine-readable way (even using yarn.social twtxt), there is no place for improved parsing for the examples you have disclosed.
#
[tantek]
I'm not using yarn or twtxt nor am I contributing to those so meh
[pfefferle] joined the channel
#
[tantek]
if it doesn't work for you, no worries, don't bother. it works for me and the plain text auto-linking etc. I'm doing so I'll continue down that path
#
bkil
I'm not advocating it here, I just wanted to highlight that the lightest markup I know has built-in support for serializing links, user mentions and hashtag mentions in a deterministic way.
#
bkil
It's <url> @<url> #<url> by the way
#
[tantek]
you're misreading.
#
[tantek]
I'll repeat once: principle here is maintaining the fidelity of user entered input
[dave] joined the channel
#
[tantek]
"serializing" auto-linked output only makes sense for last minute presentation improvement, not storage (maybe caching is ok, assuming you want to deal with cache invalidation)
#
[tantek]
the lightest markup I know is zero markup, AKA plain text
#
[tantek]
that's the point
#
[tantek]
anyway if you have a different text-ish-markup preference and serialization storage preference that works for your site, then great! I'm not trying to convince you to do otherwise on your site
#
bkil
The one-way workflow of producing content from txt is an artifact from the 80s I think. We had rich editing widgets since the 90s that actually support an interactive editing flow where the machine holds the hand of the user, and then serializes the result (in a machine-readable way) for it to be presented to the user for later editing in a lossless manner. Anything else is https://indieweb.org/architecture_astronomy
#
[tantek]
lol. not an artifact from the 80s. it's an artifact from seconds ago, right here in chat 🙂
#
[tantek]
nope, anything implemented and live is not architecture astronomy. you may be misunderstanding the meaning of that phrase.
#
[tantek]
note that nearly every chat client, like Slack, IRC, Matrix, our own chat archives does auto-linking - so don't bother arguing that. that argument is over: https://chat.indieweb.org/dev/2023-04-17#t1681744801264900
#
bkil
Did you consider documenting your text-only publishing preferences? I fail to find it on your user page https://indieweb.org/Tantek
#
Loqi
[preview] [bkil] The one-way workflow of producing content from txt is an artifact from the 80s I think. We had rich editing widgets since the 90s that actually support an interactive editing flow where the machine holds the hand of the user, and then serializes the ...
#
[tantek]
yes it's how I author notes
#
[tantek]
this is what's implemented so far: https://indieweb.org/Falcon#Note
#
[tantek]
additional improvements I'm implementing are documented here: https://tantek.com/w/Markdown#Modestsolutionssummary (I really need to create a new page for my redesign of Markdown)
#
bkil
I think I may consider applying your idea of redirecting /github to github.com/$user/... I always had mixed feelings about hosting the ground truth of one's sources on a small domain, but this workaround sounds good enough.
#
bkil
I'll probably go for /gh due to trademark concerns and reduced bloat, though.
#
[tantek]
we had a name for that that I now forget
#
[tantek]
good point about not being able to easily discover authoring practices from my user page
#
[tantek]
added a section
#
[tantek]
though good find — that's a good spot to put a link to /own_your_links
#
bkil
Yes, I also read this one in the past as well and indeed that's what I was looking for. I wish the wiki had a better search engine.
#
bkil
Is it an antipattern to stuff these wiki pages with keywords (in a dedicated section) to improve search results?
#
[tantek]
and until then we can collectively find apparent dead-ends (like you did) and iteratively patch them with manual forward/related links (just added one)
#
[tantek]
use of keywords e.g. Category: is better discussed in #indieweb-meta and be sure to ping gRegor as he's put perhaps the most thought & work into that, though collaboratively with community input
#
[tantek]
and thanks to your input I added this section also, to make my authoring practices more discoverable: https://indieweb.org/Tantek#authoring_practices
#
bkil
[tantek]++
#
Loqi
[tantek] has 28 karma in this channel over the last year (95 in all channels)
[KevinMarks] joined the channel
#
[tantek]
I'm starting to see if I can shift my mindset about publishing from binary (unpublished / published, which is a bit of a strawman, since no one really does that, i.e. there's a timeline of incremental keystrokes even within "unpublished") to a blurry timeline spectrum from offline notes, online synced drafts, publicly viewable at a permalink, posts showing up on a home page, posts showing up in side-files, posts being federated,
#
[tantek]
posts being POSSEd to various silos, and not necessarily in that order
#
[tantek]
wondering if anyone else has made that kind of a mindset shift. or maybe I should draw a diagram and publishing my brainstorming / where I am today with such a spectrum
#
[tantek]
also curious how folks have thought about / implemented undo/revert/rollback or redo/rollforward along that timeline
#
bkil
I always had a cognitive dissonance relating to whether to publish a given article or snippet on a personal wiki-like space at a generalized short URL that can be extended or rewritten from scratch later or in a blog-like journal under a fixed temporal URL that could still afford typo fixes or adding a sentence or link or two.
#
[tantek]
bkil, it's a common split!
#
[tantek]
you may find this helpful for consideration:
#
[tantek]
what is a digital garden?
#
Loqi
🌱🪴 A digital garden is a particular practice of creating & growing an online and public IndieWeb presence that focuses more on topics & relationships than a timeline like blogs, has content of different levels of development, is imperfect and often a playground for experimentation, learning, revising, iteration, and growth for diverse content, perhaps interlinked with other digital gardens https://indieweb.org/digital_garden
#
[tantek]
it does make me wonder if blogging vs digital gardening is a contrast akin to particle vs wave physics, or if there is some kind of grand unified content creation & publication model that combines the two
[snarfed] joined the channel
#
[snarfed]
also "posts" vs "pages" in the terminology on the wiki
#
[snarfed]
I ended up treating them almost the same on my site, only difference is that "pages" don't show up in the home page feed, and they show a last updated date along with the original publish date, while posts don't
#
[snarfed]
(ok also posts have a date in the slug, pages don't)
#
Loqi
[preview] [Ryan Barrett] Archives
#
[tantek]
I think that's the key distinction [snarfed] (date-primary "post" vs topic-primary "page"), and it's correct for the permalink/slug to reflect that!
#
[tantek]
I think I'll start with documenting / diagramming my current author/publish timeline/spectrum and see if anything emerges from that
#
[tantek]
trying to find the documentation of delayed publishing to Atom (or other) feed files and I can't seem to find it
[aciccarello] joined the channel
#
[aciccarello]
Like for SEO reasons?
#
[KevinMarks]
I'm not sure if that's an atom thing directly or a cms feature
#
[tantek]
aciccarello, no because legacy feed readers have very bad caching behavior and typically don't check for updates to articles.
#
[tantek]
so because legacy feed readers are poorly coded, they can wait an extra 10min or more for my posts, giving me enough time to catch (most) typos etc. and fix them
#
[KevinMarks]
You could do a deferred websub
geoffo joined the channel
#
[snarfed]
yeah much of that thread interpreted "native internet protocol for social media" as "let's look yet again at evolving RSS/Atom," and is now in WebSub etc, and totally missed the point that social media is about rich interactions, replies likes reposts reactions etc, and optimizing delivery of original posts is both semi-unnecessary and totally misses all of the interaction semantics
#
[snarfed]
sorry for the rant, avoided it on the mailing list so far, guess I needed a place to vent 😁
#
[tantek]
[snarfed] this (channel) is the way
#
[tantek]
What is RSS nostalgia
#
Loqi
It looks like we don't have a page for "RSS nostalgia" yet. Would you like to create it? (Or just say "RSS nostalgia is ____", a sentence describing the term)
#
[tantek]
Darn it I really thought we'd documented that
gRegor joined the channel
#
capjamesg
Now I'm curious. What is RSS nostalgia?
[schmarty] joined the channel
#
Loqi
[preview] [[tantek]] [benatwork] lots of great stuff in that post, and I was going to complain about "RSS nostalgia" (which is something I've seen a bunch of elsewhere, e.g. the nostalgia of "why can't we go back to everyone using RSS?" or related, retconning like "RSS a...
#
[schmarty]
(and more, searching "rss nostalgia")
#
[schmarty]
oop, found where the thread continued in -dev: https://chat.indieweb.org/dev/2022-12-07#t1670449057815100
[jeremycherfas] joined the channel
#
bkil
[tantek] [capjamesg] : "Just install" would make more sense. Maybe "install" itself? But also, SEO-bait isn't actually proper terminology - I just made it up. Adding "SEO" would be useful.
#
bkil
It would actually be an interesting side project to go through the each channel log and try to discover (or at least recommend) possible jargon based on what occurs in #dev more than anywhere according to statistically significance.
#
[tantek]
There are non devs that express that they need or want SEO without understanding so I’m hesitant to add it
#
[tantek]
If you crawl some vocab stats from the logs, feel free to blog it and drop a link in #indieweb-meta
[TMichelleMoore] joined the channel
#
bkil
I haven't read through enough conversations here to tell for sure, but I have a feeling that most any TLA should be on that list. And SEO is not for everybody, especially if it is done right at an advanced level. To meet the minimal desirable level, normal creators should not need to dig into it at all if they are using the right frameworks. And optimizing reach in a massive way is also an antipattern https://indieweb.org/reach#Do_It_For_the_Exposure
bterry joined the channel
#
bkil
I wanted to ask you about your position on scroll to text fragments, but I see this comment https://github.com/mozilla/standards-positions/issues/194#user-content-issuecomment-568581041
#
bkil
Funny how in the fragment article, the example scroll to text link is broken today, because it is citing too much text and the original linked to page has reworded this sentence.
#
[tantek]
bkil, in general better to first figure out whether or not some tech solves a use case you need / want for your website than ask/debate about tech choices
#
[tantek]
or if you prefer theoretical conversations that don't have a direct connection to you implementing something that solves a use case you want, that's probably better for #indieweb-chat
#
capjamesg
I recently learned what TOML stands for: https://toml.io/en/
#
capjamesg
" [Tom's Obvious Minimal Language]"
#
capjamesg
Not a good name given what we have been discussion re: "obvious"
#
[snarfed]
eh there are lots of naming styles, names are all over the place, they don't necessarily be self explanatory. how to name things is an age old debate
#
[snarfed]
I mean, granary, amirite?
#
bkil
[tantek]: As I'm doing quotation and cited replies all the time, it is crucial to standardize on a single URL format. This wiki page recommends that I don't use a syntax supported by browsers other than Firefox and that I should use one that was proposed way earlier. Is this recommendation still up to day? https://indieweb.org/quotation
#
bkil
By syntax, I meant the one suggested by https://indieweb.org/fragmention
geoffo joined the channel
#
IWDiscordRelay
<c​apjamesg#4492> What does granary mean [snarfed]?
#
IWDiscordRelay
<c​apjamesg#4492> I would like JAML now.
#
IWDiscordRelay
<c​apjamesg#4492> What it should do? I don’t know.
#
IWDiscordRelay
<c​apjamesg#4492> JAML. James’ Amazing Macchiato Language.
#
IWDiscordRelay
<c​apjamesg#4492> A formal description for coffee recipes.
#
IWDiscordRelay
<c​apjamesg#4492> I’m not sure it will catch on though 🙃
#
[snarfed]
granary is a (mediocre) play on the word "silo"
#
[snarfed]
as in grain silo
#
IWDiscordRelay
<c​apjamesg#4492> I see.
#
IWDiscordRelay
<c​apjamesg#4492> TIL!
#
[tantek]
If you don't like the O in TOML wait til you hear what the first S in RSS stands for
#
[tantek]
bkil, if you're looking for what URL format will work with webmentions, you can check to see what URL formats are supported by webmentions receivers
#
[tantek]
ie preunably by quotations and cited replies you mean something to links with webmentions endpoints that you want to do something interesting with your quotation or cited reply
#
[tantek]
browsers have nothing to do with website to website peer to peer interactions
#
[tantek]
There can literally be two different standards for that and it doesn't matter
#
[snarfed]
hey [KevinMarks] you added really slick HTML progress bars to huffduff-video a long time ago, any chance you'd be interested in doing something like that for rendering HTML polls in granary? https://github.com/snarfed/granary/issues/174#issuecomment-1512227388