Forgive My Blog

Log: Slack-style threading

One of my foolish advertures on the internet got my invited to a Slack group. I was hesitant to try out a new platform, but once in, I was stunned by the potential of its approach to conversation threading (not that anyone in the group was actually using that potential).

Slack’s approach consists of a combination of features that I’ve never seen anywhere else:

  1. replies make a thread in a side pane
  2. replies in a thread are not normally visible in the channel
  3. replies in a thread may be optionally copied to a channel
  4. an “all followed threads” section above the channels

I saw the logic of it even before reading the story of how they came to this design choice: Keeping replies out of the channel removes a huge amount of unnecessary noise, that usually all users would need to read through regardless of whether they are interested in that conversation - I’ve found a lot of Discord groups overwhelming for this reason.

Having experienced this approach to threading, group chats that don’t have it seem like a tragic waste of my time and attention unless I happen to be interested in every single conversation that happens there. But it’s not even just about my time and attention. I often don’t feel free to go on a long rant about something in a channel, because I know that others will have to read through it all, whether they are interested or not. The out-of-channel reply thread frees me to go into much more detail without being so concerned about disruption.

However, Slack is a proprietary Software-as-a-Service for businesses, and charges $9.601 per member per month. Not wanting to ask members of my group for money, I looked (unsuccessfully) for a convenient way to get around the 10,000 message history limit on their free plan. Then I looked for a nice free and open source alternative, or at least something gratis (or even just cheaper). I tried a lot of platforms and none of them had that magic combination of features:

  • Riot if/when they’ve implemented Slack-style threading could be ideal - free and open source, based on the open Matrix protocol, with usable end-to-end encryption built in.
  • Zulip revolves completely around threads. Each message in a channel must have a subject, just like an email or a reddit post. This keeps everyone on topic, but it creates an additional problem: Every time you want to share a new thought, you have to think of a subject. People (especially me) are bad at thinking of subjects and it interrupts flow. Zulip was also so buggy that I would have spent far more time reporting bugs and usability issues than actually using it. Not suitable for my needs.
  • Mattermost - I don’t remember what was wrong with it, other than that it didn’t have the magic combination.
  • Microsoft Teams - interesting approach to threading, but totally doesn’t hide unnecessary conversation from people who don’t want to see it.
  • fuck writing this list I’m going to bed. Oh I could just summarise without explaining
  • Twist - like Zulip but prorietary
  • Samepage
  • Flowdock - like if slack posted all replies to channel (again, everyone has to read it)

So, accepting the need to use (and pay for) Slack, I get to look at my reluctance to ask people for money. And my reluctance to lead others toward a proprietary SaaS package designed to hook them and take their money and trap us all in an arrangement where if we ever stop paying we will lose access to the full conversation history.

I realise now that I have been silly to fear such a thing. Nothing of this world can ever truly affect me.

My time and attention are extremely precious; their proper use far more important than the abolition of capitalism or any other perceived injustice.

  1. with 20% VAT