The sad state of Jabber

Justin Karneges <justin@affinix.com>
Date: December 17th, 2004


(excuse my horrible writing style on this one, I threw it together at 5 in the morning)

First, it might be worth reading Peter Saint-Andre's "apology" about why Jabber is only where it is today.

Jabber is more than Instant Messaging. It's an XML middle-ware thingy. But really, all most of us care about is IM. Jabber has multiple faces, what I'll call the 'public', 'corporate', and 'lab'. The public face is the pushing of Jabber as an IM solution for the masses. Members of this face include jabberd, Psi, Gaim, Exodus, etc. The corporate face involves the push for adoption by standards groups, as well as by corporations and large organizations. This would include the RFC drafts, Jabber Inc, Winfessor, Jive, etc. Finally, the lab is where a lot of the innovation happens, where people go beyond just basic IM (or beyond IM entirely), with things like RSS bots, ralphm's Jabber World Map, edrin's XMPP Client Daemon, Gush, etc.

If you ask the average Jabber user what he thinks about the system, you'll be told that the system doesn't have enough features yet. It doesn't do as much as MSN. The clients are incomplete. The servers are buggy.

So what's the problem? Why isn't this stuff all peachy by now?

The main problem is that no one is working on it! But you say, "the Jabber development mailing list seems active, surely something is being done." You're right, it would appear that way. But look at the reality. Psi, Exodus, and Gaim move at a snail's pace. Gabber, Nitro, and jabberd are dead. At least tkabber and ejabberd seem to get regular attention. So just who are all of these people on the mailing list, and just what are they coding? Maybe they are all working on tkabber? Not quite...

The answer: they are working on the corporate and lab faces.

Now here comes the hard truth: no one cares about the corporate or lab faces.

Ok maybe that was a little harsh. These faces are important, but not to anyone watching the public face. No one cares about pubsub or RSS bots or the Jabber World Map. You are in a minority if you think those are cool. The people eying the public face of Jabber want a server that doesn't suck, and a client that doesn't suck, and enough features to supplant the big four. And all of this has to be free. It's really that simple. And yet, everyone is dicking around on the corporate and lab faces.

Awhile back, Peter wrote about the problem of "a thousand points of light". Jabber developers were competing instead of working together, and so not enough was getting accomplished. I think the truth of the situation is that there is very little competition going on at all. The days of new clients are over, most people try to get involved with an existing one. But it is more than this. Even among the projects that have a solid foothold in the world of Jabber, there is very little work being accomplished. I would argue that we were getting more accomplished back in the jabbercentral days of having a million clients. So it's not so much that there are a thousand points of competing lights, but rather that there are a thousand points of light working on the wrong stuff. Not that it is bad to be working on the corporate or lab faces, but unless you're working on the public face, you are not on the Jabber radar, plain and simple. Jabber == jabberd and Psi. Not Gush. Not Jinc.

The solution to the public face of Jabber is to ensure the most important projects are completed. Unfortunately, the lead maintainers of the most important Jabber projects stepped down this year. This should be incredibly alarming to everyone. The public face of Jabber is effectively dead. All that remains is Aleksey, who works on both Tkabber and ejabberd. Tkabber might qualify more as the lab face as opposed to the public, but at least ejabberd is making inroads to solving the "buggy incomplete server" problem.

So out of all of the Jabber mailing list traffic, standards-pushing efforts, promotion, sales, and otherwise, we've got one developer working consistently on the public face. God help us.

Unless we find more people to dedicate themselves to the public face (and I mean quality of dedication, not quantity), Jabber is going to move at a snail's pace in the eyes of the public. Otherwise, all there's going to be is talk. I've read enough blogs about how we need to do this or that, but nothing is happening. Lately there's been talk of doing another jabbercon, but I say forget about it. All that will advance is the lab. At the end of the day you'll end up with a cool new jabber blogger or a bot, but who cares?

I've done my part. I entered the scene with just the intent to make a decent client that looked like ICQ. I didn't expect the explosion that occured. Psi is the #3 spot for 'jabber' on Google (behind jabber.org and jabber.com). It has the largest user community. It is the most popular pure-Jabber client, and has more users than all of the major single-platform clients combined. Since this realization, I've wanted to take the project beyond this. I turned the foundation of the program into a basis for more Jabber stuff, such as a friendly client or a mobile client. Maybe in the future I would have been able to write a server. The only reason I can't continue is because I'm literally out of money. Literally. I don't mind admitting it. I'm flat broke. I invested thousands of dollars into the Delta projects, purely to complete my goal and solve this problem that we call Jabber. I only stop now because I am incapable of continuing with dedication. My intent was never to make money doing Jabber, and still isn't. I only wanted to complete the dream, and it is sad that I can't.

I have no doubt, given what I was able to do with Psi, that if I had more money to continue to burn on this, I could save Jabber's entire public face. The client... several of them, possibly even the server if no one else were handling that.

The solution to the problem is to find a way to finance rob and myself. If that can't be done, then nothing can be done, short of finding equally dedicated replacement philanthropists. Rallying a bunch of random people together to write a reference client/server is not going to work. You need real people, not random people. If there's anything I've learned from world history, it's that all it takes to change the world are a few talented and dedicated individuals. Good luck with that though, I've been watching Jabber for the last 3 years, and it's tough to find people that care this much. We're lucky when we land a psa or an aleksey.

I write this as part reality-check and part challenge. Maybe some of you don't agree with me. Or maybe you don't use any of my software and you're wondering what crack I'm smoking. That's fine. If you can find another way to solve it, do so. ;-)

Good luck, people.