An update on moving away from Slack.
I've talked with a bunch of folks here and elsewhere, explored Zulip and Discourse hands-on, an looked around for other alternatives.
This has given me a renewed appreciation for Slack. The way we use it, it sits in a unique spot in the space, something between a forum and a chat.
* The medium/format of Slack, plus our cultural norms, encourage people to make substantial posts which then foster lively discussion. It feels like a forum.
* Everyone see new posts instantaneously; heck, you even see typing indicators and online/away status. It feels like a chat.
* When looking at the top-level of a channel, you see the full content of each message, with a count of replies. It feels like… a blog index?
There's WYSIWYG text editing, unobtrusive persistence of drafts, polished clients for every platform. The information hierarchy is clear: channel -> post -> reply. Slack is, by and large, rather nice.
Slack is also an enterprise-bootlicking product suffering from continual
enshittification. They're holding our history hostage. There are effectively zero moderation tools. User signup is flaky. The client is like an extravagant slice of cake — rich and thick to a fault. It's a service that runs over the internet, but it's not part of the web. It's not meaningfully extensible — there are "bots" and data exports, but they're basic and begrudging. It's siloed. It's proprietary. It's not the least bit malleable. Slack is antithetical to the ethos of this community. We champion the agency of individual people and wild experimentation. Slack, by design, opposes those.
With every alternative product I've explored, a few of these issues are addressed, but comparatively more of the nice qualities of Slack are absent.
I use Discord all day every day. It's like Slack but slower ("Installing updates 1 of 5"), buggier, bloated with features and ads ("Get Nitro"). It also makes novel but awkward design choices. For instance, to start a thread of replies to a message, you must name the thread. That's a friction point. It allows some flexibility, in that you can start more than one thread for a single top-level post. But I'd argue that it is strictly worse than having a single linear thread (like Slack) or a single tree of replies (like a mailing list / forum). And besides, it's just as bad as Slack, or worse, in every way that presently pains us, except the boots being licked are gamer boots.
The organization behind Zulip is lovely. They're principled, self-sustaining without VC, focused on building a great product for their users. But, that product leans heavily into ephemeral chat, and suffers from a famously clunky user interface. Beyond just playing with the product, I spent some time in their Github (yay open source) looking at issues and discussions, and I don't see signs that they'll be able to fix the UI — it's hard for them to make even small styling changes, let alone restructure the information design.
Discourse is… fine. It's a little bit more chaotic, a little bit more clunky, a little bit more web-y, a little bit more bloated. It has way too much structure, with a visual hierarchy that doesn't map to the conceptual hierarchy. Like our Slack, it aims to be a hybrid of a forum and a chat, but it does that by offering both separately rather than synthesizing them into a compelling hybrid. If the community had started on Discourse, I think we'd be less unhappy with it than we are now with Slack, but I still think we'd be unhappy.
But the most charming alternative, and hands-down my favourite path forward… will take a bit of explaining.
It's the
Merveilles forum. It's brutally simple. Spartan! But it's tasteful. It's immaculate. Crucially, a member of the Merveilles community built and maintains the forum software, taking a decidedly
principled approach. This forum is a reflection of the community it homes, because it was built by and for that community. (See where I'm going with this?)
All the off-the-shelf options — Zulip, Discourse, Mattermost, Discord, IRC, phpBB, Mastodon — they'd let us
get away from Slack. We could pick one that had some nice features. It'd be a pain in the butt to move, and a blast of fresh air to settle in. But even if we self-hosted, we'd still be held hostage — by
product design decisions. Every one of these products and services makes a set of tradeoffs to satisfy as many customers as possible. None of them expect their customers to be like us — champions of individual agency and wild experimentation.
I believe the only way to move
up from Slack is to build our own thing. To take the Merveilles forum approach — be brutally simple, but tasteful. Figure out what core design decisions reflect our values; build some situated software just for ourselves. Design a final form that we'd like it to have, build the minimum viable version, and grow it from there slowly. Treat it like a collaborative project, accepting contributions from our members, but led by one or a few core people who are committed to putting in the work. Favour technical openness — open source, public data, protocols — so that anyone can hack on top.
Building our own thing would be a stupid amount of work. Someone (maybe not always the same person) would need to continually invest time and energy. It'd more likely fizzle out and die than become a viable escape from Slack.
But if it does succeed, I think it'd be better for us than any of the other Slack alternatives.
So I propose we explore this option. Build it ourselves. If we manage to build something compelling, we move away from Slack onto that. If we don't, we stay on Slack, and wait for the situation to change further (either something better comes along, or Slack gets even worse and we
have to jump ship.)