Modern Communication Platforms - Call for Feedback

Hello everyone,

Synchronous communication tools have been taking a central spot in the way we interact with our friends, family, colleagues, and communities; therefore I would like to start a conversation about modern communication tools for the Ubuntu community.

There is a shared desire to encourage more interaction between Canonical teams and the Ubuntu, Linux and open-source communities. After all, most Canonical engineers are also community contributors, often involved in many open-source projects.

At the same time, we as the Ubuntu community should consider ways to cater to a wider, diverse audience and ensure that we are including less technical users and younger generations in our considerations. While doing so, we also need to make sure we stay true to the values that brought us to Ubuntu, Linux, and FOSS. When selecting the tools we use, we should always be focused on open-source, privacy, and freedom respecting software.

We believe that Matrix offers all the modern features we need, without compromising our values. It is open-source, it can be self-hosted, it supports end-to-end encryption and federation. Moreover, there are many integration tools, bots and bridges available.

Why Matrix?

Let’s take a look at the features and values:

  • Open-Source protocols, servers, and clients: Matrix is released as open-source software. Matrix is a protocol; there are already various implementations of both the server, and the client. Those are also released as open-source software. For now, we are going to focus on Synapse server, Element desktop and mobile clients, and Element web client .

  • Integrations and bridges: Matrix offers a lot of useful tools to improve the experience. If you want to see what is available, you can check integrations and bridges.

  • Federation: Federation promotes inclusion, open dialog, user choice, and it greatly reduces risks of a single entity being able to control the whole platform. At the same time, federation provides convenience. If you already have a Matrix account registered under the Mozilla server, or any other federated Matrix servers, you can reach other communities directly from there.

  • Deployment options: Matrix server, Synapse, can be deployed on premise on small, single node, home installations. It can be deployed on Kubernetes clusters, and it can be hosted by Element and various cloud providers.

How can I get involved?

There are a few important questions that we’d like to ask the community:

  • Have you used or managed Matrix before? If so, what did you like, what did you not, and how does it compare to other chat platforms you have used?

  • Do you think that Matrix can be a great tool to interact with the Ubuntu Community?

We would love to read your stories. Give us feedback and let us know what you think about Matrix. Your contribution can shape the future of communication tools for the Ubuntu Community.

13 Likes

Sorry, but I pretty much only have negative experiences of Matrix.

  • Relentless spam in channels, which is hard to combat with people being blocked and coming back repeatedly.
  • A brutal user experience for using encrypted channels on multiple devices - the upstream matrix developers are aware of this
  • Bridges that only benefit the Matrix side of the bridge, and make all other communication tools objectively worse when a Matrix bridge is added. Every IRC, Telegram, Discord, or whatever channel I’ve been on has been degraded when Matrix bridges are added. Forcing people to leave, or forcing people over to Matrix.
12 Likes

I’ve not encountered the other problems @popey mentions. (Probably luck!)

But I will second this

2 Likes

Does matrix have something like channel operators from irc? what tools are available to them? Can they block specific IPs or CIDRs? Is there an equivalent to using DroneBL to automatically drop known bad machines?

Thanks

I don’t know if things have changed since I was last on there, it’s been a while. But when I was moderating (along with others) the (semi-official) Ubuntu room, no. You would block people and they’d just instantly create new accounts on another matrix server and join again. It was super dispiriting, and was one of the reasons Matrix left a bad taste, and I refuse to use it.

7 Likes

With Ubuntu Studio, I’ve been trying to move our support and off-topic rooms to Matrix for several years now. It has several advantages, such as being able to post screenshots or paste large amounts of text directly in a message without fear of flooding the room.

This is great when you have a community that starts out as Matrix. However, as @popey pointed out above, the IRC - Matrix bridge is highly volatile and prone to breakage. In #ubuntustudio we recently had a major bridge outage that caused the entire room to be unbridged via portal and plumbing. All Matrix users were unceremoniously ejected from the IRC side and vice-verse. I had to file an issue with the Matrix people and only after nearly a month was the problem resolved but is still unstable.

During that time, I had to post a notice on the Matrix side that the bridge was down and to manually forward all (via a link) users to webchat on Libera. This is because my most knowledgeable users are using IRC and not Matrix, so people seeking support couldn’t get the best support if they tried on the Matrix side.

This aside, there also might an Ubuntu Governance issue here. As far as I know, this type of decision might have to go through the IRC Council as a proposal before it’s decided. How Canonical decides to operate internally is a Canonical affair, but communication within and between the Ubuntu community definitely falls under Ubuntu Governance.

10 Likes

I agree with Popey’s comments. Matrix has not been a friendly place to moderate. It’s fine for small communities but anything over a thousand it buckles fast. I would look for other open-source options that allow more moderation for larger communities and easier to interact with the community in. Revolt.chat is promising but early stages or Zulip, etc.

3 Likes

I would like to share some of experience from Korean LoCo. Since I and other organizers in Korean LoCo has been running these messaging platforms (IRC #ubuntu-kr, Matrix, Discord) recently

  • IRC: We keep IRC for long time members (mostly people stop by the room sometimes since 2005~2006)
  • Matrix - We have a Matrix space which is similar to Slack Workspace or Discord Server) with several topics. Many members have been using like IRC client, Since the matrix.org server has built-in IRC bridge. It’s been also a place for our organizers to discuss regarding what to do next within them.
  • Discord: We introduced this as a replacement for our Slack workspace(which is now deprecated). Many Korean folks in tech communities today prefer Discord over other messaging platforms - newcomers especially including new organizers not just ordinary members.

Many new folks joining our chat these days joins our Discord server as they prefer that. But there are still many folks who prefer Matrix or IRC and don’t have signed up for Discord and don’t wanna do that which also includes our existing organizers. So we bridged most of our rooms like this.
image

So far, bridge setups are working well, and I experienced both good and bad stuffs.

Good

  • Bridges: Bridges are usually built-in(IRC) or easy to setup(t2bot Matrix-Discord) and don’t need to be maintained by Korean LoCo side.
  • Bridges: For bridge between Matrix and IRC, people can also see list of participants from other side. (For Discord, Matrix and IRC folks can see participants from Discord but not vice-versa - this should depends on how bridge is implemented)
  • Bridging across platforms does helps making rooms more active and let people talk across platforms. - Folks in Discord and Matrix can also use lubotu bot in IRC.
  • People from other matrix server can also join the room - Just like mastodon. I haven’t tried this. But saw few folks from other servers joins our matrix rooms.

Not really

  • Bridges: Built-in IRC bridge and the t2bot.io’s Discord bridges degards and got issues pretty frequently. For IRC, I saw Libera.chat option now showing up for few days because of some bugs. And for t2bot.io, They got delay(couple of hours) or message drop issues and also downs frequently. And it blocks conversations between difference platform sometimes due to that issues.
  • Bridges: Bridgeing Matrix, IRC and another one would be pretty difficult.
    • IRC Portal rooms on matrix are usually generated automatically when a user joins. Since permissions for these rooms are synced from IRC, It’s usually difficult to control from Matrix side without help from the IRC side. Putting another bridge on portal room is also got blocked sometimes due to permission setup on the room is different from the native matrix room.
    • Plumbing bridges on a specific matrix room is usually works well, But can be duplicate with portal room. As portal rooms are generated automatically and can’t be deleted by room admins without help from the server admin. So, might need to tell people to join plubmed room whenever a person joins the portal room.
  • Encryption on channels are ok, but the experience on managing encrypt keys are not much good unless using Element app. Also, there are many limitation on adding bridges or integrations on encrypted channels.
  • Push notification on Element app (not sure about other clients since i didn’t tried out much) are also dropped frequently.

I also largely agreed with @popey 's comment. Except for the spams, Since We haven’t experienced spam issues a lot on matrix. But this might be different on other matrix room or spaces.

6 Likes

It’s been a couple of years since I last experienced a spam wave in the Matrix rooms I’m in (and I’m in some big, prominent ones). But it was definitely disruptive at the time.

For those who found moderation difficult - although I haven’t tried to moderate a space myself, I understand that the state-of-the-art there is using the Mjolnir moderation bot; did you have access to such a moderation bot and it wasn’t sufficiently helpful, or were you moderating using only the tools available in Matrix clients?

The set of moderation actions seem reasonable to me - as someone who hasn’t tried moderating a community, to be clear - and having shared moderation lists (which the bot supports) seems like it could be helpful? I understand GNOME uses Matrix for this; their community team probably has useful input?

3 Likes

Matrix is the current best choice for a collaboration platform similar to Slack, Discord or Teams for all the reasons mentioned as well as the ability to create Spaces and Rooms in those Spaces with suitable access controls, the wide choice of clients (including the Portable Web App) and the options for threads, voice, video and encryption.

With a competent team of admins of sufficient number to properly set up and maintain the platform, including guiding new users in their use of it, this could be a really good platform to collaborate with Canonical and other folks. Without it, you will have the kind of mess which looks like IRC on Discord with splash of the bad bits of 4chan.

Aside from the understandable desire to control the medium, why not engage us where we currently gather to discuss, collaborate and support each other? In addition to the the existing Ubuntu Room on matrix.org, channels on IRC, Discord server(s), Telegram channel(s), -subreddit-, web forums such as this Discourse and Ubuntu’s other forums, mailing lists, the current rapid expansion of the Fediverse (including Matrix, Mastodon, Lemmy, /Kbin and Pixelfed) provide an almost overwhelming opportunity for Canonical to engage without needing to try to capture and control.

Some might want to include commercial “social media” platforms in this consideration, but I don’t.

I have used multiple Matrix services and host my own private Space on matrix.org.

I like all the aspects mentioned here, especially the platform based on standards and with privacy as a basic part of the design.
I do not like the occasional struggle with key distribution across multiple clients and the resulting struggles to decrypt older messages in encrypted Rooms.
To compare all the possible Matrix use cases to Slack, Discord, Teams, Telegram, IRC, mailing lists, -Reddit-, Discourse, web forums, Mastodon, Lemmy, /Kbin, Pixelfed… would take a lot of typing.

Yes, it could be a great collaboration tool in the conditions which I described. Other platforms which already exist, many of which have thriving communities, may be better and easier places (for all parties) for Canonical to interact with the Ubuntu Community or communities.

1 Like

You can all join the existing Ubuntu Space at https://matrix.to/#/#ubuntu-space:xentonix.net

That includes https://matrix.to/#/#ubuntu:matrix.org and a lot of the IRC rooms via the IRC bridge.

We also already have a bot for basic spam moderation (Mjolnir). Someone would still have to adapt ubottu for the Matrix universe. I did not have time for that yet :slight_smile:

The address of the space does not have to stay on my own homeserver of course. Rooms and spaces have can have multiple names.

You can already meet old and new friends there.

1 Like

We use matrix alongside Telegram for Dublin Linux and the Linux Lads podcast. To minimize maintenance, we took the following steps:

  • we use Conduit, it’s performant and uses a single binary (we changed from Synapse after the instance broke and needed to be redeployed if i remember correctly). On the bad side, Conduit doesn’t have all the features that Synapse has, but it’s being actively developed.
  • we don’t accept registrations, anyone joining the rooms have to have an account on some other instance (this was done after we got suddenly swamped by bots)
  • we use t2bot as a bridge between Matrix, Telegram and Discord

This limits the needed maintenance and enables us to run the server on a small VPS.

The biggest issues we encounter are bridge disruptions. These can sow massive confusion in the conversation, I can’t recommend bridges for a high frequency work environment. (I have a similar experience in a separate project, where they use self-hosted bridge to link IRC and Discord though, so it’s not just a Matrix problem).

Separately, as a Matrix user, I don’t think that the technology is ready for a non-motivated user, specifically because you need to read the manual to understand verification, spaces etc. As well, not every feature is present or works the same in different clients and servers.

In my opinion, if you want a messaging system that can get people talking without friction, I don’t think Matrix is it. I don’t think that there currently is a good open source solution, something with the functionality of Discord, simplicity of Telegram and a self-hosted option.

(as an illustration, whenever i run Nheko, I get this message, no matter how many times I try either of the options. )

You may have given away part of the answer yourself :slight_smile: There are quite a few platforms you mentioned, which are all valuable in their own way. You are right that these provide much opportunity for Canonical to interact with the community, and I do believe we have quite a few people discussing on those platforms. However, if we go for an individual solution per team then we’re fragmenting where teams can be interacted with. It means some people might miss out on important conversations simply because they weren’t aware of the platform being used. The most common denominator right now for synchronous communication is IRC. There is a barrier of entry for IRC that I’d like to reduce, and IRCv3 simply isn’t there yet. (nickserv? SASL? how do I get scrollback? Oh a bouncer, how do I enable that? How do I do a group DM? …)

If a team at Canonical tells me they’d like to interact more with the community, I’d like to point them to one service. If a community member tells me they’d like to chat with others in the community including Canonical, I’d like there to be one “official” answer for the community that is easily accessible.

This is not about controlling the medium. We very much intend to make the community part of the moderation and decision process, just like it has been before with IRC. This is about finding a more modern communication platform that enables many more people to contribute.

3 Likes

It has been announced that Libera is deportalling the Matrix bridge effective August 14th, meaning that all IRC channels will no longer be automatically bridged to Matrix (you’ll no longer be able to join from Matrix via e.g. /join #ubuntu:libera.chat, and any channel you joined via that method you will lose access). Instead, any channel that wishes to be bridged to Matrix must now be plumbed manually and therefore opt-in to the bridge. This is in effort to reduce the issues with the bridge and how buggy it has been in the past to keep a global portalled bridge running.

Therefore, under this proposal, this implies that every Ubuntu IRC channel must now be plumbed to Matrix or lose connectivity to Libera IRC chat. Therefore, we now have a bit of a deadline for this proposal, and I suggest acting quickly without delay.

If you need assistance with plumbing, I’m more than happy to help, but it does require moderator access in a created Matrix room (not simply a portalled room) and operator access in the corresponding IRC channel.

4 Likes

I just want to make a note that Lubuntu bridges IRC and Telegram without issue, in fact Ubuntu Testers on Telegram is bridged with the ubuntu bridge bot (which I run) to IRC and works pretty well. It uses Matterbridge as the core software to do the bridging and that integrates with a variety of platforms, so if bridging various platforms together is important, we can do that. Matrix is the only one with Matrix <–> IRC as a service offering, but we can easily set up the bridge bot with an account on Matrix and elsewhere to be a bridge. Lubuntu has been doing that for years, and it’s been pretty stable.

Wherever the communication platform ends up, it should be noted that the others may still have some level of relevance and if we need to bridge between the platforms we can - the ubuntubridgebot on IRC run by me as an ‘official bot’ for Ubuntu can be used to bridge the various platforms for official channels when we have a decision on if we have a final platform we want to start migrating to and then just use the rest as ‘bridged’.

This “bridge bot” is easily configurable to use any individual endpoint that Matterbridge supports too, and I run it as an “official bot” as well so even if we choose a new primary location (say a Canonical-run Matrix server or similar), we can still use that to bridge the relevant rooms.

4 Likes

I’ve been a Matrix user since 2020 shortly after they came out of beta. I started with a small Linux community instance, then migrated my small business to it, and have since migrated many companies that now rely on Matrix as their primary mode of communication for their organization.

I’d be the first to admit early on, there was significant friction from the standpoint of moderation and the user experience. It was a tool for geeks, “normal” people struggled with it. That was almost 4 years ago, here are some factors to consider based on what the experience of Matrix is like today…

  • Network Effect (Federation) - There is a tremendous benefit to allowing people to join and connect to a conference remotely without having to create an instance specific account. This was hugely successful at FOSDEM and again at Southeast Linuxfest. It provided an easy on ramp for people to join from their existing server. Indeed many of the remote attendees were via federation and were NOT on the event instance.

  • Security – From the perspective of the team hosting, Matrix provides the necessary encryption to quickly and easily exchange sensitive information such as attendee PII or credentials. The keys for the rooms can be easily destroyed creating an easy path to exchange information securely.

  • Longevity - Matrix provides a robust ability to create and maintain contacts AFTER the conference is over. Small groups spin up, small focus rooms are created, and those relationships live far beyond the walls of the conference venue. This is not true with event specific instances on other platforms. You’re either making a trade by way of keeping an event specific instance online after the conference, or you’re relying on a cloud service to provide the communication.

  • Exploration & Discovery - Spaces allow for the conference to be presented to those who join us virtually similarly to how we would interact with a conference in person, ie: you can join a space, browse the available rooms, join the ones of interest to you.

  • Many Clients - There are a number of clients that focus on a range of user experiences. For example, if you find encryption to be a struggle, there are plenty of clients that either handle the setup of encryption much more cleanly then Element proper (Beeper / Syphon come to mind) or disable it entirely, which would not be inappropriate for a public conference.

  • Bridging – I’ve seen numerous posts that reference the stability of bridging. I would bet that those bridges are not self hosted meaning the experience is representative of a free public bridge and NOT a instance specific bridge. I have my instance bridged to Telegram, Signal, IRC, iMessage, Slack, Discord, Twitter, LinkedIn, Instagram.

For those that have struggled with room moderation I would ask when was the last time you’ve tried Matrix? Every few weeks there are updates and the platform grows and is increasingly better. Obviously, opening an instance up to federation without any restrictions means that anyone from any instance is able to join. There are ways to prevent unrestricted federation if that is our goal, but it’s important to note this isn’t a shortcoming of Matrix, indeed it’s the natural consequence of unrestricted federation. Additionally there are many add-on tools that can be leveraged to make room moderation a breeze.

7 Likes

@ilvipero, you asked us for feedback eight weeks ago and we provided it, including @kernellinux’s excellent summary two weeks ago. I’m confident that no-one here or at Canonical will accuse you of rushing the discussion by contributing your first follow-up to your own thread now.

It’s good to see that @ubuntu@ubuntu.social continues to post, though it is very much a notification channel which solicits traffic to other places and fails to engage anyone in the Fediverse. Meanwhile folks continue to work on the Ubuntu Matrix Room and the unfortunately named Ubuntu Space Space, the Ubuntu (Linux) and other Communities, Ubuntu Magazine and elsewhere.

PS. ubuntu.social is soliciting new memberships, but appears to be failing to deliver the confirmation emails necessary for review.

Thank you all for sharing your stories of success and pointing out some of the problems with Matrix! I really appreciate the engagement.

There are many helpful comments and interesting ideas here. I will discuss some of them in this thread. If we notice that there are multiple discussions going on at once, we can break up the thread as needed.

I’m excited to see that @nbuechner is working with other admins to manage the Ubuntu space. I joined the space, and I am relieved to see that moderation is working well, even though federation is on. I am willing to help the community grow by supporting the existing Ubuntu Space. It would be great to have governance to look after the Matrix space and rooms. If this is interesting to your @nbuechner , I can work with you and other administrators of the Matrix space to make sure that we provide a safe environment for our community. This includes clear rules and a CoC that matches what we have on other platforms, so we will need to contact the Ubuntu IRC Council and the Ubuntu Community Council for guidance. I understand that the lack of bridging with IRC is limiting the growth of our Ubuntu Space on Matrix, and this brings me to the next point.

I completely agree with @teward regarding bridging. Regardless of the chat software being used at a certain point, being able to bridge with other popular platforms promotes inclusivity. Thank you, @teward , for sharing valuable information and for offering to help. I am going to reach out to you soon.

To move things forward on the bridging situation, I spoke with EMS a few times about this issue. After a few chats, it is my understanding that stable, long-lasting portalled bridges between Matrix and Libera.Chat are a bit of a question mark. I believe the best course of action for our community is to rely on our own bridging solution. EMS confirmed that they can, if we want, archive the portalled rooms, set a tombstone and a redirect to our own bridged rooms. This will avoid confusion every time portalling is enabled and then possibly disabled again.

I understand that bridging with Matrix has caused some issues in the past, and a slow and careful approach might be needed. Ultimately, the decision is up to the IRC council, so I reached out and I hope we can hear their thoughts on this very soon.

Regarding issues mentioned by others in this thread, it appears that @kernellinux and @nbuechner are having good success with their setups. I do not want to dismiss any of the concerns expressed by @popey , @sukso96100 and @mikee3005 , though. I think it would be healthy to have specific discussions about those, here in the open. Furthermore, I am going to ask @nbuechner and @kernellinux for guidance and with their help and expertise, we can see where Matrix is nowadays in terms of stability, security, and features. I am happy to start another thread, and why not, dedicated channels on the Ubuntu Space on Matrix for real-time communication.

No matter where various discussions are held, I am going to post regular updates here on Discourse. This will ensure full transparency and demonstrate my commitment to assisting the Ubuntu community in any way I can.

6 Likes

I feel like this is also a question of where Ubuntu stands in the world of technology.

Very big communities like Google related projects all use discord. Generally it looks like almost any younger human with a computer uses discord.

The very Linux world on the other hand found that matrix is where they want to be. Generally it’s important to have those open standards like matrix and it’s not perfect that discord is not open source but it’s just where the most people are.

I have the impression that Ubuntu and it’s community and users would profit more if the IRC replacement would be discord.
Just my two cents, best regards

1 Like