Shaping Up a Business Use-Case for ActivityPub in Discourse

@aschrijver thank you for this proposal and your support in pushing the @discourse team to adopt ActivityPub. As with everything, the Discourse team is not monolithic and has some people more interested in ActivityPub support than others. But I suspect this drive is second to the business incentives of Discourse. Before inviting @riking, as he requested a business use-case to be convinced, I’d like to help shaping one up. I can invite @merefield and other people at The Pavilion who demonstrated interest.

My idea would probably revolve around maintaining a “main” Discourse identity (e.g., my own self-hosted instance that I use daily) and use this to connect to other instances (as a “staged user” if I don’t want to fully participate, but still be able to reply to existing topics, like I would by email) so I can follow public topics. This can be pitched as a minimal use-case to enable remote participation equivalent to email, but using ActivityPub instead. On my “main” instance, I could received notifications from remote actor topics as I subscribe to them. In other words:

  1. a plugin would implement ActivityPub for public topics, giving them an Inbox/Outbox pair that other ActivityPub actors can suscribe to.
  2. A topic would announce new comments as Notes
  3. Subscribers would receive a private message mentioning the announce.

Already this minimal implementation would enable ActivtyPub staged users following the email staged users, and reply_by_activitypub could offer a next step. For the first iteration, only topic-publish-notes, subscribe-to-stage-user, and subscribe-receives-notifications would be within scope.

Now, this does not make for a solid business use-case, but it can help start the conversation.

2 Likes

Because there was follow-up on Discourse Meta to the AP topics, I first responded there. Relevant in the post linked below are the decision where to place the functionality: giving full freedom to users (like in this topic and the original RFC proposal on Meta), or keeping forum staff in full control (like in my Discourse-as-a-Fabric description, and which I think is more interesting to Discourse, the company, and its customers, the community managers):

The previous discussion on Meta has progressed quite well. Note that codinghorror (founder Jeff Atwood) reacted, and it shows some shortcomings in AP / Fediverse positioning maybe. He writes (emphasis mine):

Activitypub is a good idea, but even brand new software implementing it as first class citizens have to fix quite a few holes in the specs – so for us it makes sense to wait and see.

Also, this is totally doable as a plugin if it is something a particular group is super passionate about.

These ‘holes’ mentioned there are arguably fixed by the additional range of (standardized) technology, apart from AP, needed to plug them. They are WebFinger, HTTP Signatures, OAuth2, etc.

The fact that this isn’t immediately clear is due to the fact that no website, including activitypub.rocks, informs good enough on the topic.