community-development

https://github.com/clojurians/community-development
cfleming 2019-02-13T00:43:05.033600Z

@seancorfield So to mirror a channel to Zulip, do I just invite zulip-mirror-bot?

cfleming 2019-02-13T00:43:18.033900Z

Do I have to do anything on the Zulip side?

2019-02-13T01:48:07.034100Z

That should be it

seancorfield 2019-02-13T02:01:28.034600Z

@cfleming Yup. Just /invite @zulip-mirror-bot

cfleming 2019-02-13T02:06:04.035200Z

The mirroring is not two-way, right? It’s just Slack that gets replicated over to Zulip?

seancorfield 2019-02-13T02:48:06.036900Z

@cfleming Correct. The Slack content all goes into a specific stream in Zulip with a topic for each channel. It's intended purely as a searchable archive so folks using Zulip don't "miss out" on Slack discussions -- and so Slack folks can go join Zulip in order to search the history of Slack on its own.

seancorfield 2019-02-13T02:49:45.038900Z

Zulip has a lot of streams and topics of its own that are freestanding. I don't know what it would take in terms of integration slots on the Slack side to be able to feed that Zulip content into Slack, nor am I sure where we'd want to put it (and we'd need to be careful not to have it then mirrored back into the "slack-archive" on Zulip!).

seancorfield 2019-02-13T02:52:28.042100Z

Also, where we've experimented with two-way mirroring before (with Matrix, primarily), it's created a really ugly experience on both sides because mirroring tends to lose at least some formatting and context. For example, Slack threads tend to just get mirrored as messages in a channel because it's hard to map them to other services. Integrations like GitHub etc tend to use specialized formatting that Slack offers (such as annotated, multi-part attachments to messages) and those are very hard to massage into an appropriate format in other services. And vice versa for piping messages into Slack.

seancorfield 2019-02-13T02:54:11.044Z

When the Zulip mirroring experiment was first started, Slack channels were piped into topics within the corresponding stream but it made for a mess of communication on the Zulip side -- hence the decision to pipe everything into one stream (the downside is that now you can only subscribe to "everything" or nothing, although you can mute anything you're not interested in).

seancorfield 2019-02-13T02:55:51.044900Z

I've also tried real-time, two-way mirroring between Slack and Gitter (using a free integration that went away, unfortunately) and it was also a pretty horrible experience (for both sides).

seancorfield 2019-02-13T02:59:51.047100Z

Zulip's keyboard navigation is a big win, in my opinion, for navigating around the Slack archive over there. I can search (`/`), narrow to a given topic (`S`) or expand to a whole stream (`s`), page back and forth (`J`/`K`) or go message by message (`j`/`k`).

2👍
cfleming 2019-02-13T05:51:24.048200Z

@seancorfield FWIW the two-way mirroring with IRCCloud actually works pretty well in my experience, although I haven’t used it much. IRC3 supports threads etc so the experience seemed pretty similar.

cfleming 2019-02-13T05:51:47.048700Z

That said, I still just use IRCCloud as a slack history store really.

seancorfield 2019-02-13T06:16:04.049500Z

Yeah, there seems to be a bit of a sweet spot there. After using IRCCloud, I expect other integrations to be as smooth... 😞