SlideShare a Scribd company logo
1 of 38
Developer Garage Milan
Main Topic: Facebook Connect
April 23, 2009
James Leszczenski

 Software Engineer at
Facebook

 james@facebook.com
Agenda
â–Ș 1. Our Mission
â–Ș 2. Facebook Connect, An Overview
â–Ș 3. Getting Started
â–Ș 4. What’s Next?
â–Ș 5. Questions
Facebook’s Mission:
Give people the power to
share and make the world
more open and connected
Your Mission:
Create opportunities for
people to share and make the
world more open and connected
What are your goals?
1) Build Traffic
2) Create Deep Engagement
3) ProïŹt Wildly
How can Facebook Connect help?
1) Build Traffic through social distribution
2) Create Deep Engagement with identity and social
context
3) ProïŹt Wildly with more traffic and engagement
Agenda
â–Ș 1. Our Mission
â–Ș 2. Facebook Connect, An Overview
â–Ș 3. Getting Started
â–Ș 4. What’s Next?
â–Ș 5. Questions
Overview of Facebook Connect
Engaging with a new site is difficult
‱ Decide to register
‱ Click “sign up”
‱ Decide on the basics: Which
email will I use?
The usual password?
User name?
‱ Add extra info:
Birthday
Name
etc

‱ Enter a CAPTCHA
‱ ConïŹrm
‱ Get sent to verify email page
‱ Wait
‱ Go back in your email, verify
email
‱ Go back to browser
‱ And

Think of the steps users need to go through to sign up & engage with your content.

 the end result is a website with no social data, no customization, and no friends 
10
Facebook Connect
Increase registration, engagement and traffic on your site.
‱ Share their identity and log
in with 1 click
‱ Bring their friends to your
site, increasing engagement
‱ Generate more traffic by
distributing your content to
Facebook’s 200 million users
Identity & Login
Friends
Distribution
Facebook Connect allows your visitors to:
11
Facebook Connect makes it easy for your users
‱Decide to register
‱Click “Connect”
‱Done
A Connected user brings all of their rich Facebook information and friends
to your site in 1 click.

 a website with your
real-life identity,
customized content and
all your friends.
1. User’s real identity
12
2. Easy access to their
friends and friend
content
Users share content back to Facebook
Content from your site gets shared to Facebook. Traffic comes back to your site.
3. Content from your site is easily
distributed on Facebook, sending traffic
back to your site.
13
Over 8,000 web sites
have adopted Facebook Connect
Connect is revolutionizing the web
“It is an ingenious stab at solving several
nagging problems at once. Web surfers like
to socialize while they browse the internet,
but many prefer to do so only with their
friends rather than with perfect strangers.”
- Dec 4, 2008
“Because Facebook Connect is not just a
registration system, but also a marketing
channel with a built-in audience of 130
million monthly active users, this program
will crush competing registration systems.”
- Nov 30, 2008
What sites are seeing:
‱ Registrations 30-100%
‱ User-generated content 15-60%
‱ Each story published to FB generates 0.5 to 2
clicks back to the publishing site
“Supporters of this idea say such
programs will help with the emergence
of a new ‘social Web,’ because chatter
among friends will inïŹltrate even sites
that have been entirely unsociable
thus far.”
- Nov 30, 2008
14
Agenda
â–Ș 1. Our Mission
â–Ș 2. Facebook Connect, An Overview
â–Ș 3. Getting Started
â–Ș 4. What’s Next?
â–Ș 5. Questions
Getting Started
Objectives
â–Ș Main Objective: Integrate Facebook Connect into a web site
â–Ș 1. Register a new application with Facebook.
â–Ș 2. Detect the login status of a user.
â–Ș 3. Use XFBML/API calls to show user information.
â–Ș 4. Publish actions to the Stream/News Feed.
â–Ș 5. More advanced features.
Objectives
â–Ș Main Objective: Integrate Facebook Connect into a web site
â–Ș 1. Register a new application with Facebook.
â–Ș 2. Detect the login status of a user.
â–Ș 3. Use XFBML/API calls to show user information.
â–Ș 4. Publish actions to the Stream/News Feed.
â–Ș 5. More advanced features.
Setting Up your Application
â–Ș 1. Go to http://www.facebook.com/developers/
â–Ș 2. Click “Set Up New Application”
â–Ș 3. Choose an Application Name, agree to Terms of Service,
submit.
â–Ș 4. Go to the ‘Connect’ tab and ïŹll in ‘Connect URL’ and ‘Base
Domain’
â–Ș 5. Submit the form. You now have a new application!
Setting Up your Application (2)
â–Ș 1. Download a cross-domain receiver ïŹle
â–Ș Ex. http://www.somethingtoputhere.com/xd_receiver.htm
â–Ș 2. Upload xd_receiver.htm to your directory.
â–Ș 3. Open up the web page for development.
â–Ș 4. Change the <html> tag to:
â–Ș <html xmlns:fb="http://www.facebook.com/2008/fbml">
Setting Up your Application (3)
â–Ș 5. Insert a few lines just before the </BODY> tag:
<script type="text/javascript" src="http://
static.ak.connect.facebook.com/js/api_lib/v0.4/
FeatureLoader.js.php"></script>
<script type="text/javascript">
FB.init("YOUR_API_KEY_HERE", "xd_receiver.htm");
</script>
â–Ș 6. And save your ïŹle.
Objectives
â–Ș Main Objective: Integrate Facebook Connect into a web site
â–Ș 1. Register a new application with Facebook.
â–Ș 2. Detect the login status of a user. (Identity)
â–Ș 3. Use XFBML/API calls to show user information.
â–Ș 4. Publish actions to the Stream/News Feed.
â–Ș 5. More advanced features
Login Status
â–Ș 1. Include a Facebook Connect login button:
â–Ș <p>
Click here to connect with Facebook:
<fb:login-button onlogin="facebook_onlogin()">
</fb:login-button>
</p>
â–Ș 2. Side note: What is FBML/XFBML?
Login Status (2)
â–Ș 2. Create the facebook_onlogin() function in JavaScript:
<script>
function facebook_onlogin() {
alert(FB.Connect.get_loggedInUser());
}
</script>
Login Status (3)
â–Ș 3. Simpler: Detecting status upon page load:
<script type="text/javascript">
FB.init("YOUR_API_KEY_HERE",
"xd_receiver.htm",
{"ifUserConnected" : facebook_onlogin}
);
</script>
Objectives
â–Ș Main Objective: Integrate Facebook Connect into a web site
â–Ș 1. Register a new application with Facebook.
â–Ș 2. Detect the login status of a user. (Identity)
â–Ș 3. Use XFBML/API calls to show user information. (Friends)
â–Ș 4. Publish actions to the Stream/News Feed.
â–Ș 5. More advanced features.
XFBML
â–Ș 1. Insert XFBML with facebook_onlogin():
function facebook_onlogin() {
fbuid = FB.Facebook.apiClient.get_session().uid;
us = document.getElementById('user_section');
us.innerHTML = ‘<fb:profile-pic uid="’+fbuid+’">’
+ ‘</fb:profile-pic>’
+ ‘<fb:name uid="loggedinuser"></fb:name>’
+ ‘has connected with Facebook.’
+ ’<br/>’
+ ’To log out: <a href="#" onclick="FB.Connect.logout(facebook_onlogout)">Click
here</a>';
FB.XFBML.Host.parseDomTree(); // Finds all XFBML tags and re-renders HTML
}
XFBML (2)
â–Ș 2. What to do when the user logs out:
function facebook_onlogout() {
us = document.getElementById('user_section');
// Reset back to the default state
us.innerHTML = 'To log in with Facebook: <fb:login-button
onlogin="facebook_onlogin()"></fb:login-button>';
FB.XFBML.Host.parseDomTree();
}
Objectives
â–Ș Main Objective: Integrate Facebook Connect into a web site
â–Ș 1. Register a new application with Facebook.
â–Ș 2. Detect the login status of a user. (Identity)
â–Ș 3. Use XFBML/API calls to show user information. (Friends)
â–Ș 4. Publish actions to the Stream/News Feed. (Distribution)
â–Ș 5. More advanced features.
Feed Forms
‱ User-editable comment
ïŹeld
‱ Comment can be pre-
ïŹlled by application with
user content
‱ User comment will be
returned to application
Feed Forms (2)
‱ 1. Go to http://developers.facebook.com/
‱ 2. Click Tools in the top navigation.
‱ 3. Click the Feed Template Console tab.
‱ 4. Choose your new application from the list and click
Next.
‱ 5. Fill out a One Line Template + Short Story
Template Title.
‱ e.g. “{*actor*} reviewed a restaurant on Citysearch.”
‱ 6. Submit your template, and get a template ID.
Feed Forms (3)
// Initialize feed form data
var body_general = null;
var user_message_prompt = "How was the restaurant?";
var user_message = {value: "The restaurant was..."};
FB.ensureInit(function() {
// Show the feed form to the user
FB.Connect.showFeedDialog(<?=FEED_FORM_ID?>,
template_data, null, body_general, null,
FB.RequireConnect.require,
FB.RequireConnect.promptConnect,
user_message_prompt, user_message);
});
Objectives
â–Ș Main Objective: Integrate Facebook Connect into a web site
â–Ș 1. Register a new application with Facebook.
â–Ș 2. Detect the login status of a user. (Identity)
â–Ș 3. Use XFBML/API calls to show user information. (Friends)
â–Ș 4. Publish actions to the Stream/News Feed. (Distribution)
â–Ș 5. More advanced features.
Objectives
â–Ș Main Objective: Integrate Facebook Connect into a web site
â–Ș 1. Register a new application with Facebook.
â–Ș 2. Detect the login status of a user. (Identity)
â–Ș 3. Use XFBML/API calls to show user information. (Friends)
â–Ș 4. Publish actions to the Stream/News Feed. (Distribution)
â–Ș 5. More advanced features.
â–Ș Integration points on facebook.com
â–Ș Add server-side logic
â–Ș Anything that Facebook Platform can do.
Agenda
â–Ș 1. Our Mission
â–Ș 2. Facebook Connect, An Overview
â–Ș 3. Getting Started
â–Ș 4. What’s Next?
â–Ș 5. Questions
What’s Next?
1) Integrate

 Check out our video tutorials: wiki.developers.facebook.com
2) Innovate
3) Iterate and Grow

 <fb:comments>, <fb:intl>
Agenda
â–Ș 1. Our Mission
â–Ș 2. Facebook Connect, An Overview
â–Ș 3. Getting Started
â–Ș 4. What’s Next?
â–Ș 5. Questions
Resources
Documentation: wiki.developers.facebook.com
Help: forum.developers.facebook.com
James Leszczenski

 james@facebook.com

More Related Content

What's hot

Facebook Connect Tutorial
Facebook Connect TutorialFacebook Connect Tutorial
Facebook Connect TutorialPrateek Dayal
 
Building an interactive timeline from facebook photos
Building an interactive timeline from facebook photosBuilding an interactive timeline from facebook photos
Building an interactive timeline from facebook photosRakesh Rajan
 
SharePoint 2012 tips & tricks
SharePoint 2012 tips & tricksSharePoint 2012 tips & tricks
SharePoint 2012 tips & tricksNerea
 
Facebook + Ruby
Facebook + RubyFacebook + Ruby
Facebook + RubyAlex Koppel
 
Peepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebookPeepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebooksushilprajapati
 
SharePoint 2013 Site Administration Guide
SharePoint 2013 Site Administration GuideSharePoint 2013 Site Administration Guide
SharePoint 2013 Site Administration GuideLearning SharePoint
 
Joomla Explained - As Easy as 1, 2, 3
Joomla Explained - As Easy as 1, 2, 3Joomla Explained - As Easy as 1, 2, 3
Joomla Explained - As Easy as 1, 2, 3Rod Martin
 
So you want to build a Facebook app
So you want to build a Facebook appSo you want to build a Facebook app
So you want to build a Facebook appkamal.fariz
 
AIESEC CMS - Bug tracking
AIESEC CMS - Bug trackingAIESEC CMS - Bug tracking
AIESEC CMS - Bug trackingBogdan Rusu
 
KB Seminars: Growing an online portal; 05/13
KB Seminars: Growing an online portal; 05/13KB Seminars: Growing an online portal; 05/13
KB Seminars: Growing an online portal; 05/13MDIF
 
Oct. 4, 2011 webcast top 5 tips for building viral social web applications an...
Oct. 4, 2011 webcast top 5 tips for building viral social web applications an...Oct. 4, 2011 webcast top 5 tips for building viral social web applications an...
Oct. 4, 2011 webcast top 5 tips for building viral social web applications an...O'Reilly Media
 
Custom Template for Joomla! 3
Custom Template for Joomla! 3Custom Template for Joomla! 3
Custom Template for Joomla! 3Carly Willats
 
Facebook for charities
Facebook for charitiesFacebook for charities
Facebook for charitiesBen Clowney
 

What's hot (15)

Facebook Connect Tutorial
Facebook Connect TutorialFacebook Connect Tutorial
Facebook Connect Tutorial
 
Building an interactive timeline from facebook photos
Building an interactive timeline from facebook photosBuilding an interactive timeline from facebook photos
Building an interactive timeline from facebook photos
 
SharePoint 2012 tips & tricks
SharePoint 2012 tips & tricksSharePoint 2012 tips & tricks
SharePoint 2012 tips & tricks
 
Visual guide joomla15
Visual guide joomla15Visual guide joomla15
Visual guide joomla15
 
Facebook + Ruby
Facebook + RubyFacebook + Ruby
Facebook + Ruby
 
Peepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebookPeepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebook
 
SharePoint 2013 Site Administration Guide
SharePoint 2013 Site Administration GuideSharePoint 2013 Site Administration Guide
SharePoint 2013 Site Administration Guide
 
Joomla Explained - As Easy as 1, 2, 3
Joomla Explained - As Easy as 1, 2, 3Joomla Explained - As Easy as 1, 2, 3
Joomla Explained - As Easy as 1, 2, 3
 
Web2.0
Web2.0Web2.0
Web2.0
 
So you want to build a Facebook app
So you want to build a Facebook appSo you want to build a Facebook app
So you want to build a Facebook app
 
AIESEC CMS - Bug tracking
AIESEC CMS - Bug trackingAIESEC CMS - Bug tracking
AIESEC CMS - Bug tracking
 
KB Seminars: Growing an online portal; 05/13
KB Seminars: Growing an online portal; 05/13KB Seminars: Growing an online portal; 05/13
KB Seminars: Growing an online portal; 05/13
 
Oct. 4, 2011 webcast top 5 tips for building viral social web applications an...
Oct. 4, 2011 webcast top 5 tips for building viral social web applications an...Oct. 4, 2011 webcast top 5 tips for building viral social web applications an...
Oct. 4, 2011 webcast top 5 tips for building viral social web applications an...
 
Custom Template for Joomla! 3
Custom Template for Joomla! 3Custom Template for Joomla! 3
Custom Template for Joomla! 3
 
Facebook for charities
Facebook for charitiesFacebook for charities
Facebook for charities
 

Similar to Facebook Developer Garage Milan

Facebook Connect For Your ‹Website
Facebook Connect For Your ‹WebsiteFacebook Connect For Your ‹Website
Facebook Connect For Your ‹WebsiteOzkan Altuner
 
Facebook SSO.docx
Facebook SSO.docxFacebook SSO.docx
Facebook SSO.docxehathis
 
Introduction to facebook platform
Introduction to facebook platformIntroduction to facebook platform
Introduction to facebook platformVenkatesh Narayanan
 
Vishu Gupta - Facebook Developer Garage Bangalore
Vishu Gupta - Facebook Developer Garage BangaloreVishu Gupta - Facebook Developer Garage Bangalore
Vishu Gupta - Facebook Developer Garage BangaloreAbhishek Goyal
 
The social media developer
The social media developer The social media developer
The social media developer Thet Aung Min Latt
 
MozCon Seattle 2011 - Social Design
MozCon Seattle 2011 - Social DesignMozCon Seattle 2011 - Social Design
MozCon Seattle 2011 - Social DesignMat Clayton
 
Interactive with-facebook
Interactive with-facebookInteractive with-facebook
Interactive with-facebookTien Nguyen
 
Php day 2011 - Interactive-with-facebook
Php day 2011 - Interactive-with-facebookPhp day 2011 - Interactive-with-facebook
Php day 2011 - Interactive-with-facebookQuang Anh Le
 
Social Design - ProSEO
Social Design - ProSEOSocial Design - ProSEO
Social Design - ProSEOMat Clayton
 
Managing FACEBOOK for a business organization
Managing FACEBOOK for a business organizationManaging FACEBOOK for a business organization
Managing FACEBOOK for a business organizationPepovski Darko
 
Build social apps for Facebook
Build social apps for FacebookBuild social apps for Facebook
Build social apps for FacebookMohammad Emran Hasan
 
Optimizing WordPress sites for SEO and social media by Miriam Schwab
Optimizing WordPress sites for SEO and social media by Miriam SchwabOptimizing WordPress sites for SEO and social media by Miriam Schwab
Optimizing WordPress sites for SEO and social media by Miriam SchwabMiriam Schwab
 
Facebook Connect
Facebook ConnectFacebook Connect
Facebook ConnectPitra Satvika
 
WordPress + Facebook how to connect with friends
WordPress + Facebook how to connect with friendsWordPress + Facebook how to connect with friends
WordPress + Facebook how to connect with friendsRebecca Caroe
 
Facebook Connect Presentation 08 10 2008
Facebook Connect Presentation 08 10 2008Facebook Connect Presentation 08 10 2008
Facebook Connect Presentation 08 10 2008Karl Bunyan
 
Facebook Platform for Developers
Facebook Platform for DevelopersFacebook Platform for Developers
Facebook Platform for DevelopersLidan Hifi
 
Web 2 0 Search Engine Optimization Manual
Web 2 0 Search Engine Optimization ManualWeb 2 0 Search Engine Optimization Manual
Web 2 0 Search Engine Optimization Manualfemi adi
 

Similar to Facebook Developer Garage Milan (20)

Facebook Connect For Your ‹Website
Facebook Connect For Your ‹WebsiteFacebook Connect For Your ‹Website
Facebook Connect For Your ‹Website
 
Facebook SSO.docx
Facebook SSO.docxFacebook SSO.docx
Facebook SSO.docx
 
Introduction to facebook platform
Introduction to facebook platformIntroduction to facebook platform
Introduction to facebook platform
 
Vishu Gupta - Facebook Developer Garage Bangalore
Vishu Gupta - Facebook Developer Garage BangaloreVishu Gupta - Facebook Developer Garage Bangalore
Vishu Gupta - Facebook Developer Garage Bangalore
 
The social media developer
The social media developer The social media developer
The social media developer
 
MozCon Seattle 2011 - Social Design
MozCon Seattle 2011 - Social DesignMozCon Seattle 2011 - Social Design
MozCon Seattle 2011 - Social Design
 
Interactive with-facebook
Interactive with-facebookInteractive with-facebook
Interactive with-facebook
 
Php day 2011 - Interactive-with-facebook
Php day 2011 - Interactive-with-facebookPhp day 2011 - Interactive-with-facebook
Php day 2011 - Interactive-with-facebook
 
Social Design - ProSEO
Social Design - ProSEOSocial Design - ProSEO
Social Design - ProSEO
 
Managing FACEBOOK for a business organization
Managing FACEBOOK for a business organizationManaging FACEBOOK for a business organization
Managing FACEBOOK for a business organization
 
Build social apps for Facebook
Build social apps for FacebookBuild social apps for Facebook
Build social apps for Facebook
 
Optimizing WordPress sites for SEO and social media by Miriam Schwab
Optimizing WordPress sites for SEO and social media by Miriam SchwabOptimizing WordPress sites for SEO and social media by Miriam Schwab
Optimizing WordPress sites for SEO and social media by Miriam Schwab
 
Facebook Connect
Facebook ConnectFacebook Connect
Facebook Connect
 
WordPress + Facebook how to connect with friends
WordPress + Facebook how to connect with friendsWordPress + Facebook how to connect with friends
WordPress + Facebook how to connect with friends
 
Facebook Connect Presentation 08 10 2008
Facebook Connect Presentation 08 10 2008Facebook Connect Presentation 08 10 2008
Facebook Connect Presentation 08 10 2008
 
Assignmet on facebook
Assignmet on facebookAssignmet on facebook
Assignmet on facebook
 
Real World SharePoint Debacles
Real World SharePoint DebaclesReal World SharePoint Debacles
Real World SharePoint Debacles
 
Facebook Platform for Developers
Facebook Platform for DevelopersFacebook Platform for Developers
Facebook Platform for Developers
 
Advanced facebook seminar mountain home 2013
Advanced facebook seminar mountain home 2013Advanced facebook seminar mountain home 2013
Advanced facebook seminar mountain home 2013
 
Web 2 0 Search Engine Optimization Manual
Web 2 0 Search Engine Optimization ManualWeb 2 0 Search Engine Optimization Manual
Web 2 0 Search Engine Optimization Manual
 

Recently uploaded

AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)Samir Dash
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAnitaRaj43
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKJago de Vreede
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Christopher Logan Kennedy
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...apidays
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMKumar Satyam
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard37
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 

Recently uploaded (20)

AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUKSpring Boot vs Quarkus the ultimate battle - DevoxxUK
Spring Boot vs Quarkus the ultimate battle - DevoxxUK
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
Apidays New York 2024 - Accelerating FinTech Innovation by Vasa Krishnan, Fin...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Introduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDMIntroduction to use of FHIR Documents in ABDM
Introduction to use of FHIR Documents in ABDM
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 

Facebook Developer Garage Milan

  • 1. Developer Garage Milan Main Topic: Facebook Connect April 23, 2009
  • 2. James Leszczenski Software Engineer at Facebook james@facebook.com
  • 3. Agenda â–Ș 1. Our Mission â–Ș 2. Facebook Connect, An Overview â–Ș 3. Getting Started â–Ș 4. What’s Next? â–Ș 5. Questions
  • 4. Facebook’s Mission: Give people the power to share and make the world more open and connected
  • 5. Your Mission: Create opportunities for people to share and make the world more open and connected
  • 6. What are your goals? 1) Build Traffic 2) Create Deep Engagement 3) ProïŹt Wildly
  • 7. How can Facebook Connect help? 1) Build Traffic through social distribution 2) Create Deep Engagement with identity and social context 3) ProïŹt Wildly with more traffic and engagement
  • 8. Agenda â–Ș 1. Our Mission â–Ș 2. Facebook Connect, An Overview â–Ș 3. Getting Started â–Ș 4. What’s Next? â–Ș 5. Questions
  • 10. Engaging with a new site is difficult ‱ Decide to register ‱ Click “sign up” ‱ Decide on the basics: Which email will I use? The usual password? User name? ‱ Add extra info: Birthday Name etc
 ‱ Enter a CAPTCHA ‱ ConïŹrm ‱ Get sent to verify email page ‱ Wait ‱ Go back in your email, verify email ‱ Go back to browser ‱ And
 Think of the steps users need to go through to sign up & engage with your content. 
 the end result is a website with no social data, no customization, and no friends  10
  • 11. Facebook Connect Increase registration, engagement and traffic on your site. ‱ Share their identity and log in with 1 click ‱ Bring their friends to your site, increasing engagement ‱ Generate more traffic by distributing your content to Facebook’s 200 million users Identity & Login Friends Distribution Facebook Connect allows your visitors to: 11
  • 12. Facebook Connect makes it easy for your users ‱Decide to register ‱Click “Connect” ‱Done A Connected user brings all of their rich Facebook information and friends to your site in 1 click. 
 a website with your real-life identity, customized content and all your friends. 1. User’s real identity 12 2. Easy access to their friends and friend content
  • 13. Users share content back to Facebook Content from your site gets shared to Facebook. Traffic comes back to your site. 3. Content from your site is easily distributed on Facebook, sending traffic back to your site. 13
  • 14. Over 8,000 web sites have adopted Facebook Connect Connect is revolutionizing the web “It is an ingenious stab at solving several nagging problems at once. Web surfers like to socialize while they browse the internet, but many prefer to do so only with their friends rather than with perfect strangers.” - Dec 4, 2008 “Because Facebook Connect is not just a registration system, but also a marketing channel with a built-in audience of 130 million monthly active users, this program will crush competing registration systems.” - Nov 30, 2008 What sites are seeing: ‱ Registrations 30-100% ‱ User-generated content 15-60% ‱ Each story published to FB generates 0.5 to 2 clicks back to the publishing site “Supporters of this idea say such programs will help with the emergence of a new ‘social Web,’ because chatter among friends will inïŹltrate even sites that have been entirely unsociable thus far.” - Nov 30, 2008 14
  • 15. Agenda â–Ș 1. Our Mission â–Ș 2. Facebook Connect, An Overview â–Ș 3. Getting Started â–Ș 4. What’s Next? â–Ș 5. Questions
  • 17. Objectives â–Ș Main Objective: Integrate Facebook Connect into a web site â–Ș 1. Register a new application with Facebook. â–Ș 2. Detect the login status of a user. â–Ș 3. Use XFBML/API calls to show user information. â–Ș 4. Publish actions to the Stream/News Feed. â–Ș 5. More advanced features.
  • 18. Objectives â–Ș Main Objective: Integrate Facebook Connect into a web site â–Ș 1. Register a new application with Facebook. â–Ș 2. Detect the login status of a user. â–Ș 3. Use XFBML/API calls to show user information. â–Ș 4. Publish actions to the Stream/News Feed. â–Ș 5. More advanced features.
  • 19. Setting Up your Application â–Ș 1. Go to http://www.facebook.com/developers/ â–Ș 2. Click “Set Up New Application” â–Ș 3. Choose an Application Name, agree to Terms of Service, submit. â–Ș 4. Go to the ‘Connect’ tab and ïŹll in ‘Connect URL’ and ‘Base Domain’ â–Ș 5. Submit the form. You now have a new application!
  • 20. Setting Up your Application (2) â–Ș 1. Download a cross-domain receiver ïŹle â–Ș Ex. http://www.somethingtoputhere.com/xd_receiver.htm â–Ș 2. Upload xd_receiver.htm to your directory. â–Ș 3. Open up the web page for development. â–Ș 4. Change the <html> tag to: â–Ș <html xmlns:fb="http://www.facebook.com/2008/fbml">
  • 21. Setting Up your Application (3) â–Ș 5. Insert a few lines just before the </BODY> tag: <script type="text/javascript" src="http:// static.ak.connect.facebook.com/js/api_lib/v0.4/ FeatureLoader.js.php"></script> <script type="text/javascript"> FB.init("YOUR_API_KEY_HERE", "xd_receiver.htm"); </script> â–Ș 6. And save your ïŹle.
  • 22. Objectives â–Ș Main Objective: Integrate Facebook Connect into a web site â–Ș 1. Register a new application with Facebook. â–Ș 2. Detect the login status of a user. (Identity) â–Ș 3. Use XFBML/API calls to show user information. â–Ș 4. Publish actions to the Stream/News Feed. â–Ș 5. More advanced features
  • 23. Login Status â–Ș 1. Include a Facebook Connect login button: â–Ș <p> Click here to connect with Facebook: <fb:login-button onlogin="facebook_onlogin()"> </fb:login-button> </p> â–Ș 2. Side note: What is FBML/XFBML?
  • 24. Login Status (2) â–Ș 2. Create the facebook_onlogin() function in JavaScript: <script> function facebook_onlogin() { alert(FB.Connect.get_loggedInUser()); } </script>
  • 25. Login Status (3) â–Ș 3. Simpler: Detecting status upon page load: <script type="text/javascript"> FB.init("YOUR_API_KEY_HERE", "xd_receiver.htm", {"ifUserConnected" : facebook_onlogin} ); </script>
  • 26. Objectives â–Ș Main Objective: Integrate Facebook Connect into a web site â–Ș 1. Register a new application with Facebook. â–Ș 2. Detect the login status of a user. (Identity) â–Ș 3. Use XFBML/API calls to show user information. (Friends) â–Ș 4. Publish actions to the Stream/News Feed. â–Ș 5. More advanced features.
  • 27. XFBML â–Ș 1. Insert XFBML with facebook_onlogin(): function facebook_onlogin() { fbuid = FB.Facebook.apiClient.get_session().uid; us = document.getElementById('user_section'); us.innerHTML = ‘<fb:profile-pic uid="’+fbuid+’">’ + ‘</fb:profile-pic>’ + ‘<fb:name uid="loggedinuser"></fb:name>’ + ‘has connected with Facebook.’ + ’<br/>’ + ’To log out: <a href="#" onclick="FB.Connect.logout(facebook_onlogout)">Click here</a>'; FB.XFBML.Host.parseDomTree(); // Finds all XFBML tags and re-renders HTML }
  • 28. XFBML (2) â–Ș 2. What to do when the user logs out: function facebook_onlogout() { us = document.getElementById('user_section'); // Reset back to the default state us.innerHTML = 'To log in with Facebook: <fb:login-button onlogin="facebook_onlogin()"></fb:login-button>'; FB.XFBML.Host.parseDomTree(); }
  • 29. Objectives â–Ș Main Objective: Integrate Facebook Connect into a web site â–Ș 1. Register a new application with Facebook. â–Ș 2. Detect the login status of a user. (Identity) â–Ș 3. Use XFBML/API calls to show user information. (Friends) â–Ș 4. Publish actions to the Stream/News Feed. (Distribution) â–Ș 5. More advanced features.
  • 30. Feed Forms ‱ User-editable comment ïŹeld ‱ Comment can be pre- ïŹlled by application with user content ‱ User comment will be returned to application
  • 31. Feed Forms (2) ‱ 1. Go to http://developers.facebook.com/ ‱ 2. Click Tools in the top navigation. ‱ 3. Click the Feed Template Console tab. ‱ 4. Choose your new application from the list and click Next. ‱ 5. Fill out a One Line Template + Short Story Template Title. ‱ e.g. “{*actor*} reviewed a restaurant on Citysearch.” ‱ 6. Submit your template, and get a template ID.
  • 32. Feed Forms (3) // Initialize feed form data var body_general = null; var user_message_prompt = "How was the restaurant?"; var user_message = {value: "The restaurant was..."}; FB.ensureInit(function() { // Show the feed form to the user FB.Connect.showFeedDialog(<?=FEED_FORM_ID?>, template_data, null, body_general, null, FB.RequireConnect.require, FB.RequireConnect.promptConnect, user_message_prompt, user_message); });
  • 33. Objectives â–Ș Main Objective: Integrate Facebook Connect into a web site â–Ș 1. Register a new application with Facebook. â–Ș 2. Detect the login status of a user. (Identity) â–Ș 3. Use XFBML/API calls to show user information. (Friends) â–Ș 4. Publish actions to the Stream/News Feed. (Distribution) â–Ș 5. More advanced features.
  • 34. Objectives â–Ș Main Objective: Integrate Facebook Connect into a web site â–Ș 1. Register a new application with Facebook. â–Ș 2. Detect the login status of a user. (Identity) â–Ș 3. Use XFBML/API calls to show user information. (Friends) â–Ș 4. Publish actions to the Stream/News Feed. (Distribution) â–Ș 5. More advanced features. â–Ș Integration points on facebook.com â–Ș Add server-side logic â–Ș Anything that Facebook Platform can do.
  • 35. Agenda â–Ș 1. Our Mission â–Ș 2. Facebook Connect, An Overview â–Ș 3. Getting Started â–Ș 4. What’s Next? â–Ș 5. Questions
  • 36. What’s Next? 1) Integrate Check out our video tutorials: wiki.developers.facebook.com 2) Innovate 3) Iterate and Grow <fb:comments>, <fb:intl>
  • 37. Agenda â–Ș 1. Our Mission â–Ș 2. Facebook Connect, An Overview â–Ș 3. Getting Started â–Ș 4. What’s Next? â–Ș 5. Questions

Editor's Notes

  1. Facebook&#x2019;s mission is to give people the power to share themselves and make the world more open and transparent. What we all do &#x2013; our engineers at Facebook and developers on Platform &#x2013; is we give people tools, and the power, to share themselves and communicate in different ways. What we have found is that the most important information in the world is inside people. It&#x2019;s how they&#x2019;re thinking, how they&#x2019;re feeling, how they relate to the people around them. And that information isn&#x2019;t accessible in the world. It&#x2019;s not out there available to be indexed. It&#x2019;s only accessible if people choose to share it themselves and have the tools to do so, and that&#x2019;s what we&#x2019;re building. The first version of the web was about putting all the information that existed offline now online. The next version will be about understanding that the web isn&#x2019;t about sharing information, it&#x2019;s about people sharing themselves. The full potential of the web is gives power back to the people so that everyone has a voice and can share what is important to them. When that happens, more information will be available because people had control and chose to share it. The world will be a more transparent place, and this transparency will help us understand each other. It will help us see the good and the bad that we do and help us give each other more feedback to do more good. As the world gets more and more complex, transparency and sharing are key to the world being in harmony. And that&#x2019;s what we&#x2019;re all doing &#x2013; we&#x2019;re giving people the power to the share themselves and create this world. This isn&#x2019;t one organization&#x2019;s mission. Making the world more transparent and bringing people together is more than any one organization can do. This is what we&#x2019;re all doing, and we&#x2019;re doing it together.
  2. Facebook&#x2019;s mission is to give people the power to share themselves and make the world more open and transparent. What we all do &#x2013; our engineers at Facebook and developers on Platform &#x2013; is we give people tools, and the power, to share themselves and communicate in different ways. What we have found is that the most important information in the world is inside people. It&#x2019;s how they&#x2019;re thinking, how they&#x2019;re feeling, how they relate to the people around them. And that information isn&#x2019;t accessible in the world. It&#x2019;s not out there available to be indexed. It&#x2019;s only accessible if people choose to share it themselves and have the tools to do so, and that&#x2019;s what we&#x2019;re building. The first version of the web was about putting all the information that existed offline now online. The next version will be about understanding that the web isn&#x2019;t about sharing information, it&#x2019;s about people sharing themselves. The full potential of the web is gives power back to the people so that everyone has a voice and can share what is important to them. When that happens, more information will be available because people had control and chose to share it. The world will be a more transparent place, and this transparency will help us understand each other. It will help us see the good and the bad that we do and help us give each other more feedback to do more good. As the world gets more and more complex, transparency and sharing are key to the world being in harmony. And that&#x2019;s what we&#x2019;re all doing &#x2013; we&#x2019;re giving people the power to the share themselves and create this world. This isn&#x2019;t one organization&#x2019;s mission. Making the world more transparent and bringing people together is more than any one organization can do. This is what we&#x2019;re all doing, and we&#x2019;re doing it together.
  3. 1) integrate- that&#x2019;s why you&#x2019;re here today. 2) Innovate- Integration is just a matter of syntax and technology. Truly revolutionary products have a vision. The most humbling part of my job... 3) Iterate-