Warum private Peer-to-Peer-Kommunikation die richtige Form für Teamgespräche ist.
Es gibt ein Muster darin, wie jedes gängige Team-Chat-Tool gebaut wird: Die erste Einheit ist ein Raum. Sie erstellen einen Workspace, Sie erstellen einen Kanal, Sie laden Personen ein, und jede Unterhaltung wird zu einer Nachricht, die irgendwo gepostet wird. Der Kontakt — die eine Person am anderen Ende — ist immer abgeleitet. Sie schreiben ihr, indem Sie ein DM-Panel öffnen, das selbst eine Art kleiner, versteckter Raum ist.
Das ergab vor zehn Jahren Sinn, als das Referenzmodell IRC war. Es ergibt keinen Sinn mehr, seit die eigentliche Arbeit bei einer Handvoll erfahrener Kolleginnen und Kollegen liegt, die täglich miteinander reden und Räume eher als Kosten empfinden denn als Zuhause. Wenn Sie beobachten, wie ein eingespieltes Team tatsächlich kommuniziert, ist der 1:1-Kanal die primäre Oberfläche. Räume sind der Ort, an dem Ankündigungen abgelegt werden, damit man sie später wiederfindet.
Das Modell, zu dem wir immer wieder zurückkehrten
Als wir Vector angefangen haben, haben wir die gewünschte Form auf ein Whiteboard geschrieben — sie passte in zwei Sätze. Ein Kontakt ist eine Person, die Sie privat erreichen, Peer-to-Peer, ohne einen Server dazwischen, der das Gespräch festhält. Ein Raum ist ein eigener Fluss: mehrere Teilnehmer, eigene Berechtigungen, eigene Auditfläche, eigene Aufbewahrungsgeschichte.
Diese beiden Konzepte zu trennen — statt das eine zur entarteten Variante des anderen zu machen — hat praktisch jede nachgelagerte Entscheidung vereinfacht. Die Produktform steht dem mentalen Modell nicht mehr im Weg. Das Security-Review muss nicht mehr erklären, warum Ihre DMs über denselben Speicher laufen wie Ihre Ankündigungen. Und die Fehlerbilder werden sauberer: Ein kompromittierter Raum gibt keinen 1:1-Thread preis, weil der 1:1-Thread nie auf dem Raum-Substrat existiert hat.
Was sich ändert, wenn Kontakte echt sind
- Identität ist paarweise. Zwei Personen, die sich gegenseitig hinzugefügt haben, teilen einen Schlüssel und eine Gesprächshistorie, die ihnen gehört. Kein Workspace-Admin kann sie lesen, weil kein Workspace im Pfad liegt.
- Offboarding ist eine Operation pro Raum, nicht pro Person. Wenn jemand einen Raum verlässt, passiert mit den 1:1-Threads nichts, die unterwegs entstanden sind — sie gehören den beiden Beteiligten, nicht dem Arbeitgeber.
- Compliance skaliert sich selbst. Räume können zu den Bedingungen der Organisation aufbewahrt, auditiert und durchsucht werden. 1:1-Kontakte gehören der Organisation von Anfang an nicht.
- Die Angriffsfläche schrumpft. Wer keinen Raum zuspammen kann, zu dem er nicht eingeladen ist, und wer keinem Kontakt schreiben kann, der ihn nicht akzeptiert hat, reduziert den Angriffsgraphen per Konstruktion.
Ein Kontakt ist kein Raum mit einem Mitglied. Es ist ein anderes Objekt, mit anderen Garantien. Behandelt man ihn so, wird die Plattform einfacher.
Der ehrliche Kompromiss
Das Gegenargument zu dieser Form ist das Argument dafür, nur umgedreht. Wenn eine Organisation will, dass jede Unterhaltung standardmäßig Unternehmenseigentum ist, dann sind private Peer-to-Peer-Kontakte Reibung. Sie müssen Menschen beibringen, in welcher Oberfläche sie gerade sind, Sie müssen zwei Flüsse statt einem ausliefern, und Sie verlieren die gefällige Geschichte, in der die Suche alles findet.
Wir halten diesen Kompromiss für tragbar. Die Alternative — überall Räume, mit darübergelegten Pseudo-Privat-DMs — erzeugt ein Produkt, das darüber lügt, was es ist. Menschen ahnen, dass ihre 1:1-Nachrichten nicht wirklich privat sind, passen ihr Verhalten an, und die Offenheit, die ein Team überhaupt erst lebenswert macht, versickert unbemerkt. Am Ende steht ein durchsuchbares Archiv aus Nachrichten, die niemand senden wollte.
Wo das in der Roadmap landet
In Vector sind Kontakt und Raum getrennte Bildschirme, getrennte Datenflüsse und getrennte Verschlüsselungsgeschichten. Wir haben es nicht so ausgeliefert, um eine These zu belegen. Wir haben es so ausgeliefert, weil sich bei jedem Versuch, die beiden zusammenzuführen, irgendetwas am Produkt unehrlich anfühlte. Wenn ein Design Ihnen wiederholt Widerstand leistet, sagt Ihnen das Design meist etwas.
Wenn Sie Teamkommunikation bauen — Ihre eigene oder die Ihrer Kunden — ist die Frage, die wir vor allen anderen stellen würden, welcher der beiden Flüsse Ihr Produkt eigentlich ist. Der Rest ergibt sich daraus.