ActivityPub サポート:フェーズ 1 RFC

こんにちは @rishabh@riking@codinghorror さん、

(はい、下に TL;DR があります)

以前、@sl007@hellekin から、NGI0 の資金があっても、このフェーズ 1 は短期的には進められないと聞きました。ActivityPub に基づく相互運用性を推進する仲間として、私ももちろん残念に思います。しかし、Discourse という業界をリードし最も人気のあるフォーラムソフトウェアの視点から見れば、考慮すべき多くの力や優先事項があり、その文脈でのこのビジネス上の判断はおそらく非常に理にかなっています:

決定: 提案されたこの RFC は、優先順位付けされロードマップに載せるには魅力的ではなかった。

この RFC は、@Falco が提案した「まず、フォーラム間での Facebook 風の集約コンテンツフィードを作成することから始めよう」という MVP(最低限機能製品)アプローチを採用していました。これは、何らかの形でネイティブな ActivityPub サポートを実装することで得られる可能性のある、数多くの機能のうちの 1 つに過ぎません。おそらく、そのようなタイムラインは、通常フォーラムで見られるものから少し外れたものであり、私にとっては真のコア機能には見えません。どちらかと言えば追加機能であり、したがって「あれば良い」機能です。

異なるアプローチ

ActivityPub サポートの MVP を素早く完成させる必要性を一旦脇に置けば、逆に進めるプロセスを採用できるかもしれません:

アイデア創出: 相互運用性のユースケースをブレインストーミングし、ビジネス上の利益と独自の売り(USP)という観点から実現可能性を評価する。

つまり、Discourse にあれば本当に魅力的になる機能は何か?あるいはもっと言うと、何が可能かという点で情報が入ってこない場合、Discourse は機会を逃してしまう可能性はどこにあるのか?

上記の @Falco最新の投稿 では、彼自身のビジネスドメインに合わせた専用リンクトデータ語彙を基盤としてゼロから構築された Lemmy について言及しています。彼らは MVP を完成させ、既に本番環境で運用しており、現在は自らのドメインに基づいて機能セットの拡張を検討しています。これには、Mastodon や Pleroma などが非常に成功しているマイクロブログという「別のドメイン」とのフェデレーションが含まれるかもしれません。

アイデア創出のアプローチは、この演習に沿ったものになるでしょう:

演習: Discourse が最初から独自の ActivityPub ベースのビジネスドメイン(リンクトデータ語彙として定義)に基づいて構築されていたとしたら、どのような姿になっていたかを想像してみましょう。

このブレインストーミングセッションでは自由に飛び回り、創造性を存分に発揮しましょう。

これらから導き出されるユースケースのリストが、ビジネス的な観点から十分に魅力的であればロードマップの一部となるかもしれませんが、そうでなくても、コミュニティがプラグインやコンポーネントを構築し、後の段階で土台を築くための刺激となるでしょう。

ActivityPub とフェデビジア

アプリケーションに ActivityPub サポートを持たせることの意味について、広範な誤解があることに気づきます。多くの人は、それを行う理由が「フェデビジアの一部になること」だと思っています。そして、ここで考えは即座に Mastodon インスタンスとのフェデレーション、つまりフェデレーテッド・マイクロブログドメインとの相互運用性の実装(参加)へと向かいます。

はい、ActivityPub サポートを持てばこれは非常に魅力的な機会であり、PixelFed(Instagram 代替)、PeerTube(YouTube 代替)、そして Lemmy(Reddit 代替)など、多くの他のアプリケーションもこれを目指しています。これらはフェデビジアを参加する価値のある場所にし、多くのイノベーションが形になり、フェデビジアの未来を本当にエキサイティングなものにしています。

しかし…

大規模なユーザーベースをターゲットとする Discourse のような組織は、以下のような質問をするかもしれません。「なぜわずか 400 万人ほどのユーザーがいるフェデビジアと統合したいのか?」「なぜ全く異なるドメインで動作するソフトウェアにマイクロブログを統合するのか?」。そして、その前提で ActivityPub の実装を見送ることは、彼らが正しく主張していることになります。

しかし…

ActivityPub の実装は、(マイクロブログ部分の)フェデビジアの一部になることだけではありません。独自のビジネスドメインに特化したリンクトデータ語彙を実装し、自社の製品インスタンス同士をフェデレーションさせることは、非常に理にかなっています。あるいは、業界内の競合他社が同じ語彙を採用している場合、自社の製品インスタンスとそれら競合のインスタンス同士をフェデレーションさせることも同様です。

その一例が、コードフォージ(GitHub、GitLab、Gitea、SourceHut など)が実装するための相互運用性標準を定義することを目的とした ForgeFed プロジェクトです。これを行うことは、特に GitHub(中央集権的で、次第に壁のある庭園のようなプラットフォーム化している)に対する魅力的な代替案を提供したい小規模なコードフォージプロジェクトにとって、極めて合理的です。広く採用されれば、開発者はもう、インターネット上の散らばったサーバーにある多数のフォージアカウントをやり取りして、興味深いコードプロジェクトに参加したり、Issue を立てたり、コメントしたり、PR を提出したりする必要はなくなります。

(前述のように、至る所に存在するスタンドアロンのコードフォージに対する人々の問題と同じ問題が、私や他の人々が多数の Discourse コミュニティに参加する際にも経験していることに注意してください。)

機会: Discourse は、フォーラムソフトウェアの相互運用性標準を策定し、現在の Discourse の機能セットと完全に整合する形でその標準を形成する上で、他にない立場にあります。

業界には、革新的で新しいアプローチを取り、新機能の追加を迅速に反復する台頭する競合他社がいくつかあります(Discourse の皆さんは、それが誰か最もよくご存知でしょう :slight_smile:)。私の見解では、機能の完成度において Discourse は、それらの製品が提供するものよりもはるかに優れています。また、製品を進化させるのを助けるコミュニティも他にはありません。

しかし、現在存在する相互運用性の機会が、脅威になる可能性もあります。競合他社が先にその機会を掴むか、あるいは EU のデジタル市場法に駆動されてビッグテックのプラットフォームがフォーラムソフトウェアドメインと重複する何かを創り出すかもしれません。どちらの場合も、Discourse がこの標準に整合し、その仕様設計において最も権威ある発言権を持つことは、より困難になるでしょう。

TL;DR

これは意図していたよりも長い投稿になってしまいました。申し訳ありません :blush:

要約すると、現在の ActivityPub サポートに関する立場を踏まえ、短期的な MVP 的な焦点から、長期的な USP やポジショニングという観点で ActivityPub 相互運用性が Discourse に何をもたらすかについてのより広範な評価へと移ることが賢明であるとの主張です。つまり、アイデア創出フェーズから始めて、ActivityPub 採用のビジネスケースを詳細に検討することです。

(これがどのように最善に設定されるかについては、興味があれば中身を任せますが、単に新しい AP トピックを作成し、その上に収集されたユースケースのサマリー wiki を置き、スレッド内でユースケースのアイデアについて議論することから始めることもできるかもしれません)

「いいね!」 11