Skip to content
This repository has been archived by the owner on Jun 24, 2020. It is now read-only.

Which service should Reactiflux move to? #25

Closed
benigeri opened this issue Oct 12, 2015 · 210 comments
Closed

Which service should Reactiflux move to? #25

benigeri opened this issue Oct 12, 2015 · 210 comments

Comments

@benigeri
Copy link
Contributor

Update: Reactiflux is moving to Discord. (more info)

Wondering why we have to leave Slack? Read this.

I will try to periodically update this list to match what everybody is saying. If you would like to add a contender, please format like all of the others. That way I can easy append the list.

And thanks to @elwayman02 for a comprehensive comparison chart

The winner

Discord

Website: http://discordapp.com/

Pros
  • Amazing product, has been great for chatting so far. Lots of people like it better than Slack.
  • Instant invites make it so easy for people to join the conversation. Easier than any other service.
  • Moderation tools will come in very handy. We're lucky we've had no spam, but that is eventually going to change. I'd rather have moderators than making our community invite only.
  • Free and no limits.
  • Voice chat is awesome.
  • Easy to go from one server to the other,
  • Team has been very open and supportive. Their app is built in React & Flux & React Native
  • Hosted
Cons
  • Some people might not be able to access it at work. (Please let me know if you can't access it so that we can try and assess the severity of this.)
  • Search on the roadmap, but not yet built
  • It could vanish (but they are backed by some of the best VCs in the world, and seem to have good product market fit)
  • Having lots of channels get's noisy, and there isn't a way to shortlist channels. There is a very strong likelihood this well be addressed before the end of 2015.

Didn't make the cut

Gitter

Website: http://gitter.im/

I'm going to get on the phone with the this week. Hopefully they can alleviate some of our concerns.

Pros
  • Proven scalability (Free Code Camp has > 50K users)
  • No limits for users or search or archive
  • Very OSS friendly company.
  • Most of us already have GitHub accounts
  • Hosted
Cons
  • Lots of us have complaints about Gitter's apps being sub-par. Site + apps are not as good as Discord
  • Since Gitter channels/rooms are based around Github organizations/repos, it's unclear whether a Reactiflux community should even exist. See (DUPLICATE) Moving from Slack to another service #17
  • I think more of us have Slack open by default than Gitter open by default
  • No voice
  • No moderation tools

RocketChat

RocketChat is an OSS Slack clone. Key differentiator is the fact that it is OSS.

Pros
  • Seems like it's pretty full featured
  • Has voice and video
  • OSS / self hosted. Could be a benefit in the long run
  • RocketChat can help us migrate slack account
  • Lots of ways to sign in (social + username/password)
Cons
  • Apps are not as polished as Discord or Gitter
  • Self hosted, but the RocketChat guys offered to set it up for us
  • Several users have encountered issues signing up and logging in
  • Some of the mentioned features are still being developed (multiple orgs, slack migration)

Facebook @ Work

Website: https://www.facebook.com/help/work

This would be a very different communication model. Instead of channels (chat rooms), we would have a group for each topic. The conversation would happen around posts.

You can still chat with small groups or individuals, but we lose the notion of big, open public chat rooms.

Pros
  • Facebook is obviously a solid, performant product
  • Really good search, no limits
  • We can have much better medium/long term discussions, for when chat is not sufficient
Cons
  • This is an early idea and is not definitely possible. We don't have any confirmation from Facebook.
  • We lose big chat rooms.

IRC

There's already a #reactjs on freenode.

Pros
  • At least some React people already use IRC
  • Free and no limits
Cons
  • IRC clients are not great products
  • If you quit your IRC client you will miss out on any mention and DM. So you need an irc proxy (which only power users really use), or you will need to keep the client connected at all times (impossible).
  • Also there is no sync to mobile.

Zulip

Website: https://www.zulip.org/

Pros
  • No limits
Cons
  • Product is not as good at others
  • We need to host it ourselves
  • Not being super actively developed
  • High switching cost, everybody needs to create new accounts

Mattermost

Website: http://www.mattermost.org

Pros
  • No limits, no lock-in
  • Looks well designed, product is promising
Cons
  • Still not as polished as Gitter or Slack
  • We need to host it ourselves
  • High switching cost, everybody needs to create new accounts
@petehunt
Copy link

IRC? There's already a #reactjs on freenode

@fubhy
Copy link

fubhy commented Oct 12, 2015

There is also ChatGrape. I know the founders and could talk to them about this. https://chatgrape.com/

@oren
Copy link

oren commented Oct 12, 2015

👍 for IRC on freenode

@robbestad
Copy link

I think IRC is great option, but I desperately need a better IRC client for the Mac. Even mIRC back in the 90s was better than Colloquy is today.

@frederickfogerty
Copy link

Someone posted a quick poll in the slack room, maybe this should be moved to the first comment, or a new one made. http://strawpoll.me/5715176 Credit @RWOverdijk

@benigeri
Copy link
Contributor Author

@frederickfogerty thanks for the link. Poll is a great idea, but I think it's important to discuss our options a little more before we ask people to vote.

@bimawa
Copy link

bimawa commented Oct 12, 2015

PLS add all channels on IRC mirror

@frederickfogerty
Copy link

@benigeri Agreed. I'll leave it there just to get initial opinions

@Daniel15
Copy link

There's always the possibility of using multiple services (eg. IRC for real-time chat and Facebook@Work or some forum system for long-form posts). Using software to its strengths would probably end up better than a "one size fits all" solution. Additionally, a very large number of open-source communities already use IRC, so the consistency would be good (rather than having IRC for most other communities and something special just for Reactiflux).

For real-time chat, my vote would be to use IRC on Freenode, along with a nice web UI such as KiwiIRC on reactiflux.com for people that don't want to use IRC through their own client. If KiwiIRC doesn't have all the features we like, we could always fork it. It seems to handle large rooms pretty well though.

I was going to add my previous comments from #reactiflux-dev in this Github issue, but Slack doesn't let me scroll back that far, and unfortunately I don't have the history saved in my IRC client (I've been using Slack via IRC this whole time). Classic Slack.

@benigeri
Copy link
Contributor Author

IMO all of the IRC clients, including KiwiIRC are a huge step back from Slack or even Gitter. Happy to be proven wrong if anybody knows of a really awesome IRC client.

@bimawa
Copy link

bimawa commented Oct 12, 2015

I use WeeChat for terminal its openSource and very high uptime.

@0rvar
Copy link

0rvar commented Oct 12, 2015

The problem is that if you quit your IRC client you will miss out on any mention and DM. So you need an irc proxy (which only power users really use), or you will need to keep the client connected at all times (impossible). Also there is no sync to mobile. IRC is not really an option in my opinion.

@oren
Copy link

oren commented Oct 12, 2015

@awestroke $5 a month on digital ocean. apt-get install tmux weechat

@benigeri
Copy link
Contributor Author

@oren it's never that simple

@bimawa
Copy link

bimawa commented Oct 12, 2015

@oren +mosh

@bimawa
Copy link

bimawa commented Oct 12, 2015

MB Admins can create irc bot for its features?

@nikcorg
Copy link

nikcorg commented Oct 12, 2015

+1 for IRC

@Daniel15
Copy link

IMO all of the IRC clients, including KiwiIRC are a huge step back from Slack or even Gitter.

That's subjective. Also, the benefit of using an open protocol rather than a proprietary system is that anyone can build on top of it. There's no lock-in. There's a large number of open source IRC clients, and there's also a large number of bots and libraries to write bots. We could automate things in pretty much any way we like. Logs could be collected by a log bot and stored in a database to give anyone searchable history of everything in the channel. Much much nicer than Slack's "history" (if you can even call it that).

IRC is a proven technology, there's a reason it's still popular today. As I mentioned earlier, lots of open source communities already use it, so using IRC would prevent a lot of people from having to use multiple different apps.

Also there is no sync to mobile

How many people post to Reactiflux from mobile? Do we know?

The problem is that if you quit your IRC client you will miss out on any mention and DM.

I'm using ZNC + znc-push + Pushover for this, I get all mentions instantly to my phone. Took a bit of setup but that's just once-off and now it just works and I don't really think about it.

@0rvar
Copy link

0rvar commented Oct 12, 2015

@Daniel15 You are a power user. If we require people to get their own software stack just to get basic chat functionality, then we exclude a large chunk of users.
I use slack from mobile all the time.

@Daniel15
Copy link

If we require people to get their own software stack just to get basic chat functionality, then we exclude a large chunk of users.

For basic functionality, most web UIs are fine. New users just want to chat, and don't care about all the bells and whistles. Basic chat functionality doesn't require users to get their own software stack, it just requires them to visit a web page.

For power users, what's wrong with allowing them to do more advanced things? If I want to use ZNC, what's wrong with that?

@0rvar
Copy link

0rvar commented Oct 12, 2015

Offline history is a basic requirement for a modern chat

@0rvar
Copy link

0rvar commented Oct 12, 2015

If there was a good web UI with persistence that could be embedded, I'd be all for it. But "just let all the noobs find some shitty web UI themselves" is not an option.

@Kevnz
Copy link

Kevnz commented Oct 12, 2015

IRC
Is it the prettiest? Nope. Is it the shiniest? Nope. Is it the trendiest? Nope. Would there be a limit to how many people can be invited? Nope. Can people access it from any device no matter the platform? Yep.
Honestly, there are some fairly nice irc web clients, and plenty of apps for people to use. Any none irc platform that you do not control is a risk with the size of this community.

@0rvar
Copy link

0rvar commented Oct 12, 2015

Honestly, there are some fairly nice irc web clients

Please provide some links. If we go with IRC, we need to have a rock solid path for clueless (as in, clueless wrt IRC) people to follow, not "use whatever"

@Daniel15
Copy link

But "just let all the noobs find some shitty web UI themselves" is not an option.

I was suggesting installing a web UI on reactiflux.com that noobs could use, not that noobs should find their own web UI :)

Any particular things you don't like about KiwiIRC? What if it was extended to provide persistent history?

Honestly, there are some fairly nice irc web clients

Please provide some links.

Textual is good on Mac OS. I used to use HydraIRC on Windows which was nice at the time, maybe there's something nicer now though. 10+ years ago I was using mIRC :)

@0rvar
Copy link

0rvar commented Oct 12, 2015

I vote for gitter. Then people who like IRC can still use that to connect, while everyone else can use the persistent web interface and/or mobile apps

@pleunv
Copy link

pleunv commented Oct 12, 2015

Discord looks suprisingly good... what's the catch?

@benigeri
Copy link
Contributor Author

@pleunv we're not sure yet.

@RWOverdijk
Copy link

I also wanted to throw this out there: https://irc.gitter.im/

Seeing how currently IRC and gitter seem to be the most liked platforms.. I think combining them is a realistic solution.

@taion
Copy link
Contributor

taion commented Oct 12, 2015

Discord's markdown doesn't support code, and I'd be willing to bet it's not going to scale well to thousands of users.

@vcarl
Copy link
Member

vcarl commented Oct 18, 2015

I can help with the website, I already have Heroku permissions. I'll see if I can get something together Sunday.

@jbhatab
Copy link

jbhatab commented Oct 18, 2015

We can still use that mockup that scott made but change out the slack image with discord. It was pretty beautiful. We should just change the link to slackin to the discord app.

@vcarl
Copy link
Member

vcarl commented Oct 18, 2015

Link to that @jbhatab?

@brentvatne
Copy link

Updated the "Getting Help" section of the React Native docs to link to the new Discord invite link! https://github.com/facebook/react-native#getting-help

@jbhatab
Copy link

jbhatab commented Oct 18, 2015

@vcarl I'll get a pic as soon as I can. Just gotta get it from Scott. It's a solid simple template.

@benigeri
Copy link
Contributor Author

@vcarl @jbhatab any serious discussion re: landing page should happen here: https://github.com/reactiflux/www/issues/1

For now, let's do something simple. Just a static html page with:

  1. logo
  2. link to discord
  3. couple lines of text announcing and justifying the switch
  4. Eventually a link to the currently non-existing blog post

@elwayman02
Copy link

For those who care, I've been working on a weighted feature comparison that assigns an importance (weight) to each feature. I update my spreadsheet with a new tab that shows the weighted scores:

http://jhawk.co/team-chat-comparison-chart

For what it's worth, I came up with the weights based on my personal thoughts as to what's important for an OSS community chat; I did not think about what scores each platform would get when I assigned the weights. I only saw the totals afterward.

Additionally, you might note that Markdown, Code, and Syntax each have a weight of 0.5. This is because I felt that they are really part of the same feature which deserves an overall weight of 1.5 (making it more important than most), but for purposes of comparing platforms they were broken into 3 parts since each app supports it differently.

TLDR Top 5 Scores:

Discord 20.875
Slack   20.75
Gitter  20
ChatGrape   19.5
Rocket.Chat 19

@Daniel15
Copy link

@elwayman02 - One major thing missing from your spreadsheet is data portability. Does the service allow data to be exported? This is pretty important if you ever want to migrate to another service in the future, without losing data.

@elwayman02
Copy link

@Daniel15 that opens a whole new can of worms, though. What about data import? What good is being able to export data from a previous service if you can't import it into the new one? Should there even be an expectation of being able to do that? This is a much bigger conversation than I wanted to get into with my spreadsheet.

@vcarl
Copy link
Member

vcarl commented Oct 18, 2015

We have decided, we're moving to Discord. We're putting up new information on reactiflux.com soon.

@elwayman02
Copy link

@vcarl I don't think anyone is disputing that (I'm all for Discord, personally)...I was just putting up the additional information as reference to those who might want to see it.

@Daniel15
Copy link

What good is being able to export data from a previous service if you can't import it into the new one?

Read-only archives, for one.

Should there even be an expectation of being able to do that?

Export? Absolutely, you should be in full control of your data, including the ability to download a copy of it. Import? Not quite as much of an expectation, but a mature system should support it.

@namuol
Copy link

namuol commented Oct 19, 2015

What's the rationale to choose Discord over Mattermost?

Seems like as a community of developers, Mattermost is a good long-term bet.

  1. It was specifically created to be an alternative to Slack.
  2. We can import our Slack users and archives.
  3. Do we need a feature? We're all developers. We can actually contribute.

@benigeri
Copy link
Contributor Author

@namuol some points about Mattermost

  • it lacks a lot of the polish we found in Discord
  • doesn't have mobile or desktop apps
  • not as easy for new users to join channels
  • we'd have to host it ourselves

And Discord had 400+ members before we even settled on it.

@MoOx
Copy link

MoOx commented Oct 19, 2015

Discord looks really nice. Good choice. Nice find :)

@fczuardi
Copy link

I've been using this great web-based IRC client: http://shout-irc.com/ as a proxy to keep my nickname always connected, it's free software (MIT License) and easy to setup / hack / customize on any box with nodejs.

@Daniel15
Copy link

@fczuardi Have you tried KiwiIRC or qwebirc at all? I wonder how Shout compares to those. qwebirc is pretty old now, but FreeNode use it as their official web-based client so it's proven to be stable.

@fczuardi
Copy link

Shout is probably less stable than qwebirc and kiwiirc. I am using it mostly because I like javascript and the default theme.

@benigeri
Copy link
Contributor Author

It's official, Reactiflux has moved to Discord! Join us: http://join.reactiflux.com

Full blog post: https://facebook.github.io/react/blog/2015/10/19/reactiflux-is-moving-to-discord.html

@benigeri
Copy link
Contributor Author

Thanks again to everyone who spent time researching, googling, discussing, arguing, ranting, complaining, suggesting, and contributing. It took us a while, but I'm confident we picked the right platform.

Now we can focus on other things like our website, a searchable directory, migrating people over...

@LoganDark
Copy link

You don't need to register to chat

...

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests