Imagine communication server as... a house
Discord server is a flat. It's full of predetermined brick-walled rooms (channels) that have titles on the doors. You look at the titles, you choose the closest to the topic you want to talk about, you walk in.
Slack server is a meeting place. It has rooms, rooms have titles... but you can't talk in them. If you start a conversation there, you're encouraged to "go outside" (to a thread) with whoever joins you to solve the problem. If you walk into the room, you'll only see pointers to "meeting places outside" (also sometimes you can't even discover that room exists without a pointer?)
And Zulip is a warehouse (or a blimp hangar) - it's one open space with no walls. When you come in you hear everyone echoing off the walls. To not get lost, there are markings on the ground that color-code which parts of the space are for what category. And people are standing in groups, so you can come closer and concentrate on one topic at a time
---
If I want to ask a question,
- on Slack I'm immediately get shoved into a car and driven away to discuss (I don't feel community)
- on Zulip I have to navigate the cacophony of main screen, stand in the open and scream my question, hoping that people approach and form a group around me (I feel both open and alone)
- while on Discord I walk into a room that's "close enough", maybe look at conversation that happened right before to get a feel, and ask away (I feel like I'm in a lived-in space and can navigate the tone)
---
If I want to participate in a conversation
- on Slack I have to keep track of new threads. I have to explicitly open each one. I have to read through to see the convo state
- on Zulip I have to scan the "all recent messages" main screen, form an opinion on what discussion I'm interested in, explicitly open it, start reading last messages (now of the specific topic) again to form opinion again on what the state of convo currently is
- on Discord I can see the channel name to pre-emptively get general theme I'll be in (and I can mute channels I'm completely not interested in), I open it and start acquainting myself with the current convo state right away, learning specific topic from the context
---
I can definitely see how Discord's hard structure-ization can fail on large scale, when there is constant demand to use the rooms.
And I definitely have experienced channel "memory leak" (when they get allocated at one point and stop getting used as activity lowers, necessitating archival or garbage collection)
But I do feel that discord got that perfect middle ground between "everything together" and "everything in separate" extremes that all other options tend to fall into
This experience sounds very formed by the particular communities you've interacted with on each platform?
Your metaphor is slightly insane but I agree with the conclusion 100%. People who try to segregate every single line of text into a completely seperate walled off space is incredibly annoying, if for no other reason than real conversations tend to cover multiple subjects.
I agree with most of what you said, apart from Slack in practice.
> on Slack I'm immediately get shoved into a car and driven away to discuss (I don't feel community)
It completely depends on the community / people. I'm in multiple slack servers where the threads are an exception for things that would otherwise really pollute the discussion. But otherwise, everyone just chats mostly in #general (or different rooms if the community is really large)
Personally I found Flowdock's thread model the best at least for small'ish teams (company size was <30). You can see it in action at https://web.archive.org/web/20210728031306/http://blog.flowd.... Unfortunately the company itself didn't survive. It was eventually acquired by CA which then killed it later.
(from my older comment) Essentially there is a default view which contains all messages as usual. Each message also has a symbol next to it. If it's grey message bubble, it's a message that is not tied to any thread (it can be replied to to start a new thread. Previously if no other messages have appeared on channel so far, it can be dragged & dropped to another thread). If it's colored message bubble, it's the first message in the thread. A colored arrow means it's part of the thread with that color.
This allows you to mostly just stay in default view with all of the channel's messages. As long as people are putting the messages in the thread itself, you could quickly use the colors to see which thread the message is on (color collisions did happen, but they were fairly rare). You would need to open the thread only if you needed more context or wanted to reply to it, though replying can also be done by writing to channel & dragging the message to thread.