Did you know that #Zoom uses #XMPP for their chat? Isn't it ironic that while large parts of the software freedom movement consider XMPP as outdated and refuse to use it, companies building commercially successful proprietary and centralized solutions on top of it... 🤔 #OpenStandards #FreeSoftware

@bjoern we looked at XMPP and IRC for a chat system but decided to start with our own design. I can see the attraction to jumpstart a feature but there are other paths as well.


Interesting. Are you able to discuss what specific requirements you had that led you to reinvent and reimplement the wheel?

(I am guilty of the opposite: trying to shoehorn #XMPP in places where it didn't really fit, out of laziness aka if all you have is a hammer…)


@0 @bjoern It was more roadmap vs giving up in IRC entirely. For the initial release we wanted to test some new takes on group chat and self moderation and do it quickly. IRC was overkill for what we needed at least in an initial product release. I think once we get good user data we will revisit IRC and a Federated server setup.

We may even go with a simple Flutter or Native Client sitting on top of Firebase to test our designs and assumptions.

Happy to DM or do a call any time.

#IRC or #XMPP? Also, from your general description this sounds exactly like the ‘X’ in XMPP.

From the protocol side it sounds like a matter of adding a couple of custom stanzas to your stream, which is done literally in minutes. I'd then add the server side logic via a XEP-0114 component.

It's less than a day to prototype, only a couple hours if you're in current practice.

Have you tried this approach? Why didn't it work / wouldn't it have worked?


@0 @Rlaracue @bjoern Lol it easily takes a day to setup an ejabberd server with the config file you want.

@stevenroose @0 @bjoern At what cost? Without seeing the client design (a lot more than chat & rooms)/use case/personas/budget are you 100% sure it fits? My SysOps guy with 25+ yrs experience downloaded it, several other XMPP server setups, UnRealIRC and several Jabber and IRC clients with the idea of just “tweaking” them. We did not dismiss any of the tech just felt it was overkill for an MVP+. If you want to help us evaluate this option, config & launch it I am all ears. Thx!

@Rlaracue @0 @bjoern I can't speak for that. I think some of the XMPP chat rooms would be better suited for that. Like ejabberd's room or Prosody's room.
Personally it looks like being fluent in the language a server is written in (Erlang or Lua in this case) can help a lot but I know both of them also support external extensions using the XMPP standardized extension protocol. So mostly you should find a library that can help you work with the extension protocol in your favorite language.

@Rlaracue @0 @bjoern And then get some help in some chatroom to configure a server without all the Jabber-specific features but with just enough of the existing extensions/modules to get your use-case going. I know for one that ejabberd's configuration page is quite complete.

@Rlaracue Honestly I can't say if it's a good idea for an MVP(+). I have never done it. But f.e. as a bigger player like WhatsApp or f.e. a Wire that's now implementing federation, I think building on top of XMPP makes sense.

@stevenroose BTW regardless of traditional or XMPP based comms we are actually in the market for a Go developer now. We want to work with Go and eventually Rust on the back end as we grow. Some of the functions in the client are well beyond chat and will need to be developed outside of the chat server. So if u have some spare cycles or know a strong Go backend person please let me know. Agencies you trust are also welcomed but again budgets are limited re: hr/rate. Thx


@Rlaracue There is a Go XMPP server implementation called Jackal. And in fact the developer of that might be a good hire for your project. His name is Miguel Ortuno.

@stevenroose Thanks so much and I appreciate the patience. I am doing the legwork but I am the biz guy. Shocking I know. :)

@stevenroose Never heard back from Miguel. Tried email and LinkedIn. Appreciate the legwork and lead. PS - I am in the market for a CTO as well. Part time and for equity. Social good project. :)

Sign in to participate in the conversation
unidentified instance

The social network of the future: No ads, no corporate surveillance, ethical design, and decentralization! Own your data with Mastodon!