When we see a new message on Slack, some of us have the urge to reply immediately even though we haven't thought of the full answer. That's fine and natural, and why Slack is great for conversations, but sometimes it can become a frustrating habit when things we say are half-baked. Especially when someone challenges you on the comment, at which point I've found myself deleting the comment because it wasn't thought-out or I've misread the question.
It's also fine to tell yourself to slow down and take a break, but for some of us taking the time to stop and reflect is trickier than it sounds. I'd rather if there was some mechanism that told me to slow down.
That's why I developed this Tampermonkey script named 'Slack cool-down' (requires the Tampermonkey browser extension).
What it does:
1) Adds a button to Slack with the text "Cool-down replies"
2) Pressing the button then disables the comment box inside threads
3) Pressing the button again enables the comment box
A demonstration is also available on YouTube.
That's all, it's just a self-regulating tool that helps some of us take a breather when we're getting caught up in the world of Slack.
- [Env] I have only tested this on Chrome
- [Env] This is only usuable on the Slack Web interface (slack.com)
- [Env] This has been developed with the use of 'Tampermonkey' as the browser extension that runs it
- [A11y] The DOM position of the cool-down button is at the bottom, but it should be inside the thread header. The problem is, this thread header doesn't exists when the JS is executed and I couldn't find a decent way of waiting for it to exist.
- [A11y] There's a big problem in the focus experience. If you were to press the cool-down button, you'd then have to trawl back to where you were and then trawl back again when you want to turn the cool-down off
- [A11y] The text "Take a break" is implemented in the CSS 'content' property and won't be supported in all browser screen-reader combination
- [A11y] The way the comment field is disabled is not semantic. The comment field just has an opacity style with the text laid on top to visually-disable the field. This won't work for assistive tech.