#dev 2022-12-14

2022-12-14 UTC
#
IWDiscordRelay
<c​apjamesg#4492> https://news.ycombinator.com/item?id=33975082
#
IWDiscordRelay
<c​apjamesg#4492> https://news.ycombinator.com/item?id=33977992
#
Loqi
[preview] [askhan] Shout out to the h-feed / h-entry microformat https://microformats.org/wiki/h-feed, sadly underutilized but an extremely easy way to make the web much more syndicable. They're comprised of standardized CSS class names to be inserted into HTML and ena...
#
Loqi
[preview] [jacobobryant] How to rebuild social media on top of RSS
#
[snarfed]2
just released the first version of https://github.com/snarfed/lexrpc, key building block on the way to an IndieWeb / AT Protocol bridge, maybe Bridgy AT 😁. sadly not really indieweb related yet, otherwise I'd add it to the gift calendar
#
Loqi
[preview] [snarfed] lexrpc: Python implementation of AT Protocol's XRPC + Lexicon
#
[schmarty]
snarfed++ wow!
#
Loqi
snarfed has 50 karma in this channel over the last year (94 in all channels)
#
[manton]
[snarfed] Nice! Has there been any news on their first “beta” release?
geoffo joined the channel
#
Loqi
[preview] [Kevin Marks] Always interesting when two related yet unconnected posts pass through the feed nearby https://infosec.exchange/@atax1a/109400028861061670 https://blog.glyph.im/2022/12/potato-programming.html
geoffo joined the channel
#
[schmarty]
this starts as an interesting dive into podcasting and how websub scales with lots of subscriptions and then someone runs up from the back of the bus and yanks the steering wheel and it goes off a bridge
#
[tantek]
[schmarty] that link needed a "CW: blockchain"
#
[tantek]
don't make me start the you-know-what-again
#
[schmarty]
the violent metaphor wasn't enough??
#
aaronpk
substack is getting really aggressive with the "let me read it first" popups
#
[KevinMarks]
So it's weblogs.com again with a added blockchain sprinkles?
#
[KevinMarks]
Or pingomatic?
#
[KevinMarks]
I suppose you could do a Certificate Transparency model for blog pings, maybe thats what this is attempting
#
[schmarty]
KevinMarks: Certificate Transparency is what i was thinking. they just chose a pre-existing blockchain rather than trying to set up their own CT infrastructure.
#
[KevinMarks]
CT is fully open source, the backend stuff is called Trillian
#
[tantek]
I don't want to ever see this in a technical specification: "just start back a few hundred blocks in the chain and pick up where they left off"
#
aaronpk
trillian is a universal instant messenger client
#
[tantek]
I'm with aaronpk
#
Loqi
[preview] [google] trillian: A transparent, highly scalable and cryptographically verifiable data store.
#
[schmarty]
it's a proof-of-concept that works. and i am annoyed that i think maybe it is actually a good use case for a distributed ledger??
#
[tantek]
Google folks need to learn to Google for names before using them 🙄
#
aaronpk
for real
#
[KevinMarks]
Well, there were at least two Trillian's in the hitchhikers universe
#
aaronpk
oops this is not #indieweb-chat
#
aaronpk
puts down the computer
#
[KevinMarks]
Could be worse, they could have called it Lintilla
#
[KevinMarks]
Though Lintilla is maybe a better name for ActivityPub, given the number of copies it makes, and the corresponding delete messages.
#
[schmarty]
aaronpk++
#
Loqi
aaronpk has 33 karma in this channel over the last year (107 in all channels)
#
[schmarty]
good stuff!
#
[tantek]
well-written standards-list-speak aaronpk
geoffo joined the channel
#
cambridgeport90[
I must have missed the big update from earlier in the week,though I keep hearing about administrators asking if anybody knows what to do when they start getting requests from law enforcement and what not.
gRegor and gRegorLove_ joined the channel
#
[fluffy]
“The burden of resubscribing on a per-podcast basis every 7-15 days goes up exponentially as the podcasts being monitored grows into 6 or 7 digits.” That… isn’t how exponential growth works.
#
[fluffy]
Also it sounds like their whole thing that they’re trying to “solve” is being a centralized subscription service for podcast feeds, which is kind of *completely anathema to the point to feeds* in that it’s supposed to be, like, individuals subscribing to stuff on their own
angelo, dunkenflaute, mro, tiim, Xin and [marksuth] joined the channel
#
[KevinMarks]
Right, the problem with the weblogs.com / pingomatic model is that they fill up with spammers that no-one subscribes to. The resubscribe part of WebSub was designed to have that purgative effect rather than the "number go up" chasing that makes places reluctant to delete the spam.
Xin joined the channel
#
petermolnar
so, Xin: my generic problem with IPFS is that *someone* has to run an active node for the content to be accessible. Yes, it can be on my homeserver, but so can my current website, and, therefore, I'm not sure what I'd be gaining with it.
#
Xin
So we made an all-in-one app, it can build, host, follow websites.
#
Xin
If you used IPFS before, you know it's a ton of command line keystrokes. We wrapped it with a complete macOS GUI.
#
Xin
The app has a built-in IPFS node.
#
petermolnar
right, and when the laptop lid is closed, the website is off then, correct?
#
Xin
You can build a blog with the app, then the app publishes the site to IPFS automatically. You can use the app to follow other websites running on IPFS+ENS too.
#
Xin
If there are other people followed you, then your website will have a Pin on their computers.
#
petermolnar
yeah, that's an if
#
Xin
We implemented a Follow feature in the app, so it can partially solve that problem.
#
Xin
Also, it can integrate with a pinning service like Filebase.com
#
Xin
Here is a screenshot: https://i.v2ex.co/qI5g9gUT.png
#
[KevinMarks]
If you add the mf2 post markup and webmentions, that could help posts be preserved too - you may need to bridge through the http proxy for non-IPFS mentions, but presumably a reply via the bridge would also prin the IPFS version.
#
[KevinMarks]
this is also an interesting counter to the thundering herd problem recently seen with mastodon fetching previews
Xin joined the channel
#
Xin
Thanks a lot!
#
[KevinMarks]
would WenSub be adaptable to work with IPFS urls too?
#
Xin
A hub is a form of centralization.
#
Xin
However, IPFS has its own P2P PubSub mechanism, can be used to implement something similar
[coreagile] joined the channel
#
[coreagile]
Hey all — I’m starting to build a new federated social networking app that I was considering having ActivityPub support, but was also interested in making it IndieWeb-first. Still learning about the formats and stuff — wondering if folks can offer ideas about how to test interoperability — I’m mostly interested in making sure baseline federation of content works. There are also some other interesting problems as this par
#
[coreagile]
social network has a “clubhouse-like” feel to it, so IndieAuth (which I just discovered in this chat!) seems to be important (to let people from other sites ‘listen in’ to the audio stream, or even participate), but I’m very confused about what happens when people from other sites want to post updates about the chat stream of that event (which I’m imagining are just comments on the event’s stream). Anyway — hoping
#
[coreagile]
folks are willing to help! The app will be completely open source, in case folks are interested — will post the link upon request!
#
[fluffy]
IndieWeb “federation” isn’t really the same as in activitypub/mastodon. In IndieWeb it’s less about the sites carrying each others data and more about there being reader tools that can subscribe and interact from anywhere.
#
[fluffy]
Could you maybe describe what you’re trying to do? It sounds like you’re trying to do a livestream with a chat component?
#
[schmarty]
it sounds like it'd be worth looking at https://owncast.online/ as an example. it's a twitch-alike that supports activitypub for notification when streams go live and indieauth for signing in to the chat component.
#
[fluffy]
Yeah. IMO real-time chat isn’t particularly well-served by IndieWeb at this time. It is certainly technically possible but I’d worry about what the messages end up looking like and the knock-on effects of them showing up in peoples feeds.
#
[fluffy]
Using a websub enabled feed for stream notifications would be nice though.
#
[fluffy]
Especially if the broadcast url can also act as an archive url for after the fact.
#
[fluffy]
Like how YouTube streaming works.
#
[fluffy]
(And unlike twitch, where the live broadcast URL is just the channel URL and the VOD goes elsewhere.)
#
[KevinMarks]
The way we do homebrew website club now is another example - see https://events.indieweb.org/ for the calendar model and individual events link to a shared live document per event which is made into a wiki page later
#
[coreagile]
Oh my.. I just realized this channel is being mirrored to IRC, and things I post in threads don’t show up in the log. I will stop using threads. Sorry about that!
#
[schmarty]
all good! thanks for double-checking! i forget if we have a mention of that at indieweb.org/discuss
#
[schmarty]
IRC is actually the "official" home of this chat, which is bridged to slack, matrix, and discord via separate bridges.
#
[coreagile]
Ah good point!
#
[coreagile]
Thanks for the context 🙂
#
[schmarty]
aaronpk,snarfed: this is new (to me). syndicating a public post via `fed.brid.gy` and seeing this 502 response from BF seemingly triggered by a 500 response from `aaronparecki.com/activitypub/inbox`: https://telegraph.p3k.io/webmention/16uUryJUfMKoAaGYUr/details
#
[snarfed]2
yup! that's intended
#
[snarfed]2
open to thoughts
#
[schmarty]
from the bf side, is it successfully sending other messages out? my first concern is that aaronpk is somewhere first on a list of messages to send and bf stops here.
#
[snarfed]2
yes, it is. it tries to deliver to all inboxes, even if some fail, but only returns 200 if all succeed
#
[schmarty]
snarfed++ great, that was my sincere hope ✨
#
Loqi
snarfed has 51 karma in this channel over the last year (95 in all channels)
#
[schmarty]
in that case aaronpk your AP inbox is throwing 500s 🙃
#
aaronpk
hmm i need to see an example of the payload BF is sending
#
aaronpk
it's erroring out trying to log that to the database 😂
#
aaronpk
ok i think i am logging to a file now, is it possible for me to trigger bridgy fed to re-send a post to me?
#
[schmarty]
i can resend that WM
#
aaronpk
got it!
#
aaronpk
aha, bridgy sends an object as the actor, mastodon sends just a string URL
#
aaronpk
ok updated to handle that. surprised that's the only time i've received an actor like that
#
aaronpk
wonder what else might be error on bridgy fed because of that tho
#
[snarfed]2
right, it's usually string in Mastodon, but afaik object is ok too?
#
aaronpk
depends on what you mean by "ok" :)
#
[snarfed]2
yeah real world interop is a separate question
#
aaronpk
i'm sure it's allowed by the spec, but a lot of things are allowed by the spec because it's more of a suggestion of a spec
geoffo joined the channel
#
[KevinMarks]
not so much a spec as hearsay?
#
aaronpk
oh funny that problem also caused the post to not get filtered to the right place in my reader
gxt__, geoffo and mro joined the channel
#
[jacky]
do people keep some sort of 'compatibility' list of what their Micropub servers or client support?
#
[jacky]
it's _probably_ possible by combing the Wiki, repos and checking logs from the outside but hm
#
[schmarty]
micropub.rocks? 😂
#
[jacky]
ha, that's actually a great way to do thart
#
[jacky]
hm okay but this is mainly within spec conformance
#
[jacky]
I was hoping for something that also listed the other extension support (we _kinda_ do that with GitHub issues tbh)
#
aaronpk
sounds like a good job for the wiki
geoffo joined the channel
#
GWG
aaronpk: We have it in the wiki for proposals but not once stable
#
GWG
I wonder if we got query for supported properties and such if Angelo could do one of those .rocks things he likes so much
#
[jacky]
I do think that could enable it
#
[schmarty]
i predict a lot of future misery over querying for supported properties
#
GWG
[schmarty]: How so?
#
[schmarty]
it reminds me of SOAP/WSDL, xml and json schemas, etc.
#
[schmarty]
agreement layers that become their own deep programming issues.
#
[schmarty]
and of course the agreement layers among humans!
#
[schmarty]
"i support location!" okay, is that `u-location` or `p-location` or `u-location h-card` and does `geo:` count as a URL and does `p-location` expect an address oh no or maybe a nested `h-adr` , ...
#
GWG
That's why it is a problem
#
[schmarty]
like it's already the case that micropub endpoints need to handle a lot of possible data shapes for the same vocab. e.g. most micropub clients send "category" as a bunch of text strings. but ownyourswarm sends person tags as nested h-cards!
#
[schmarty]
i just see this properties thing as creating extra failure modes that are hard to debug.
#
GWG
[schmarty]: It's a good point. Wonder if there's a solution or no chance
#
[schmarty]
it's a hard problem set! i don't think there are easy answers but i personally really appreciate when a micropub client makes it easy to see exactly what it's going to send to my micropub endpoint so i can work with it.
#
[schmarty]
a tool to explore and reprocess received micropub requests would be a good feature to add to my micropub endpoint.
#
[schmarty]
it also makes me think of "lenses" for data. similar to https://www.inkandswitch.com/cambria/
#
[schmarty]
for example my site is on hugo so i need to store `tags` rather than an array named `category`, and they need to be strings, so i have to move any nested objects. that's a mapping that needs to work from micropub => my post storage, but also needs to work the other way to support micropub content queries.
#
[snarfed]2
[benatwork] it's been happening for a long time, so I expect you know already, but just in case, your webmention handler is 500ing
#
[snarfed]2
error page says base64_encode(): Argument #1 ($string) must be of type string, array given
gxt__ joined the channel
#
[snarfed]2
looks like the flood of Deletes from mastodon.technology finally stopped last night
#
[snarfed]2
it was accounting for over half of all of BF's traffic 😅
#
sknebel
Delete all things! Repeatedly!
#
[snarfed]2
hey now, only once for every user on the instance, for every user they ever interacted with, ever 😎
#
[schmarty]
now that's what i call exponential growth 📈
barnaby, [benatwork] and gRegor joined the channel
#
[fluffy]
that’s still just polynomial growth 😛
wagle joined the channel
#
[schmarty]
good thing i'm not a mathematician.
tbbrown joined the channel
#
[snarfed]2
noticed this gem in the AT Protocol FAQ just now: they have "a preference for domain usernames over AP’s double-@ email usernames" https://atproto.com/guides/faq#why-not-use-activitypub
#
[manton]
Nice find. I like that they are spelling that out.
#
[manton]
Related to the discussion about Mastodon sending out deletes, this issue and the “steps to reproduce” are pretty great. 🙂 https://github.com/mastodon/mastodon/issues/22070
#
Loqi
[preview] [zcdunn] #22070 Mastodon Sends Too Many Deletes
#
Loqi
[preview] [ClearlyClaire] #22273 Use bloom filters to limit what servers account deletion notices are sent to
#
[snarfed]2
"mastodon sends Deletes to all known servers, as a "best effort" towards making sure it is deleted from all remote servers. this is done because you can never be sure how far a status or profile has traveled." 😆 😆 😆 🍿 https://github.com/mastodon/mastodon/issues/22070#issuecomment-1338062401
#
Loqi
[preview] [trwnh] mastodon sends Deletes to all known servers, as a "best effort" towards making sure it is deleted from all remote servers. this is done because you can never be sure how far a status or profile has traveled.
#
Loqi
[preview] [ClearlyClaire] To clear up some misunderstanding, Mastodon does not send a `Delete` to every known server for every deleted post, that would be too expensive. It does send a `Delete` to every known server for every deleted *account* though. I do have some idea o...