The future of real-time (chat) discussion for the Fedora council

As noted in this thread, we’re planning on moving Council Discuss mailing list discussion to this forum.

We’d also like to modernize our chat interface. We’re not retiring IRC for all of Fedora (lots of other projects live on Freenode, and we’ll need to interact there anyway!) but IRC is a significant barrier for new contributors, and frustrating to many of us old-timers as well. So, the Council wants to lead by example.

We discussed Matrix (like element.io, but probably setting up our own server). Kevin Fenzi also suggested looking at Zulip. Either way, we want:

  • something open source
  • something that can be easily bridged to IRC
  • something where we can send cat pics, etc.
  • something that we are reasonably confident will be arond for a while

It would be nice if we can find an open-source SaaS offering, too. And it’s also nice if, like Matrix, it’s a federated system.

So, let’s use this thread to discuss and coordinate, and see how it goes!

7 Likes

Based on all the requirements here, and the note on federation, it seems like Matrix is the best fit for these requirements to me. Of all the other chat platforms out there, it has the best reverse-compatibility with IRC (even if it has its quirks at times).

But one feedback that I am not sure if it has come before is that it is hard today to find the right Matrix user. In 2016 or 2017, a well-intentioned person manually created a room for every single Fedora IRC channel she could find. Her expectation was that it would be straightforward and easy to bridge the rooms, but because we have countless different IRC channel OPs, it makes it hard to coordinate for some 100-150 Matrix rooms and IRC channels. You might join #fedora-docs:matrix.org and find that nobody is there, but if you join #freenode_#fedora-docs:matrix.org, suddenly you are in the right place.

My personal feeling is that salvaging the #fedora-*:matrix.org namespace on the matrix.org servers is just… not feasible. That well-intentioned person I mentioned added me as admins to all of the rooms she created, and even then, it is just… daunting. I think it is more trouble than it is worth.

SO…

I like the idea of Fedora running its own Matrix server. It could be just like how Mozilla has a plan with https://element.io for their own domain, e.g. #fedora-docs:fedoraproject.org or #fedora-docs:getfedora.org. We could paint the domain bikeshed for a while. :grinning:

Personally I believe our own Matrix homeserver is the best way to go all in on Matrix, in order to avoid the painful fragmentation we have on the existing *:matrix.org namespace.

6 Likes

Thanks Justin. That all makes a lot of sense. The one thing that’s super appealing about Zulip is the possibility of free hosting. I’ve contacted Element to see what they can do for pricing for us for a SaaS solution.

2 Likes

Keep us in the loop! :grinning:

I went to +fedora:matrix.org which is the community she set up (and is not discoverable, btw, you have to be linked to it.) I went through the first 12+ or so channels and they all had live connections to freenode, I had to scroll quite a bit down the list to find a room that wasn’t hooked up to freenode.

It is quite doable for one of our fedora freenode admins to grant someone admin to be able to configure the hookup. I have experience doing this and am happy to do it if it would help with Matrix adoption. I believe I have admin on the Matrix side already. I was unaware of this issue and would have been happy to fix it had I known.

Let me know if you want me to pursue this. I would need to reach out to a Fedora freenode admin to get temp admin perms and configure the freenode bridges for the set of channels whose bridge isn’t set up.

1 Like

The roadblock I hit is that most IRC channels have different operators, and so it involves going through multiple people. There is the Fedora rep for Freenode, which is now @kevin and @nb1, but I think they will still need to DM a Freenode operator for adjusting the permission flags of several IRC channels (very time-consuming process and it is better etiquette to work with existing OPs/channels instead of forcibly adding others too).

Here is the list of rooms I have admin rights in Matrix. Some of these might have duplicate rooms or may be bridged already, I didn’t have time to check:

  • #fedora-3d-printing
  • #fedora-admin
  • #fedora-ambassadors
  • #fedora-apps
  • #fedora-arm
  • #fedora-art
  • #fedora-ask (I have two Matrix rooms for this, not sure why)
  • #fedora-big-data
  • #fedora-blocker-review (I have two Matrix rooms for this, not sure why)
  • #fedora-buildsys
  • #fedora-classroom (I have two Matrix rooms for this, not sure why)
  • #fedora-cloud
  • #fedora-council (unbridged extra one?)
  • #fedora-devel
  • #fedora-eol
  • #fedora-epel (I have two Matrix rooms for this, not sure why)
  • #fedora-fedmsg
  • #fedora-games (I have two Matrix rooms for this, not sure why)
  • #fedora-g11n
  • #fedora-hams
  • #fedora-haskell
  • #fedora-hubs(I have two Matrix rooms for this, not sure why, or if they are worth advertising)
  • #fedora-iot
  • #fedora-java
  • #fedora-magazine
  • #fedora-meeting
  • #fedora-mindshare
  • #fedora-mingw
  • #fedora-mips (I have two Matrix rooms for this, not sure why)
  • #fedora-modularity
  • #fedora-noc
  • #fedora-outreach
  • #fedora-outreachy (I have two Matrix rooms for this, not sure why)
  • #fedora-powerpc
  • #fedora-qa
  • #fedora-releng (I have two Matrix rooms for this, not sure why)
  • #fedora-respins
  • #fedora-rust
  • #fedora-s390x
  • #fedora-science
  • #fedora-security (I have two Matrix rooms for this, not sure why)
  • #fedora-selinux
  • #fedora-social
  • #fedora-summer-coding
  • #fedora-test-day
  • #fedora-websites (I have two Matrix rooms for this, not sure why)
  • #fedora-women

There might be more. Some of these might already bridged but I try to set apart groups I’ve bridged by setting a profile picture after I bridge them. I don’t have time to engage all the IRC OPs for these channels but I try to direct people when they join the Matrix room to find the right place.

Hulloh,

I second running Matrix in our own infrastructure (or contributor-provided infrastructure.) There was also a lot of chatter around combined effort with openSUSE who are also working on setting up Matrix - LCP can be a point of contact I guess?

Bridge - please consider a solution that can do more than just Matrix-IRC to be able to seamlessly integrate our other platforms, such as Telegram and Discord. (e.g. Matterbridge, there are more.)

1 Like

Thanks Mo!

I haven’t looked into it in any depth, but IRC bridging is one of the features offered by Element’s hosting plans. I’m not sure how that would interact with these bridges.

I think we do want our own server — what would happen with the existing channels? Can we bridge them in too, with the Fedora-server ones being “home”?

Justin, can you add @nb:mozilla.org to the Matrix rooms you have access to? I can work to get them bridged. It’ll take a while, but I’d rather try to get them done than leave them out there.

3 Likes

2 posts were split to a new topic: Is reply by email supposed to work? Because it’s not working

The bridging offered by Element is the same bridging offered by Matrix.org. Just instead of #fedora-council:matrix.org, you could get a #fedora-council:fedoraproject.org, or even #council:fedoraproject.org.

There might be other nitpicks but this is the biggest thing that stands out to me.

@mattdm To clarify what you mean, do you mean our own Element-hosted Matrix server, or literal servers hosted by Fedora Infrastructure in Raleigh, North Carolina?

Done! Turns out it takes about the same time to make dinner and add someone to all of the other Fedora rooms on Matrix. :upside_down_face: I might have missed a few, Element’s Android app crashed on me a couple times while doing it and it shuffled my group order around. But you should admin in most, if not all, of them.

1 Like

Preferably the former, but failing that the latter.

I had a super-good meeting with some of the sales people from Element’s hosted service this morning, and am feeling really positive about this. I’m going to talk to Marie and Jason Brooks from OSPO this afternoon about possible next steps.

1 Like

@ngompa suggested a video call about this, so put together a when-is-good for doing that. If you’re interested, put your FAS id and availability here: WhenIsGood: Fedora, Matrix/Element, and IRC

Nothing is set in stone, but I’m currently pretty excited about at least experimenting with the Element offering.

1 Like

Filled it! :white_check_mark:

It looks so far by the way that sometime the week of November 30th is the best for the most people. So let’s continue discussion here (and there’s a parallel thread on Fedora devel until then.

1 Like

I expect we will use fedoraproject.org as our server name. It matches all other Project resources and fits with what contributors and users expect. getfedora.org is a weird aberration that we should ignore for this.

We should also strip the redundant fedora- prefix with room names on fedoraproject.org server.

For example, I would expect #fedora-kde:matrix.org/#freenode_#fedora-kde:matrix.org to become #kde:fedoraproject.org.

Finally, as part of the transition, we should publish aliases of the old names to the matrix.org server, so that all the entry points are unified.

I don’t want to necessarily toot my horn too much, but I strongly suggest looking at the Fedora KDE Matrix room as a template for how all rooms should be configured by default. @jwf and I spent a good deal of time tweaking and getting everything set up right in an optimal configuration, and I feel it’s a good template for how all Fedora rooms should be configured.

2 Likes

Looks like Thursday at 4pm US/Eastern works best for most people (Everyone who responded but @pingou and @davdunc — sorry.)

We’ll meet at Jitsi Meet, unless jitsi can’t handle it, in which case we’ll fall back to Blue Jeans Network | Video Collaboration in the Cloud

(Fedocal)

1 Like

I like IRC because it give you the “feeling” :nerd_face: and simple UI

I hate IRC because I need to use bouncer to keep connected and not missed something important (even though most official channel on freenode are logged, which i can check later). IP address are expose unless you using vpn or tor (gateway vhost cloak) and need to request unaffiliated vhost from irc staff.

I use matrix, I like the idea but UI and UX are horibble. Spamming my screen with thus “rich format” feature and one person start post so many lines per chat.

I like the interoperability idea from matrix.

Talk about future, it hard to predict. but IRC for FOSS user will be still there until freenode are down forever (as I know, fedora too never have IRC server on they own).

I recommend, just bridge the IRC and MATRIX together using Releases · matrix-org/matrix-appservice-irc · GitHub. No need to retiring IRC as mentioned on 1st post, which I agree.

I disagree with statement “IRC is a significant barrier for new contributors”. Because we on freenode, the best and simple way to use irc on this server is using web based chat on https://webchat.freenode.net/, easy as 123…abc.

To me what more burden the new user is the question that throw up on channel but no one want answer, misleading or too much question are coming up at same time.

so using “new user” as excuse are not correct IMHO.

but for existing “contributor” and maybe newcomer to be “contributer” should use bug tracker or forum to communicate (plus if quality discussion happen, it will be references on internet for future-futures users). Not real time but yeap, someone will reply soon and contributer can check back the feedback. Should lead by this way, not on chat platform

about what @ngompa mentioned also true, please strip the redundant fedora- prefix

I disagree with statement “IRC is a significant barrier for new contributors”. Because we on freenode, the best and simple way to use irc on this server is using web based chat on https://webchat.freenode.net/, easy as 123…abc.

So, I went there, imagining myself to be a relatively savvy person with no prior knowledge of IRC, picked a random nick, and picked #fedora-council as the channel, which I happen to know. That got me:

Hmmm. So, I typed /msg NickServ Identify <password> into the message box.

Nothing happened.

Oh wait, I see there’s something over in the left column…
image

It says “NickServ” and there’s a red thing that must be a message count. Okay, I’ll click on that…

image

Hmm, okay, I guess this name is taken. Which in itself isn’t an obvious conclusion. But I’m not going to let myself get stuck here. I’ll try another name… I’ll click on that little gear to change that in my settings, I suppose? Hmmm, nope, nothing. Well, there’s an Advanced setting, dialog and it might be in there, but … it literally says “Monsters be here, only click this button if you know what you are doing” so I won’t do that. I guess I’ll go back to the beginning and try again.

Third guess and I picked an unused name. Okay, cool. So, now I’ll just introduce myself:

Hmmm. Can’t click on that error. Nothing over in the top left this time. I’m pretty much stuck.

If I did get in, I’d learn quickly that there’s a bunch of invisible arcana in /commands, channel permissions, etc. Is it insurmountable? Clearly not, but we’ve definitely seen it be a very real barrier, so please don’t discount that.

I do agree that dead channels or not-helpful responses are a problem. By being more accessible, I hope we can get increased, positive communications.

I also agree that project discussion shouldn’t get lost in chat. In IRC, we have Zodbot which kind of magically logs meetings (more esoterica). We’ll want something like that in Matrix too, but hopefully we can also take the opportunity to make that more user-friendly too.

3 Likes