Sunday, February 01, 2009

ORGANISE: a reappraisal

What with things like this, the LibDems' drive to collect members of the scientific-technical intelligentsia at a secret location in Kazakhstan (surely it must be a....), it's surely time to shake up my ORGANISE project - a messaging and task scheduling system for organisations of all kinds that implements a Stafford Beer viable system approach. (Unofficially, "like a bulletin board that actually encourages people to do something".)

Before Christmas, we'd gone through a couple of iterations of the spec, I'd vaguely decided to implement it as a Django web application, and I'd written a first version of the (the file that defines the database schema in Django) that (I hope) embodies Duane Griffin's design of the data model. I also managed to discuss it at some length with Chris "Chris" Williams...

Now, it's unlikely to get anywhere by the 17th of March, so Rewired State is out as far as our methodology of conference-driven development goes. But I want to shake the thing up, and I'm increasingly interested in alternative routes; specifically, should it perhaps be more explicitly about messaging/communications rather than being a read-heavy Web site?

I've been reading up on XMPP messaging, and specifically on its publish-subscribe protocol. Each group in an ORGANISE instance would look like a virtual user. This would make sense - the defining characteristic of membership is the right to send to that group, after all. Percolation rules would determine whether a message from a group would be extended into the next biggest group; thematic groups would work in a similar way. In fact, the XMPP Standards Foundation has the notion of "collection nodes" in XEP 0248 which look very much like ORGANISE groups.

Among other advantages - federation with a lot of IM communities and social networks, the ability to interact with the ORGANISE server via other XMPP networks (which could be handy), a generally more real-time system, and the possibility of interconnecting different ORGANISations. And, y'know, it *feels* more appropriate for various reasons summarised here. Unfortunately it looks like 0248 isn't well supported yet...but what say you?


Graydon said...

XEP 0248 isn't particularly well supported because it was late to the chat party, there's no general economic incentive to either standardize or extend chat clients, and the folks paying for the servers are what matter.

In the case of a political organization application, none of that matters.

Having someone else already wrangle the standard, if it meets your actual needs, though, is nearly pure advantage. So are the existing clients; you can point people to them, and make them feel like they've just never heard of this, rather than that you're making it all up.

Also, real-time and personalized filters really aren't optional if you want it to be useful for anything other than the run up to an election.

Alex said...

There seems to be quite a lot of buzz about XMPP in general at the moment, for a whole lot of applications, and the standard itself is being actively developed.

Digging, it looks like ejabberd recently patched to include support for 0248, but failing that I reckon one could get a similar result from 0060 by some sort of inelegant hack - like creating a notional "user" as owner/publisher of each group and automating them according to rules.

kostenloser Counter