#dev 2023-11-15
2023-11-15 UTC
# [cleverdevil] (Sorry, got sucked into a meeting, hah. I'll be back here shortly!)
Renfield joined the channel
# [cleverdevil] [snarfed] I think I'd like to open source it eventually. My first priority is making it work for my own site, and I am not really being too careful about generalizing too much at this stage. Once I get things to a good state, I think that it would be fun and useful to clean up a bit and open source.
# [cleverdevil] @GWG no worries about using my own words on the IndieAuth implementation, heh. I am much more of a Micropub expert than an IndieAuth expert, and there are great tools out there (like micropub.rocks) to lean on to verify my work against the spec. There isn't anything like that for IndieAuth as of yet.
# [cleverdevil] [tantek] definitely worth considering!
# [cleverdevil] I have to say, the thing I am the most happy with at this point is the data model.
# Loqi It looks like we don't have a page for "link discovery" yet. Would you like to create it? (Or just say "link discovery is ____", a sentence describing the term)
# Loqi 👃 follow your nose is an intentional principle for designing discovery algorithms that start with the specific URL you want to discover things about, retrieving headers or contents, and parsing for particular link rel values to URLs to the desired information, in contrast to the “well-known” approach of looking outside the specific URL, like using only its domain and a hardcoded path https://indieweb.org/follow_your_nose
# [tantek] link discovery is /discovery-algorithms#Link_rel_discovery
# [cleverdevil] Data on disk looks like this - `content/year=2023/month=11/day=14/<some-post-uuid>.json`
# [cleverdevil] I have roughly 15k files
bterry joined the channel
# [tantek] [cleverdevil] here is an example of what I mean by incremental open sourcing common / core functions as libraries etc.: https://indieweb.org/Falcon#Open_Source
# [cleverdevil] This SQL is issued to walk the entire directory structure and suck it into DuckDB. I get a view called `content` that I can query with plain SQL, very simply, and can build more complex queries if needed.
# [cleverdevil] (It'd be a lot smaller SQL statement if I didn't attach Overland location data to every single post!)
# [cleverdevil] overland++
# [cleverdevil] Basics of the API:
# [jacky] you mentioning this just inspired me to pull my own database for http://v2.jacky.wtf; 14 MB for a SQLite database is def more than I expected
# [cleverdevil] I have Post subclasses for things like Status, Blog, Listen, Watch, etc.
# [cleverdevil] `model.Post.query()` automagically returns the right thing and I can also get specific kinds directly: `model.Watch.query()`
# [cleverdevil] Or I can get a subset of kinds: `model.Post.query(kinds=['status', 'blog', 'photo'])`
# [cleverdevil] I am definitely a bit... loose with my markup 😄
# [cleverdevil] Guessing I have plenty of places where I am deviating from MF2. I'll certainly benefit from extra eyes once I get a little deeper into the experiment.
# [cleverdevil] Yeah, I did that for a while. Then Darksky went away
# [cleverdevil] But, I still embed location data on every post, and have a ton of data from places like Swarm, Trakt, Overcast, etc.
# Loqi It looks like we don't have a page for "PirateWeather" yet. Would you like to create it? (Or just say "PirateWeather is ____", a sentence describing the term)
# [cleverdevil] I stream my location using Overland to a little web service I wrote that just dumps it into an S3 bucket.
# [cleverdevil] Then, I pull the latest location down once a minute from S3 to my website's server into a static JSON file.
# [cleverdevil] When a post gets created, my site sucks that location data in and enriches the post content with it.
# Loqi Pirate Weather is a free and open weather forecast API created by Alexander Rey, and supported by the Simple Location WordPress plugin https://indieweb.org/Pirate_Weather
# [cleverdevil] I will absolutely support syndication to silos, but at this point I really only spend time on Mastodon and a little on Bluesky.
# Loqi Pirate Weather is a free and open weather forecast API created by Alexander Rey, and supported by the Simple Location WordPress plugin https://indieweb.org/Pirate_Weather
# [cleverdevil] I have a tool running now that is deleting all of my tweets and historical likes as well, but its taking a long time. Twitter has rate limited everything to extreme levels at this point.
# Loqi PirateWeather is Pirate Weather https://indieweb.org/PirateWeather
# Loqi A planet, in the context of the indieweb, and blogs/feeds for even longer, is a site that aggregates feeds/updates from a variety of sources, typically focused on a particular topic or community https://indieweb.org/planet
geoffo joined the channel
# [cleverdevil] [tantek] I will send posts to silos using their APIs from my site, and then rely on Bridgy to send webmentions back.
# [cleverdevil] When Twitter jumped the shark, I seriously ramped up my use of Mastodon, and now self-host an instance. Bluesky has attracted a different audience, which fills a gap that Mastodon doesn't. Honestly, I am not sold on Bluesky, and have lots of skepticism about its leadership and monetization strategy.
# [cleverdevil] Mastodon is honestly great. It just doesn't have the same level of zeitgeist relevance as Twitter did in its prime.
# aaronpk [cleverdevil]: btw in case you missed it, I *finally* did a bunch of updates to Overland this weekend, if you want to join the testflight beta there's a link on https://indieweb.org/Overland
# [cleverdevil] Oh cool!
# [cleverdevil] What's new?
# [cleverdevil] Ah, yeah, its been working fine for me, I think.
# [cleverdevil] Yup!
# [cleverdevil] Cool, I will join the TestFlight for sure.
# [cleverdevil] (This is locked behind an authentication wall for obvious reasons, hence the screenshot).
# [cleverdevil] Installed and its running. Did a quick force sync and it worked.
# [cleverdevil] Dark mode is a nice touch already 😄
# [cleverdevil] Showing speed: 0
# [cleverdevil] So, I think I dodged whatever bullet that was
# [cleverdevil] Just with the rotation of the earth
# [cleverdevil] Other than that, I am stationary 😉
# [cleverdevil] How could I forget?!
# [cleverdevil] Cool will do
gRegor joined the channel
# [jacky] stumbled upon https://desec.readthedocs.io/en/latest/auth/account.html
[jeremycherfas] joined the channel
# [jeremycherfas] !tell [cleverdevil] Would you mind sharing your approach to exporting your Known data to json files?
# [cleverdevil] [jeremycherfas] I wrote a series of fairly hacks scripts. The first one connects to the Known database and loops through every single “entity” (post) in the database. It dumps the Known-specific JSON data to a simple directory structure. It also calls a simple PHP script that uses the Known library to render each post as HTML. Then, I have a second script that walks through the exported data and uses mf2py (Python library) to genera
# [cleverdevil] MF2 JSON representations of each post. It also looks at the JSON from Known and pulls some extra detail to add to the output from mf2py.
# [cleverdevil] I could probably open source these.
IWSlackGateway, jjuran, jjuran_, [Murray], [KevinMarks], lanodan and omz13 joined the channel
# jeremycherfas I'd appreciate that. Do your scripts pull down images too?
wagle, [benatwork], [tantek], eitilt, [jacky] and [schmarty] joined the channel
# [cleverdevil] [jeremycherfas] no, it just pulls the URLs to the images. I will make an additional script that will do image downloads to the media endpoint, but am waiting to do that until I get a bit deeper in the project.
[aciccarello], eitilt, geoffo, [marksuth], [nsmsn], [bjoern], gRegorLove_ and [snarfed] joined the channel
# [snarfed] the galaxy brain approach would be to give each _instance_ in each protocol its own BF subdomain. that would let admins defederate individual bridged instances, but not the whole bridge. theoretically possible if I converted dots to dashes, maybe, but not easy. https://github.com/snarfed/bridgy-fed/issues/711
# [aciccarello] lol http://bs.bridg.gy would have been great
geoffo joined the channel
geoffo and eitilt1 joined the channel
# [m] Does this mean that we are close to cross posting to Bluesky? 😊
# [snarfed] [m] yes! cross posting via Bridgy classic seems imminent: https://github.com/snarfed/bridgy/issues/1580#issuecomment-1812105075
# [m] [snarfed] cool, I’m a bit new to this stuff but does it mean I can add a syndication link to my post and send it to Bluesky using web mentions?
# [snarfed] [m] not yet but soon! hence "imminent." it'll work like this: https://brid.gy/about#publishing
geoffo joined the channel
geoffo joined the channel
# [tantek] hey it looks like Mastodon embeds have enough visible content to markup with mf2 h-entry etc. — has anyone tried? https://sonomu.club/@staxl/111416437885924112/embed
# [aciccarello] Would you link to the embed version? Seems less than optimal.
# [KevinMarks] it has an h-card still there. Maybe we coudl add back in the other mf2 that was lost in 4.0
# [KevinMarks] though the docs now say deprecated https://docs.joinmastodon.org/spec/microformats/
geoffo joined the channel
# [aciccarello] Ah, I see. That makes sense.
# [aciccarello] What does it mean to deprecate HTML permalinks?
# [aciccarello] > As of v4.0.0, HTML permalinks for statuses and profiles have been deprecated and removed from Mastodon.
# [aciccarello] I'm having a hard time following the change history when the PRs look like this https://github.com/mastodon/documentation/pull/1110
# [tantek] my complaint is that a "simple" fix to docs https://github.com/mastodon/documentation/pull/1202 was neglected/ignored
geoffo, [chrisaldrich] and [nsmsn] joined the channel
# thaidaree so you have an article on your web. it's a normal kind where you published your own thing. you also have a section in your markup that parses mentions
# thaidaree someone posts a mention on their end and does a webmention to your site
# thaidaree how do they style the mention on their end? do people usually use some specific suburl for those? like /my-mentions/mention-1/
# thaidaree I presume that's the way to go
saptaks joined the channel
# Loqi 7👍 likes are sometimes part of the information about a post displayed on the post itself, often in a post footer, like a total number like responses, icons of recent likers, or even a datetime ordered list of likes https://indieweb.org/likes
# gRegor https://indieweb.org/like#IndieWeb_Examples has examples of people publishing them
# Loqi URL design is the practice of deliberately designing URLs, in particular, permalinks, typically for a better UX for everyone who creates, reads, and shares content https://indieweb.org/URL_design
# gRegor I use /YYYY/MM/slug for the majority of my posts, regardless of type
# thaidaree how do you differentiate regarding styling? you tag your articles?
# thaidaree ah, I see, you're having that star and "in reply to:" in your posts
# thaidaree hummm, now I wonder if I should have /YYYY/MM/DD/slug or just /articles/slug
# thaidaree ok, another question. I use a generated static web. 3xx are server responses. what do you think about making the mapping from old to new urls with nginx that I use for delivering?
[0x3b0b] joined the channel