Transcript
Page 1: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

RelativeFinderFacebookApplication:GeneratingGenuineInterestinGenealogyC.MichaelNelson,ComputerScienceDepartment,BrighamYoungUniversity,[email protected]

ThomasW.Sederberg,ComputerScienceDepartment,BrighamYoungUniversity,[email protected]

Abstract“AmIrelatedtoanyofmyfriends?”isadifficultquestiontoanswer.Inanefforttoprovideaneasysolution,wepresenttheRelativeFinderFacebookApplicationwhichusespedigreeinformationfromNewFamilySearchandlogicfromtheRelativeFinderwebsite.ItallowsuserstodiscovertheirfamilialrelationshiptoFacebookfriends,easilyshareresults,andinviteotherstoparticipate.Byfindingusers’familialrelationships,moregenuineinterestingenealogymaybegenerated.

IntroductionTheRelativeFinderwebsite(previouslyknownasRelationshipFinder,relativefinder.org)findstherelationshipsbetweenusersandfamouspeople,andhasthepotentialtogeneratemoreinterestinfamilyhistory.However,afterbeingavailablefornearlyadecade,wefeelitisstillunder‐utilized.

TheRelativeFinderFacebookApplication(apps.facebook.com/relativefinder)hasbeendevelopedtoincreaseusabilityandshare‐abilityoftheRelativeFinderwebsite’sfunctionality.ItusesNewFamilySearch’sancestralinformation,Facebook’ssocialnetworkingabilities,andRelativeFinder’sback‐endlogictofindandsharehowusersarerelatedtoFacebookfriendsandfamouspeople.

Itismorethanjustachangeofuser‐interfacefromthewebsiteversionofRelativeFinder.TheFacebookapplicationmakesfindingyourrelationseasier.UnliketheoriginalRelativeFinderwebsite,itdoesn’trequirethecreationofauseraccount,groupsandpasswords,havinggroup‐admins,orpublishingreports.UserssimplyauthorizetheapplicationtoaccesssomeoftheirinformationfromFacebookandNewFamilySearch,andthenstartfindingrelations.

HowitForwardsFamilyHistoryTechnologyIfyouwantedtoseehowyou’rerelatedtopeoplearoundyou,howwouldyougoaboutit?

Acomparisonoffamilytreesispainstakinglyslow.NewFamilySearch’sAPIdoesallowyoutofindhowusersarerelatedtooneanother,butnottolivingpersons.Severalapplicationshavediscoveredusers’relationshipstofamouspersons,butnotnecessarilytootherusers(IvieandIvie2010).

ThewebsiteversionofRelativeFinderisdevelopingabetaversionwhichalsousesNewFamilySearch,butthisversionoperatesbestforwell‐organizedgroups(likecollegeclasses,businesses,orchurch

Page 2: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

congregations)notfordispersedoneslikefriend‐networks(seethesectiontitled“HowFacebookImprovesRelativeFinder”formoreinformation).

Asidefrompossiblyputtingdistantcousinsincontact,RelativeFinderdoesnothelpindiscoveringnewancestralinformation–soofwhatuseisit?Simplyput:itgeneratesmoregenuineinterestingenealogy.

TheLDSChurchemphasizesheavilytheimportanceoffamilyhistory,andalthoughmostmembersfeelitsimportance,familyhistoryworkisrarelydone(CharlesKnutson2009).AsDr.Knutsonpointedout,perhapsindividualswoulddomorefamilyhistoryiftheyfounditmoreinteresting.

TheRelativeFinderFacebookApplicationgeneratesinterestforfamilyhistory.AccordingtoProfessorSederberg,peoplehavebeenbroughttotearswhentheyseetheirrelationswhileusingRelativeFinder(Sederberg2010).Isn’tthefactthatateenisrelatedtoagirlthey’redatingworthtalkingabout?Wouldn’thistorybemoreinterestingifastudentknewtheirrelationshiptothepeopleinit?Facebookmakesthesharingandacquiringofthisinformationeasierandhopefullycanmakefamilyhistoryamoreinterestingtopicforbotholdandyoung.

HowFacebookImprovesRelativeFinderInordertoseewhytheRelativeFinderFacebookApplicationisanimprovementfromtheoriginalwebsiteversion,itisgoodtocomparetheirusecases.

Ifyouwanttoseehowyou’rerelatedtoyourcircleoffriendsandthenshareyourfindings,thestepstofollowareassuch:

RelativeFinderWebsiteVersion RelativeFinderFacebookApplicationVisitwww.relativefinder.org Accepta“RelativeFinderRequest”fromafriend

(orvisitapps.facebook.com/relativefinder)CreateanaccountontheRelativeFinderwebsite EnteryourNewFamilySearchcredentials EnteryourNewFamilySearchcredentialsCreateagroupandgrouppassword Talkto/emaileachofyourfriends,invitingthemtoalsocreateaRelativeFinderaccountandthenjoinyourgroupbyenteringthename,password,andyourgroupownercode

(Optional:ifnofriendsuseit,invitefriendstouseitbyclickingontheirnamesand“InvitetoUseRelativeFinder”)

Onceallyourfriendshavejoinedthegroup,runareport(ie:findhowyou’rerelated)

Click“FindRelatives:FacebookFriends”toviewrelations

Forwardinformationaboutthereporttoyourfriendsbyeitherprintingofftheresultsoremailingthem

Findsomewaytopublishtheresultsyou’reespeciallyexcitedaboutbyeithertalkingaboutit,bloggingaboutit,postingittoFacebook,etc.

PublishyourfindingsonyouFacebookwalltosharethem

Page 3: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

Facebookfacilitatesfindingcontactinformationforfriends,invitingthosefriendstousetheapplication,informingfriendsofrelationship‐results,andsimplifiesauthenticationandtheprocessoffindingrelatives.

Facebookhelpsusersfindtheirfriends’contactinformation.ServicesprovidedbyFacebookinclude:importinginformationfromtheiremail’scontactslist,allowinguserstotransitivelyseetheirfriends’friends(i.e.:findingfriendsoffriends)anddeducingwhomightbeyourfriendsbecauseofmultiplesharedfriends.TheRelativeFinderFacebookApplicationcansimplyrequestthisinformationfromFacebook,insteadofrequiringtheusertofindtheirfriends’contactinformation.Facebookisalreadycommonlyused(theFacebookBYUnetworkhas52,101members(Facebookn.d.))sotheworkoffindingfriends’contactinformationhasalreadybeendonebyusers,andneednotberepeatedwhentheywanttouseRelativeFinderonFacebook.

Facebookhelpsusersinvitetheirfriendstousetheapplication.Facebook’sAPIisasimpleinterfacethatcanbeusedtoeasilyembedaprofessional‐lookingwindowinsideRelativeFinderonFacebookwhichhasalistofallusers’friends,whosepicturestheyclickontoinvitetousetheapplication.AninvitationissentgivingtheinviteetheoptiontoacceptanduseRelativeFinderornot.Iftheyclicktoaccepttheinvitation,theyareredirectedtoRelativeFinderonFacebookanditissavedintheirlistofusedapplications.

Facebookfacilitatessharing/publishinginformationfromtheapplication.Newsispostedonauser’s“wall.”(Auser’s“wall”isapageonFacebookwhereusersposttheirnewsandannouncementsforotherstosee.)Facebookusersalreadycheckeachother’s“walls”periodicallytostayup‐to‐datewiththeirfriends,sothisisanaturalplaceforpeopletobroadcasttheirnewfoundrelatives.NotonlyRelativeFinderFacebookApplicationuserswillbeawareoftheirfindings,butalloftheirFacebookfriendsaswell.

Facebooksimplifiesuserloginauthentication.RatherthanrequiringtheusertosetupanewusernameandpasswordwhichisRelativeFinder‐specific,Facebook’sAPIcanbeusedtoidentifytheuseraccordingtotheirFacebookID,andverifytheiridentity.Thisalsoprovidestheadvantagethatnotonlyisitsimplerfortheusertouse,buttheproblemofauthenticatingtheuserandstoringencryptedpasswordsisofnoconcerntothemaintainersoftheFacebookapplication.

Lastly,FacebooksimplifiestheprocessoffindingrelativesbyautomaticallycreatingRelativeFinderGroups.Aspreviouslyshowninthissection,inordertofindausers’relatives,theymustfirstbecomeamemberofa“RelativeFinderGroup.”Thisgroupdefineswithwhomrelativesmaybefoundwhenthebackendsearchesforrelatives.Theprocessofcreating,invitingpeopleto,andjoininggroupsisalittlecumbersome.Whilenotoverlydifficult,itdoesrequirequiteabitoforganization.

TheprocessofcreatingRelativeFinderGroupsisautomatedintheFacebookapplication.Facebook’sAPIallowsfordiscoveryoftheuser’sfriendswhousethissameapplication.Thisinformationisacquired,andaRelativeFinderGroupisautomaticallycreatedwiththeseindividualsinit.Thus,theuserneedneverevenknowaboutRelativeFinderGroups.

Table1FeaturesProvidedbyRelativeFinderWebsiteVs.FacebookApplication

StandardWebsite

FacebookApplication

FindingFriends’ContactInformation InviteFriendstoUseApplication

Page 4: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

FindRelationshipstoOtherUsers NotifyOtherUsersofRelation‐Information PublishInformationtoNon‐ApplicationUsers LoginAuthenticationProvidedbyFacebook AutomaticCreationof“RelativeFinderGroups”

WhatdoestheRelativeFinderFacebookApplicationOfferthatotherFacebookApplicationsDon’t?ThereareotherFacebookApplicationsthatoffersimilar‐soundingfeatures,suchasFamilyTree(FamilyTreen.d.)andWe’reRelated(We'reRelatedn.d.).BothoftheseapplicationsallowyoutodesignateFacebookusersasrelativesandcreateafamilytree.Theyfindrelativesbasedontheinformationyouspecify.

Whattheylack,thattheRelativeFinderFacebookApplicationhas,isNewFamilySearchintegration.Thisapplicationdoesn’trequireyoutoenteranyancestralinformation;instead,itusesthewealthofinformationalreadycontainedinNewFamilySearch.Thispreventshoursofinputtingthisinformationmanually,oftencopyingitfromNewFamilySearchanyway.

Also,nootherFacebookApplicationcanfindusers’relationshiptofamousindividualslikeU.S.presidents,EuropeanRoyalty,andthelike.

HowRelativeFinderFindsRelativesAspreviouslymentioned,theRelativeFinderFacebookApplicationusesthesamebackendforfindingrelativesastheoriginalwebsiteversion.Thus,whilenosignificantdevelopmentsweremadetoimprovetheprocessoffindingrelatives,itmaybeofinteresttosomereaderstoknowhowitworks.

ThewebsiteversionofRelativeFinderexistedbeforeNewFamilySearch,andthuswasnotoriginallybuiltonNewFamilySearch’sAPI.ItusedtheAncestralFiledatabasetofindrelatives,andhasonlyrecentlyincorporatedNewFamilySearchdata.

AncestralFileisalineage‐linkeddatabasewhichwascompiledfrom1978to2000containingover36millionnames.Anadvantageofusingthisstaticdatabaseisthat,becauseinformationinitisnolongerchanging,itscontentscanbestoredlocallywithconfidencethattheyareaccurate.Thereisnoneedtoeverupdateit,andsearchingonthislocally‐storedinformationismuchfasterthanmakingrepeatedrequeststoNewFamilySearch’sAPI.

AcleardisadvantagetousingAncestralFile,however,isthatiftheuser’sdataisn’tfoundinit,it’suselessforfindingtheirrelatives.Theycan’tevenaddthemselvestoit.ThewebsiteversionusedtoresolvethisproblembyaskinguserstoindicatetheirclosestrelativeinAncestralFile.

WiththeintroductionofNewFamilySearch,theprocessoffindingrelativeswassignificantlysimplified.WhileRelativeFinderstillprimarilyusesAncestralFiletofindusers’relatives,itusesNewFamily

Page 5: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

Search’sdynamically‐growingdatabaseto“fillinthegaps”,andespeciallytofindhowuserslink‐intoAncestralFile.NewFamilySearch’sAPIallowsdeveloperstorequesttheAncestralFileNumberofanindividualinNewFamilySearch,andthusidentifymatchesbetweenthetwodatabases.

UsingbothAncestralFileandNewFamilySearchrepresentsatrade‐offbetweenspeedandaccuracy.WhileitispossiblethereareconflictsbetweentheNewFamilySearchandAncestralFileinformation,thesedifferencesusuallyonlymeanRelativeFinderwilldiscoveraless‐directlinkbetweenindividuals–itwillnotmissfindingtherelationshipentirely.

HowTheRelativeFinderFacebookApplicationWorksTheapplicationacquiressomeinformationfromFacebook,somefromNewFamilySearch,andsomefromtheRelativeFinderwebsite’sbackend.

Figure1CommunicationChannelsinOperationoftheFacebookApplication

Figure8providesasimplificationofhowinformationistransferredintheoperationoftheapplication.Formostpageswithintheapplication,therequestisactuallysentfirstfromtheusertoFacebook(arrow1infigure8),whichinturnrequestssomeinformationfromourserver(2).OurserverprocessestheinformationinPHP,andthensendsaresponsewritteninFBML(FacebookMarkupLanguage)toFacebook(2).Facebookparsestheresponse,andrespondstotheuserinaformattheuser’sinternetbrowsercandisplay(1).

Whentheuser’sNewFamilySearchcredentialsarerequested(asinfigure3),theuserisactuallydirectedtoaNewFamilySearchpage(3).OnceNewFamilySearchauthenticatestheuser,theyareredirecteddirectlytoourserver(4)(inthisspecialcasetheyarenotsenttoFacebook)withanauthenticatingcookie.OurserverusesthekeycontainedinthatcookietodirectlyrequestinformationfromNewFamilySearch(5).Werequestinformationon5generationsofthecurrentuser’sfamilytree,andonlystoreasmuchasisnecessarytolinkintoAncestralFile.Onceourserverisdonerequestingpedigreeinformation,werequestthecurrentuser’sNewFamilySearchPersonID(3)andtheir

Page 6: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

FacebookID(2)andlinkthetwotogetherinourdatabase.Finally,theuserisagainredirectedbacktoFacebook(1)torenderthesubsequentpage.

ApplicationinvitationsandwallpublicationsaredonenearlyentirelybyFacebook.OurserverspecifiessomedetailsabouthowtheseshouldbedisplayedintheFBMLsenttoFacebook(2),buttheyarestoredandmaintainedbyFacebook.

Whentheuserrequestsareport(ie:onceithasthenecessaryinformationfromNewFamilySearchandtheuserrequeststofindtheirrelatives),theysendarequestdirectlytoourserver(4).Theserver‐endPHPcodethencallsthesameback‐endCcodeasthewebsitetofindrelatives(thecodeisreusedinordertoreducecode‐duplication).Thewebsiteissetuptofindrelationsbetweenuser‐definedgroups,sotheFacebookapplicationcreatesatemporarygroupoftheuser’sfriends(thelistoffriendsisacquiredfromFacebook(2))andrunsthetestonthatgroup.Afterthetestisrun,theCcodeproducesanXMLdocument,whichthePHPcodeparses,andsendsthecorrespondingFBMLtoFacebook(2)tobeforwardedontotheuser.

Inordertoreducecodeduplication,theRelativeFinderFacebookApplicationusesweb‐serviceswhichareveryfamiliartoFacebookdevelopersandNewFamilySearchdevelopers(althoughthecombinationmaybenovel).ItalsomakesuseofRelativeFinderCcodeanddatabasewhichwaspreviouslyestablishedforthewebsiteversion.CodereusenotonlyreducesmaintenancecostsoftheRelativeFinderFacebookApplication,butitalsomakescodemoreunderstandablebythosefamiliarwiththerespectivecodebases.

WalkthroughofApplicationVisitapps.facebook.com/relativefindertoviewtheapplication,oriewthissamplewalkthroughofoneuse‐case.

Figure2

Typically,auserwillbeinvitedtousetheapplicationviaanApplicationInvitation,showinFigure1.Theuserclick"Accept"toaddandberedirectedtotheapplication.

Page 7: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

Figure3

Afterclicking“Accept,”theuserisredirectedtothewelcomepage,showninfigure2.IftheuserisunfamiliarwithNewFamilySearch,therearelinkstoexplainhowitisused.Otherwise,theusermayimmediatelyentertheirNewFamilySearchInformation(orcredentials).

Page 8: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

Figure3showstheNewFamilySearchpagewheretheuserenterstheircredentials.

Figure4

Page 9: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

Figure5

AftertheapplicationacquiresthenecessaryinformationfromNewFamilySearch,theuserreturnstotheapplication,asseenonfigure4.Theusernowhastheoptionstobeginfindingtheirrelatives,asshownbythelinksontheleft.

Page 10: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

Figure6

Uponclicking“FindRelatives:FacebookFriends,”theuserseesthelistoftheirfriendscurrentlyusingtheapplication(figure5)amongwhichtheapplicationwilltestforrelations.

Page 11: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

Figure7

Afterclicking“FindHowI’mRelated”,theresultsaredisplayedasshowinfigure6.Theusercanviewtheirintersectingfamilytreesbyclicking“SeeHowYou’reRelated”,andtheycanpublishthisrelationtotheirFacebookWallbyclickign“PublishtoWall.”

Figure8

Figure7showsasamplewallpost,showingthattheuser’snewlyfoundrelation.

Page 12: Relative Finder Facebook Application: Generating Genuine ... · Facebook helps users invite their friends to use the application. Facebook’s API is a simple interface that can be

ConclusionAfairdegreeofperformance‐optimizationanduser‐interfaceimprovementsareunderway,buttheapplicationisusableandservesitsbasicpurpose:tohelpusersfindtheirrelativesamongtheirfriendsandfamouspeople,andbysodoinggeneratemoreinterestinfamilyhistory.

Otherfuturedevelopmentshavebeenconsidered.Amongthesefeaturesinclude:

• findingallauser’s4thor5thcousinsamongallconsentingusers,notjustFacebookfriends• integrationwiththeRelativeFinderwebsite,allowingauserwithanaccountontheFacebook

applicationtoautomaticallyhaveaworkingaccountonthewebsite,andvice‐versa• findingrelationsamongimportantdeceased‐individualswhoaren’twithinourbuilt‐ingroups

(ie:U.S.presidents,EuropeanRoyalty,LDSChurchprophets)

Forthetimebeingourprimaryfocusisonverifyingtheprogram’sfunctionality,andpromotingthisapplicationwefeelwillmakefamilyhistoryatopicofinterestandstudyformanymorepeople.

BibliographyCharlesKnutson,JonathanKrein."BYUSEQuOIAPublications."BYUSeQUOIA.2009.http://sequoia.cs.byu.edu/?page=papers(accessed124,2010).

Facebook.http://www.facebook.com/editaccount.php?networks(accessedJanuary5,2011).

FamilyTree.http://apps.facebook.com/familytree/(accessedJanuary5,2011).

Sederberg,ThomasW.,interviewbyC.MichaelNelson.(78,2010).

We'reRelated.http://wererelated.familylink.com/index.php(accessedJanuary5,2011).


Recommended