IMAPSN: a spec for building social networking clients using SMTP and IMAP.
imapsn.github.com
imapsn.github.com
Given that they're explicitly about people in particular, personal web pages, social networks and distributed code reviews are kind of the tip of the ice berg. How nice would it be to have a structured project management protocol that operates over email, but allows people to hook up whatever client they want to interpret it, allowing them to work in a way that best suits them?
Email would serve as a notification/status passing protocol and the actual content would be served by the "embedded" web server.
The imap+content servers could ofcourse be hosted in owned hardware/domain or provided as an ISP service.
Edit: to add more info on my approach: The content/web server would also host the UI to access/use your social net. I'm thinking of a SquirrelMail plugin as a first attempt, or a GUI overhaul shifting the primary focus to the social net aspect. The regular email functionality could also be present through a classic looking SquirrelMail interface, so the user can conceptionally separate the email "stuff" from the social "stuff" if he/she needs it.
- messages are pushed instead of pulled, which is a waste because not every status update from every friend will be read.
A rapid scan of the site did not reveal any solutions to these problems, which are indeed huge problems. Ashton Kutcher can't send ten million emails a day. Social needs to be built on a pull protocol.
Ideally each server has more than one user and if a distributed system looks anything like our current email infrastructure, there are would only be a handful of large service providers, each with millions of users.
Of course, there might be thousands of followers also using smaller providers, but sending a few thousand emails is not a big deal (and not that much different from a few thousand providers pulling from a central hub).
Another big problem with push, besides the overhead, is that everything is transient. If you aren't subscribed to a source when it sends something out, you will never see that thing, even if you subscribe later. That might possibly be acceptable for status updates, but definitely not for blog posts, photos, and other permanent content.
Of course, there are various request or sync schemes that could address this problem but anything like that would push this whole idea into Rube Goldberg territory as far as I'm concerned.
This is the approach that so many new social nets are taking and then struggle to "convert" users. OTOH, "flipping some switches" to enable social features in someone's email client would probably be more straightforward for the majority of email users.
Besides, the "augmented email" would actually be a transitional model to "educate" the users into the distributed social net. After that, changing the underlining protocols to be a better/faster/cheaper ones would be natural for the techies and transparent to the average user.
> If you aren't subscribed to a source when it sends something out, you will never see that thing, even if you subscribe later
Well, from my POV, this is actually a benefit: I get the power to choose if the "new" friend gets to see all my history or not. As you later suggest, syncing wouldn't be a big problem anyway...
However, unlike diaspora he's at least tackling the problem from the right angle (protocols).
But regardless of system design, the more interesting question remains: Who is going to fund the implementation of such a system?