Where should the compiler team (and perhaps working groups) chat?


Yep; that’s the one.


So, we’ve now done a number of meetings on both Discord and Zulip, and I’ve also gained a bunch of experience with both. I find myself quite torn.

Here is the scenario as I see it:

  • I strongly prefer both of them to IRC:
    • I like the richer options around emoji, reactions
    • I like that everyone is available asnyc by default
    • I like better notifications

There are things I like better about Discord than Zulip:

  • It is more obvious how to use it. People often tripped up when initially logging into Zulip and it takes some time to get used to it.
  • More teams are there. I like being in the same place as lang team and everyone else. I see a LOT of value in getting Rust’s “official teams” more centralized.
  • Nice mobile app. I try not to check either Zulip or Discord from my phone, but I like that I have the option. (But Zulip has been working on their mobile app.)

There are things I like better about Zulip than Discord:

  • Topics, topics, topics. I find that I am able to keep up with Zulip much more thoroughly. When I come back after a break, I don’t feel overwhelmed: I can skip the topics, look for the ones that seem important, and kind of scroll briefly through the rest. I can also leave a topic that I want to peruse carefully for later.
    • In contrast, in Discord, it sometimes feels hard to keep up with even one or two day’s worth of traffic. It must be done atomically or not at all.
  • Less privmsg. Because of topics, I almost never use privmsg on Zulip. I tend to just open a topic about some ICE or other specific issue and chat with the individual(s) working on it there. This allows us to easily keep up. With Discord, I find I am using privmsg a lot more just to maintain state.
  • Markdown. I really like that I can use inline links ([foo](...)) and even tables. The links in particular I use all the time to link into code or rustdoc etc without disrupting what I am trying to say.
    • (I also don’t particularly like the previews of GH issues and other links in Discord, which take up a lot of space — but, at the same time, the existing issue links on Zulip are a bit too minimal, and it’d be nice to have some kind of “hover” that shows more information. This can probably (in both cases) be configured.)

These to me are the key bits of comparison.

As a meta point, I would like to make some kind of decision for where the compiler team should live and then try to actually move there, for meetings and all. In particular, I would like to close over the IRC channel, since I find it hard to keep up with it and I think it’s misleading to folks. If we chose Zulip, I’d probably prefer to close the Discord channel too.


I prefer Zulip to Discord. Topics are great once you grok the concept. I also prefer Zulip’s more trimmed down UI over Discord’s. I don’t care about mobile apps. On-screen keyboards are just too annoying :)


You can get rid of the previews by wrapping the links in <https://www.rust-lang.org/en-US/> (note the < and >).


My vote is for zulip, too. Being able to fork out conversations is wonderful


Yes, I am aware, and I try do that quite aggressively. =) I also don’t like seeing the link, though. GitHub source URLs, in particular, tend to be fairly noisy.


As a member of the lang team, I can honestly say that my biggest hope is for all the various Rust teams to end up on one service. I can learn to live with whatever service that is, if everyone else can, but could we please just not decide on different services for each different team?


As an autistic person, reactions are very very very bad due to their potential for misinterpretation (on both ends).

Stack Overflow Chat has likes, but not reactions. It gets used like Twitter likes: you use it whenever you want to nonverbally communicate being interested in something, thinking something is important, or just conveying sympathy. The ambiguity makes this inherently much less dangerous than emoji reactions.


Everybody knows I’m a fan of Zulip. I do have a few concerns though:

  • Will everybody use it? @eddyb for example tends not to check it that often and seems more responsive on Discord.
  • Moderation: It seems like Zulip’s made good progress on making moderation tools available, but we need to be sure we have a reliable setup so that if people need to find a moderator, they can. The more platforms we use, the harder this becomes.
    • I’m not sure entirely what is needed here. It’d be good if people from the moderation team (e.g., @Manishearth, @pnkfelix, …) wanted to share any thoughts.


LMAO! I have visions of Emojis flying through the air like Ninja-Stars and splitting open the eyeballs of the audience. Yikes!


That’s good to be aware of. Interestingly, I really strongly dislike reactions in many other settings — such as GitHub. I’ve found that on Discord they tend to be mostly used in playful ways, and so I enjoy them. If, however, people were using them to express negative sentiments (e.g., :-1:) I would be pretty upset.


If you have emoji reactions, it’s a lot more difficult to show sympathy than simply sending a heart emoji. Because heart reactions usually mean “love this” or something (I don’t understand the full semantics of emoji reactions), and you’re supposed to use something else for sympathy.

I’m not sure how to explain this better, but the discords I do visit have a long list/dictionary of emoji reactions and what they’re used to mean. There are only a few discords like that, tho. (More specifically, I only know of exactly one.)

Generally speaking, a system with fewer reactions (twitter, github) is better than one with many (proprietary chat apps etc).


Thanks for sharing this. It is a perspective that I hadn’t considered before.


I was initially kind of skeptical about Zulip and really liked Discord but now, I’d have to say that I really prefer Zulip to Discord. Topic-branched discussion is so much easier to follow asynchronously and I don’t feel awkward continuing a conversation even when there’s been other activity in other conversations since the last post.


I prefer places internals or GitHub for things I feel the need to “keep up” with. The purpose of chat, to me, is for ephemeral stuff that would otherwise happen as in-person walk-over-to-your-desk type of conversations, where trying to keep up with it doesn’t make sense anyway.

Which means I don’t really get much value from Zulip threads, especially not at the cost of an unfamiliar UI.


I suppose gbutlers response proves a point that its not just emojis that can be subject to wildly different interpretations.


I like zulip as well. The UI feels more discussion friendly especially when multiple issues are being discussed in parallel.

Also with discord being linked to the gaming community, some companies prohibit it’s usage which could be a chokepoint at some time.


I just really don’t like the Zulip Web UI (my preferences are IRC > Discord >> Zulip). Maybe I’ll just have to get used to it.


I feel this way too…in theory. But in practice, a lot of discussion does happen on Discord, and the details don’t always make their way out. This may be something we should work on addressing: using Discord or other “synchronous” clients less. (e.g., for the unsafe-code-guidelines effort, I’ve been trying hard to ensure that all design work is happening on the Github repository).

That said, a lot of the conversations I have on Zulip (and Discord) are really focused on mentoring and working through PRs and things. For this, I find Zulip to be a pretty nice fit — it often suffices to throw a link to the conversation into the GH issue, so that I can find it later if I have to. If the PR winds up being completed, it kind of doesn’t matter most of the time. If the PR gets abandoned, then I will try to summarize the final conclusions.


Hey, what are the names of the channels/threads/topics/w/e people are using on Zulip?