Programmers should generalise... sometimes...

OK, so the idea behind Gradient is to wire an SVG document into a P2P network, albeit one that's physically client server, and conceptually P2P.

Why do this in general: many applications now are being developed for use via the web, i.e. they're webapps. This is my worklife area of specialty.

The idea behind Gradient is that you have a generalized messaging network (XMPP/Jabber) that is (a) can do cool things like PubSub (see below), (b) is scalable and mature, and within which documents form their own application 'clouds', i.e. specialized subcultures of network endpoints.

The fact that you're still loading pages over HTTP means that you're centralising things (of course), but not every P2P network has to be lawyer-resistant if you're trying to do legal stuff. And having the app loaded as a document each time is something we all know the pros and cons of.

One of the things that's not working so far is getting the document controller to stay online. I don't know how often jabber.org is restarted, or if clients are all kicked off after a certain length of time, but having client JIDs perform server functions isn't the way for me to go about it. PubSub is almost definitely the way to go on this, since (IIRC) items published to nodes stay around after a node goes offline. I'll be here end of Feb, so I';; have a better idea of how things stand after that.

No comments: