src-d/guide

Add some prefix to all public Slack channels

campoy opened this issue · 22 comments

I recently asked a question intended to be seen by employees only to a public channel by mistake.

I'm proposing to add some kind of prefix to all the public channels so this mistake won't happen again

Unfortunately slack doesn't support emoji on the channel names (😱) so maybe we could use a utf8 that kinda looks like a globe? I propose ۝

eiso commented

LGTM

@mcuadros were you the person who set up the public sync between channels?

smola commented

It might be better to use a prefix that is easy to write (e.g. public-). This way one can use it in Slack autocompletion, write it in minutes, etc.

public- prefix would be great for me too (I had the same problem that @campoy had)

An alternative would be to share channels with source{d}-community. These channels will appear separately (see #go-git) and won't require any prefix. Also shared channels has better support for all Slack features (snippets, reactions, etc).

I'd love to see it configured for #babelfish at least (ping @eiso and/or @mcuadros).

After seeing how well shared channels work and how much of a pain quinde can be I have a proposal.

I'd like to make all of our public channels be part of the sourced-community slack and possibly share them with other communities (such as go-git on gophers.slack.com).

This will mean that source{d} employees will need to log in to sourced-community.slack.com in addition to src-d. But that will also make it very clear when they are in a private or public environment.

This will also solve the issue that channels can't be shared into more than two workspaces.

The only problem is the migration path, which is not too clear to me at this point.
For instance, go-git is owned by src-d and shared into gophers. We will need to somehow migrate it to be owned by sourced-community without breaking anything ... we'll need slack support I'm sure.

Does anyone have any concerns about this plan?

eiso commented

LGTM

No concerns expect the requirement to join into two separate Slacks.

But I don't see any other way to solve the issue and be able to share channels with Gophers.

Does anyone have any concerns about this plan?

@campoy from the top of my head when thinking about this in the past, two key concerns:

  1. Keeping the gold in the land of the free. The source{d} community Slack runs a free plan, and as far as Slack pricing goes, it will probably always be. This means we do not get all the features. E.g.:
    1. Limited history/search to 10k messages in all channels. Until a while ago, whatever knowledge, insights, links etc. were shared by community members were searchable and stored in source{d}'s workspace history.
    2. Cannot share channels from there. So "This will also solve the issue that channels can't be shared into more than two workspaces" is actually not solved, since free plans can't own/receive shared workspaces.
  2. Lower/slower/more distant interaction with the community. Using two segregated workspaces would make people from the team to actively (1) create an account in the public workspace (2) add to the workspaces in their devices (3) actively check the second organization frequently. Unless we really have a proper incentive/attention structure, we definitely won't have the same level of interaction we had in the past, or give the same degree of attention people do with channels a click away within the same organization.

The reason because the channel aren't synced is because sync is a premium feature only available in the payed accounts, and community is not.

Thank you very much for the hindsight, @marnovo!

This is indeed a bit of a problem. I don't think paying for such a big community makes economic sense, tbh.

I think gophers.slack.com got it for free because it was created by golang-bridge which is a non for profit org.

Ok, so then my updated plan is as follows:

  • we share channels from src-d to sourced-community
  • this is unless they're for some specific topic which would be better in another community: such as go-git under gophers.

I'm actually going to share these concerns with our newcomer in DevRel to see what ideas he has about this. I'm sure he's faced this before.

An alternative would be to simply move to an open source forum, which would solve all of our problems IMO but would be less discoverable.

eiso commented

@campoy I don't really see it as so bad as in being in two slack orgs. I have been doing it since day 1 and it works absolutely fine.

Thanks for taking it into consideration!

Ok, so then my updated plan is as follows:

  • we share channels from src-d to sourced-community

But how would you do this, as seems Quinde is broken and the Slack feature is for paid-paid sharing only?

I'm actually going to share these concerns with our newcomer in DevRel to see what ideas he has about this. I'm sure he's faced this before.

Please do! I also find impressive that no one has replaced Slackline/Quinde's service so far… I asked them once if they'd ever open source it but got no answer. Actually wondering how hard it would be to write one of our own…

smola commented

Note that the Quinde approach is really annoying, since it does not sync threads, reactions and edits. IMHO shared channel > two independent organizations > quinde synchronization.

@smola, again: of course shared channels > any other solution, but that requires both workspaces to be paid, which is a no-no in our community one.

FYI, some alternative projects that do this to certain degrees written in different languages:
https://github.com/rsk-lab/RSKSharedChannels
https://github.com/Lilleengen/xSlack
https://github.com/414owen/Inter-Team-Slackbot
https://github.com/Dylan1312/SlackMultiTeam
https://github.com/vonwenm/slackline-gae

smola commented

Maybe we can contact Slack support for them to provide some kind of cheaper option for our community Slack without paying for every external user?

What's with Gophers' Slack? I don't think they are actually paying for their 27,619 registered users, which would be $172,618 per month.

Maybe we can contact Slack support for them to provide some kind of cheaper option for our community Slack without paying for every external user?

Of course. cc: @campoy's charm.

What's with Gophers' Slack? I don't think they are actually paying for their 27,619 registered users, which would be $172,618 per month.

From @campoy a couple of comments above:

I think gophers.slack.com got it for free because it was created by golang-bridge which is a non for profit org.

@campoy @mcuadros what do you think about using one of these? #124 (comment)

If works, for me is fine.

I'm concerned about using one more ad-hoc solution, but I don't want to pay so much to Slack.
I really want to stop using slack and migrate the whole conversation to something like discourse.

Let's wait until our new DevRel addition joins and let him figure this out. I'm sure his previous employer has had similar issues and they're definitely not a non for profit org.

Cc: @vcoisne, welcome aboard and please help us figure this out of this pickle!
P.s.: Mind you this is our public guide repo.

Thanks @marnovo I have reached out to a contact at SlackHQ + support team to see if they have any recommendations / best practices. Also looking at 3rd party options, although I'm not sure we want to go down that path.

I took care of this issue. Closing