ActivityPub Support: Phase 1 RFC

There are many instances of Discourse. I don’t know exactly but I have accounts on a few dozens. It’s impossible to keep track of everything and many times I come across topics in distinct but no so different communities discussing similar issues, that could well be shared across instances since some of the participants are repeating themselves across discussions. It would really help to be able to share such topics across instances without having to login several times, cross-reference topics and not have a fluid discussion with interested parties.

Having ActivityPub users treated as staged users the same way emails users foreign to a Discourse instance are treated seems to be a good compromise to start with.

An RSS feed would certainly help you track ongoing topics at a single place but would not bring anything different from the Discourse Hub app, nor would it allow you to participate.

@hellekin I don’t know about this. Maybe you’re right, maybe you aren’t.
There are lots of nightclubs, restaurants, supermarkets, softwares, etc. Some are even pretty close. Geographically and/or in term of what they offer. Should one have the view that it’s “stupid” different places offering the same thing are separated? And these places should be merged to only have a centralized one?

Now, here, it’s a bit more evolved as the communities would stay kind of separated, but they are linked. Remains the question if all communities are the “same”: It is the same rules, the same atmosphere, the same kind of people, etc? This may be what makes a community a “special place” worth (actively) participating on: The fact that it’s unique. It has a unique vibe, a unique kind of humor going on, etc. A unique IDENTITY. People being a huge aspect of this: Who goes here or there. What kind of person.

Maybe this is a view on DIVERSITY: Mixing up everything, and ending up with something the “same” everywhere, because it’s so mixed up.

On the other hand, we have LINKS and QUOTES. Nothing prevents anyone from linking, quoting and summarizing what happens somewhere else. And here, you can keep the identity of each place, and not render everything the “same”.

Anyway, this may be the core questions behind the ActivityPub principle itself, and the willingness to implement it with Discourse. Of course, if it’s only optional, anyone can do as he wishes. and options are generally a good thing, IMHO (I’m not really sure why a successful community would want its content to be shared outside, and people to be able to interact with it from the outside).

[That’s a little some “Demolition man” thing where there are only Taco Bell restaurants left, isn’t it?]

「いいね!」 1

I’m not sure how your view relates to my previous post. I did not say anything about merging communities, simply some common topics. And even then I only suggested user accounts could be the proxy…

And isn’t this, “merging” the offerings of different communities? You still “merge” some content, even if, as said in the previous message:

There seem to be a unwillingness to do it from the Discourse team, and an unclear advantages/use case on top of this. If you don’t see how my previous post relates to the subject, then ok. My apologies. forget about it.

Absolutely not. But I would like to read about them in my local newspaper, or - in a more specialized case - an Italian gastronomy guide for connaisseurs. The fact that things are not all the same, are what makes it worth subscribing to them. Back to the web and communities, linking an quoting are valuable of course. But they are another use case, different than sharing a topic between forums and viewing the thread in context, maybe participate directly.

You are right that in some cases you don’t want to mix identities and certainly not completely merge dispersed communities altogether. But you may selectively merge only those parts where it makes sense. Be it on a topic-by-topic basis, certain (sub)categories, tags or specific groups of people sharing content.

It is not really about ActivityPub either. The protocol is quite low-level, building on top of HTTP. You can build anything with it. Very often when mentioning ActivityPub, people automatically tend to think of microblogging (Mastodon) as that is the most popular application until now. If you consider this domain, everyone is sort of creating their own ‘unique community’ with it, defined by who they follow. This creates their personal timeline. Other than that they may have chosen to create their account on e.g. mastodon.technology and their server timeline loosely has the theme “technology” to it. But this domain does not really fit Discourse, of course. It is microblogging, not community forums after all.

Currently some microblogging applications are extending their domain with the concept of Groups. You might see this as a community concept that extends across the server boundary. So while I’m on mastodon.technology I might subscribe to the “spaghetti” group, and “climate change”. But it is still just microblogging → everything is compressed and flattened into my timelines.

What is a succesful community? What are its bounderies, what is inside and outside? These may be very clearly defined, and relate to identity and diversity. One thing they do not relate to per se, are specific server boundaries!

Though I went very broad in Community has no boundary, it is thinking without these artificial server boundaries I addressed (and how that may increase quality, quantity and activity of the community. I did not go into identity, which is a good point to also address). Thanks for responding there @Mevo, I’ll reply in due time.

「いいね!」 5

Thanks @aschrijver , this is very helpful.
I take from the first paragraph the idea to “use it wisely”.
About the second paragraph, I was referring more to the idea of what it enables/does, than the protocol itself, when talking about “ActivityPub”. The “sharing/linking content” idea, or “freeing the content from servers boundaries”, like you talk about it.

The idea of some kind of shift of control/power is interesting: It would not really be the community owners who control anymore “their” users, “their” content (what they host, at least), what people have access to when coming to their place, how information is organized and grouped, etc. The users would be more in control and more free to pick what they want, from where they want, and make their “own menu”.

I can see how this may be appealing from the user’s POV, and how it may be a little scary/worrying from a community owner POV.

Taking a restaurant analogy, I agree I was probably getting a little too far with my point of merging several places, but I think your analogies are too soft: It’s more than what you describe, IMHO. It’s going to one restaurant and being able to order a dish from another place, made by the chef of that place. It may raise questions (which was a big part of my point) as to why the restaurant owner who pays well that chef, and maybe had troubles to attract him and retain him, would want to NOT have a clear reason for customers to come to HIS restaurant anymore. Your answer is kind of: It’s great from a customer POV. Yes, sure, I agree.

But anyway, you may be right on this, and the point I’m making looks quite like the fears of companies with open source in the past.

NGIグラントからこの機能開発を支援するニュースがありましたが、オファーは却下されました。来年は別のグラントに応募する予定です。

「いいね!」 2

それは素晴らしいでしょう。

「いいね!」 2

ActivityPubの実装に関する現在の状況(11月22日現在)を誰か要約してもらえませんか?関連するスレッドをいくつか確認しましたが、現在の私の理解は以下の通りです。

  • 2019年にEUからの資金提供を受けて実装作業を行う試みがありましたが、何らかの理由で申請は取り下げられました。
  • 現在のところ、テストに使用できるコード(プラグイン)はありません。
  • Discourse.orgのスタッフ/コアチームの間には、「フェディバース化されたDiscourse」の必要性について共通の意見がありません。

この理解は正しいでしょうか?私はドイツの大規模な政党で働いており、インスタンス間でアクティビティ通知が共有されるような、分散型のDiscourseを本当に必要としています。そのため、これらのアイデアの現在の状況に関心があります…

「いいね!」 5

はい。

私たちは、Discourse で作業するために複数の Discourse インスタンスを使用しており、ユーザーは次のような方法で一元化された通知を受け取ります。

  • Web プッシュ通知 (Android、Windows、Linux、MacOS で利用可能)

  • DiscourseHub (ホスティング中のサイトの iOS および Android で利用可能)

  • Eメール (どこでも利用可能)

RSS フィードを購読したり、.ics エンドポイント経由でブックマークをカレンダーに同期したりできることは言うまでもありません。

なぜそれのために ActivityPub が必要なのでしょうか?

「いいね!」 5

OPによると、RSSフィードはインターネットの普遍的に集約されたフィードを持つための最良のソリューションである可能性が高いです。また、rss.appのようなサイトやopenrss.orgのような動きにより、今日ではフォローしたいほとんどのサイトのRSSフィードを取得できます。

「いいね!」 3

ここで議論の途中であり、おそらくこれまでの議論のすべての側面をまだ理解できていない可能性があります。

中央集権的なセットアップから、複数のDiscourseインスタンス(オンプレミスでヨーロッパにホストする必要があり、AWSは選択肢ではありません)への分散型セットアップに切り替える場合、「サーバー間」のアクティビティメッセージングにより、ユーザーは1つのシステムにのみログインし、別のシステムからの興味深いアクティビティに関する情報を取得できます。

Eメールは「混雑しすぎ」ており、「標準的なニュースレター」を通じて流れる情報のカバレッジが低下しています。ActivityPub(サーバー間APIを使用)を使用すると、さまざまなソースからの情報を1つの「優先サーバー」に収集できます。

RSSフィードは確かに可能なソリューションですが、これにはさまざまなサーバーへの登録/認証が必要です。また、さまざまなテクノロジーでの手動作業であり、ほとんどの「非技術」ユーザーはそれに慣れていません。

「いいね!」 2

Fediverse の人々に、手動のワンボックスよりもリッチな方法で Discourse サーバーに参加してもらいたいと考えています。

RSS フィードを使用しており(実際、複数の Discourse インスタンスの新しいコンテンツを追跡するために使用しています)が、ActivityPub / ActivityStream の送信専用プラグインがあれば、人々が熱狂的に参加している場所に到達し、Discourse フォーラムの情報へのアクセス性を高めるのに役立ちます。

Discourse チームが根本的にこれに反対していることは認識しており、それは彼らの自由です。Discourse の大きな強みの 1 つは、実際に公開で構築され、壁を越えて投げ捨てられるのではなく、真のオープンソースであるため、全員が同意する必要はないということです。:smiling_face:

「いいね!」 3

Discourse における ActivityPub に関する考えは、技術的にも戦略的にも、もう少し成熟させる必要があるかもしれません。

現在の「Twitter の大惨事」が、より多くの人々(特に政治レベルの人々)に、自身の「デジタル主権」の何が問題なのかを再考させることを願っています。そして、おそらく、これは公共およびコミュニティベースのデジタルディスカッションの分野における、真のオープンソースソリューションの新たなチャンスも含まれるでしょう…

「いいね!」 3

これまでのところ、Discourse で ActivityPub を推進してきましたが、なぜ ActivityPub が必要なのかを説明しようとする多くの声を聞いてきました…しかし、@Discourse チームがなぜそれを実装したくないのかについては聞いていません。提示されたすべての議論について、もっともらしいアプローチで対応しようとしましたが、最終的には、リモート アカウントはローカルで ステージング済み と見なされ、現在のステージング済みユーザーと同様に制限される可能性があることを考えると、リモート識別子が信頼レベルにどのように影響するのかについての明確な説明はありませんでした。

複数の関連スレッドがあります。ここで「ディスコースチームは基本的にこれに反対している」という私の見方が間違っているか、時代遅れであることを @sam が明確にしたことを強調したかったのです。

CDCK がこの作業にリソースを投入していない理由は、有料顧客のほとんどがこれを気にしていない、あるいは少なくとも他の機能開発よりも優先度が低いからだと予想されます。現時点および予見可能な将来において、この作業に対するコミュニティの関心は、企業の関心よりもはるかに大きいと推測します。CDCK がこの作業を引き受けた場合、顧客が求めている他の機能を構築しない機会費用は相当なものになる可能性があります。(私は内部情報を持っていません。)

上記の Sam のコメントを踏まえると、Discourse コミュニティの開発者グループがプラグインを開発するのに十分な関心を持っている場合、CDCK はそのプラグインを効果的に機能させるために必要なコアの変更をレビューおよびマージする開発者と協力することに投資すると予想されます。私が Discourse に行った小さな貢献の経験から、彼らは自分たちでは優先しないであろう作業のレビューと支援に労力を優先してきました。:heart:

「いいね!」 7

私は単にディスコースユーザー(マイナーなインスタンスをホストしている)であり、最近始めたばかりなので、技術的にどのようにアプローチするかについて具体的な提案はありません。しかし、WordPressがプラグインを通じてFediverseで大きな存在感を示していることに気づきました。2023年2月現在、750以上のウェブサイトがフェデレーションしており、これは多くの専用フェデレーションプラットフォームよりもすでに多い数字です。したがって、すべてのディスコースコミュニティ(希望するコミュニティ)を、より統合されたものの一部に「魔法のように」することができる可能性があります。主な注意点は、(おそらく)フェデレーションプロトコルは、より多くの採用とともに進化していくため、関連する機能もそれに合わせて進化させるためのコミットメントが必要になるということです。

「いいね!」 2

@SeriousFun01 は、こちらでの最新情報については、Federation support for Discourse - #87 by angus およびそれに続く投稿をお読みください。 :tada:

「いいね!」 3