Real-time communication is somewhat of a pain point for the Wikimedia movement. There is a large contingent of IRC users, some of whom refuse to use proprietary or closed systems due to their poor alignment with movement values, and some of whom cannot use such systems because they depend on the openness of IRC orhave highly specialized workflows (various notifications, highlights, personal scripts, helper bots, vandalism tracking bots etc). Matrix / Riot.im has been raised as a potential alternative that has a modern user interface, preserves the openness of IRC (both in the sense of FLOSS and in having open groups) and supposedly has great bridging abilities (ie. can synchronize the conversation between a Matrix channel and an IRC/Slack/etc channel). How well it works in practice has yet to be seen however.
Thus, we need to run a to see if Matrix really is a good candidate for a chat system that's acceptable for most of the current IRC and Slack users. The trial should probably include:
- inviting users of IRC (including IRCCloud) and Slack (and possibly other tools prominently used by the movement, like Google Chat or Telegram or Zulip, or the tool WMDE adopted (was that Mattermost?)) and usability experts to give it a test drive and see if they identify any major blockers
- setting up bridges with IRC and Slack (and possibly other tools, as above) and see how well they work in practice
- converting some IRC bots (at least some kind of logging bot and some kind of notifications / chat bot) to use Matrix and see if they work smoothly / what advantages we get
- inviting teams to use Matrix as their primary communication channel for a trial period (3 months?)
See subtasks for blockers to staring the trial. (Nice to have but not a blocker: T230536)
After these are done, evaluate and make a go / no-go decision; if it's a no, try to turn the feedback into concrete blockers, otherwise we make a proposal to the executive team and if there is at least conditional support for Matrix as a canonical chat solution, ask ops for a self-hosted instance.
(Note: Matrix naming is a bit confusing. Matrix is the protocol, Riot is the most popular Matrix client, which we plan to use; Vector.im is the for-profit arm of the Matrix developer community, Modular.im is a SaaS (hosted Matrix server + Riot client) they operate, which we are using for the trial. Matrix and Riot are sametimes referred to as Matrix.org and Riot.im, after the domain name of the main website and the publicly available Matrix instance.)