Es gibt immer mal wieder Kritik daran, dass man mit seinem Fediverse Account keine Suche über alle Instanzen im Fediverse starten kann.
Diese Kritik möchte ich aufgreifen und hier mit euch zusammen ein Konzept für eine Fediverse-Suchmaschine zu erarbeiten.
Problemstellung
Das Fediverse ist eine dezentrale Struktur, von Plattformen und deren Instanzen, die über das technische Protokoll ActivityPub kommunizieren.
Dabei ist es systembedingt so, dass eine Instanz immer nur dann eine Verbindung mit einer anderen Instanz aufbaut, wenn durch die User Interaktionen zwischen den Instanzen ausgelöst werden.
Die meisten Instanzen haben also nur Verbindungen zu einer Teilmenge aller Instanzen.
Zusätzlich speichert jede Instanz, nur die Kommunikation, die direkt mit ihr stattfindet, also wiederum auch nur eine Teilmenge dessen, was an Inhalten bei den Instanzen steht, mit denen sie verbunden ist.
Die Suche einer Instanz liefert deshalb immer nur eine kleine Teilmenge der Inhalte, die im Fediverse veröffentlicht werden.
Lösungsvorschlag
Es wird ein großer Server aufgesetzt, der die Möglichkeiten von ActivityPub und den anderen Fediverse Protokollen voll ausreizt. Dieser Server scannt ständig nach neuen Instanzen im Fediverse und stellt dann von sich aus, selbstständig eine Verbindung zu neu gefundenen Instanzen her.
Dann liest er alle verfügbaren öffentlichen Inhalte dieser Instanz aus und speichert diese Daten lokal in einer Datenbank, die mit umfassenden Indizes versehen wird.
An diesen Server können dann alle Instanzen im Fediverse eine Suchabfrage abschicken und so ihre User mit einer vollständigen Suchfunktion versorgen.
Offene Punkte
- Nicht öffentliche Inhalte kann so ein Server nicht durchsuchen.
- Der Server müsste eigentlich Nachrichten, die auf den Instanzen gelöscht wurden, auch löschen, wie kann das sichergestellt werden?
- Der Server würde sehr viel Plattenplatz und CPU Leistung für seinen großen Index und die Suchanfragen darauf benötigen, wie soll das finanziert werden?
Dem kann ich ehrlich gesagt nicht viel abgewinnen, weil es wieder eine zentralisierte Komponente einführt. Zudem will ich gar nicht, dass meine Inhalte weit ausserhalb meiner Bubble aufgefunden werden können.
Es ist ein schwieriges Problem. Denn auch trotz meinen Bedenken sehe ich ein, dass das Fediverse bessere Discovery-Mechanismen braucht.
Ich würde da aber immer noch einen föderierten Ansatz bevorzugen. Ich habe nicht länger darüber nachgedacht, ich meine aber sowas in der Art von:
- Benutzer können ihr Profil per Opt-in der FediSearch zur Verfügung stellen. Tun sie das, erstellt ihr Home-Server einen Index aller öffentlichen Posts des Users.
- Dieser Index wird nun periodisch mit allen Home-Servern die mit dem User verbunden sind, geteilt. Ich würde da Mutuals vorschlagen, das Resultat wäre aber wohl für viele User verwirrend. Deshalb könnte man auch einfach alle Followers nehmen.
- Suche ich was, kann mein Home-Server alle lokalen und mit meinem Account geteilten Indizes durchsuchen.
- Um die Reichweite massiv zu erhöhen, können die Indizes auch mit Followern zweiter Ordnung geteilt werden, also allen Followern von allen Followern (natürlich pro Home-Server nur einmal).
Das was Du nicht willst, macht Google doch schon immer. Alle öffentlichen Post des Fediverse liegen schon lange bei denen im lokalen Index. Oder findest Du nur ganz allgemein die Idee einer zentralen Funktion nicht gut und willst diese Funktion deshalb auf möglichst alle Server verteilen? Das würde dann aber natürlich auch höhere Resurcen bei jeder einzelne Instanz erzeugen, was ich für meine kleine Instanz zum Beispiel direkt als Admin deaktivieren würden.
Ich mag auch Google nicht.
Um deine Frage zu beantworten: ich finde allgemein die Idee einer zentralen Komponente im Fediverse nicht gut.
Und ich seh das als Stärke, wenn du als Admin die Suchfunktion für deine kleine Instanz abschalten kannst. Aber auch ein zentralisierter Ansatz wird viel Ressourcen benötien, um alle Instanzen ständig nach Updates zu fragen, nicht?
Meine Meinung deckt sich da vollständig mit Deiner. Die Stärke des Fediversums ist gerade sein dezentraler Aufbau. Was meinst Du, warum es in China gerade so gut angenommen wird? Ich weiß ein Lied davon zu singen, wie oft es mir passierte, daß tolle Apps von heute auf morgen nicht mehr funktionierten. Wire Messenger –bumm, weg! Tutanota Mail –bumm, weg! So ging das in einem fort.
Als dann Jabber aufkam, hatte ich endlich die Möglichkeit, unabgehört und ungebrochen mit meinen Freunden in Deutschland zu kommunizieren.
Deshalb: da wieder Zentralisierung hineinzubringen … nee, laß man!
Was meinst Du, warum es in China gerade so gut angenommen wird?
Hast du eine Quelle dazu?
Die Android-App Tooot kommt aus China, wenn man sich in den chinesischen Räumen umtut, da ist zurzeit die Hölle los, es gibt Hilfen, wie man seine Kontakte von Weibo → Fediverse übernehmen kann.
1000 aktive Leute in einem Chat können schon “die Hölle los” sein, aber Chinas Population ist etwas größer als das.