Sporiff.dev

Life inside a machine

Slack still sucks

You're viewing a Gemini article on the web

It's much better to view it on Gemini!

I know I'm beating the same drum as always, but apparently some people still can't grasp this so I'll say it again:

STOP USING SLACK TO MANAGE WORK.

In my workplace we have far too many project management tools already. Jira, Asana, GitHub issues. It's ridiculous. However, at the very least one can see how one might use those tools to manage large projects. They have workflows that allow one to move work through different stages, one can require approval and clearly demonstrate whom is responsible for what part of a task. The tools suck, but they do at least only suck as products as opposed to being totally unfit for their task.

Slack, on the other hand, is a fucking nightmare. I lie awake nights worrying about what I'm going to have to do on Slack the next day because it's just so fucking rotten to have to work with it. People just fundamentally do not know how to behave professionally with Slack, and using it kills me inside.

Email was simple and correct

Email remains the only good platform for communicating and managing work simultaneously and I will die on this hill. There is a good goddamn reason that large projects like the Linux kernel are managed using email. It's simple, it's ubiquitous, and it's incredibly flexible. All conversations can be retained indefinitely, all things can be threaded and contained in a way that is actually fucking coherent, and - best of all, in my opinion - everyone can choose exactly how they want to catalogue each conversation. We cracked this shit years and years and years ago and yet nowadays it seems everyone is phobic. It doesn't help that tools like Gmail did away with properly formatted plain text email in their editor, but y'know... other clients exist. This is entirely surmountable.

Slack is an interminably useless thing that is forced into my lap at every single fucking job I have. At every company people are convinced of its usefulness, convinced that it is going to be so efficient and great for centralizing workflows. I'm sorry, but it isn't. Nor is Microsoft Teams nor anything else like it. They're each and every one of them entirely fucking useless. If you need instant chat, use IRC or Matrix. Do not bog everyone down with this catastrophic failure of design and planning that acts only to split work across an unsearchable mess of channels, threads, and personal chats.

Split workflows are killing me

I've been mostly absent from the world for the last couple of months due to a huge amount of pressure at work finishing off my latest project (over 18 months in the making, I might add) as well as a noticeable decline in my mental health. Possibly related, who knows? What I do know is that throughout this project I have been forced into using more and more useless fucking tools to manage workflows, to the point where keeping up is now impossible. Work exists in Jira, GitHub issues, and Slack. Mostly Slack. People message me in Slack with requests and questions, but since there's no ticketing I can't make use of this at all. It seems like every year we move further away from the only sensible workflow:

1. An issue is raised and discussed using email.

2. The relevant information is put into an actionable ticket with a link back to the email archive for context.

3. The relevant action is taken to resolve the issue.

Nowadays it's just endless streams of conversations in the worst πŸ‘ possible πŸ‘ tool πŸ‘ imaginable πŸ‘. There is no way to easily reference back to anything in Slack because the conversation takes place across multiple channels, threads, and personal conversations. I can't recount the number of times I've received a request that literally just points to a Slack thread as the context for what needs to be done. It's atrocious and it's going to give me an ulcer one of these days.

Notification anxiety is very real

I hate synchronous comms. Slack has placed an unreal amount of pressure on everyone to answer the latest message NOW NOW NOW NOW NOW. If you don't respond to a message immediately, people can get quite shirty. I'm sorry, but I have a job to do and not one single goddamn part of it can be done on Slack, so I'm not always checking it. But don't worry, I'm getting the constant irritating pings that you're sending. No fear. My anxiety is doing just fine.

Once again, email is correct here. In the kinds of conversations I'm talking about, absolutely nothing should be treated as being of immediate urgency. If it is, you've fucked something up. Email brings with it a different expectation; an email doesn't need to be answered immediately since it's asynchronous. You can take your time to craft a response and put in all relevant detail. It's like writing a blog post vs. a microblog post. A post on Mastodon or Bluesky can be pithy and terse, but you can't really put out something well-reasoned without creating a large thread of individual messages. Imagine if you got pinged every time a part of that 97-part thread got posted. It'd be annoying, right?

Blog posts are simpler. One takes the time to put down one's thoughts and feelings in a structured manner. It's not to say blog posts are necessarily insightful or anything, and indeed one can write blog posts just like one would write microblog posts (in fact, LiveJournal and Tumblr made this kind of posting pretty popular), but the expectation is different. When a person goes to a blog they expect something a bit more complete and coherent than a single post on a microblog, and since this expectation is different they're already primed to read something slightly longer.

And so it goes with email vs. Slack. Slack is an incoherent jumble of people shouting in a performatively organized way, where each person reading expects to write short messages without a lot of thought or structure to them. This increases the complexity of gathering information together, as one has to sift through all messages to try an figure out exactly what is relevant to each part of the project and to each team working on the project. Slack encourages people to just say the first thing that comes to mind regardless of whether it's actually useful, while email sets a healthy expectation of planned writing with structure and detail.

Searching for answers

Search isn't Slack's biggest problem, but Slack search is - in a word - heinous. It's impossible to find anything amongst the noise and the mess of useless features that Slack adds to their product every 5 days or so. Email search, by comparison, is as good or as bad as the email tool you use. If you're lucky enough to be using notmuch, email search is a dream. For all its failings, Gmail search is pretty reasonable. Plus, with email you can personalize how you label each message so you can create a searchable database that works for you.

Feedback I've received

I've actually received some feeback before about the opinions I've put forward about Slack (and also non-productivity chat tools like Telegram). The most typical one is "my needs are different from yours". I get this, but that's kind of the point, isn't it? At the moment, Slack serves nobody's needs perfectly, and it serves my needs not a jot. It's a blight on my workday. There's no single tool that is going to suit everyone's needs perfectly. But you know what tool has at least been reliable and largely consistent for over 40 years?

Oh right, it's email!

I can absolutely understand why some people find IRC frustrating compared to Slack. But to those people, I would ask this: what is it that IRC doesn't do that you need Slack for? Some people mention things such as search or persistent history. Quite aside from the fact that these things are handled pretty well by bouncers and clients such as Soju and Senpai, and that persistence is part of the IRCv3 spec[1], the real question here is why are you seeking persistence and search in a synchronous, amnesiac chat system? If something is critical to a project or needs to be persistent, it should be an email. It really is as simple as that.

1 - chathistory Extension spec

The whole thing is just exhausting

There is a disease that has taken root in the "modern" workplace that demands that we coalesce every process around a single tool. To this day, I've seen hundreds of tools claim to be that single tool. But in all cases companies end up supplimenting these tools with others to facilitate complex workflows. Jira can't handle everything, Asana can't handle everything, and Slack shouldn't be trusted to handle anything at all. Many companies try (and fail) to build their own one-stop-shop tool for their own needs, but they'll always end up falling back on the same old cludge of email, Slack/Teams, a ticketing system or two, and spreadsheets. It feels like an inevitability.

The thing is, it's not a technical issue. It's a cultural one. One could absolutely coalesce everything around a small number of tools if one just adjusted how one thinks about tools and how they relate to processes. Sourcehut[2] is a great example of this that provides a source forge (based on git/mercurial and email), ticketing (based on email), forums (based on email), wikis (based on Markdown and git), CI/CD (using YAML files and virtual machines), and an IRC bouncer/web client that makes working on IRC a breeze. In my head, I can see exactly how I would manage every project I have on such a platform. It's infinitely easier (and cheaper) than messing around with a collection of 5+ SaaS solutions that all duplicate functionality.

2 - Sourcehut

Of course, I'm shouting into the wind here. SaaS companies have already succeeded in fooling every other company into thinking their products are hard requirements for getting work doneβ„’. This is patently ridiculous, but one will always struggle to get companies to admit fault or change course. If a company has already put all of their eggs in the Slack basket, they can't easily pick that up and move it because Slack is not just a chat platform as it once claimed to be. It's a trap. A trap we all fell into while reaching for the treat on the end of a line, all because we thought it looked tastier than the more easily accessible treats that lay around us in abundance.

This is my hill, and I hope for death.