3 ms·
Take a look at Zulip, if you're not already familiar with it. They nailed threaded chat in a way I haven't seen anywhere else, with the possible exception of Ze
by benley 9y ago
Take a look at Zulip, if you're not already familiar with it. They nailed threaded chat in a way I haven't seen anywhere else, with the possible exception of Zephyr.
- jkaplowitz 9y agoThat similarity is very much not an accident - Zulip is based on Zephyr. (I forget whether that's true technically or just in terms of inspiration, but the latter is definitely true.)
- price 9y agoInspiration very much so, code and technology not at all. (I'm one of the Zulip developers.) I have enough friends who've hacked on Zephyr, and they tend to get such a look of horror on their faces when talking about that protocol and codebase, that I'm pretty sure that was the right approach for us. :) It really was/is a fantastic social product, though.
- jkaplowitz 9y agoThanks for the added info! Indeed, sounds like borrowing only ideas but not code from Zephyr was wise. :)
- vanderZwan 9y agoSo this is not Zulip-specific, but I am trying to figure out what it is that they supposedly nailed about threaded chat, and getting really annoyed by the experience of it. It really highlights a number of general issues I have with the way all apps in this space try to sell themselves. TL;DR: If you proudly state on your features page that you have "First class threading on top of everything you could want from real-time chat", then give a good explanation of what makes it first-class and why it works so well. Don't assume that everyone who visits your page has already tried out a dozen other modern chat programs and therefore is familiar with all the UI idioms. I don't know if that is arrogance or naivety, but it's wrong either way. So my goal is a quick overview of the UI and a feeling for the UX. How it all comes together, how it flows when used. I have no interest to first install it and explore it to do so, and that would require having conversations and discussions in it, and I don't feel like convincing a bunch of friends to give this a try and make them invest time in testing it. First, the Zulip webpage (which has a broken back-button.. great). The features page proudly opens with "First class threading on top of everything you could want from real-time chat."[0] Great, so how does that work? No explanation, it just lists all the other features - the "everything you could want" bit - without every going into detail on the conversational threading UX. Yeah, those features all look nice, but you're not telling me why the threading is better than elsewhere. Ok, well, if I search on YouTube for videos, I'll probably find a video of some nerd trying to convince me Zulip is better than anything else and why. Although I don't like it when companies lean on that kind of "implicit crowdsourcing", so I am already slightly annoyed. Turns out that there isn't much on YT either. A lightning talk by one of the devs, talking about organisational structure and culture of an open source project[1]. Great, but not what I need right now; the fifteen second overview of the UI (with an implicit "you're already familiar with this stuff" tone) does little to help me. What else? A series on how to install Zulip[2]. No discussion about the interface itself, so same problem. The remaining search results are either promotion videos of other chat platforms, or screen captures of people complaining about bugs in the Zulip app[3]. So far, the latter are the closest thing to something informative: at least it shows the app in action, and since the narration explains what is broken, you also hear what the expected behaviour is. Still not very useful. As a last resort, I dive into the (extensive) documentation[4]. It lists everything you might want to do with the chat ("how to set up an account", "how to edit a message") and is very extensive. That is great in itself, since it lets people find answers to these specific problems, but I am still missing a good explanation of how it all comes together. Ok, fine, I'll dig through the docs myself and try to get a picture of the app. Clicking through it I see a lot of things that are familiar from other chat apps. But when it comes to the threading, I find only a few spread-out paragraphs somewhat explaining how Zulip organises its chats: > Zulip is a group chat app. Its most distinctive characteristic is that conversation within an organization is divided into “streams” and further subdivided into “topics”, so that much finer-grained conversations are possible than with IRC or other chat tools. [4] > Messages in Zulip are organized into streams and topics. Streams are similar to chatrooms, IRC channels, and email lists in that they determine who receives the message. Each conversation in a stream also has a topic, which plays the role of the subject line of an email (though topics are usually shorter, e.g. "logo" or "logo design", not "feedback on the new logo design?") in that it organizes messages into threads. [5] > In each stream, messages are sorted by topics. Topics are specific, fine-grained subjects that fit with the overall subject of the stream that they're sent to. Topics ensure sequential messages about the same thing are threaded together, allowing for better reception for users. [6] As far as I can tell, that's it. COME ON! So the whole thing is that you have a conversational tree that where for each topic ("streams"), you can have one extra sub-topic ("topics")? So it's essentially just forums and subfora, but with different user interface based on chat idioms? And I can figure this out due to previous familiarity with this kind of software. I guarantee you that this is still pretty mystifying to people less tech-savvy. OK, so now I wonder: how to start a topic then? I see pages on how to start a stream, how about topic? There is one about editing one[7], or viewing all messages about a specific topic[8]. Nothing about starting a topic though. There has to be one, of course, since you can't use this software without this. Dig through the docs long enough, and you'll find it under "Send a new stream message"[9]. No hint that this has anything to do with starting a new topic. What?! Why is it called "sending a new message"? I guess that in Zulip-idioms, a new message is different from replying to another message; the latter implicitly subscribing to that particular topic. Starting a new message in a stream means defining a new topic. So in order to figure out Zulip-logic, I must already be familiar with Zulip-logic?! WHAT THE HELL PEOPLE. You cannot expect this from new users. Just call "sending a new message" what it is: starting a new topic. Or make an alias that forwards from one page to another, like merged pages on WikiPedia, or whatever, but not this. Zulip looks like a great app, but this is ridiculous. More developers/designers should read https://news.ycombinator.com/item?id=6429848 https://news.ycombinator.com/item?id=6429848 and ask themselves whenever they develop/design something: "would this way of explaining intimidate the elderly, or anyone else who is less comfortable with technology than me into thinking they are too stupid to use computers?" If you're not somewhat thinking about that, you're doing it wrong. [0] https://zulipchat.com/features/ https://zulipchat.com/features/ [1] https://www.youtube.com/watch?v=lXFO2ULktEI https://www.youtube.com/watch?v=lXFO2ULktEI [2] https://www.youtube.com/watch?v=-qh55hxfGDM https://www.youtube.com/watch?v=-qh55hxfGDM [3] https://www.youtube.com/watch?v=fnXZJSRPy0A https://www.youtube.com/watch?v=fnXZJSRPy0A [4] https://zulipchat.com/help/ https://zulipchat.com/help/ [5] https://zulipchat.com/help/getting-started-with-zulip https://zulipchat.com/help/getting-started-with-zulip [6] https://zulipchat.com/help/about-streams-and-topics https://zulipchat.com/help/about-streams-and-topics [7] https://zulipchat.com/help/change-the-topic-of-a-message https://zulipchat.com/help/change-the-topic-of-a-message [8] https://zulipchat.com/help/view-messages-from-a-topic https://zulipchat.com/help/view-messages-from-a-topic [9] https://zulipchat.com/help/send-a-stream-message https://zulipchat.com/help/send-a-stream-message
- showell30 9y agoI'm one of the original developers of Zulip. The long comment I'm replying to is a somewhat rant-y critique of Zulip, but it's basically valid. We honestly have a hard time communicating the stream/topic paradigm, even though in some sense it's just forum/subfora. I encourage vanderZwan and others to come to https://chat.zulip.org/# https://chat.zulip.org/# to talk to us. We're real people. We like the app we've developed, but we know it's far from perfect, and we especially know that our marketing could use some constructive feedback.
- vanderZwan 9y agoNo need to downplay it: it is a rant, and I knew it when I wrote it, but I wanted to get across the raw frustration that I think a lot of users feel. Plus, as I said at the beginning, it was more to illustrate a more general problem. You have my respect for taking it in stride and listening to the critique! I already mentioned it does look like a good app, and based on skimming through that lightning talk (not to mention this reply by you), the dev community behind it looks open too.