3 ms·
I personally think that Slack has been heavily inspired by IRC and it can be seen by its feature set and failure modes – where it more resembles IRC than any ot
by erlehmann_ 10y ago
I personally think that Slack has been heavily inspired by IRC and it can be seen by its feature set and failure modes – where it more resembles IRC than any other messaging solution I am aware of that came after it (importantly, Slack engineers did apparently not learn from XMPP).
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 https://slackhq.com/slack-101-onboarding-247454704155#11aa