Sorry I didn't mean for this to be divisive or rude. I wasn't aware this was a common observation. I'm not trying to be negative or incriminate the product. I use and enjoy slack every day.
Sorry I didn't mean for this to be divisive or rude. I wasn't aware this was a common observation. I'm not trying to be negative or incriminate the product. I use and enjoy slack every day.
In my opinion Slack does something that is often very undervalues and easily overlooked, it is like the opposite of a death my a thousand cuts - superiority by a thousand minor improvements.
When taken individually or even in handfuls none of the features are that impressive, but cumulatively it creates a much better product. This was very apparent to me at least when I switched from HipChat to Slack. Just reading features or looking at screenshots they are nearly identical, yet with actual use Slack seems like a significant step up.
So yes IRC is to Slack, as the Ford Model T is to a Mercedes S-Class.
The brilliant bit is that you can set up your own homeserver which holds all your chat logs, can authenticate against whatever you like (internal username/password, LDAP, or even CAS single sign-on), and allows you to communicate with people and rooms on other homeservers without having to manually connect, create a dozen different accounts, etc.
I think right now, 50% of users are on the matrix.org homeserver and 50% are on their own homeservers. And the upside of everyone being on a homeserver is that everyone essentially has their own bouncer by default - no more having to set up ZNC on some random VPS on a user-by-user basis, you can always message anyone and they'll get your message whenever they reconnect.
Because of its federated model, you can also use it to communicate with other companies and customers as well as internal communications - something Slack/etc aren't really chasing after.
[0] https://matrix.org [1] https://riot.im
XMPP can support all the other things you've mentioned.
There's something to learn from this - there's likely a "right amount" of anarchy, some goldilock zone where people can still be creative and unburdened but not so much that things become fractured, fragmented, and incoherent.
I think you mean the other way around.
https://github.com/rawdigits/wee-slack
It's more featureful than the native Slack IRC gateway.
Good luck handling 3000 concurrent buffers in slack, or even adding basic features like OTR.
One example deficiency is message ordering. In Slack, messages ordering sometimes changes sometimes after I have received two messages, that are then ordered differently. Is this an example of “eventual consistency” in the wild?
Another deficiency of Slack that definitely is more “inspired” by IRC than anything else is the reconnection handling. If you ever have used IRC, Slack and XMPP on a train (or any other spotty connection), you may have noticed that IRC (or Slack) can time out without you noticing immediately, while with XMPP temporary network problems are usually handled automatically by modern clients.
The difference in both cases lies in stream management – if each message has a sequence number (as it has in XMPP with XEP-0198), endpoints can definitely establish a) an ordering and b) what the last message received was. This eliminates any manual replay. Slack does not do this, apparently, even though unexpected network termination happens frequently.
A third defiency of Slack that makes it look like IRC is the notable absense of metadata fields. While in XMPP you can have a vCard, the Slack documentation contains this gem, indicating Slack developers themselves abuse the last name field to convey information such as not being in the office:
> We ask that everyone displays first and last names in Slack, so we can use the last name field to alert coworkers when they are out of the office, on extended leave, or sick for the day.
Source: https://slackhq.com/slack-101-onboarding-247454704155#11aa
Slack is "just IRC" as much as vim is "just ed."
IRC was (and still IS) good. Slack is basically a modern way to view and utilize the same basic system. It also made it very easy for developers to integrate components (whereas IRC you'd have to search out some way to do such integrations) - and with the "special" UX that they control they could add things like button actions on messages.
A client like Slack for IRC with some of the newer IRC RFCs could potentially work just as well - as long as the UX and push notifications etc were nailed.