incubator-wave-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Dave <>
Subject Re: Moving Wave Forward
Date Wed, 29 May 2013 01:54:50 GMT

I'm not a committer, but I have some familiarity with the wave stack.

On 29/05/13 01:23, John Blossom wrote:
> People need their waves to live on their mobile devices, not just on cloud Web servers.
After all, email provides local mobile offline capabilities.

I think you might not be 100% up to speed with some of the Wave 
architecture. In an email world, people have mobile off-line access, but 
they still use email servers.  The email server often has the definitive 
copy of their email [i.e. imap], and mobile just retains a cached copy. 
In a mobile world, you still need a permanent server address to deliver 
mail to, or send it through.

This is the same with wave:

client <---c---> server <---f---> server <---c---> client

The federation protocol [f] sits between the two servers, and to support 
mobile clients you would expect those clients to:
  - maintain cached waves
  - allow off-line access to those waves
  - allow off-line changes to those waves
  - propagate changes in real-time where possible

In theory a wave server can support different clients. Unfortunately in 
the current wiab codebase, there is only one client - which is the 
bundled web-client. The current code base does sort-of have the logical 
client/server separation as outlined above (though some code is shared 
between the server and the client), but there isn't a formally defined 
client protocol [c], or separation of the web-client.

So in a broad sense, to support mobile one would need to:
  - formalise the client-server protocol [c]
  - implement that in WIAB (ideally allowing Server and web-client to be 
deployed separately)
  - implement your mobile clients.

Any mobile client would still communicate through a server (as email 
does today) allowing (among other things) third parties to interact with 
waves whilst _I_ am offline.

> So if you are considering the possibility of a mobile-first world, you really do need
> rethink existing Wave federation paradigms seriously.

There may be some corner cases which would need tweaking, but my 
understanding is that the core wave federation paradigms / protocol (and 
the wiab federation implementation) suit mobile very well. They were 
explicitly designed to support real-time when online, and disconnected 
access when offline.

Someone please correct anything I've got wrong!


View raw message