ディレクトリ
Reddit では、r/opensource のような名前は 1 つのコミュニティにしか属せず、それを管理する者がその名前を持ち続けます。モデレーターがユーザーの好まない判断をしても、取れる手段は r/opensource2 を新しく立ち上げることだけです。r/opensource を購読していた人の大半が関心を持っていたのはオープンソースであって、特定のモデレーションチームではないにもかかわらず、新しいコミュニティは購読者ゼロから始まります。
Bitsocial のアプリは、ディレクトリによってこの問題を避けています。ディレクトリとは、opensource のような、コミュニティどうしが奪い合うトピック名です。その名前の短いルートは、その時点で最上位にランクされているコミュニティを開くため、より優れたコミュニティは誰の許可も得ずにその名前を引き継げます。
仕組み
- ディレクトリコードはトピック名です。 Seedit は
/s/funnyのようなルートを使います。5chan は/g/のようなイメージボードのパスを使います。 - コミュニティは候補として競います。 各ディレクトリには候補コミュニティのリストがあり、それぞれが
funny-posting.bsoのような固有の正確なアドレスを持っています。 - 最上位の候補がルートを勝ち取ります。
/s/funnyを開くと、現在の勝者が表示されます。 - 負けても何も削除されません。 勝者でないコミュニティもアドレス、投稿、購読者をそのまま保持し、誰でも引き続き直接開くことができます。
名前は玄関であって、アイデンティティではない
ディレクトリコードは発見のためのルートにすぎません。永続的なものはすべて、特定のコミュニティを正確に指します。
/s/funnyから購読すると、現在の勝者の正確なアドレスを購読することになります。ディレクトリコードそのものが購読として保存されることはありません。- 投稿へのリンクは常にコミュニティの正確なアドレスを使うため、勝者が入れ替わった後に古いリンクが別のコミュニティを指すようになることはありません。
- 勝者が入れ替わっても、Seedit は既存の購読には手を付けず、購読者一人ひとりに、新しい勝者に切り替えるか、両方を残すか、現在のコミュニティを残すかを尋ねます。自動切り替えはディレクトリごとのオプトイン設定で、自動で切り替わった場合は元に戻せる通知が表示されます。
したがって、競合するコミュニティが誰かの購読を奪うことはありません。勝ち取るのは名前です。新しい訪問者はそのコミュニティにたどり着き、既存の購読者にはワンクリックで選べる選択肢が示されます。元のコミュニティを好む人は、そのまま使い続けられます。
なぜ早い者勝ちの名前にしないのか
- 名前の占拠はできません。 良い名前を押さえているだけでは不十分です。コミュニティはその名前にとって最良の候補であり続ける必要があります。
- 名前を割り当てる管理者はいません。 管理者による割り当ては、Bitsocial がなくすために作られた中央の拒否権を復活させてしまいます。
- 競合相手にもオーディエンスへの道が残ります。 対抗するコミュニティは、劣る名前で一からやり直すのではなく、同じ名前を狙えます。
- クライアントどうしで勝者が一致します。 Seedit は候補を決定論的にランク付けするため、同じ確定済みディレクトリスナップショットを読むクライアントはすべて同じ勝者を表示します。あるユーザーの接続から勝者に一時的に到達できないからといって、Seedit が別の候補に差し替えることはありません。
現在の勝者の決め方
候補は bitsocialnet/lists リポジトリに、ディレクトリごとに 1 つの JSON ファイルとして公開されており、コミュニティはそのファイルへのプルリクエストによってディレクトリに参加します。これは立ち上げ段階の暫定的な手順です。目標は、勝者を決める方法をプルリクエストから投票に置き換えることです。
- Seedit は、ディレクトリの候補をスコア順、次に追加された日時順、さらにアドレス順でランク付けします。各ディレクトリファイルにはリビジョン番号があり、候補や勝者に変更があるたびに新しいリビジョンが公開されます。
- 5chan は、
@bitsocial/pubsub-votingを使ってディレクトリごとに 1 つの投票コンテストを実施します。クライアントは署名付きの投票用紙を libp2p gossipsub でやり取りし、集計を自分で計算するため、票を数えるサーバーは存在しません。投票には譲渡不可能なトークンである 5chan Pass の保有が必要で、保有者 1 人につき 1 票です。まだリストに載っていない板に投票すると、その板を候補として推薦したことになります。コンテストは現在 Base Sepolia テストネット上で行われており、テストネットから移行するまでは、集計結果は表示されますがリストの順序は変わりません。
プロトコルか、アプリか?
ディレクトリは、コミュニティを保存・転送するピアツーピア層である PKC の一部ではありません。PKC の上でクライアントが適用する慣習であり、デフォルトリストや検索と並ぶものです。詳しくはコンテンツディスカバリーを参照してください。クライアントは同じディレクトリファイルを読むことも、独自のファイルを公開することも、ディレクトリをまったく使わないこともでき、ユーザーはどのコミュニティでもそのアドレスで開くことができます。