Loomio
Tue 2 Oct 2012 10:43PM

Integrate Facebook and Twitter friend search

BT Brandon Trussell Public Seen by 123

Proposal

Looking for a way for Diaspora to be able to find the friends a user has, who are using known Diaspora accounts, based on their friendships from other social networks such as Facebook and Twitter.

This is akin to what Quora has done, where it tells you about friends you have from there other networks, which are already using Quora.

Justification

I began looking into Diaspora in July. Since then (not a very small amount of time), I have found no one I know in real life on Diaspora. I asked some people directly and received "no" responses. But also, D* doesn't allow me to search for friends using any parameters other than D* id. For a very small network, this is bad because D* ids are rare, resulting in not being able to find anyone on the network. 3 months later I have exactly 2 contacts on D*, one of which is Jonne, and the other a fellow I begged to add me from freenode/#diaspora.

The Code

The following is full of noob assumptions, written solely to get the discussion ball rolling.

Brief research shows me, since D* users sign in using custom D* accounts (not FB o-auth, etc), we'd have to compare something like email addresses to match against that same identifier that the other network has stored.

Part of the question is, what servers will D* search for these users on? Perhaps a list of large pods can be offered to search, maybe in addition to the name of pods that the user supplies.

Implementation? (facebook scenario)
I imagine the user's pod will query the list of search pods for a list of fb ids. The queried pods would have to search its list of users for those ids (the user would have had to link their account already) and return the results. Requires changes on both ends, as pods only search for D* user ids when web-fingered currently. So far, doesn't look like FB api allows getting the list email addresses of friends.

T

tortoise Tue 2 Oct 2012 10:59PM

I'd say that this is a bit of a loaded issue. I'm not sure... how do others feel about it?

I mean if we are trying to take down FB (if that is even possible), I suppose we'd want to link to FB users or try to entice them to move, but I'm not sure that will work (if that is the motivation).

If it is just to link to friends on FB/Twitter/Google, there is a distinct possibility that it is building a bridge to nowhere, because FB has cut off linking to outside FB, as has Twitter. Is that a smart thing to do? to waste developer muscle that way?

So that is one point.

The second point is, does Diaspora become less private by hooking up to these other SN's? I don't know. I'm just asking.

My thought has always been that with Diaspora, a pod is for people to use on their own without being NECESSARILY linked to a corporate presence, such as FB, Google, Twitter.

My 2¢...

JR

Jason Robinson Wed 3 Oct 2012 6:19AM

Definitely it should be easier to search for friends. The technical challenge comes from the federated nature of D*. Querying everything from large pods would only make the large pods swamped.

Would love to see something like this happen but I think it would have to somehow be implemented via some other solution than the pods themselves. Maybe someone will set up a service where users can with a single button add their D* ID linking it to their FB id and pods can query that then. Plus then it would be purely voluntary and as such no ones privacy would be hurt.

RF

Rasmus Fuhse Wed 3 Oct 2012 6:20AM

I nice proposal. But I think, the main problem is that Diaspora* doesn't have a reliable search-engine. If I were able to ask my friends to register at any pod and simply search for my name, it would be a great benefit for the network. Until now it happened a lot of times that friends of mine registered and searched for some friends they knew that they should be in Diaspora* somewhere, but they weren't able to find them and thus frustratedly went away from Diaspora*. The current search doesn't even find all of the contacts my pod knows!

Having a facebook connection is not bad - not in the matter of privacy, but I guess it would solve the problem from the wrong direction if you know what I am trying to say.

JH

Jonne Haß Wed 3 Oct 2012 9:40AM

Disclaimer: Personal opinion here.

For me the real issue are wrong expectations. Diaspora isn't FB. It's not Twitter. It's neither a replacement. Never meant to be one. Diaspora wants to offer a SN'ish experience to PGP encrypted E-Mail, basically. Enriching the communication with people you already know. It's not so much about self representation or new people discovery. The centralized approach will just always beat us there. If we aim to deliver a SN experience like Facebook while being distributed and privacy aware we can do nothing but just fail. It doesn't work. Diaspora is about saying what you can't say on other platforms because you don't know if someone else will accidentally see it because you have no control over your data. But again it's not a replacement.

Just my two cents, other devs might think different.

DU

Wed 3 Oct 2012 9:54AM

I guess Friendica has such a feature... but it was terribly implemented and has no real overvalue, so for the next time focussing on primary issues should be more important.

TS

Tom Scott Wed 3 Oct 2012 1:35PM

I think we should add it because creating accounts with Facebook and Twitter is easy, secure, and only trackable for those who opt-in, i.e., those who connect their D* accounts to these networks. It's not very difficult...we already have the capabilities to link D* accounts with FB and Twitter accounts, all we need is to gain permission to search the friend lists of these accounts.

This is not a security concern, but I don't believe it's feasible for federation. It would simply take too long to perform a search of the entire D* network. Also, unless Facebook and Twitter adds in a "Diaspora Handle" field into their profiles, or we can find some other secure way of obtaining one's primary D* handle from these social networks, I don't believe something like this is feasible.

The only way we could really do this with performance in mind would be to only search on the local pod, and query both FB and Twitter by email address. This is, unfortunately, a bit of a half-assed attempt, so I'm not 100% behind doing it this way.

G

goob Wed 3 Oct 2012 2:37PM

I'm not sure I understand the proposal, but if I'm reading it correctly, it sounds like a massive privacy leak of the sort which has made Facebook infamous and which Diaspora was set up to avoid.

I definitely don't think anything should be implemented which provides people's Diaspora handles, or indeed any user data, to other networks such as Facebook on a 'these are people I (might) know' basis. The way Facebook encourages new users to upload their entire contacts list to its database is one of the most egregious breaches of privacy around. We don't want Diaspora to be any part of that or seek to replicate it in any way.

You're right in that searching for users by name is not very good within Diaspora, but this is something which will, I expect, improve greatly when federation of data between pods is sorted out, and that is one of the priorities for development at the moment.

So I think it's a case of accepting that for the moment, with Diaspora only at alpha stage, this function isn't going to be very good, but it should improve a lot when the federation issues are resolved.

As a workaround for the time being, if you're searching for people who are already friends, I'd suggest right-clicking on your name in the stream in Diaspora and sending the link to your friends by email. They can then click that link to go straight to your profile page, and can then connect with you (if they wish).

Of course, one other thing to consider is that not that many people are using Diaspora at the moment, so it might well be that only one or two of your friends have Diaspora accounts at the moment. This is certainly true in my case, and I have very few contacts.

I think it's best to view Diaspora as the building blocks of a future, and hopefully excellent, social network, rather than as a working (but not very well) social network at present.

That's my two pfennigs worth.

G

goob Wed 3 Oct 2012 2:39PM

ps: I totally agree with and support Jonne's words: thinking as Diaspora as a replacement for one of the established centralised social networks is a mistake and a route to failure. Diaspora is by nature something different, and it can only succeed if it doesn't try to replicate what Facebook, Twitter and so on do.

BT

Brandon Trussell Wed 3 Oct 2012 4:40PM

I agree with Tom Scott's 1st paragraph and the "this is not a security issue" part.

Regarding performance, the way things work right now, you enter a D* id, the address is parsed to find the pod which hosts the account, and that pod is given a search to run for that id.

Now, if a user wants to search for their FB friends, the list of search pods would be given FB ids to search for. That # of IDs would be far greater, would is a concern, but possibly tolerable. Also, we would want to look into limiting how many pods can be given these queries simultaneously. I want to dispel the idea that any D* data would be given to FB or Twitter however. The search pod would return any local D* accounts which match any of the of 3rd party network IDs.

Regarding the SN nature of the proposal, I'm not seeing a big difference between D* and other SNs. D* is most similar to Google+ (due to the concept of circles) with the exception that you can host & own all your data yourself. + the distributed layout of the network. That said, being able to find friends better on D* would greatly help D* grow. As it stands now, finding people you know on D* is more difficult than any other alternative.

Thinking of google+ reminds me how they find your contacts for you: your gmail contact list. There are APIs to interface with that data also. As well as yahoo I believe. So beginning to integrate that data would greatly help making connections between D* users...

G

goob Wed 3 Oct 2012 5:47PM

I'm strongly against the facility to upload your contacts list, because this is a way of giving other people's data away without their permission. Even if Diaspora wasn't to store this data and use it to contact these people, as Facebook and Google+ do, it would be encouraging bad practice in people. I think in everything we do in Diaspora, it should be encouraging people to think about the security and privacy of other people as well as themselves.

Convenience is good, but at what cost?

I think a lot of the problems being raised about finding people will be solved once the core problems over federation of data between pods had been solved. And again, we should be focusing on solving the technical problems of the network before thinking of publicising it to others as a functioning network. We are testers, helping to get Diaspora ready to be used by the wider public.
Another tuppence.

Load More