nodejs / iojs.org

https://iojs.org
Other
232 stars 130 forks source link

IRC or Slack? #106

Closed therebelrobot closed 9 years ago

therebelrobot commented 9 years ago

@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 commented 9 years ago

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 commented 9 years ago

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

ruimarinho commented 9 years ago

@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 commented 9 years ago

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 commented 9 years ago

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 commented 9 years ago

@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 commented 9 years ago

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 commented 9 years ago

@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 commented 9 years ago

+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 commented 9 years ago

@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 commented 9 years ago

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 commented 9 years ago

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 commented 9 years ago

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 commented 9 years ago

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 commented 9 years ago

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 commented 9 years ago

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

JedWatson commented 9 years ago

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 commented 9 years ago

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 commented 9 years ago

@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 commented 9 years ago

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 commented 9 years ago

@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 commented 9 years ago

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

slate irc client

therebelrobot commented 9 years ago

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 commented 9 years ago

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 commented 9 years ago

Happy to lend a hand @therebelrobot :wink:

therebelrobot commented 9 years ago

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 commented 9 years ago

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

Fishrock123 commented 9 years ago

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

therebelrobot commented 9 years ago

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 commented 9 years ago

Kk

Fishrock123 commented 9 years ago

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

aravindet commented 9 years ago

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:

dotproto commented 9 years ago

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 :wink:

bnb commented 9 years ago

@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 commented 9 years ago

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

bnb commented 9 years ago

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

aravindet commented 9 years ago

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 commented 9 years ago

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