Maturity and Diversity in the XMPP Ecosystem

2008-11-05

Eric Marcoullier of Gnip recently announced that they were winding down their XMPP support. Both Marshall Kirkpatrick and Stowe Boyd found this surprising, given that Gnip's customers seem to be crying for the real-time data that an XMPP firehose would provide (and despite the fact that services like Yahoo Fire Eagle are busy ramping up their XMPP support).

I find Eric's reasoning to be a bit flawed. First he says that the XMPP ecosystem is immature because there are too many XMPP server implementations, in contrast to the simpler world of HTTP servers where Apache dominates. Yet the email ecosystem is quite mature and has no one dominant server implementation (the current stats at mailradar.com are Sendmail 24%, Postfix 20%, qmail 17%, Microsoft Mail 15%, and exim 13%).

It's true that there are quite a few XMPP server implementations, but only about half a dozen of them are serious players and some rough estimates of deployment indicate that there is no one dominant implementation (not very different from the email landscape). Furthermore, there is strong interoperability between these implementations because we run an open and growing network of servers and most people are happily unaware of which implementation is running at any particular domain.

A bit further along in Eric's post, we learn why they are experiencing problems:

From Gnip’s perspective, XMPP is causing us pain and eating cycles. More than half of all customer service requests are about XMPP and in many cases, the receiving party isn’t standing up their own server. They’re running off of Google or Jabber.org and there’s not much we can do when they get throttled.

So here's the problem: it's not that the XMPP ecosystem is immature, it's that Gnip's customers are immature. They are attempting to run high-throughput data services via end-user accounts or bots running at open IM services like Google Talk and jabber.org. Then they are surprised when their accounts get rate-limited for excessive usage! The solution is for them to run their own XMPP servers. As mentioned there are plenty of such servers to choose from, and you can have most of them up and running in a few minutes.

My conclusion: diversity and maturity can go hand-in-hand, but you need to choose the right tool for the job.


Peter Saint-Andre > Journal