- From: Evan Prodromou <evan@e14n.com>
- Date: Wed, 11 Feb 2015 21:54:04 -0500
- To: public-socialweb@w3.org
- Message-ID: <54DC15CC.6050308@e14n.com>
On 2015-02-11 08:53 PM, Sandro Hawke wrote:
>
> I agree with your reading of the charter, etc, but I think it still
> makes sense to imagine two distinct APIs.
> [...]
>
Sandro,
Very well said.
I think having only a client-to-server API is an interesting exercise
that doesn't scale well. It gets particularly tricky if you support
following. Either you have:
1. a polling mode where clients repeatedly fetch the feeds of every
person the user "follows" and merges them into a single "inbox" feed
on the client side, or
2. the client has to write every update to every follower's server-side
inbox feed each time the user updates.
In either case, it gets really unwieldy at scales of dozens of
followers, much less the tens of thousands you see on a site like
identi.ca or the millions you see on a site like Twitter. Fan-out,
retries, and exponential backoff become pretty hard to manage from a
smartphone application.
On top of that, you need to have a universal authentication system that
allows Alice, with an account on serverA, to write data /as Alice/ on
serverB (and to read data, if you have any kind of privacy controls).
Probably client-side certs, I'd imagine from Henry's perspective, but
that's a hard sell.
-Evan
Received on Thursday, 12 February 2015 02:54:26 UTC