Skip to content
This repository has been archived by the owner on Nov 21, 2018. It is now read-only.

IRC or Slack? #106

Closed
therebelrobot opened this issue Jan 26, 2015 · 38 comments
Closed

IRC or Slack? #106

therebelrobot opened this issue Jan 26, 2015 · 38 comments

Comments

@therebelrobot
Copy link
Contributor

@ruimarinho presented an interesting idea in his comment that perhaps there could be greater growth in usage if moved to slack (which can be connected via IRC if users want). It provides a good interface and is easier for non-technical users to participate in discussion.

I'm not for or against currently, wanting some collaborator input, see what everyone thinks. Also to make sure that the PR on scrollback is more focused on that issue.

Original Comment:

... a cool idea from @rauchg and his experience with a public Slack community. See https://github.com/rauchg/slackin.

@Fishrock123
Copy link
Member

My overall feelings are that IRC will still end up winning out the same way it has after, what, 20 years?

It's simple chat and that's the point. :D

@indexzero
Copy link
Contributor

I think this would lead to similar fragmentation that we -1ed when creating a separate #iojs.org room for the website

@ruimarinho
Copy link

@indexzero, not if #io.js's room is also on the same page. I think that the great benefit of Slack is how non-technical users are able to quickly engage in discussions. We can simply enable the IRC gateway and make everyone happy - both new and expert developers, who are generally leaning towards IRC - see connecting to Slack via IRC. Plus, you get all the goodies from Slack, like content embedding, webhooks for release announcements, mobile notifications, etc.

@mikeal
Copy link
Contributor

mikeal commented Jan 27, 2015

I advocated at one point for using gitter but it ended up being more trouble than it was worth. IRC is an immovable object forever stuck in our path.

@wonderdogone
Copy link

I think the reason slack is getting users for socket.io is because
1- the socket.io room was very slow anyway and I would try anything to get a better response
2- the nice purple button on the socket.io homepage looks more modern compared to IRC #socektio(especially for someone younger then "old timers"

I would use both if need be. Whatever is most responsive.

@dotproto
Copy link

@mikeal what was the trouble with Gitter? I've been hanging out in the gitterHQ/gitter room and heard a couple people had success with https://github.com/finnp/gitter-irc-bot. Also, individual users can connect to Gitter via IRC: https://irc.gitter.im/.

@Fishrock123
Copy link
Member

2- the nice purple button on the socket.io homepage looks more modern compared to IRC #socektio(especially for someone younger then "old timers"

@wonderdogone I'm 21.

@SVincent It's clunky and annoying for some of us, and most of the committers idle in irc anyways.

@dotproto
Copy link

@Fishrock123 Apologies, but I don't completely follow. Which part is clunky/annoying? The Gitter web UI, connecting to irc.gitter.im, or some other aspect of that platform?

I've never quite gotten into IRC as I haven't found a client experience I really enjoy. I'm one of those weird technical people that's interested in contributing to more projects, but feel like IRC adds more overhead and complication than I usually want to deal with. I can't speak for others, but for me Slack or Gitter would go a good way to making the collaboration experience much more attractive.

@therebelrobot
Copy link
Contributor Author

+1 to @Fishrock123's points. Though I'm 26.

I would prefer personally a more modern interface to IRC, for non-techs but still have the backbone be IRC proper (freenode); we don't want to cut out the entire userbase that already chills on the channel.

So IMHO:

-1 to gitter and slack

+1 to a better way for non-technical users to use the IRC channel.

@therebelrobot
Copy link
Contributor Author

@SVincent, the appeal of IRC is that once you learn the basics of it, it can be connected to from literally everything. Any platform, any OS, any browser, any anything. It is merely a protocol that resides on a public server, and you connect to it using whatever tool you want.

Granted, finding that tool can be a challenge, if you aren't familiar with it, which is why I agree with having an elegant web UI to address that issue. The freenode version is clunky, but others may not be (for example scrollback). But moving to slack or gitter moves too much of the control onto a third-party company to keep the servers up, where we can roll our own IRC server if we wanted to.

@dotproto
Copy link

But moving to slack or gitter moves too much of the control onto a third-party company to keep the servers up, where we can roll our own IRC server if we wanted to.

That seems to be the crux of the problem. Buying into an ecosystem (Slack/Gitter/etc.) comes with the obvious UX benefits that attract new users, but at the cost of controlling your own destiny.

In which case it sounds like folks largely agree on using IRC as core platform. It also sounds like people want a better "casual" user expereience. Are there any OSS web-based, user-friendly IRC clients worth mentioning?

EDIT: Just noticed that Scrollback is OSS. https://github.com/scrollback/scrollback

@dotproto
Copy link

Based on this discussion I spent the past few days trying to get a bit better with Textual, a Mac IRC client. As far as I can this app smooths out a lot of annoying IRC issues, but it's still a painful enough UX that I would avoid it as often as possible.

I'm kind of the odd man out on this discussion, but I'm -1 on IRC.

@Fishrock123
Copy link
Member

I'm not -1 on slack, but not everyone is going to end up migrating, especially some collaborators I suspect.

Well, I could force it, but I don't think that would be good, and people would probably end up using, like, #libuv.

@rauchg
Copy link

rauchg commented Jan 30, 2015

It might not be a bad idea to have both, to be honest. Slack is much more welcoming for the newcomers. IRC for the heavy-users and core developers.

@aravindet
Copy link

I’m with @therebelrobot : keeping IRC and adding a beginner-friendly interface that integrates with the existing freenode channel, perhaps https://scrollback.io/iojs. There is no need to buy into an ecosystem completely: the community is still on IRC, and Scrollback itself is open source, runs on node/iojs and can be self-hosted. There’s more discussion on that in #65.

Having separate chatrooms on freenode, slack and gitter would be the worst scenario IMHO, as that would unnecessarily fragment the community. I’d pick one and use it everywhere.

An interesting possibility with Scrollback is for the IRC channel to show up as a chat widget over the website (like on http://blog.tomahawk-player.org/ or http://mozillaindia.org/), this could be useful on the API docs, so that people reading the docs can ask questions in the IRC channel easily without leaving the page:
iojs-apidoc

@julianduque
Copy link
Contributor

@aravindet love it! +1 to IRC +scrollback, integration into website would be a win for newcomers and people not used to IRC.

@JedWatson
Copy link

the appeal of IRC is that once you learn the basics of it, it can be connected to from literally everything. Any platform, any OS, any browser, any anything

What platform / OS / (modern) browser can't use Slack?

For what it's worth, I find Slack a much better platform for async discussion. My IRC idles or falls offline and it's hard to respond to conversations; being in the +11 (Sydney) timezone means by the time I come online to respond to something, whoever I want to talk to is no longer online. It's frustrating.

If IRC can be made simple for newcomers then great, but in my experience there's no streamlined way (e.g. which client do I use? do I need to buy one? do I subscribe to a (for pay) service? etc.)

I'm not sure what the problem with Gitter is (it seems to work well for 6to5) but if that's no good, slack is very newcomer friendly, and free by default with all the features you need including email notifications of missed messages, history, etc.

Just my two cents.

@JedWatson
Copy link

having said that, I agree with @aravindet above:

Having separate chatrooms on freenode, slack and gitter would be the worst scenario IMHO

Biggest problem with Slack I've found is ease of joining (you need an invite) and people keep using IRC regardless, so the community is fragmented :(

@aravindet
Copy link

@JedWatson that’s a great point regarding async discussions and notifications. Scrollback does them too (email and mobile push notifications), however there are a couple of ways it’s different from Slack.

On Slack, everyone has to create a Slack account before they can join the chat; Scrollback registration is optional. The Scrollback (and IRC) way is preferable for casual users who just want to have a chat without a long-term commitment, but email notifications obviously only work for the users who register and follow the room (the star icon at the top) so it is less discoverable than Slack.

Scrollback has an Android app with push notifications, whereas Slack works on iOS also.

Scrollback emails may be slightly easier to parse, because they group messages by discussion (using a neural net working on signals like who’s replying to who, shared keywords, etc.). For example, here’s the email I got today:

iojs-email

That’s the daily digest email; If someone mentions you by name, you’d get an email immediately.

@mikeal
Copy link
Contributor

mikeal commented Feb 1, 2015

Provided it can integrate with freenode IRC, I'm all for it.

I tried to push some stuff to gitter because it was more accessible but the reality is that freenode IRC will just never die and if you don't integrate with it then we're splitting the community.

@julianduque
Copy link
Contributor

@mikeal I tried to implement gitter for some communication in ColombiaJS but that didn't work well, we ended up using Slack but makes sense for a small amount of people in the community, not sure if it would be a good solution for more

@Fishrock123
Copy link
Member

I'd like to see https://github.com/slate/slate with a website version.

slate irc client

@therebelrobot
Copy link
Contributor Author

holy. crap. that is beautiful. And written in node. We could totally make a web version of it super simply... (I think I just found my weekend project)

@osslate
Copy link

osslate commented Feb 4, 2015

Forking slate and stripping out the node-webkit stuff would be a good start. Could start from scratch either, that's something I'd be interested in contributing to.

@dotproto
Copy link

dotproto commented Feb 4, 2015

Happy to lend a hand @therebelrobot 😉

@therebelrobot
Copy link
Contributor Author

Do we want to take that on as an extension of the website team, @Fishrock123? Sounds like we have some good response in the past 30 seconds ;)

@Fishrock123
Copy link
Member

Sounds like we have some interest here. It would still be best to have a desktop app also, if that is the plan.

@Fishrock123
Copy link
Member

I'd rather not take anything else on right now, let's let the discussion be a couple days.

@therebelrobot
Copy link
Contributor Author

So should we contribute directly to the slate project then, and update a web version as we go? From the docs, it seems to be feature-incomplete.

@therebelrobot
Copy link
Contributor Author

Kk

@Fishrock123
Copy link
Member

Yeah, that would probably be best anyways. (it's modular too.)

@aravindet
Copy link

The slate screenshots are amazing (I can’t figure out how they get the blur effect under the dialogs) but the project seems to have stopped at a very early stage. While tj is no longer maintaining slate, the library (slate-irc) is still maintained and it’s very nice code. At Scrollback, we’re switching our IRC bouncer over to it (http://github.com/scrollback/birch).

While making a web (as opposed to desktop) client, do keep the requirements of network operators in mind:

  • Support the webirc (https://kiwiirc.com/docs/webirc) protocol and request an I-line from freenode and any other networks you want to support. This lets many people connect from your server’s IP and allows chanops to ban individual users and not the whole server.
  • Freenode might also require that you run an identd server to authenticate usernames.
  • If you’re planning to add integrated public logging, it’s best to have a dedicated bot that does nothing but logging (irrespective of whether you have users in the channel). Most networks, including freenode, will require end users should not be able to enable public logs on a channel without the chanop’s permission. (Scrollback handles this by having the chanop /invite the bot to the channel.)

@dotproto
Copy link

dotproto commented Feb 6, 2015

I can’t figure out how they get the blur effect under the dialogs

@aravindet, WebKit and other browsers support (with prefixes) Filter Effects Module Level 1. Here's a CSS-Tricks article on the topic. Find me on Gitter or IRC if you'd like to discuss more 😉

@bnb
Copy link

bnb commented Feb 12, 2015

@therebelrobot About Slate: I remember when TJ left the community he he wrote a blog post that said he was looking for a maintainer for his projects, and that explicitly included Slate. I'd bet a good wager he'd be willing to turn it over to io.js/contributors, if he hasn't already turned it over to somebody.

@therebelrobot
Copy link
Contributor Author

@bnb +1 to that. That would be spectacular. Or if the contributors don't want it, i'll definitely pick it up.

@bnb
Copy link

bnb commented Feb 12, 2015

Just did a simple search, and found this: http://shout-irc.com/

@aravindet
Copy link

Shout looks good too, but imho it sticks too close to the desktop IRC client formula (no chat history, a long form to fill before joining).

I’d prefer something where the user is only asked for a nickname before joining - the server and channel should be in the URL, the nick should be reused as the username and realname, and a reverse DNS lookup should add the hostname. Also, logs really should be in the same interface.

If I were to begin a project to add these to an existing project, I’d pick Slate over Shout — it looks better.

@Fishrock123
Copy link
Member

I can't even get shout irc's web client to run correctly haha.

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

No branches or pull requests