Matrix (https://matrix.org) is an open protocol for secure, decentralised communication - defining an end-to-end-encrypted real-time communication layer for the open Web. Historically the network has been made up of newly written native Matrix clients, or bridges to 3rd party existing chat systems (e.g. Slack, Discord, Telegram).
This year, however, we added production-grade native Matrix support for the first time to a major 3rd party chat system: Gitter (https://gitter.im) over the course of about 5 weeks. This talk will explain how we did it it, and show how easily other existing chat systems can extend their reach into the whole Matrix ecosystem; breaking open those walled gardens forever.
With the European Commission proposing to mandate interoperability for big tech "gatekeepers" (https://ec.europa.eu/commission/presscorner/detail/en/ip202347), it's never been more relevant to understand how best to expose existing communication silos via open communication APIs such as Matrix.
Between October & December 2020 we happened to go through precisely this process - designing how best to make Gitter natively speak Matrix such that Matrix users can natively participate in all Gitter conversations, using it as the reference example of linking an existing large-scale chat silo into Matrix. Do you try to natively speak the Matrix server-server API? Or do you embed a homeserver (if so, which one?) and use the Application Service API? Where do you store the data, and how do you minimise duplication between your existing service and Matrix? How do you scale to a userbase of millions of users? How do you handle end-to-end encryption?
In this talk, we'll answer these questions; and show how we're at the point where Matrix has matured enough that it could actually be used to add open communication APIs to the tech giants if they ever found themselves in need.