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.

JR

Jason Robinson Wed 3 Oct 2012 6:20PM

I don't think anyone is talking about uploading anyones contacts anywhere :P Any data should always be opt-in and afaik all the discussion here has been exactly that - everything optional.

T

tortoise Thu 4 Oct 2012 11:50PM

What is the real hope for linking up to friends on twitter and FB? Is it convenience? These are corporations who are out to make a profit. The do not care about privacy. Just by posting on either of those networks makes the content theirs to do with what they want. Just because my friends are stupid enough to have accounts on those networks should not be a motivation for me to link up to them from D. I'm really missing the point of doing that.

Sorry for being a broken record, but I did mention this already: 3rd parties that have connected to them, and FB and Twitter have a history of cutting 3rd parties off for whatever reason. Given that that has happened, why should D development efforts spend the time doing that just to have it potentially thrown away?

Next, I'm not sure about this, and maybe this is a teeny bit off topic, but what's to keep FB (or any other wayward leaning pod owner) from setting up a Diaspora pod, tweaking it and sucking up all the data from federation as a "man in the middle"? Is that possible? Maybe I'm not articulating it correctly, but it does confuse me about federating with SN's that are corporate entities. And if a D* SN does take off in a meaningful way, how do we know that the network isn't being compromised by a corporate presence or corporate pressures? It may not be an issue at the moment, but what are we doing to safeguard it?

I realize this may be a naive question, in that I may not understand how federation is supposed to work.

G

goob Fri 5 Oct 2012 11:20AM

setting up a Diaspora pod, tweaking it and sucking up all the data from federation as a "man in the middle"?

I don't think they could get much from federation: only public posts, and any posts shared with users on the 'dodgy pod', but not much more as D* is careful with what is shared during federation (just the bare minimum, I think). However, the dodgy podmin could certainly harvest data from people who signed up to that pod. It's an issue which does need to be addressed during this development stage, as there's potential for fraud and identity theft on a large scale. So far it has just been done on trust, and that's fine while D is very small, as criminals are unlikely to bother with it. But if it does take off, you can guarantee that crims will take an interest.

BT

Brandon Trussell Fri 5 Oct 2012 10:10PM

The goal is to find the D* accounts of the people you have friended on other networks. The motivation of adding them is not that they're on network X which is so big and nice. The motivation is that they're a friend you would like to communicate with securely, using Diaspora, and therefore you need their D* id in order to communicate with them. Currently, that is very hard to do. I have hundreds of "friends" on Facebook but have no means of finding out their D* ids. Other than manually asking each and every one of them individually. This idea is to automate that process, much the way many other sites do today.

This proposal does not contain anything about sending D* data to another network. The only interaction with other networks would be requesting (from that network to D*) the friend list of the D* user which is looking for D* friends. Therefore, the privacy policies of 3rd party networks is irrelevant, because we do not tell them anything. No D* friend lists and no D* posts.

To reiterate, the friend list would be sent to pods that you select to find friends on. It might even be possible to exclude the D* id of the user performing the search. That way there is no user attached to this list of search terms, as some added privacy…

These other social networks block access to their APIs very rarely. The only time I know of it happening is FB blocked Twitter posts going to Facebook, for understandable reasons (because twitter is the closest thing in size to Facebook). Diaspora is nowhere near as big and nowhere near as big a threat. By the time that becomes untrue, this feature will no longer be required.

As to the cost of dedicating dev time & effort to this idea, it shouldn't be hard for someone who knows the code well, thanks partially to the rapid development tools that are used. I'm almost to the point where I could write it. As Tom Scott said, the code to get permission to access these other networks is already in D*. This is basically an enhancement to Webfinger, with a new rails view to do the search, as pod info will be needed…

BT

Brandon Trussell Fri 5 Oct 2012 10:16PM

I like Rasmus Fuhse's comment also. The search is a problem also. I think this and that could and should be fixed. This would help find people that you might not remember to search for specifically, whereas fixing search would help for those who do not have data on other social network to help them get connected on Diaspora (or who just choose not to use that data).

BT

Poll Created Fri 5 Oct 2012 10:45PM

To allow webfinger search to find users based on their ID from other networks (opt-in only) Closed Fri 5 Oct 2012 10:46PM

This does NOT propose sending any D* data to third party networks. Diaspora already allows linking your D* account to your account on other networks. This is to allow search to work if you do not know the D* id you are looking for. Search can find your friends, if you and your friend allow it, by searching the user database of Diaspora pods for the IDs that you specify.

This solves the problem of needing to add friends that you do not know the D* id of. How would you know their D* id if you don't already have them added? This quickly goes through contact lists that you already have populated and finds as best as possible those users on Diaspora (through opt-in parameters).

Results

Results Option % of points Voters
Agree 0% 0  
Abstain 0% 0  
Disagree 0% 0  
Block 0% 0  
Undecided 0% 263 BK ST FS MS TS AA S CB HF BO JH DM GC JH JR F RF M EG G

0 of 263 people have participated (0%)

BT

Poll Created Fri 5 Oct 2012 10:46PM

To allow webfinger search to find users based on their ID from other networks (opt-in only) Closed Mon 15 Oct 2012 2:57AM

This does NOT propose sending any D* data to third party networks. Diaspora already allows linking your D* account to your account on other networks. This is to allow search to work if you do not know the D* id you are looking for. Search can find your friends, if you and your friend allow it, by searching the user database of Diaspora pods for the IDs that you specify.

This solves the problem of needing to add friends that you do not know the D* id of. How would you know their D* id if you don't already have them added? This quickly goes through contact lists that you already have populated and finds as best as possible those users on Diaspora (through opt-in parameters).

Results

Results Option % of points Voters
Agree 46.2% 6 JR RF BT T KK C
Abstain 46.2% 6 JV S BO JH S AS
Disagree 0.0% 0  
Block 7.7% 1 G
Undecided 0% 257 BK ST FS MS TS AA CB HF DM GC JH F RF M EG G AX PC PP BB

13 of 270 people have participated (4%)

JH

Jonne Haß
Abstain
Fri 5 Oct 2012 10:49PM

Won't work over Webfinger and I won't put any effort in it personally but I also won't block it if it's contributed in a clean and proper way.

BT

Brandon Trussell
Agree
Fri 5 Oct 2012 10:49PM

Greatly eases the difficulty involved with migrating to Diaspora and making the network useful to the user immediately.

JR

Jason Robinson
Agree
Fri 5 Oct 2012 10:56PM

Well I would definitely like this to be implemented though of course it depends on the actual technical implementation. But in principle I agree totally as long as everything is opt-in and respecting users privacy.

Load More