I want a distributed Facebook.
March 10, 2013 11:02 PM Subscribe
I want a distributed Facebook. What necessary pieces are already available, and what work would need to be done to integrate currently available necessary pieces?
posted by eviemath to Computers & Internet (8 answers total) 11 users marked this as a favorite
The basic idea:
Users must have their own web space. User data (pics, posts, etc.) are stored locally on the user's own web space. A list of other users and their access permissions is also stored locally.
A central service keeps a list of all users for verification purposes, along with an index to the local user sites. (So that users only have to log in once, rather logging in separately at each of their friends' sites.)
Comments on user posts could be dealt with in one of two ways: (i) comments are "owned" by the user whose content the comment is associated with; (ii) comments are just another type/category of post with a link. Users could enable tracebacks to semi-effectively create comment threads (this would be a bit ungainly; I'd prefer option (i)).
News/RSS type feed that automatically updates each user on their friends' selected activity when said user logs in to their own node. (Ideally, this could be a one-stop feed for everything the user is subscribed to: the distributed social network, Twitter, news feeds, podcasts, etc.)
The client interface must be secure (grar WordPress!), doesn't have to be super customizable (grar WordPress themes!), but does have to do all the basic social network stuff (let you post text, photos, videos, sound, and links; be searchable (keywords would be a nice addition); let you manage who can see and/or comment on which posts). I have a preference for open source projects, as well.
Are Diaspora hubs far enough along in development that they could be used in this way (if, for example, someone volunteered the web space to host a central index), or do they also rely on all data being stored on central servers? What options are available currently that do (all or) parts of this? For example, you can get extensions for WordPress that allow user management and access control locally, but there's no central registry of all users or the sort of indexing I'm thinking of. And there are security issues with the community (yet not open-source) development model for themes and other extensions. Other CMSystems, like Drupal, or courseware type content delivery systems, like Moodle, are similarly non-networked (though maybe more secure?). There maybe seem to be some identity verification type options - something about avatars?? - that such an application might be able to piggy back off of?
1. What pieces of the puzzle are currently available?
2. What work would need to be done to integrate these pieces? (Eg. a standard, well-vetted theme for WordPress or Drupal or something, together with a wrapper/central verification and RSS service that would hide the login details for each individual blog site, make the user experience seem like a unified social network rather than accessing individual blogs, and allow for a news feed on their friends' activity.)