User avatar
mcc @mcc@mastodon.social
1y
So I have now experienced development with both ActivityPub and ATProto and I feel like my 10,000 foot view is that ActivityPub is easy breezy to develop for but hell to sysadmin, whereas ATProto is a dream to sysadmin¹ but development is just digging through a giant fucking pile of garbage

¹ Because a giant, unaccountable corporation you just have to trust will never turn on you is hosting all the hard parts, natch
6
0
0
0
User avatar
mcc @mcc@mastodon.social
1y
I do feel that pondering what does and doesn't work in ATProto is making me realize there is an Actual Issue with ActivityPub, which is that "Publish" and "Subscribe" are strongly coupled into a single server. I feel in the past I've been groping toward this problem by talking about "portable identity" or other things, but maybe it's just the coupling by itself. ATProto is a mess but you go through different services to publish content and subscribe to content, and that makes publishing easy
2
0
0
0
User avatar
mcc @mcc@mastodon.social
1y
By contrast, what is it ActivityPub admins complain about? It's the subscribe side. Maintaining blocklists by hand. The ballooning server costs of images people saw in RTs. I run my own PDS for bluesky because it's only the publish side. I don't want to deal with administering the subscribe side. I want Mastodon gGMBH or Bluesky Social or somebody to handle that.

…but if Mastodon.social is how I
read posts, Mastodon.social also has to be how I publish posts.
3
0
0
0
User avatar
Emelia 👸🏻 @thisismissem@hachyderm.io
1y
@mcc Theoretically you inbox and outbox could be on different servers
2
0
0
0
User avatar
erincandescent 💜 @erincandescent@erincandescent.net
1y
@thisismissem @mcc also the storage costs on the subscription side are entirely a consequence of how Mastodon in particular has decided to handle media and not a required feature
3
0
0
0
User avatar
pathetic piss kitten @kitten@elizabeth.cat
1y
@erincandescent @thisismissem @mcc no-media-proxy gang
1
0
1
0

User avatar
erincandescent 💜 @erincandescent@erincandescent.net
1y
@kitten @thisismissem @mcc there's a bunch of value to running a media proxy but IMO it really should be a size-limited read-through cache rather than Mastodon/GTS' approach of "Store every image/video attached to a post your instance has wandered across for the following X days"
1
0
2
0
User avatar
Renaud Chaput @renchap@oisaur.com
1y
@erincandescent I have plans to fix this (with a remote media storage FASP), hopefully this will get selected by NLNet soon to get it funded

Loading from the remote origin has several other drawbacks like creating load on the remote origin, availability of content overall goes down quite a lot, some implems do not use stable URLs for media, can’t have strict CSP…

But we can definitely do better here, and will!

@kitten @thisismissem @mcc
3
0
0
0
User avatar
Renaud Chaput @renchap@oisaur.com
1y
@erincandescent also surprisingly when I ran a poll a few weeks ago, media storage was the most voted issue, but DB storage growth was predominent in the replies. Solving this is less clear to me, we would need to have garbage collection of objects in the DB (how to select the ones to purge? What about relationships?), and on-deman fetching of content (how to handle async fetches with the API, availability…)

@kitten @thisismissem @mcc
1
0
0
0
User avatar
Emelia 👸🏻 @thisismissem@hachyderm.io
1y
@renchap @erincandescent @kitten @mcc haven't a number of the db issues been down to never vacuuming or repacking?
0
0
0
0
User avatar
erincandescent 💜 @erincandescent@erincandescent.net
1y
@renchap @kitten @thisismissem @mcc I mostly think the media cache should be read through on first access, probably have a size limit configurable, and probably also a per file size limit to prevent exhaustion. The current implementation creates a very intense thundering herd of instances rushing to grab media.

Agreed about the general utility though.
2
0
0
0
User avatar
erincandescent 💜 @erincandescent@erincandescent.net
1y
@renchap @kitten @mcc @thisismissem re. the FASP thing, I’ve been thinking about adding support to Akkoma for camo or something similar to Akkoma. There are other places I end up wanting a conceptually similar media proxy (eg. Forgejo) and I think that’s the closest thing that exists to a defacto standard protocol right now
1
0
0
0
User avatar
Renaud Chaput @renchap@oisaur.com
1y
@erincandescent probably a good idea to not duplicate efforts? Also I would include on the fly media processing (delivery in most efficient format using the Accept header, client hints for image size…) in it as well, using @imgproxy for example.

And for various reasons we can discuss I don’t think we can do with a one-way URL encoded protocol, hence using a FASP for it

@kitten @mcc @thisismissem
0
0
0
0
User avatar
Renaud Chaput @renchap@oisaur.com
1y
@erincandescent I don’t know if we will build this info Mastodon (that will probably require a new process, I don’t really want to do it in core), but that’s the idea with a FASP, so many Fediverse instances can use the same service that will provide this (and reduce duplication or content/cache, reduce the thundering herd issue…)

@kitten @thisismissem @mcc
0
0
0
0
User avatar
mcc @mcc@mastodon.social
1y
@renchap @erincandescent @kitten @thisismissem If I try to imagine how I'd solve the problem, I'd do it by groups of 4 or 5 tiny servers whose admins decide they trust each other forming a "local" image pool that is shared by only that small number of servers
0
0
0
0