#dev 2023-12-14

2023-12-14 UTC
[snarfed] joined the channel
#
[snarfed]
re Threads federating, they're not serving AS2 or webfinger yet, at least not for any accounts we've tried yet
#
[snarfed]
looking forward to testing when it's actually testable
btrem joined the channel
#
btrem
Does anyone do self-webmentions? I am trying to keep track of my ferments, with one post for when I make a ferment, and a second post for when I open it, as an update/review. So the update/review would be an h-review of the first post, an h-recipe.
#
btrem
But linking them is tedious. I originally had to figure out the url I used. Seems easy, but I often make the same (or almost the same) ferment. So I have lots of urls with a slug of "radishes" or "pickles".
#
btrem
The only thing that differentiates them is the date, e.g., `2023/06/04/radishes` vs. `2023/06/10/radishes`.
#
btrem
I have taken to adding a database-like id number for each post which must be unique. It does not appear in the url, but I can put the number on the jar of pickles or what have you, so I can then use that number for my review post.
#
btrem
But even this can be quite tedious. I dunno. I think maybe a static site generator is not the way to go, and I need to resort to a database. But if anyone does lots of self-webmentions -- maybe post updates of some sort -- I'd be curious how you handle it.
#
sknebel
sounds a valid way of doing it
#
btrem
what sounds valid? Using the static site generator as I do now? Or changing to a database app?
#
sknebel
using webmentions between pages on your site
#
btrem
shrugs Maybe valid, but not easy to maintain.
#
btrem
Like when I want to create a new post, I have to run a dev copy of the site to see what my last post id is, so as to avoid creating a duplicate id. Then I put that number on the jar label. Then I need to remember that id when I leave my kitchen to create the post.
jeremycherfas joined the channel
#
aaronpk
btrem: i often reply to my own recipe post with a photo when i make it
#
aaronpk
it's like replying to any other post so it's pretty quick
#
btrem
aaronpk what software makes your site? A static site generator? Something else? How do you reply to your own post?
#
aaronpk
it's my own home grown thing, not a static site, but my posts are stored in a format very similar to static sites (markdown with a yaml header)
#
aaronpk
i use quill to post, and i have a bookmarklet in my browser that opens up quill with the in-reply-to field populated with whatever page i was on
#
aaronpk
so it's: view a post, click bookmarklet, type reply, post
#
btrem
Hmm, yeah, that sounds pretty easy.
#
aaronpk
it's very nice
#
btrem
Wonder if I can create a bookmarklet. Probably not, because a bookmarklet won't be able to open up a new file in Visual Code.
#
btrem
Still, it's a nifty idea.
#
btrem
Ironically, taking photos of my ferment is part of what can be tedious, because I have to determine what the next number is for a post. To do that, I have to start up my dev server to see that most recent post. Then I write that number on an adhesive label along with a title, attach it to the jar, and take a picture of the jar.
#
aaronpk
i feel like this is something that can be solved
#
btrem
*Then* I can create a post, transfer the photo to my pc, put it in a directory with that post number.
#
btrem
So *very* tedious.
#
aaronpk
have you written a micropub endpoint for your site yet? that's how i streamlined all of my problems like that
#
btrem
No. I'm not sure /how/ I'd write a micropub endpoint because I use a static site generator. I suppose I don't know much about micropub.
#
aaronpk
lots of other people have made it work, you need to have a server somewhere that can commit to your storage repo
geoffo joined the channel
#
gRegor
I self-webmention a fair bit, but I have a db-driven CMS so searching for posts is relatively easy
#
btrem
Yeah, a database might be the way to go.
#
btrem
I have so many recipes that they were clogging up my site's home page. So I'm in the process of creating a new site that will end up in a new domain (maybe a subdomain of my personal site). And I'm wondering if an SSG is the right tool. I could instead make a recipes database, in sqlite perhaps. And then build the recipe site using data from queries.
#
gRegor
[schmarty] publishes a static site with micropub, think he's running Hugo
#
[schmarty]
I have a little web service set up that accepts webhooks from my git hosting to trigger a rebuild. It pulls down the latest, runs Hugo, puts the updated files up, sends webmentions for new or updated pages. https://git.schmarty.net/schmarty/ssg-hook-publisher-php
#
sknebel
yes, one can mix concepts quite bit.
#
sknebel
e.g. my site is dynamic, but does everything out of files on disk that look quite similar to how the input for an SSG would look like
#
aaronpk
You don't need a database to manage a static site with micropub, you need to make the micropub endpoint automate all the steps you currently do manually
#
[aciccarello]
btrem, I use Indiekit as my micropub server for my static site. It's a little node application that can create files in GitHub or other repos.
#
[aciccarello]
what is Indiekit?
#
Loqi
Indiekit (GitHub repo) is “the little Node.js server with all the pieces needed to own your content and share it with the wider independent web” https://indieweb.org/Indiekit
gRegorLove_, gRegorLove__ and CRISPR joined the channel
#
btrem
Ok, some links to look at, and some thinking to do. It's not just micropub. It's making the right connection between recipe and rating. But that might not be any easier with a db, since (part of) the problem is that I have many similar posts. So I have lots of pickles posts, and lots of radishes posts, etc.
#
btrem
As I said, lots to look at, thanks for the links and ideas.
#
btrem
aaronpk++ [aciccarello]++ sknebel++[schmarty]++ gRegor++
#
Loqi
aaronpk has 41 karma in this channel over the last year (107 in all channels)
#
Loqi
gRegor has 21 karma in this channel over the last year (80 in all channels)
#
btrem
Did I get everyone? :)
#
btrem
ack, messed up the spacing. Also apparently I should not include brackets. So addendum: sknebel++ schmarty++
#
Loqi
schmarty has 13 karma in this channel over the last year (42 in all channels)
[tantek] joined the channel
#
[tantek]
karma pointing only works on the first and last "word" on a line
#
btrem
sknebel++
#
Loqi
sknebel has 14 karma in this channel over the last year (38 in all channels)
#
btrem
Right, you get the idea.
geoffo, rjomara and CRISPR joined the channel
#
Loqi
[preview] [Tim Bray] A few annoying problems with the #Fediverse could be solved if there were a new URI scheme with the right semantics. I notice that Bluesky has already provisionally-registered the "at:" URI scheme for similar purposes. So, I sketched out a design for...
#
[tantek]
capjamesg++ amazing!
#
Loqi
capjamesg has 40 karma in this channel over the last year (131 in all channels)
#
[tantek]
[KevinMarks] indeed. That URL scheme proposal is a good example of what NOT to do. johannes's simple request was ignored: https://social.coop/@J12t/111575260878262958 j12t++
#
Loqi
j12t has 1 karma in this channel over the last year (6 in all channels)
#
Loqi
[preview] [Johannes Ernst] @timbray Would be nice to enumerate the problems and related problems to see whether this is the right "slice" of them to solve together.
AramZS, barnaby, CRISPR, [jeremycherfas] and geoffo joined the channel
#
[manton]
[KevinMarks] [tantek] The fedi:// proposal reminds me of feed:// for RSS, which never seemed to take off. Basically solving exactly the same problem.
#
[KevinMarks]
The protocol model has been broken for a while, because iOS made it app exclusive
#
[manton]
Yeah. Also it’s hard to control on iOS in the domain handling too… If I want Ivory on my phone to stop intercepting Mastodon URLs, there’s no obvious way to do that.
#
[manton]
In the old days of classic Mac OS, there was actually a central place (Internet Config control panel) to set all of this.
#
[manton]
[snarfed] Just got a reply from someone on Bluesky and it showed up in http://Micro.blog via Bridgy with their username as their Bluesky hostname. So cool! Great work on that.
#
[tantek]
[manton] I totally remember that Internet Config control panel!
#
[manton]
Good times. 🙂
[Joe_Crawford] joined the channel
#
[snarfed]
[manton] awesome!
#
capjamesg
[tantek] This AutoWrite thing is getting really difficult now :D
gRegor joined the channel
#
[tantek]
[manton] [snarfed] looks like some Meta-employee Threads accounts are supporting following now, e.g. this shows a Follow button! (replace the domain with your instance domain otherwise it redirects to his Threads profile) https://indieweb.social/@mosseri@threads.net
#
[aciccarello]
Interesting, I was able to search for the @@ username but not the profile URL
#
[manton]
I think the Threads support is hardcoded to specific Mastodon servers somehow. I still can’t get it to work more generally from curl or http://Micro.blog.
#
[manton]
[aciccarello] Might be because the Threads actor URLs are slightly different, e.g. https://www.threads.net/ap/users/mosseri
#
[manton]
Or might just be because everything is still half-baked. Sounds like it will be months before it fully rolls out.
#
[aciccarello]
Ah, interesting. I also wonder if they could fix that with some meta/link tag when they roll out more widely
[catgirlinspace] joined the channel
#
[tantek]
[manton] it is possible that they are starting with an "allow list" of servers that can request nodeinfo/webfinger etc.
#
[tantek]
Interesting, I'm curious if it is Mastodon-only. I will try following from the Bridgy Fed UI
#
[tantek]
YES IT WORKS IN BRIDGYFED++
#
Loqi
BRIDGYFED has 7 karma in this channel over the last year (11 in all channels)
#
[tantek]
I was able to enter @mosseri@threads.net into https://fed.brid.gy/web/tantek.com/following and click Follow, do an IndieAuth dance to make sure it is me (http://tantek.com), and then now it shows Adam in the list on that Bridgy Fed URL!
#
Loqi
[preview] Tantek Çelik
#
[tantek]
So, confirmed, Threads federation outbound is turned on for at least one Threads user who is a Meta employee, and is supported/allowed by at least *some* Mastodon servers (w3c.social, indieweb.social tested so far) and BridgyFed
#
[aciccarello]
Sounds like they are enabling "follow threads via activitypub" before making anything from activitypub available within Threads
#
[aciccarello]
Which makes sense for a company trying to entice creators to come to their platform
#
[tantek]
it makes sense as an incremental "safer" step, as is limiting those who can syndicate out from Threads to AP to (a subset of?) Meta employees
#
capjamesg
From #chat. I have an API where you can test my word prediction system: https://jamesg.blog/autowrite/surprisal?query=IndieWeb&urls=
#
capjamesg
Leave &urls= blank, it must be present.
#
capjamesg
You can change the query to any sequence of letters.
#
capjamesg
The predictions are ordered by probabilities; the higher the prediction, the more likely it is I would type that word given the letters you provide.
#
capjamesg
You can try the interface at https://jamesg.blog/autowrite/. A space will autocomplete if you type 3-8(?) characters.
#
capjamesg
This is a lot slower on a server, interestingly. But that's okay because I want this to be a local app.
#
[tantek]
Oooh this is great. One annoying bug so far, if I click earlier in the text to edit it, the cursor gets repositioned immediately to the end of the text 😂
#
[tantek]
so if you want to correct a prior mistake, you have to delete all the way back to it, fix it, then retype
#
[tantek]
oh correction, I can use arrow keys to reposition but not the mouse pointer?!? (i.e. clicking with the mouse pointer into a prior word causes the insertion cursor to get slammed to the end of the text)
#
capjamesg
The editing interface is a div :(
#
capjamesg
How did it feel?
#
[tantek]
whoa a div?!? it felt like a Textarea. curious what needs to change to make it work with a text area.
#
[tantek]
The preview auto-complete text looked great, came up quickly, and instantly worked with tab. Felt VERY responsive
#
rubenwardy
how do I type "bob" without it autocompleting to "bobbing"
#
capjamesg
That is the problem I'm trying to solve.
#
capjamesg
I need to remove the space complete for now.
#
capjamesg
On mobile this feels really nice.
#
capjamesg
But I need to add the double space.
#
[tantek]
wait how do you "tab" on mobile?
#
[aciccarello]
Today I Learned opengraph protocol had an XML schema
gRegor joined the channel
#
gRegor
502 error on that autowrite link
#
c​apjamesg
Oops…
#
c​apjamesg
Give me a moment.
#
c​apjamesg
[tantek] I don’t know…
#
c​apjamesg
I would need another control key.
#
c​apjamesg
But this is another reason why autocomplete on space is more desirable.
#
[KevinMarks]
You may want to special case shorter words
#
capjamesg
The site is back online gRegor!
CRISPR joined the channel
#
gRegor
[snarfed], I see some "doesn't look like a domain" and "is not a domain or usable home page URL" in BF logs when I federate, for a few followers. Should I file an issue?
#
gRegor
I don't see them in the subsequent "Delivering to" lines, so looks like they're not being sent to those
#
gRegor
Disregard that part, it does look like it worked. One instance did show "has no delivery target" though, and that one didn't receive the post, based on the public search at least.
#
angelo_
snarfed did you have to do anything special to get threads to work versus mastodon (w/ HTTP Signature)?
angelo joined the channel
#
[snarfed]
gRegor I'll look!
#
[snarfed]
angelo no, BF already does authorized fetch (ie includes HTTP sigs) with all AP object fetches, since a significant chunk of the native fediverse already requires them
CRISPR joined the channel
#
[snarfed]
gRegor thanks for the report, fixed that user. not sure what happened but they should work next time
#
gRegor
thanks!
#
angelo
i can connect to mastodon via http sigs but not threads
#
[manton]
To expand on the earlier Threads compatibility discussion, I realized that Threads requires HTTP signatures but it doesn’t return a 401 if the request isn’t signed. It just returns HTML. My code wasn’t signing unless I got a 401 back first.
CRISPR joined the channel
#
angelo
so it's working for you now manton?
#
[snarfed]
angelo what specific requests are you making?
#
[snarfed]
note that user-facing profile URLs like https://www.threads.net/@shnarfed don't serve AS2, they have alternate AP actor URLs, advertised in webfinger
#
angelo
inside that i find https://www.threads.net/ap/users/0xjessel/ which i then request via HTTP Sig in the same fashion as i do mastodon
#
angelo
that request is signed with the key in https://ragt.ag/owner/actor
#
Loqi
[preview] Angelo Gladding
#
angelo
i am receiving a request for that actor resource during my request to threads