

RSS never blocks you or goes down: why social networks need to be decentralized - baha_man
http://radar.oreilly.com/2009/09/rss-never-blocks-you-or-goes-d.html

======
mechanical_fish
The problems we're trying to solve:

 _Recurring outages on major networking sites such as Twitter and LinkedIn,
along with incidents where Twitter members were mysteriously dropped for days
at a time..._

The problems with the proposed "decentralized" solution:

 _Most users wouldn't trust their laptops (much less their mobile devices) to
store content and serve it up 24 hours a day, so they would need a cloud
service... A backup service is also necessary... impersonation and unsolicited
communications (spam) are hard to solve in decentralized systems... nobody can
be banned from a decentralized social network..._

Has anybody asked a customer whether this tradeoff makes any sense?

And, incidentally, the idea that "RSS never goes down" is preposterous. When
the blog goes down, the RSS goes down. When the blog changes URLs, the RSS
goes down forever, or until you track it down again by hand, whichever comes
first. I have a tiny handful of RSS feeds compared to most people, but I still
have to routinely garden the darned things. And when the RSS feed isn't full-
text, or has a weird error [1], it's not exactly down, but it does kind of
suck on a permanent basis.

\---

[1] For me, Roger Ebert's RSS feed can't be read properly in iPhone
NetNewsWire. The first paragraph is full width, and then

it tends to shrink

like a crazy

EE

Cummings

poem,

until we're down to one word per line.. Only that one feed has this problem. I
wonder whose bug that is -- NetNewsWire, or the blog software, or the
configuration, or Ebert? I wonder why I would _want_ to have to routinely deal
with such bugs on a feed-by-feed basis?

~~~
wmf
An RSS feed can go down, but RSS itself cannot go down.

~~~
tedunangst
That's about as helpful as saying Twitter can go down, but HTTP cannot go
down.

~~~
hellotoby
But what he's trying to say is that when Twitter goes down, it takes everyone
with it. When a blog goes down it only takes it's RSS feed down with it, not
every RSS feed in existence.

~~~
Periodic
The whole point is that a single failure will not bring down the whole system.
As it is right now, regularly no one will have twitter access. With a
decentralized system you might lose specific people, or even a whole region or
maybe even communication between regions, but never the whole system.

~~~
mechanical_fish
Part of the whole point of Twitter is that either your posts are seen by all
of your followers, or (in the increasingly rare cases when Twitter is down) by
none of them.

If you want a decentralized system where some of your recipients will get the
message, but others won't, shouldn't you just send email?

~~~
pyre
Decentralized doesn't mean client-side. Think about it this way: What if
Twitter wasn't a centralized company, but a standard protocol for software
running on servers to communicate with each other?

Each user would run their own 'microblog' on a server somewhere. When someone
'followed' them, they would end up subscribing to an RSS/Atom but in a way
that was more similar to rssCloud or PubSubHubBub (i.e. the user1 wants to
follow user2 so user1's software registers a 'callback url' with user2's
microblog; now when user2 publishes, an update is pushed out to user1's
microblog software)

Users wouldn't even necessarily have to fool around with 'hosting packages.'
This opens up a market for companies to provide 'targeted hosting' (hosting of
a particular software package) or to create their own software package that
conforms to the basic tenets of the protocol while adding things onto the
interface (like games/advertisements/quizzes/etc). So the 'average user'
wouldn't necessarily have to get their hands 'dirty' trying to figure out the
difference between Shared Hosting and a VPS.

You can have servers in a decentralized setup. The whole point is that there
isn't a single point of failure (in this case Twitter or Facebook). Not only
that, people could (presumably) have better access/ownership of their own data
and be able to back it up in case of disaster (in which case they could
restore everything back to normal or migrate to a different server/service).

~~~
jwhite
> Decentralized doesn't mean client-side.

I think that's a good point. Is there any reason why Twitter couldn't be
decentralized in a way that's transparent to the users? The article seems to
go off on a bit of a daydream about open, decentralized protocols, implying
that the system would be somehow more "democratic" that way, but that's beyond
the original problem of reliability and robustness to failure. I'm thinking of
something that looks more like content distribution.

~~~
SapphireSun
Isn't Twitter's _thing_ partly that it allows for SMS messages? How would a
distributed network deal with that? I was under the impression that you needed
some sort of financial structure and deals with telecos to do that.

I guess you could run the same software, but then anyone who wants to
microblog would have to pay for all the SMS charges.

~~~
pyre
Depending on how the system was decentralized, you could have a variety of
companies all providing microblogging that inter-communicated with each other
through a known protocol (allowing anyone to create their own software package
to provide the same). This would allow the individual companies to provide the
SMS Gateway while single people on their own hosting plans could op to just
not use SMS (or go with a cell-network provider that provided their own email-
to-SMS gateway).

Not only that, if it was popular enough to have a microblog on this platform,
but very few (microblog) providers offered SMS functionality, it would be an
opening for someone to startup their own service to offer the functionality
for free/cheap to users that wanted to add it to their existing microblog.

------
halo
Problem with decentralisation is that it vastly increases complexity while not
getting the investment, marketing and branding needed to make make a product
go mainstream.

~~~
windsurfer
Tell that to HTTP.

~~~
halo
Sure, there are exceptions, and I'm not saying it's impossible, but making a
decentralised network popular is going to be an uphill struggle, especially in
an already crowded space full of popular centralised competitors which are
already free-of-charge when the end-user benefit is marginal at best and the
usefulness of the service is proportional to the amount of users.

~~~
jerf
But the long term trends are clear: Centralized players lose to decentralized
services. If you think that's not true, you need to broaden your perspective
and look at more history. All those centralized services you see today? Those
aren't the trend, those are the _remnants_ of the stacks upon stacks of
corpses of centralized services destroyed by decentralization, the only things
still standing. From email, through RSS, and through Twitters eventual
decentralized replacement, the march has been relentless.

What reason do you have to think that a pattern in place for decades is
suddenly going to stop because Mighty Twitter is just so damned _special_?
Think in historical terms, across the decades, and Twitter is little more than
a blip in the trend. I'm sure Twitter is going to make some money before it
goes, but I'm also sure there won't be a Twitter in ten years, but instead a
protocol. Same for Facebook, incidentally.

Centralization is O(n^4) to decentralization's O(1.1^n); sure, it looks like
centralization is just _awesome_ for a while, but it always ends up stomped
flat in the end.

~~~
kristiandupont
I am not saying this couldn't be true, but looking at trends in such a
generalized and abstract way is very academic. You could also say that there
has been a trend lately _from_ decentralized (email, blogs) towards facebook,
twitter all the other social networks. However, this insight hardly allows you
to predict anything interesting.

------
darkxanthos
I see no reason why something like Twitter couldn't be decentralized. All it
really is is a huge RSS aggregator. If every Twitter user had something like
Opera or some other web exposed RSS server where they could publish their
comments subscribing would be as easy as reading a blog. You would lose a
couple of features however...

* Size limitations would need to be maintained client side and thus would be inconsistent. * No way to make it so that only your followers can DM you. * It wouldn't be nearly as easy to ensure unique identifiers for each user.

In short, I totally agree but I do wonder if this kind of network is fairly
far off. Seems like we're trying to decentralize a lot of things right now
(cpu processing, social networks, p2p downloading, etc) and so I'm sure
problems like this will get tackled very hard in the coming years.

~~~
tesseract
Decentralized Twitter = <http://en.wikipedia.org/wiki/Finger_protocol>

~~~
pyre
Not really. Maybe on a basic level. But something like Twitter being
centralized is less important to most people. Twitter is rather simple in
concept and (at least a basic implementation) could be made as a project for
an undergraduate CS course.

Something that provided a decentralized Facebook/MySpace network would be more
useful/important. As long as it was easy enough to deploy, people wouldn't
necessarily need to get their own hosting option for it to work... but on the
other hand it could open up a market for hosting that caters to people that
_just_ want to run that web-software package.

