Programming C, C++, Java, PHP, Ruby, Turing, VB
Computer Science Canada 
Programming C, C++, Java, PHP, Ruby, Turing, VB  

Username:   Password: 
 RegisterRegister   
 Distributed social networking?
Index -> General Discussion
Goto page 1, 2  Next
View previous topic Printable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic
Author Message
Insectoid




PostPosted: Tue Aug 21, 2012 1:38 pm   Post subject: Distributed social networking?

So, it would seem social networking has gotten really, really big in the last decade. I'm kinda curious where it's heading from here. What with G+'s laughable launch and Facebook's failed IPO, it seems social networking is outgrowing its adolescence and should soon (I'm guessing 2-5 years) mature into something actually useful.

Constantly, the biggest roadblock to innovation in social networking is the massive, nearly indestructible monopoly of the existing social giants (aka Facebook). Sure, you could use some alternatives, but really you can't, because the whole point of a social network is that your friends are there too, and they aren't. They're all still at Facebook, and Facebook's the only place that all of them are. And so you're forced to use Facebook if you want any sort of social network experience at all, and involuntarily subject to all the changes Facebook makes. You have very little control over how content is presented (and browser extensions that fix this are messy and unreliable). Facebook will never make it easy to leave, because they don't want you to leave. So how do we get around this?

How about a distributed social network adhering to a public protocol similar to email? I'm sure this has been proposed before, but it could be wildly successful if implemented correctly (if it hasn't been done already). This would free the content from the presentation and allow users to choose their own client.

So, we'd have a social ID format that identifies you and your server. For simplicity, let's shamelessly steal the email address format: I'd be insectoid@compsci.ca. Simple enough. Adding a friend is as simple as adding their social ID to a contact list. When you open your client, it downloads all your info from your server, and your friends' info from theirs. When you post something, it's automatically pushed to your online friends. Offline friends can download it later. The protocol would include subprotocols for uploading photos & videos, IM, email, creating and maintaining events, etc. Directory servers would function as a 'friend finder' to those who opt-in.

Each server could cherry-pick what features it wants to support (A low-bandwidth server would not support images, for example). Each server could have its own privacy or content rules, and each server would be client-independent. If your server does something you don't like, you can download your information to a unified format and upload that to another server (servers could even provide this service for you).

email is a fairly trivial protocol. All the cool things that have been added to it haven't changed the protocol. There is no spam filter in email; that's a feature your provider provides. Even file attachments originally were converted to ASCII to make use of the text-only format (though MIME changed this). Similarly, your server may make the decision to feed you all of your friend's data, or to filter only the important information, or to update only the most important friends, etc. When Facebook fails (and I've no doubt it will), it could simply convert to or integrate the open format and let the people who like it stay and keep all the contacts who've left. Your employer could assign you a social ID for work instead of an email address that's still totally compatible with your client.

The monopoly will switch to 'the best product wins'. GMail has a huge userbase because it has the best product, not because 'everyone else is using it so I have to use it too or get left in the dark'.

Google wanted to take Facebook's place. I just want to break the monopoly.

What's standing in the way of this? Is it viable? Has it been done? Did I say something stupid and you have a better idea? Do you want to actually try something like this? I'd love to hear it!
Sponsor
Sponsor
Sponsor
sponsor
evildaddy911




PostPosted: Tue Aug 21, 2012 2:54 pm   Post subject: Re: Distributed social networking?

Quote:
Adding a friend is as simple as adding their social ID to a contact list. When you open your client, it downloads all your info from your server, and your friends' info from theirs.
Is it just me or does that sound EXTREMELY insecure? the least you need to do is notify that person you added of the new connection. you should go another step and make it so they need to confirm the connection before it is established, and make it to-way: i add you, i get added to your contacts, as well as you getting added to mine (yes, i know that this is how FB does it, but is a good idea). this is still insecure, and a better way really needs to be found.

i think that this is possible, but unlikely. what you are suggesting is really just hugely expanding or email providers' services
Insectoid




PostPosted: Tue Aug 21, 2012 3:18 pm   Post subject: RE:Distributed social networking?

Quote:
Is it just me or does that sound EXTREMELY insecure?


Naturally I didn't get into the details. You add their social ID and you can see their public information. If they add you, you can see their more private information. Obviously, if you add someone they'd be notified that you added them. Through privacy controls you could block people from seeing any particular aspect of your profile. This would be controlled on a very basic level by the format and the server side would implement the advanced features.


I didn't mention every little thing because I assume you're all intelligent enough that it needn't be said. We're not reinventing the wheel here. The server can provide advanced privacy controls with its own filters.


Quote:
what you are suggesting is really just hugely expanding or email providers' services


And what's wrong with that?


The biggest issue I see is bandwidth & disk space, since a social profile is obviously more demanding than e-mail, however the provider can solve that itself based on its own policies. Maybe it throws out old data. Maybe it doesn't allow video or photo uploads. Maybe they have a massive datacenter that can handle it. I dunno and I don't really care. The point is that the format itself is very simple and the different providers are each others' competition, and whoever has the best product wins.
Amailer




PostPosted: Tue Aug 21, 2012 4:37 pm   Post subject: RE:Distributed social networking?

https://joindiaspora.com/
http://diaspora.github.com/diaspora/

No idea if its been "done" correctly; however they had a lot of media attention when they were getting funding but seem to have not made any real impact since then.
Insectoid




PostPosted: Tue Aug 21, 2012 5:09 pm   Post subject: RE:Distributed social networking?

That's pretty close to what I'm looking for. They've clearly got the same intention I do (keeping the network out of any single entity's control).

It seems their network is based on a software package that gets installed to each of the servers. I have no idea what their plans are for the future, but my ideal network would have a pretty basic stock codebase that's really just a proof-of-concept and the hosts would be expected to write their own implementations. Naturally, the original server(s) would have to be good enough to pull people in and set the standard, but once they have a choice in providers I'm not interested in playing anymore.

Then again, that's probably what they're planning for. If they'd market it more and found a way to support Facebook (by allowing the client to send and receive Facebook data) they remove the final barrier to entry, since people can leave Facebook without leaving their data behind.
mirhagk




PostPosted: Tue Aug 21, 2012 6:07 pm   Post subject: RE:Distributed social networking?

I really like this idea, if you design a good enough protocol it could really work. If it was extendable, and simple it could be very useful.

A user could choose any server that provided them with the features they liked, and their data would be stored there. They could transfer servers, or even host it on their own if they liked (and were technical enough). Each server could easily provide the services completely free of charge, with advertising of course, or could even charge for an ad free system.

In order for servers to really jump on board you'd need to provide advertising at a system level, instead of just within the client. If a server is hosting the data, it shouldn't have to force people to use it's client in order to advertise to them. If that's the case you either have servers unwilling to host (since noone sees that ads) or servers that force certain clients on their users, which is not what you want obviously.

I really like the idea of a social networking system that's easily extendable, and queryable. I like twitter's idea of hashtags, and being able to do things like that would be cool. I'd like to be able to apply filters to my homepage, so if people mention certain keywords it ignores it ("F*$# off, I'm 14 and can smoke pot if I want" would be a major one).

EDIT: I think the best way to approach something like this is to build a system that allows everything facebook does, then build an app that syncs this network with facebook. Make it provide everything facebook does, so people don't even both logging into facebook anymore.
Insectoid




PostPosted: Tue Aug 21, 2012 6:59 pm   Post subject: RE:Distributed social networking?

I'm thinking ISPs would provide it as an extra feature, Google+ would be rebuilt on the protocol, web browsers would integrate clients, universities would provide social id in addition to email, large corporations would provide an employee server for work profiles, etc. Social media would become, hopefully, less of a craze and more of a casual tool. The few giants (Google, Microsoft, etc) would have their own high-quality ad-supported web clients and they would have massive user bases, but most of the servers would be owned for internal use by companies, universities, etc. The rest would be hobbyists that do it for fun, and run on donations or charge a usage fee. Similar to how emails works now.
mirhagk




PostPosted: Wed Aug 22, 2012 7:35 am   Post subject: RE:Distributed social networking?

Yeah the key would be the base specification, making sure that it is efficient, and supports multiple methods of encryption/compression as well.
Sponsor
Sponsor
Sponsor
sponsor
evildaddy911




PostPosted: Wed Aug 22, 2012 10:08 am   Post subject: RE:Distributed social networking?

I didn't say i had a problem with the idea, i just think that it probably wont happen anytime soon. the biggest problem with it getting started is that companies are probably scared that it will fail because of FB's monopoly and they don't want to lose all the money that they invested. after FB fails, another social network (Google+, twitter, Myspace etc.) will probably take over and they wont support it. if they supports this then it would mean giving up their monopoly, which you know they will never do. It will be the FB monopoly all over again, and some other company will take over once the next big monopoly fails.

The only way to break this cycle would be to have all the other networking sites team up to overthrow FB before it fails on its own. again, the main problem with this is that they companies all want a monopoly. if they think that they have a decent chance to become FB's replacement, they wont do it because that is throwing a monopoly out the window
mirhagk




PostPosted: Wed Aug 22, 2012 10:15 am   Post subject: RE:Distributed social networking?

Yes it would be difficult to break the monopoly. But if you started by providing an alternate interface to facebook, and allowed people to use facebook by simply using this social network, it would slowly make people use your network more and more, and eventually realize there's no point for you to even log in to facebook anymore.
evildaddy911




PostPosted: Wed Aug 22, 2012 10:19 am   Post subject: Re: Distributed social networking?

can you clarify what you mean by
Quote:
allowed people to use facebook by simply using this social network?
mirhagk




PostPosted: Wed Aug 22, 2012 11:15 am   Post subject: RE:Distributed social networking?

I mean build the specification in such a way that facebook's data can be transformed into it, and then have a server that actually allows user to link the new social network account to facebook, retrieving facebook friends, allowing you to post on facebook, or do anything facebook allows.
evildaddy911




PostPosted: Wed Aug 22, 2012 12:10 pm   Post subject: RE:Distributed social networking?

that would require FB's cooperation though, and as my previous post said, they wont go for it because it would be "throwing a monopoly out the window"
mirhagk




PostPosted: Wed Aug 22, 2012 1:57 pm   Post subject: RE:Distributed social networking?

Why would it require FB's cooperation? If you conform your protocol such that facebook's data can be transformed to that, then the server can either use facebooks existing API's to grab data, or worst case scenario the user would need to provide their username and password.
Gelnior




PostPosted: Sat Aug 25, 2012 7:16 am   Post subject: Re: Distributed social networking?

Hi there,

I just would like to let you know that I work on a social network similar to what you describe. It's called Newebe. There each user hosts his account into his server. Each servers communicates directly with their contacts servers where a contact is identified by its URL. It already works (micropost + picture sharing) and I'm currently adding new features that you don't find in other social networks like indexation or file sharing.
I am also looking for contributors, so if you are interested in that project, join the movement Smile.

More info there :
http://newebe.org/
Display posts from previous:   
   Index -> General Discussion
View previous topic Tell A FriendPrintable versionDownload TopicSubscribe to this topicPrivate MessagesRefresh page View next topic

Page 1 of 2  [ 16 Posts ]
Goto page 1, 2  Next
Jump to:   


Style:  
Search: