Why Zulip will stand the test of time
blog.zulip.com
blog.zulip.com
I have only one complaint... but it's a biggie: the UI/UX.
I don't normally care, but literally every one of my users has commented that it's an ugly duckling - both the mobile app and website. We'd gladly pay for something prettier:
- UI is inconsistent: layouts/fonts/icons vary by screen and surface
- UX buries common features (e.g. reply, reaction) and promotes uncommon features (e.g. invite new user). UX is rough, e.g. click-targets are tiny and not always obvious, and features are hidden behind mouseover.
- promotes the name "Zulip" all over, which is a problem for users who don't know what a Zulip is or why they'd want one, e.g. emails from "Zulip" and not the name of the community.
- needs a way to "nudge" conversations into a smaller set of topics/threads, e.g. suggestions.
- conversation UI still suffers from scaling issues and needs some reddit-like way to display larger conversations...
- no way to control which previews are shown/hidden
Seriously, pls hire a no-nonsense designer and stop trying to be clever! UI/UX is too important in this category of product, and the current design holds back adoption.
[1] With one exception. The search is too fuzzy. We have 3 years of technical disscussions in zulip. Finding code snippets you exist is often impossible. A real grep interface would be great. Optional of course for thos who know regexps. Yeah, I can harvest my own copy of the chat history using the REST API and grep there. My code to do so has fallen into disuse...
It turns out I just don't have the time/patience for online software. It didn't do a good job offline, they have no native client for OSX, I just don't have the learned tolerance for all this. Even though it's good.
Still sucks to use, if you use it a lot.
With respect to Zulip the company, I think they have a great product, but they need to market themselves as being something differen from chat/Slack. Zulip is built from the ground up to support a very different workflow. I guess most people try Zulip because they're looking for a Slack competitor and they get the wrong product. If I were Richard Stallman, I would suggest ZINC (Zulip is not chat) as an alias, and everyone would adopt it because Slack is not a recursive acronym.[0]
[0] YMMV
Aren't we a long way down the road of understanding that all server systems should be regarded as an "untrust" environment? I feel this way about my own self hosted systems. If your critical data leaks, you're hosed.
If corporate needs to have audit trails then there needs to be a system that deliberately breaks e2e, something that all clients posting on that system know about and display messages about, rather than the current implementation.
About server side search... that's a different issue, but couldn't it be done with hashing keywords on the client and a disclaimer on how this may reduce security?
So, all in all, I get why e2e is hard for zulip, but standing the test of time without it could be difficult.
In exchange, it makes hacking the server prevent leakage. Meanwhile if even a single client gets hacked, all of your group-chats are still compromised.
A big part of the value of something like Zulip versus e-mail is you can link to historical threads, and know that everyone can read them. E2E is purposefully hostile towards "everyone reading them" so it's a major tradeoff.
Do you want E2E on your bugtracker? CI logs? Doing so for Zulip makes about as much sense IMO.
Note that if GH used E2E for issues (which is arguably a form of group chat), the link you posted to the discussion would not be readable by me.
Some do not want the 'historical' chats to be kept, & server side search is not really relevant in those cases. Of course, some will.
If we think of more than tech teams, it's easy to see these features as being vitally important. So while bugtracking, CI, bots, etc, etc is important for you and I, there are groups and communities where such things would be met with bafflement as to their purpose.
If you really need e2e chats, then xmpp and matrix can self host. I do think this is niche though. Every client logs history, so compromising one client completely defeats e2e.
Looking forward to whenever Zulip implements /digress. That's something I realized was missing right from the start - how to "branch out" from a topic into a new one, creating some sort of sign/breadcrumb indicating that the message got a reply in a new topic.
Currently you can quote reply and change the topic for the new message, but there's no indication in the original topic that there was a digression, so discovery is a bit clunky.
Original issue: https://github.com/zulip/zulip/issues/14522
Some work done and demos: https://github.com/zulip/zulip/pull/16589
Discussion: https://chat.zulip.org/#narrow/stream/101-design/topic/.2Fdi...
The mac client was never fast, search was neigh impossible to use across 7 years of messages and there were frequent issues with client stability and drop outs. More than once I've seen someone "mark all messages as read" and cause the service to crash. "Is zulip down?" was a sort of running joke among the engineers.
I wouldn't turn down a job solely based upon their reliance on a tool like Zulip, but it would definitely be a factor in my decision.
This resonated with me, at my current company hundreds (maybe thousands, I don't know) of employees' daily chat goes through a self hosted RocketChat instance.
For all I know, based on the performance, that server is running on the cheapest Raspberry Pi.
Everyone on the team just kind of accepted that sometimes, you can't connect for minutes (sometimes hours), the search is slow and not very powerful, the features and integrations are lacking.
It's so frustrating when you want to contact someone, you can't, because it won't load, if you want to add an integration (that you are used to from your last company and would make things much easier for everyone), you can't, because there are no good integrations for RocketChat.
In my opinion, terrible internal chat and penny pinching is a good sign of a dysfunctional organization.
Ten dollars per employee per month sounds expensive, until you realize that your employees wait an hour a week for the self hosted tool to load and are now blocked because of that.
I’ve also seen orgs that used on-prem solutions for compliance reasons and had an actual working service - it’s just not significantly cheaper when done right.
I feel the same way about slack, so it's funny that we have different experiences. Granted I don't use Macs, so I can't have had a bad experience with the Zulip mac client.
I'm mentally comparing this with Slack, where no client is fast, search is nigh impossible to use across 7 days of messages and there are constant issues with usability.
Seriously, why can I out-type my chat client? It's twenty fucking twenty-one, we had faster IM clients in the nineties.
But that said I don't think "using a standard protocol" is a value in and of itself.
Standard protocols are very valuable if you care about reach while avoiding vendor-lock-in. I want to be able to self-host my server (or pay someone to host it for me), but I also want to be able to communicate with people on other servers. It is that balance of control and networking that is really powerful. Someone else mentioned here about how FHIR uses Zulip as the group chat for their community. That is great! But, to participate, you need an account on their instance and then if you want to participate in multiple Zulip instances you either need multiple clients or some kind of multi-instance support in your client. And then you still have to manage separate profiles for each instance, etc, etc...
OTOH, a bunch of open source projects use Matrix instances for their community chat rooms. One of the huge benefits I see from that is that I can use my single Matrix account (on the server that I host) to join all the different communities that I am interested in. (And now with the new Spaces feature in Element, there is even better controls over being able to still retain a separation of concerns between all the different conversations I am a part of...)
That's what the X in XMPP is for.
Matrix.org is a great choice for an open federated messaging protocol, but the challenges of operating in that kind of ecosystem have certainly stunted their ability to add features and polish when compared to a closed system such as Zulip.
Is this question just opening myself up to a cacophony of "what was wrong with IRC / XMPP?"
Generally speaking, use the standard until you can't. Then just extend it and write up a proposal for your extension to make it into the next version of the official protocol.
Posted to the wrong channel/topic more than once now..
A native mac app would be a game changer. Would pay for it.
We did a ton of research into what team messenger we could use and, frankly, I have no idea what could be a better alternative to Zulip.
Discord forces to use one account everywhere, Slack sucks for search and threads and causes too much noise and clutter, Teams , well we are still recovering from the emotional and productivity damaged it caused. What else is there?
Hmm, I assume you are talking about https://twist.com/
This is the first time looking at that service and I find it equally intriguing and confusing. It seems like a cross between Slack and Notion (ideally capturing the best of both worlds). But I would love to hear from someone who has actually used it regarding its benefits vs other chat systems...
The UI is minimal but it also doesn’t get in the way and the topics really help keep things in check
1. The UI is unattractive and over-crowded. Introducing non-techies to it would require saying at least "it looks bad at first, but you'll learn to like it."
2. It's complicated to deploy. Not just a simple docker container or anything.
There is a docker container but as Zulip themselves say, it is not simple to deploy.
As the sibling commenter said, it is alpha.
Solving issues like why it doesn't connect to it's own redis instance anymore, when only its own script touch the config. Not very funny times.
Code syntax highlighting and code playgrounds are nifty
However, you always have the non-technical people who create complete nonsense topics instead of using a matching existing one. And also some disorganized engineers who continue off-topic discussions for dozens of messages.
Switching to a suitable topic when the discussion gets carried away could probably get more user-friendly support. You can edit the topic of existing messages, but there is no completion for existing topics and there is no clear indication of what got moved from where by whom and no simple undo if things go wrong.
Enterprise software companies also generally provide long-term support and backward compatibility. Look at Microsoft and Windows. OS/2 by IBM, first released 1987, flopped in the marketplace. IBM supported it for ~20 years, then licensed others to support it.
People often reject the added expense of enterprise software, but you get what you pay for.
Honest question for anyone familiar with enterprise SAAS contracts: does the same apply?
I mean sure, I have seem MS/Oracle provide crazy-long support for some of their software offerings, but if MS decided one day to pivot away from Teams, is there any clauses in the 365 contracts that prevent them from just shutting down the servers?
The clause is in their reputation: If they did that, they would lose a lot of corporate business for all their products.
> SAAS
However, could they raise prices substantially ...?
IIRC, the Element team has been working on it, but they seem very hesitant to release anything around threads that is half-baked. They really want to get them right the first time!
The reality for most people is that even if you want to build a sustainable business founders also need to pay their bills and the VC route right now fills that need. Is it ideal? No. But until we have another model I won't judge founders for taking VC money.
Zulip seems like it's in a much better place to survive, taking the word of the article, with an active development community around it. (I don't think I've actually heard of Zulip after the original company was bought by Dropbox, although "whether chipotle_coyote has heard of this" is admittedly not a leading indicator of success.)
- building company without VC
- 100% open source, easy to self-host, high quality import/export
- building software so that it is easy to maintain and operate
- substantial community of developers (100+ commits) beyond those employed by company
Open source as magic seems like at most 25% of the argument, more charitably 10%.