That's definitely key, and I think that behavior should be default. (though arguably that wouldn't be in the financial interest of Slack)
Another thing that's key in my experience is learning to take one's time in replying to people or learning who to say "no" to. When people learn that you're not 24/7 tech support, they'll bother you less often. But it really depends on the kind of company you work for, what your role is, etc.
+1 I find this to be the best way to use Slack, as a more connected, more functional SMS. The problem is not so much Slack as the default settings for Slack. Used in the right way, it's a powerful tool
Not really sufficient, unfortunately. People will always abuse this and mention you whenever they feel like it, without thinking if it really needs immediate attention. The only solution is disabling notifications entirely.
If it were email, those same people would abuse email. I don't think what you're saying is really a problem with Slack. Those people you're referring to are disrespectful morons.
I think the issue is that people already learned how to avoid going crazy with email. A large part of that is reading it in batches and not getting any notification when messages arrive. Some other people are bothered by this and seem to forever seek a way to worm their way back into your foreground attention.
Slack conflates mentioning someone with notifying someone. Some of my coworkers use mentions like metadata. They think they are creating a better informatics resource by mentioning people by their Slack id instead of their name. They had no intention of it actually sending an immediate notification to interrupt anybody.
They see Slack more like some kind of wiki and not like a chat system. I see Slack as a chat system and an even more worthless wiki than all the other wikis everyone creates and then abandons due to editorial debt. Unfortunately, we don't get to join different Slack systems with entrance exams to filter out the wrong sort of user...
Another thing that's key in my experience is learning to take one's time in replying to people or learning who to say "no" to. When people learn that you're not 24/7 tech support, they'll bother you less often. But it really depends on the kind of company you work for, what your role is, etc.