I cannot recommend using Slack via a browser enough. It achieves several goals:
1. It sandboxes resource usage, preventing Slack from being a permanent resource hog. Is your Slack tab running hot on Chrome? Just kill it for now. There are many browser extensions for managing resource usage per tab.
2. Closing the Slack browser tab means no disruptive notifications. Sure, you can snooze Slack @-mentions, etc., but that's too much of "working hard to make the tool work."
3. Better workflow (seriously) Perhaps this is just me (or my function as a marketing person at a startup), but I work almost entirely inside the browser (GMail, Google Docs, various sites for research, SaaS apps). Using Slack as a standalone desktop app means I have to focus away from the browser. Using Slack as a browser tab means I can treat it just one of several web apps I use regularly.
4. Bonus point: No need to update your Slack client =)
I use slack in irssi. I think I actually get better benefits.
1. irssi is ridiculously low resource usage. It never melts down.
2. No notifications by default. I actually have a script that gives me notifications. It's quite cool because I filter the messages by regexp so that I only see what I want to see. Also, it uses my normal desktop notifications which means that they show up where I want them to, with the right font, in the right colour, lasting for the time I want them to. One tip: my default notifications do not stay up long enough to read them. It just gives me an indication that people are talking. I can notice a word or two and if it strikes my interest I can go to irssi and see what they are talking about.
3. I'm a programmer, so I'm always in my console. Same sauce, different flavour ;-)
I occasionally use slack from the browser because it has some features which are useful (like showing images), but I do that only on demand.
One of the things that is useful is that the people who like using slack on my team also have a lot of experience with IRC. They have good etiquette. Chatter is kept in the right channels so that it can be ignored easily. Work channels are about work and have a really high signal to noise ratio. Some teams are so good at it that if I want to get an overview of what's going on in their project I can simply subscribe to their slack channel. It's great for me since I work remote.
Another couple great things about slack over irc (I use irssi as well):
1. Text logs that you can grep. I've probably grepped dozens of times for ip addresses, conversations where I know i mentioned someone or they mentioned me, etc.
2. No deletes or edits, once it's been sent to your client there is no mechanism to retract it like there is in the browser or native client.
This assumes all edits and deletions are done in good faith or that there wouldn't be legitimate need for persistent chat logs for auditing (chat support for instance).
Still doesn't make edits/deletes a feature. When you say something, the information leaves your control. You should not be able to retroactively edit/retract it. It's mine now.
Why? Give a good reason for this being the case? I realize lots of people have that feeling, but no one I've encountered can back it up.
It feels like the "git history should never be modified!" fundamentalists. Pragmatism always wins out in the end.
In practice the editing feature is not a problem. The pros outweigh any cons. Point me to the groups of people talking about the disasters that ensued once they allowed editing?
As a principle of communication. Working on a git repo is working on a shared artifact that's external to you and other developers. Retroactively deleting a message you sent me is literally like reaching out into my inbox and yanking out something that's mine now. Feels a bit different.
Yes. Very principled. I'm telling you that in practice, for the multiple large teams I've been a part of that have switched to slack, violating that principle doesn't prove to lead to problems. The benefits dominate the theoretical, academic concern. Try it!
In my company we use Skype for group chat (inb4 thanks for condolences). It has the edit/delete feature which I myself use mostly for fixing typos. But sometimes I'm a minute late to a discussion and see some deleted messages that are crucial to understanding what it was about. It's mildly annoying, and I was trying to reverse Skype to get at the deleted messages. It turns out Skype does store edits in its SQLite database, but sadly blanks out the original too if edit was a deletion. I'm too lazy to be bothered to set up a monitoring service that would make a separate, append-only log.
It just baffles me how many apps that would have been fundamentally doable on a 486 with Windows 3.1 and 14.4 dial-up somehow manage to gulp resources on modern machines.
(Although, for 1 and 2, it seems like temporarily closing the Slack app would work just as well.)
No part of me wishes computers were limited like they were then, I just wish software in general didn't assume it was the only thing running on someone's machine and was not so cavalier with resource usage.
If Slack's desktop client was written in efficient C++ using platform specific UI framworks it would likely be one to two orders of magnitude more efficient across all important metrics. Unfortunately the desktop app is basically an entire web browser instance running JavaScript code.
I can see the appeal, however. Write once run anywhere is a hell of a drug.
> I can see the appeal, however. Write once run anywhere is a hell of a drug.
It's not just that. It's that you're not paid to write good code, nor efficient code. You're paid to write any shit that works good enough to be sold to users, and to write it as quickly as you can.
At my first job, a machine of that spec was a typical AutoCAD workstation (although some still ran DOS). The really grunty DX50s even had 16MB of RAM (whoa).
Most extensions are similar to that, but you could always run NoScript or uMatrix to have more finegrained control on specific scripts/domains that are running.
Besides, isn't the desktop app mostly just the browser app itself running inside the Electron framework? I haven't noticed any critical features it offers on top of the web app.
1. It sandboxes resource usage, preventing Slack from being a permanent resource hog. Is your Slack tab running hot on Chrome? Just kill it for now. There are many browser extensions for managing resource usage per tab.
2. Closing the Slack browser tab means no disruptive notifications. Sure, you can snooze Slack @-mentions, etc., but that's too much of "working hard to make the tool work."
3. Better workflow (seriously) Perhaps this is just me (or my function as a marketing person at a startup), but I work almost entirely inside the browser (GMail, Google Docs, various sites for research, SaaS apps). Using Slack as a standalone desktop app means I have to focus away from the browser. Using Slack as a browser tab means I can treat it just one of several web apps I use regularly.
4. Bonus point: No need to update your Slack client =)