Difference between revisions of "Matrix"

From Technologia Incognita
Jump to: navigation, search
(Add basic introduction)
(Add section about full bridging)
Line 1: Line 1:
The TechInc community is using a bunch of different protocols and platforms to communicate with each other, such as IRC, Telegram, Discord, Signal, email, etc. Unfortunately, this leads to fragmentation, as not everybody is able to participate in the conversations that people are having within the community.
+
= Motivation =
 +
 
 +
The TechInc community is using a bunch of different protocols and platforms to communicate with each other, such as IRC, Telegram, Discord, Signal, email, etc. Unfortunately, this leads to fragmentation, as not everybody is able to participate in the conversations that people are having within the community. We want everybody to be able to talk to each other, but we don't want people to be peer pressured into platforms that they don't want to use.
  
 
[[File:Chat systems.png|upright=1.0|https://xkcd.com/1810/|alt=I'm one of the few Instagram users who connects solely through the Unix 'talk' gateway. ]]
 
[[File:Chat systems.png|upright=1.0|https://xkcd.com/1810/|alt=I'm one of the few Instagram users who connects solely through the Unix 'talk' gateway. ]]
 
  
 
This is one of the things that [https://matrix.org/ Matrix] hopes to address
 
This is one of the things that [https://matrix.org/ Matrix] hopes to address
Line 10: Line 11:
 
</blockquote>
 
</blockquote>
  
With Matrix, it becomes possible for a Telegram user to talk to a user on Discord, and from a Signal user to talk to a user on IRC. Of course, this should not be done without the explicit consensus of the existing communities. Each community has different rules and norms that cannot and should not just be thrown out of the window for the sake of interoperability.
+
With Matrix, it becomes possible for a Telegram user to talk to a user on Discord, and from a Signal user to talk to a user on IRC. Of course, this should not be done without the explicit consensus of the existing communities. Each platform and protocol has different rules and norms that cannot and should not just be thrown out of the window for the sake of interoperability.
 +
 
 +
= Bridging communication silos with Matrix =
 +
We would like to setup a Matrix instance. This will be hosted on space infrastructure.
 +
There are several ways that we can setup a Matrix instance and the various bridges, each having their own upsides and downsides. Before deciding on what works best, we need a common understanding of the different options. The methods described below are just there to illustrate some of the different options. The exact details, such as the channel names, what platforms to bridge, and everything else, are of course open for discussion.
  
There are several ways that we can setup a Matrix instance and the various bridges, each having their own upsides and downsides. Before deciding on what works best, we need a common understanding of the different options.
+
== Method 1: Full bridging ==
 +
With full bridging, all channels are bridged to all other channels on all other platforms.
  
== Method 1: Full bridge ==
+
{| class="wikitable"
n-to-n
+
|-
 +
! Channel !! Matrix !! IRC !! Telegram !! Discord
 +
|-
 +
| General || #general:techinc.nl || #techinc-general || #⃣ General || #general
 +
|-
 +
| Updates || #updates:techinc.nl || #techinc-updates || ❗ Updates || #updates
 +
|-
 +
| Printing || #printing:techinc.nl || #techinc-printing || 🖨 Print Team || #printing
 +
|-
 +
| Electronics || #electronics:techinc.nl || #techinc-electronics || ⚡ Electronics || #electronics
 +
|-
 +
| Networking || #networking:techinc.nl || #techinc-networking || 💻 Network Team || #networking
 +
|-
 +
| Food ordering ||  #foodordering:techinc.nl || #techinc-foodordering  || 🍕 Food Ordering || #foodordering
 +
|}
  
== Method 2: Single-channel bridge ==
+
=== Advantages ===
n-to-1
+
* Everybody can talk to everybody, regardless of the platform, client or protocol that they prefer to use. A message sent in a channel on one platform will be relayed to the corresponding channel on every other platform.
 +
* Easy for people to join the conversation
 +
 
 +
=== Disadvantages ===
 +
* There is no opt-out. Sending a message in a bridged channel will broadcast it to every other platform.
 +
* There might be a mismatch between the norms that each platform is currently accustomed to, and the norms that other platforms expect
  
== Method 3: Partial bride ==
+
== Method 2: Partial bridging ==
 
m-to-n
 
m-to-n
 +
 +
== Method 3: Single-channel bridge ==
 +
n-to-1

Revision as of 19:08, 12 November 2024

Motivation

The TechInc community is using a bunch of different protocols and platforms to communicate with each other, such as IRC, Telegram, Discord, Signal, email, etc. Unfortunately, this leads to fragmentation, as not everybody is able to participate in the conversations that people are having within the community. We want everybody to be able to talk to each other, but we don't want people to be peer pressured into platforms that they don't want to use.

I'm one of the few Instagram users who connects solely through the Unix 'talk' gateway.

This is one of the things that Matrix hopes to address

Matrix defines a set of open APIs for decentralised communication, suitable for securely publishing, persisting and subscribing to data over a global open federation of servers with no single point of control. Uses include Instant Messaging (IM), Voice over IP (VoIP) signalling, Internet of Things (IoT) communication, and bridging together existing communication silos - providing the basis of a new open real-time communication ecosystem.

With Matrix, it becomes possible for a Telegram user to talk to a user on Discord, and from a Signal user to talk to a user on IRC. Of course, this should not be done without the explicit consensus of the existing communities. Each platform and protocol has different rules and norms that cannot and should not just be thrown out of the window for the sake of interoperability.

Bridging communication silos with Matrix

We would like to setup a Matrix instance. This will be hosted on space infrastructure. There are several ways that we can setup a Matrix instance and the various bridges, each having their own upsides and downsides. Before deciding on what works best, we need a common understanding of the different options. The methods described below are just there to illustrate some of the different options. The exact details, such as the channel names, what platforms to bridge, and everything else, are of course open for discussion.

Method 1: Full bridging

With full bridging, all channels are bridged to all other channels on all other platforms.

Channel Matrix IRC Telegram Discord
General #general:techinc.nl #techinc-general #⃣ General #general
Updates #updates:techinc.nl #techinc-updates ❗ Updates #updates
Printing #printing:techinc.nl #techinc-printing 🖨 Print Team #printing
Electronics #electronics:techinc.nl #techinc-electronics ⚡ Electronics #electronics
Networking #networking:techinc.nl #techinc-networking 💻 Network Team #networking
Food ordering #foodordering:techinc.nl #techinc-foodordering 🍕 Food Ordering #foodordering

Advantages

  • Everybody can talk to everybody, regardless of the platform, client or protocol that they prefer to use. A message sent in a channel on one platform will be relayed to the corresponding channel on every other platform.
  • Easy for people to join the conversation

Disadvantages

  • There is no opt-out. Sending a message in a bridged channel will broadcast it to every other platform.
  • There might be a mismatch between the norms that each platform is currently accustomed to, and the norms that other platforms expect

Method 2: Partial bridging

m-to-n

Method 3: Single-channel bridge

n-to-1