Slack Is Not Where 'Deep Work' Happens(blog.nuclino.com) |
Slack Is Not Where 'Deep Work' Happens(blog.nuclino.com) |
Slack for work - not the best for actually writing useful messages, more like <blah><return> <blah><return> and working people see ping ping ping, go back in and respond, and on it goes.
Twitter for news - not the best for actually having productive discussions, more like <shout><announce><snipe><war> and most people see ping ping ping, and go back in and like/retweet to their 5 followers.
Facebook for social - not the best for actually getting together (i.e. social life), more like <post cat video><post wedding photo><post political meme><post outrage> and lonely people sit at home and see ping ping ping, and go back in and respond, and on it goes.
By now many of you know that I have spent the last 7 years working on a solution. The problem is that in order to build anything people will want to use, you need to spend at least half a million dollars on a realtime platform that can do stuff. If you want to see the problems and solutions, check out the videos on these pages:
https://qbix.com/blog (latest post)
I tried to like it. I am a young person for whom IRC and Email seem very oldfashioned. But hey, it works and doesn't get me distracted.
The problem with entepriise tools, both technical capabilities and organisational contexts, is that this is often neither supported nor acceptable.
Everyone does not have to have full interrupt access to everyone else.
https://web.archive.org/web/20190330111120/https://plus.goog...
________________________________
Notes:
1. Thank you, Internet Archive.
2. Based on my Google Data Takeout, about 3,000 blocked profiles. I'll miss those.
I'm not sure I completely agree with the article's premise, but what's important here is the debate, rather than the article's premise or conclusions.
This discussion would be broadened by the question: "With respect to the tools that a company mandates you use (and this includes software, like Slack) -- do those tools control you, or do you control them, and do they make you more productive or less productive, and in what scenarios?"
Maybe that's a separate discussion however...
We have channels where discussions will spread over multiple days because there simply is no expectation that Slack is real-time.
What happens? Garbage. Chat is not how work gets done. Or how knowledge is transferred and, most importantly, retained.
In Slack, the chat contents are shown in a less dense way (more whitespace & separation, big user icons,) but they found a solution that seems to work pretty well, which is the 'thread' feature. (This is pretty recent AFAIK.) Threads stay collapsed for people who aren't participating and pop out for people who want to.
While they are pretty much inevitable, multiple orthogonal conversations happening in a channel might also sometimes be a call for reorganization or sidebar channels/group chats.
As an aside, one of my favorite experiences relating to chat is having multiple concurrent conversations with the same person or people, on different topics, in their respective channels. It highlights how bizarre the rapid context-switching pattern you fall into with chat applications is.
Replying to someone 2 hours later has never been an issue.
If it's urgent, people drop by my desk.
Definitely don't have slack on my phone, and when Slack is closed, I don't get any kind of notifications.
Being able to focus is important. In the end it matters I deliver on the project, not that I reply to every question immediately.
I think it tells me something about a persistent problem, curiosity or struggle.
People can still override it if they have to and you can catch up with all the static whenever it suits you.
Any sort of notification / alert is disruptive to deep (real) work. If it's urgent, send me a text. Or, god forbid, a phone call.
I think a lot of this depends a lot more on the expectations of the whole group. This needs to be defined at an org level and well understood by everyone. It's not so much the tool as how it's used.
There is now a continuum of interactions:
- FYIs that are put out in a topical chat. You get to those when you have a moment, when you go through your unread rooms to catch up. Same for topics that you are only peripherally following. Time is not of the essence there. Zero interruption here and no expectation for you to be always listening.
- Topical chats where you are @-mentionned. This is where a conversation that you're not actively following suddenly took a turn where your input is sollicited. But since you see the topic of the room, you are in control about whether it's worth an interruption. The group's expectation is that the person that was mentionned will join the conversation IF they are not in the middle of something (assuming the topic is not alarmist).
- New rooms that got created around a topic or you getting added to an existing room. Basically it's similar to the above, where you're getting dragged into a conversation.
- 1:1 chats with specific requests. Again, it depends who it's from, you triage based on origin. But the expectation is already managed at our group level.
In all these modes, you can chose to accept the interruption or defer it. The deeper your work, the more likely you can defer it. We can operate like this because we have the nuclear option we can always use when it's actually needed: PagerDuty. This brings a few benefits: the person paging a team or another individual is aware that they are putting a burden of urgency and there's a recorded audit log of that page. So it's not used lightly.
Once you've accepted the interruption though, you still get to control its modality.
- Very often, a "hey, quick question" can turn into something WAY larger than the requester could imagine. That's when we point them to creating a Jira ticket, effectively punting a synchronous interruption into an asynchronous unit of work. Or you can tell the requester to schedule a meeting to work more deeply on that. (Related topic: ALWAYS have at least one day where it is forbidden to schedule meetings, accros the whole org.)
- If the request is about an urgent matter, we just do an instant video meeting within Webex Teams. That converts long drawn out chats into quick visual meetings where the nuances are better expressed. Because in a long chat, the mind is already interrupted, so having to wait for typing and confirming nuance ends up taking a lot of time.
I tend to believe discussion groups with comment voting systems (e.g., Reddit, Digg years ago) tend to further or more quickly close communication feedback loops that help lead to echo chambers: "what we like, what don't we like." People who want to actively engage will be more quickly discouraged if their perspectives differ and are quickly shunned, even if they're potentially valid. Those who remain will be conditioned with positive reinforcement when they repeat the status quo ("rewarded" with up-votes from peers).
Comment voting systems tend to suppress perspectives that challenge the status quo in general (they can also promote challenges, though anecdotally, I observe this far less). Even without voting systems though, peer pressure in discussions shapes the discussions in a feedback loop that, in my opinion, leads to echo chambers of perspectives.
Obviously the tradeoff is: what's the alternative? True garbage is posted that should be removed (spam, direct personal attacks, etc.). Moderator and editor systems shape discussions to their bias vs. a more distributed voting approach biases towards the status quo. Another option is to allow any perspective a perpetual voice (false negative spam and uncivil discussion emerges) which requires filtering/ignoring on a per participant/client basis (not good at promoting return visitors who want quality discussions), but this does allow exposure to new and differing perspectives.
I'm not sure what the best solution is. As you pointed out, and I agree entirely with you, his/her comment certainly could have been presented better and didn't need to attack HN directly. At the very least, for me, it illustrates frustration as a symptom of a potentially systematic problem.
Sometimes, I do wonder if "trolling" and "flamebaiting" often regarded as negative behaviors, are in reality healthy for discussion groups. They encourage a never ending revaluation (QA/QC, CD even) of ideologies adopted by the status quo and foster a competitive behavior of ideas using emotion for drive and momentum. I've read some of the best in-depth and even enlightening discussions spun out from such comments, once you get past initially emotionally fueled personal attacks. To be fair, I've also observed some of the most worthless volleyball of personal attacks. I suggest those disagreements and the emotional fuel help us push away complacency and strive for improvement instead of avoiding challenges. Without any emotion, few have desire to bpther exploring some ideas. Emotion isn't required to have a progressive discussion, but it seems to me to help light fires and engage more ideas, especially if done tastefully.
I like Slack, and having a group communication tool has only increased my productivity.
How? - Having a place to easily search for issues others have had in the past. Sure, you can search emails or ask the same questions, but it's nice to search and find answers from other peoples conversations. - Integration for production alerting, customer feedback, and deployment pipelines. Instead of manually digging through several different web UIs or using a bunch of different CLIs, I can just take a look at the corresponding channel. - Notifications _can be_ non-distracting. Being the correct channels, snoozing alerts, or just exiting slack when you need the deep focus headspace, is easy.
I specifically don't want to be called/texted/interrupted in person unless it's something severely important. 90% of the time its not. I would much rather ignore a slack notification than answer a meaningless phonecall, or politely tell someone to bug off in person.
I will say, the "always on" culture is hard to face when Slack/group messaging is a companies main point of communication. Luckily, I've only ever been in places where its been understood that you are only expected to be responsive during your work day.
But, I think the negative effects of the cost of distraction by slack are overblown. There are endless ways to be distracted these days, and Slack is not the worst thing out there. You can always just exit the program.
Nor do I think this is as simple as “you can simply exit the program.” If the company or team has certain expectations on communication that won’t work if you do it without consulting with your team. A lot of people are not in this sort of position where they can take an action like that and not be ostracized.
Imagine ignoring calls or emails from your boss for a day or two when it’s clear that boss expects responses in a specific time? Exiting Slack can have the same effect at a lot of companies.
I simply think more companies need to take the time to discuss how tools will be used and for what purposes so everyone is on the same page. We have always published an etiquette guide that is open for debate/change. But most places I’ve worked use Slack and most places simply don’t discuss how it’s used so everyone has different expectations. And being the one person trying to fix this problem in a team can make you feel crazy.
Then slack makes no difference then, you might as well blame emails or the phone company.
On my team almost everything goes into the main team chat; however, every message is tagged with the person it's aimed at and any team-wide communication is tagged @here. Any sub-conversation about that top-level message happens in the message thread.
With this method, you are only notified if you are tagged in a message or if a message is tagged @here. Outside of that I will check slack about once per hour and can see all top-level issues at a glance that either my team or a specific person has been notified of. If I am interested in whatever the issue is I can dive into the thread and get more information about the issue or contribute my 0.02.
I see many here suggesting other software, at the end of the day that's all it is, software. The productivity drain/boost comes down to how everyone decides to use that software. If you get 100 emails a day with the subject "IMPORTANT: READ IMMEDIATELY", email suddenly becomes just as annoying and as much of a time-suck as Slack, this applies to all communication methods.
Just because you have instant messages doesn't mean you have to respond instantly. Disable notifications and checking every few hours is plenty enough. If a person can't work because of a pending question, it usually means they don't have their work organised sufficiently.
This is an overly harsh assumption. There are plenty of compelling real-world examples of organized, effective people being blocked by some small but urgent thing that's not their fault and requires a few minutes of attention from someone else.
If a dev just started on my project but the DB credentials I gave him aren't working (or whatever), that's on me. If my boss's boss jogs over to our office area asking who here knows Thing_X the best, I'm going to deign to remove my noise-cancelling headphones and accept the deep-work disruption.
Or never start to use it in the first place.
The fundamental problem with Slack is that its interactions are not structure in the right way to be useful in non-real-time. An email thread has two critical pieces of structure that Slack threads lack: a subject line, and a beginning. With email, it's easy to tell where a particular discussion started, and which messages have to do with that discussion. On Slack, these things are all intertwingled. In order to find the beginning of a discussion you have to scan everything in the channel. That is what makes Slack a distraction. It's much harder (like virtually impossible) to filter content by topic after the fact.
As anyone who's followed a giant email chain, I think that slack is at-least a little bit easier to follow. Albeit I'm working in a company that is just now trying to start to emphasize stories/tickets/chat over email for everything, with tons of pushback.
Gone are the days of email everything, tons of people are CC'd, email chains are 30-50 responses in. It's absolutely unmanageable. Oh and if you drop chat, let's start logging alerts to email, or bugs to email. It's useless.
Personally I'll use chat for anything relatively quick or unimportant in the grand scheme of things. I'll use email for when it's not something that requires a response right away but generally is also unimportant to the company projects and doesn't involve a ton of collaboration. Anything bigger than that goes in a system that's suitable for tracking projects or complicated topics.
I don't think there's a one size fits all solution for communication.
I've convinced everyone at two companies so far (50 and 20 people) to never reply directly in a channel, and always use threads:
This a million times
Bonus points, you don't annoy other people in the office with your impromptu meeting next to someone that has nothing to do with it
I've found being in Slack is a great way to feel less isolated, and conversations that might not otherwise happen happen. I also am in very small channels, usually no more than 5 people. This may contribute to why I like it. I can't imagine being in a 50-100 person Slack with everyone messaging everyone. Especially if I'm expected to keep up. The low population count makes it so that I rarely miss anything.
It's a tool. Use the tool, don't let the tool use you.
What about scheduled DnD for days off? Ability to /ignore annoying bots? Two basic features which should've been added long ago.
No, you can't, and that is the problem. If your entire team primarily uses Slack to communicate, you are forced to constantly check it or you are not being a team player.
You talk about searching the history but to me the search tools are so weak that I figure only the recent slack messages have relevance -- instead slack is as transient as a text message. Mail at least can be searched as a corpus.
Source: https://www-cs-faculty.stanford.edu/~knuth/email.html
The previous company did not use Slack. We used XMPP for one-on-one IMing (we did have chat rooms but nobody used them), physical desk phones for meetings or high-bandwidth chats, and email for everything else. The current company uses Slack and Zoom for meetings.
There's a big difference between the two companies in socialization and how they feel, and I put it down to Slack. The old company mainly had one-on-one chats with anything involving more people being done through well-thought-out emails, whereas this one is pretty much exclusively chat rooms.
This has the effect that you talk about work and only work, as you don't have that dead time after you're finished talking about the thing you need to say "what's new with you?". Instead of privately talking to your coworker and being able to be sincere, you're yelling your conversation all around the room so the interaction is pretty much going to be confined to work stuff.
If you're starting now, I would wholeheartedly recommend getting your communications mostly one-on-one, and using something like Zulip for company communications, which has the feel of email but with a better UI. I also cannot recommend getting physical phones enough, they worked so much better than mobile phones or Zoom that they crossed the barrier of inconvenience, which meant we talked to each other much more often.
It's not a huge hassle to get a Zoom going, but it is some hassle, and headphones/etc are enough to dissuade us from just picking up the phone and calling each other. Desk phones (connected to our PBX) were so seamless that you pressed a button and were connected to your coworker instantly, with amazing sound quality, a microphone that picked your voice up perfectly from anywhere in the room and a physical mute button.
I should write an article about this, actually.
Consider https://cycle-gap.blogspot.com/2007/09/extreme-pair-programm... as an example of how it can look. Mind you, I don't recommend 10 hour sessions ever, much less to begin.
I find it odd to believe that intense, deep work can only happen in solo.
Most people in these environments usually know how to write software. Most of the software written isn't too complicated and doesn't require Deep Work. The design of these systems requires more thought, but the implementation should be fairly straightforward once you have a plan.
There's a self-fulfilling prophecy for you. We assume a priori that developing software doesn't require much thought, so we'll skimp on environmental factors that contribute to actual thought and see what programming we can get out of it. And lo and behold, if you ignore the usability problems, security problems, out-of-control memory problems and the necessity of an army of testers to make up for the fact that nobody actually understands the code, the resulting software kind-of sort-of meets the requirements so we were right, software CAN be reliably produced with zero concentration in an all-interruptions, all-the-time environment!
That. So true.
Easy as ABC.
I run like 6 different messaging platforms, but none is allowed to interrupt me. If you can't restrain yourself from checking messages constantly, you have a problem not the medium.
Sure, but that's not the point, it is not even where "work" happens. Slack can be useful as a communication tool. There is a time for work and a time for communication. Just as you don't answer the phone when you want to do serious work. Likewise, meetings are a waste of time, except when meeting face to face is useful. Communication is super important. After all, without communication, there is no work. Tools designed to enhance communication impede it when used as surrogate management. If Slack must be open at all times, it turns into a distraction.
If that means turning it all off at certain times to support "deep work" then so be it. The question, in my mind, is how to find the optimal balance between synchronous, interrupt-driven communication and asynchronous communication. I'm not sure anybody has figured out the perfect answer for that yet.
Hand them a copy of Deep Work?
Also, don't just turn it off... announce to the group "Hey guys, I'm going offline to do deep work for the next 3 hours. Only interrupt me if the building is on fire, OK?" or something like that. Set a status or "away message" that says "offline for focused deep work right now. Interrupt only for absolute emergencies." or something similar.
At the beginning of March, I went cold turkey on most social media (I still allow myself HN and a guitar player's forum), and completely cold turkey on using my phone for these things - I have to use an actual computer. I put Kindle where Facebook used to be on my phone, and always have a book on it that can be read in small bites for those "OMG I AM BORED FOR TWO MINUTES" moments, and I carry a Kindle Paperwhite with longer-form reading for lunchtime and such.
My brain feels amazingly different. I'm more aware and happier. I'm getting more work done. My stress levels are way down. My book-reading rate has at least tripled.
This article refers a lot to Cal Newport's excellent Deep Work, but I wish it also referred to his more recent Digital Minimalism, which is full of useful advice for limiting the ways social media and instant messaging undermine our productivity and happiness.
And lock screen notifications are off for all apps. I only see a notification badge when I decide to pick up and unlock my phone.
Early days but seems to be improving ‘distractability’
I saw from the beginning that this made no sense at all, that adding a new sharing service could only make the problem worse but I could only slow this trend down.
A real solution would involve an intelligent aggregator that sucks it down from those sources and imposes some structure on it together with you.
For instance the python docs have everything you need to know about Python, Google and stack overflow are wrong at least half the time. So I build trails over the documents that get me to reference materials i need in 1 or 2 clicks.
Control of document sharing is also a big thing in Biz.
The star salesperson was trained as a lawyer. Ask him how to share a document and he will tell you to do it the same way my accountant does it. He doesn't mind it when I show him something in Github because he knows familiarity with Github gets him far in credibility with everybody.
Elsewhere in the business people use Google Docs and also collaborate with the hugest businesses on Earth. People at those businesses might not believe Google Docs is secure and it is not good for the relationship when somebody shares a Google Doc in Google.
What doesn't work is a in-between-solution where you have >5 places each with its own outdated fragments of nothingness. This means whenever you decide on something you just will have to bite the bullet and use a meaningful amount of time to get everything into the new system. When the new system works, it people are more likely to honor it than contributing into something they feel is broken and somehow meaningless.
Company wide/support channels, your basically at liberty to completely ignore these. Some people crack the odd joke in here, camaraderie in a team is nice, but don't feel its compulsory. I mute them, though they're are great places to be able to search!
The channel for your immediate team/specific projects, your not obliged to monitor this but it'd probably be helpful for the team if you checked in twice a day or so, you might be able to guide or unblock a teammate with knowledge they don't know you have.
And direct messages. Again, its up to your to triage these, if its unimportant just mark unread and come back later.
The important point of slack is that communication is open, which brings network effects, I cant count the number of times I've stumbled on information that's been directly helpful to me. However, just like any other open information portal, most of it isn't directed at you, so don't worry about it.
> Reduced pressure to read everything. Let’s face it, it’s not practical or necessary to keep up with every conversation. The aggregated timeline in Level lets you subscribe to channels and sip from the firehose of conversations without pressuring you to “catch up” on all unreads.
Of course Slack is not where Deep Work happens, more than the telephone is where Deep Work happens.
Now, is [Insert persistent group chat software] where meaningful work can happen as a team? Absolutely. Lots of things have gotten resolved, rubber ducked, fixed, etc in those channels especially for my remote teams.
But nobody expects to get "Deep Work" done there.
Messaging is genuinely useful for a productive org, Slack doesn't event come close to providing this. As far as a better interface for IRC goes, it's good for that, the various industry groups I'm in are good, but for work? It's a tire fire.
Like everything in life, it's always a trade off. You may gain scores for team work but will sacrifice individual creativity. Deep creative tasks always require a full strength of focus and that state is only attainable once we allow our mind some time to completely "dial in". You simply cannot switch from 0 to 100 and be in the zone within the span of just a few minutes.
When you are using Slack or any social media communication platforms, your brain must allocate cognitive resource to manage your ego because you do care about what other people think of your opinions. Since the pool of our cognitive resource is limited, we will have less remaining that can be dedicated to other real creative tasks.
On top of that, you now have a distraction source where you constantly have to switch attention to. This may condition your brain over time and cause it to lose the ability to "dial in".
Some companies were eager to force employees into using these tools while it didn't really provide any real tangible benefits, and may in fact even be destructive. Within a company only some departments should use it but some definitely shouldn't. It's the same reason why open office concept may work for certain organizations but not for all.
So the deep parts of the work are now the responsibility of the team, and in order to do that, the team needs to stay in constant communication. Yes, it's slower and less efficient, but the business values reliability and accountability at the expense of some efficiency.
This is why you don't get an office or even a desk -- you get about one linear meter of bench on which to set up your MacBook. This is why availability on Slack is paramount. This is why you're responsible for attending standup, planning, retro, grooming, Three Amigos, and whatever parking-lot meetings your PM has called throughout the week in addition to all the work you've committed to this sprint. This is why "sprints" in the first place.
If you work for corporate, odds are you've signed up to join a hivemind, with all that entails.
So glad we don't do any of that at my new company! And it turns out we ship stuff much faster.
It's also missing a lot of things that you take for granted with Slack. Things like auto-link expansion and third-party integrations of any kind.
Slack is for most employees a way to socialize, to get connected, to be not alone because employees are actual lonesome creatures looking for community, looking for something to belong to. Heck, companies are for employees the same. They want to to find friends, to get laid, to network because they can't outside of their free-lunch-corp. If they had to work in the basement in a shitty 3-people-firm, alone, they would have run away the first day.
I haven't been employed for a long, long time, so my view on employees is quite negative and opinionated: employees except the sales ones are in terms of social interactions, networking, finding friends compared to non-employees way underdeveloped (to use a polite term). Don't confuse hanging around with peers in a company being social. Most wouldn't be able to find close peers outside of their company and comfort zone.
Hence, they need Slack so urgently, so they can chat, plan boring get-togethers and like each others messages with crappy emojis.
I always found emails more productive for exactly that reason – you don't get so many pointless jokes and people have to set priorities whom to write what thing.
And if you really wanna have human interaction, just go there, make a 5 minute coffee break with them, have a little chat and be on your way. Or well, call, write them on the messenger of your choice, something like that.
My brain thinks it hears that alert noise beneath the music I have playing, or if I go to the other room it thinks it hears it from afar, so I run back to my desk to see if someone is messaging me.
I hate that I have been conditioned this way, but I don't foresee it changing in my workplace any time soon. Some people I work with are on Slack all day chatting, and I really question if they are ever doing anything else.
(https://twitter.com/slackhq/status/767806840524705792?lang=e...)
* You can sort channels and even put them into folders (Engineering, HR) * You can choose who to accept DMs from * You can block/mute users
There's probably a ton of other things I'm not aware of. I rarely use Discord, but every time that I do I leave wishing companies I worked at used that instead.
I wonder if Discord could make a business-oriented fork without the integrated game store and so forth.
1. If it can be an email, put it in an email instead. Email has far better tooling than Slack for automatically filtering and triaging messages so that the recipient can focus on the important ones.
2. The busyness of a channel should be inversely proportional to the number of participants. Channels with >10 participants should be virtual ghost towns.
2a. Except when you are using the channel for crisis management.
2b. Except for channels where people are asking "how to" questions, for those, either have the current on-call people triage it and call in the experts as needed, or set the expectation that people will get answers eventually.
3. If you need a response in under an hour, do a voice call or find them in person.
4. Employees should not be expected to have Slack on their phones, and employees should not be expected to respond outside of work hours.
Edit: also rule #5: Social channels: they are neither forbidden nor discouraged, but for the sake of your own focus, you should keep them muted.
Slack is getting such a huge valuation so quickly because it is incredibly simple to use and is very user friendly. IM tools like Skype / Sametime / whatever have been around for companies forever, but Slack is much more user friendly and frictionless to use from the ground up, and with plugins even more useful.
I think most of the hate here keeps coming back to issues with peoples coworkers, not whatever IM platform they want to dislike that is currently making tons of cash.
In lieu of Slack, one lightweight pattern that often works is something like:
* Email for things you should see, possibly urgently (ideally with simple filters/actions, for when/how to alert/expose different messages, which the individual can tune over time, to their needs).
* Lightweight chat (maybe IRC/XMPP/etc.) for things you don't have to see (such as questions you don't want to interrupt anyone over, but they can answer if they're available enough to look at chat; and perhaps watercooler chatter for personalizing everyone, especially when you have remote workers). Be careful that this doesn't turn into fear-of-missing-out compulsion or an operational must-see -- emphasize that turning it into must-see is counter to the goal of the medium, becoming a burden for people.
* Agreed-upon simple in-repo/wiki/other for capturing information that people need to see in the future. Try to make this lightweight enough that it's not a burden to capture this information in a way that's accessible/usable to people when they need it.
The organization can evolve this over time, but the above is not a bad start.
A possible side benefit of rolling a lightweight solution on your own is that you don't need to trust a third-party with your company-confidential data (nor inside 'analytics' of your people and company), nor deal with possible goal misalignment with the third-party. (Of course, you can decide any third-party is worthwhile, and sys-admin is usually not what you want to be spending time on in most startups, but you have many options.)
Pardon the naivete, but couldn't he just stop doing that?
As for email, it works for longer form stuff. But not for having a real time conversation that involves multiple people. It's akin to saying Google Docs is useless because you can collaborate on a document in email.
Like any tool, it's how you use it. Slack can be distracting if you let it. It can be useless if you don't use the tools it gives you. Can you do everything slack does with other tools? Sure. But it will require a massive amount of effort to get you up and running again.
Mailing lists, Usenet, IRC, Slack, bulletin board, wiki, GitHub issues - doesn't matter which, use whatever works for you and is most convenient, but, whatever you do, please communicate in text. Bonus points for storing all that text in a searchable place.
Well, once the speech to text is sufficiently accurate, this may change (although there's always that chilling feeling of having so many of your voice samples sent to Google) - but until then, communicate in text as much as possible. Both deaf people, social phobiacs, and new hires will thank you for that.
However, having lived pre- and post-Slack period, I can't say that Slack has worsened the situation. When there wasn't Slack, I had people coming to my desk to ask the question (vastly more distracting). We had meetings for tiny questions and they stretched far too long. The culture of company that is far more responsible than any single tool.
- Face to face
- Phone call
- Text message
- Slack
- Publication/memo
The rank corresponds to distraction, synchronicity, time to compose/respond, latency, and importance. Done well, Slack is a nice layer between a 10-minute email that might be forwarded on to some customer, and an "OK for demo Monday?" text message. You can include screenshots, links, spreadsheets, etc.
The problem seems to come up when it's assumed to be lower-latency and higher-priority than it is. I can take a 30-minute break every couple hours and answer a couple emails and a half dozen Slack pings, or you can interrupt me with a phone call or text that I can ignore or take and subsequently answer a quick Slack query, or you can come to my desk and bring something to my attention right now. If you think Slack is like talking to me or calling to me (or treat it like it has that real-time priority) you're going to have a significant new distraction.
Perhaps I am (really) old, but pre slack is a blink of an eye ago.
Also we are, sadly, not yet post-Slack.
> ... I can't say that Slack has worsened the situation. When there wasn't Slack, I had people coming to my desk to ask the question (vastly more distracting). We had meetings for tiny questions and they stretched far too long. The culture of company that is far more responsible than any single tool.
You're describing a work environment that bewildering appears to exclude email, or the option to explain to people how and when to use email.
There was one guy, Bill, who was an 'engineer emeritus' and an old Cold Warrior. The guy, no joke, was a genius. He was the only person in The West that knew about ablative nose-cone chemistry for ICBMs and the like. He's tell us junior engineers great stories. There was the one period of time where he'd get briefcases filled with empty steel bottles and was asked to analyze what was in them. No telling where they were from or if any of the stuff was radioactive or anything.
He taught me a great lesson in engineering management. He technically had an email address, but it just auto responded that he never checked it, call him [0] or walk on over for a chat. I remember thinking: "What a proud, old, stupid man. How regressive!". How dare he say these things! You have to respond to emails.
Well, just that little bit of friction was enough to stop all the nonsense in his product group. Just the act of having to dial in the numbers and wait, just the act of having to get up out of the seat and then go actually talk to Bill, it was enough to have most people sit and think about what they were going to ask him. Most of the time, they really didn't need to say anything at him. If it was actually important, then yes, you'd get up and talk to him or give him the files he needed or whatever.
When it came to our DoD work, friction ended up being a good thing actually. It made you think just a half-step more about what you were doing, if it really was anything.
[0] The phone number was for the bar down the street, where Bill spent many of his days. Honest to God. You'd call, a barback would answer, and then he'd yell at Bill to amble over and take the phone.
But in zoom you do have a personal meeting ID, isn't what your describing just replacing that?
> My only complaint with zoom is the lack of a prompt before launching video.
As another commenter said, you can disable auto joining video and audio in the settings.
I do think it should be turned off by default though.
Long Version: In Zulip, each and every conversation in a channel has a topic. So for catching up one don't have to go through all messages in a channel. Instead just go through the topic names and open the topics only you are interested in catching up. Since each conversation can have a topic you can reply back to conversations even after days as well as can have multiple productive conversations in one channel at same time!
We dont have offtopic in ours. We do have a #random chat, but its very infrequently used. Instead of zulips revolutionary tags, just use the slack threads.
Zulip wont save you if you're drowning in Slack messages.
I just don't get it. Slack just sits there in the dock, and I don't need to keep the window open to have it remain useful. Maybe someone can shed some light on how "Group chat is like being in an all-day meeting?" I honestly don't get it.
Maybe a desire to find drama? Vs focus on your own "boring" problem. The funny thing is, it can make you feel productive!
A few people tried to push it on my team when it started growing in popularity and immediately I noticed how much of a time sink it was. No thank you, I have enough hurdles to delivery, I don't need additional artificial hurdles I have some say in.
When waiting too long to respond, the conversation has already changed and it's too late to contribute. And Slack's threads don't solve that problem IMHO.
Call me rigid, but isn't the ability to overcome this kind of silly stuff exactly what separates well-adjusted adults from everyone else?
When you catch yourself doing things out of FOMO, take your dispositions and fix it. In this case: close the app, or configure the alerts.
I'm sometimes alarmed by how people seem to have zero self-knowledge and appear to run on auto-pilot, guided by base impulses.
...then keep a straight face while your super Agile manager berates you in front of the entire team because you're hard to communicate with, we have Slack for a reason.
Not everyone has the choice to not allow Slack to interrupt you. Some organizations mandate this sort of communication, disruptive though it may be.
Edit: just to clarify, I'm not in this situation :-D. But I've seen it happening.
I don't monitor Slack (though everything I say here applies to any 'chat' app). It can interrupt me, but only when people @-mention me, and then at least there's a reason. Sometimes I even ignore those for a while until I'm able to shift focus, but that takes some discipline. If you don't have the discipline, close Slack (or set to DND) for a few hours while you work on something.
What's the alternative to Slack -- Email? That's a million times worse, in every way. It's a necessary email when talking externally, but would ban it in a heartbeat for internal comms, if I had my way. In my view, every every email breaks down into three categories that are better served by another means of communication:
* A task that needs to be completed == A ticket
* Information to be shared to a group of people == Internal CMS posting (eg, wiki)
* A discussion about something (which will usually lead to one of the above) == A conversation in Slack (asynchronous, equivalent to email) or a meeting (synchronous, if decision needs to be made quickly, and/or everyone is discussing in real-time anyway)
The only thing e-mail is actually useful for is notifications from systems you don't monitor/use frequently and that can't notify via Slack, and communicating with people externally.
Likely the people interrupted by Slack messages (assuming they don't use the brain-dead default of 'notify on all messages') are also currently interrupted by every e-mail or phone call that comes in, so I'm not really sure you can blame a lack of focus on Slack.
The key thing is being clear what communication and team culture you want to establish. I'm not just a grumpy guy that ignores messages or avoid helping others. It is something that has been discussed and agreed upon in the company and is expected to be respected by anyone no matter where the person is in the hierarchy.
That is very vague. Sounds like you have an axe to grind with your management.
What about scheduled DnD for days off? Ability to /ignore annoying bots? Two basic features which should've been added long ago.
Good feature idea. Have you submitted them?
As for as DnD scheduling for PTO, they have custom which I use on my last day. Works perfectly for me.
As for /ignore for bots, sounds like the people controlling your Slack need a suggestion or two.
They shouldn't assume everyone will read every message. If it's important, they should make sure you definitely saw it.
If you ever feel like you missed and important decision, go and politely tell them to always get you involved.
I usually start by proposing an idea to a small group of people - e.g. my team or people at the company I think might like the idea. Only after a few people say they like the idea and start using threads, propose the idea to more people and say "look, a few of us are using threads and it works".
Many of these decisions you refer to are not made by the individual employee, but by the team lead, PM, or the executives, who are not always very connected to how those decisions affect developer happiness. So getting control of your personal digital life often has no bearing once you enter the workplace with an entirely different set of expectations.
Slack being a public company worries me even more, because there is now an even greater drive for them to make ever-increasing revenue/profits, which usually means keeping people on Slack and active within the client and increasing daily active user / engagement metrics. In many ways there isn't great alignment between a company being productive and Slack's financials; Slack is incentivized to boost revenue even more now, likely at the expense of end-user productivity.
On the broader level, I definitely think the larger the company and the larger influence it has, the more scrutiny it needs. People who are in charge need to recognize the externalities of what they are making, and the potential negative side effects they can have. I have been somewhat encouraged at least in that this conversation seems to be happening lately.
I would think they would care more about adoption of the service across more kinds of companies.
All the deaf programmers of the world would like to have - haha - a chat with you. You'd surely quickly recognize their mood :P
I'm being sarcastic, but the accessibility angle is a serious one.
> and that "something" may or may not be knowledge that should be spread through the team
Whatever you talked about, either resulted in a decision (which should be documented anyway, because you never know who and when may be affected by it) or it didn't, in which case it could have been an email to one person or a group of people.
> I find it to be much easier to infer someone's mood and intent when I talk to them
That's a problem with the literacy of that person. All the words needed to express various moods and intents are there in the dictionaries; this is a battle-tested, mature technology (I mean, written English) which only got so much better since we're able to attach funny cat pictures to each sentence now.
> There is no universally better communications mode.
Of course, as it depends on what you consider "better". What I'm saying is that text is better for accessibility, transparency, scalability and searchability. Speech, on the other hand, makes expressing one's emotions easier. Such an advantage.
Probably the only good use for a call is to notify all the right people when some disaster happens (and really quick - seconds to minutes - decisions are required) or in case a CEO prepared a New Year's speech (at least if they honestly worked on their public speaking skill). Everything else is unnecessarily disruptive, favors quick responses when thoughtfulness is often more important, and gets incredibly messy quickly when you start adding more people.
Using @here in a channel is the equivalent of standing on your desk and shouting at everyone around you. So what happens is, like you, everyone starts muting it.
And then you just have people shouting into the void.
It all boils down to how people use the communications channel. I see @here multiple times a week but do not feel like it is a big distraction. At worst it can create a few minutes of distraction from my current workflow and if I'm truly in the middle of a thought process I ignore the message for a little bit or unless a 2nd notification hits.
Agreed on the default video thing. I'm in no rush to reactivate my camera though, and "Surprise! You are on camera!" isn't something I give software a do-over on.
If decisions are being made over Slack, I have to be involved or suddenly I may find myself responsible for something I have no control over. Simply because I was not there to let people know who actually is responsible.
I can't even imagine working in such an organization and staying sane.
Never @ someone unless you want their immediate attention?
Specifically of the "I need to reach out to this team I don't know about their product" variety.
A) If they interact with Slack, I can search previous answers
B) It promotes a culture of openness. Huge benefit in some orgs! We talk about our projects, warts and all, in public channels. If all your org channels are private, you're definitely Doing It Wrong
C) It's far more scalable than ticketing. Issues can be resolved in three lines of text, rather than ticket creation, queue, assignment, closing, etc.
As an above commenter noted though, you can and should push back on expectations of constant availability. Slack is asynchronous, not for initiating hi-pri issues.
You are describing a proprietary, expensive, intrusive, demanding rewrite of SMTP.
It's like SMTP, if nearly every conversation went to list-all and our email clients were designed to intelligently allow us to choose what sub-section of the thousands of messages a day are important to us.
Or, like we already knew, it's an expensive, intrusive, proprietary upgrade of IRC.
But Slack is certainly easier to install and use (by being centralized).
My experience has been that it goes on for thirty or three hundred lines of problem report -> steps to reproduce -> troubleshooting -> proposed solution -> etc. Two days later someone else gets pulled in so they look at a Jira ticket with an empty description and zero comments...
At some point, a channel should be created for the issue (if long lived) or Slack conversations transplanted onto a ticket.
On the other hand, I've had an equal number of times where ticket formalism led to a misunderstanding, someone on another team taking an incorrect action, and a couple weeks to get resolved.
Work that could have been saved with 10 minutes of direct communication.
Or the dreaded hot potato ticket that out of misunderstanding / laziness gets reassigned to different teams, until a week passes without any actual work done.
So, I guess the optimal solution is to know what each tool is good and bad at, and let those guide actions and policies.
That's been my main complaint about GitHub throughout its meteoric rise. Its public contribution graphs and user profiles littered with hundreds of dead forks certainly encourage this behavior.
And I say this not as a person who has an unreasonable disdain for things like business processes and engineering tools (such as bugtrackers); I tend to favor (good) process more than other people—I've had personal projects where I'm the only contributor and user, and yet if you peek into the bugtracker you'll see hundreds of comments from me explaining exactly what's going on wrt the root cause and any fixes, and all known issues at any given time have an appropriate bug on-file.
But when I use GitHub, it's like every interaction ends up getting sidetracked either due to input from users trying to feel productive by leaving comments that are ultimately value-negative, or some weirdo contributor responding to my bug report as if I'm filing a support request and who then tries to "help" me by explaining how I can work around it (I have no problems working around it—in fact, by the time you're hearing from me, that's old news. But this is a bugtracker! For, you know, tracking bugs!), or the peanut gallery using the bugtracker like it's a phpBB forum dedicated to general chatter and expressions of gratitude related to the project (instead of, you know, tracking bugs!).
The worst is when somebody is showing off a project, I take a look, find something like a simple typo, and let the person know, and then they ask me to file a PR. First, I'm probably not even interested in your project even as a leeching user. Secondly, if you can't be bothered to do anything about this thing in your own project that you already understand that that you probably already have opened in your IDE right now, do you really expect me to clone the repo, poke around until I understand the busted directory structure you're using to organize the code, locate the appropriate source file, commit it, and then use GitHub's needlessly convoluted pull request workflow that involves pushing those changes to a third fork and asking you to review them? Do you understand that all this is happening on top of the assumption that I even have a GitHub account in the first place? Why don't you just Alt-Tab over there and help yourself instead of offloading work onto some random stranger who has no vested interest in your project but who decided to spend a little effort typing out a message that would be of interest to the person currently pimping out their project?
... and then every time I mention this, someone comes around, totally misses the point, and leaves an obnoxious comment that "You don't have to clone the repo! You can make minor fixes like that from the GitHub web UI!"
It's like nobody knows how to distinguish between busy work vs things that are actually necessary to the process and/or indicators of real, forward motion.
You can see a live demo by visiting our community server at https://chat.zulip.org/
It assumes that I want to search within a certain channel or messages with a certain person when that's where I'm clicking the search bar from, but I can quickly erase that if desired. Files, messages, and people, are all searchable. It's pretty powerful and extremely user-friendly (most non-techies would have trouble with the syntax for specifying who a message should be from while searching).
Meanwhile, with Gmail, I discovered yesterday that when I'm part of a mailing list attached to an email address (let's say product@startup.com), and I search an email address that was cc'd on the product@startup.com email, nothing comes up. Resulted in a lot of wasted time.
It's hard to imagine using a wiki for that, but if that's how you do things I guess it's fine. As long as it doesn't rely on people copying their email discussions to wikis manually. Not sure how you'd be alerted by an important wiki update that you need to respond to, though.
but as i'm starting to learn: nobody really documents things anyways.
What keeps Zulip threads from exploding in practice? Either on the UI or usage side?
E.g. How to I keep from going from "One channel with a hundred unread messages" to "One channel with twenty unread threads"?
Also, what features exist when a thread diverges from the original topic?
E.g. We were talking about the "afternoon lunch" at the "annual meeting", and then someone mentioned their favorite restaurants in the area, and now people are replying to both?
Organization seems more like a usage problem than a technology problem. Or at least one that I can't see manual categorization solving.
For diverging topics, you can easily edit the topics of the messages that are a diversion to be a new topic. This helps a huge amount when you have new users who haven't learned the convention of creating a new topic when bringing up something unrelated, since anyone can clean it up in a few seconds.
"technical conversations I have had with my colleagues where I can go to recover details I might not remember from a month ago. Then again email also does this just fine, and doesn't cost as much."
For static instructions like setting up a dev environment? Sure a wiki is perfect. But I don't use a wiki for technical conversations like "Hey icedchai, I'm getting an error message that the COM port is not detected and I remember you said something about solving it in yesterday's standup. Can you point me to where the fix was?"
That message is better suited for slack or email than a wiki. (Your solution might be in the wiki but I'm contacting you because it wasn't easy to find, or searching for the error message didn't turn it up).
But if I use email, then when we hire a new employee a month later who gets the same error, your answer will be in my records but not theirs.
Another poster suggested a mailing list, that is a good option that makes email viable for this.
Its not the tool which break communication, its people not following rules. If people follow the "Use threads at all times" rule, slack is totally working fine. If people dont use it as their social media platform or keep their random thoughts to #random, there's no problem. It feels a bit tone-deaf to promote your tool in a thread about unproductivity caused by chat tools.
The entire article was written to promote their tool Nuclino.
>> All of our team's work (including the writing of this article) happens in Nuclino, and even though it's a real-time collaboration tool, most of it happens asynchronously. Without the expectations of an immediate response, our team is free to focus on our work, reconnecting later to respond.
I don't see any reason why one can't suggest an alternative product that solves the issues of synchronous chat apps just like the one mentioned in the Article. Zulip is an asynchronous tool just like Nuclino.
> Its not the tool which break communication, its people not following rules. If people follow the "Use threads at all times" rule, slack is totally working fine.
Eaxctly! People don't follow rules. Thats why Slack threads are hardly useful. On the other hand in Zulip people always create a new topic for a new conversation since that's how the tool is designed!
Backing up your knowledge store is a very separate task from your day-to-day use of it. It's just as possible to back-up your company's slack messages as it is to back-up the company's wiki.