SlideShare una empresa de Scribd logo
1 de 41
Descargar para leer sin conexión
Facebook Developer Garage
         Kampala
           Charlie Cheever
    Platform Engineering, Facebook
Review: A Web App
    pretty simple
A Facebook App - What do you Get?

•   Authentication for free. Less code for you to write, less work for
    users to login, a realer concept of identity

•   Data about the people who use your app

    •   names, profile pictures, interests, favorite books, favorite movies

    •   ... and friends

•   Messaging (notifications, requests) -> Distribution

•   Convenient widgets. Friend selector, mp3 player, etc.

•   You can show ads on your application and keep all those revenues
Some Examples of What’s Being
Done with the Facebook Platform
TechCrunch
(technology blog)
TechCrunch
TechCrunch
iLike
(social music)
Flixster
(social movies)
Prolific
(games!)
Facebook Platform Technology



•   API


• FBML
Facebook API
•   Read data from Facebook

    •   about users, ex. names, profile pictures, favorite books,
        favorite movies, etc.

    •   other data like photos, groups, events, etc.

    •   almost all the data that’s available on Facebook

•   Messaging - sending e-mails to users, sending Facebook
    requests, sending Facebook notifications

•   Publishing news feed stories
FBML
•   Basically HTML with a few extras

•   Sanitary - Safe for Facebook to display anywhere

•   Makes it easy to efficiently embed social data

•   Provides convenient widgets like friend
    selectors
How Facebook Apps Work

• Facebook Connect Applications
• FBML Canvas Applications
• IFrame Canvas Applications

• Big Question: How do we efficiently involve
  a third party when a user loads a webpage?
FBML Canvas Apps
FBML Canvas Apps
IFrame Canvas Apps
IFrame Canvas Apps
     Using XFBML
IFrame Canvas Apps
Facebook Connect Apps

                               1. initial request from user


                                                                                              Your Server
 User
                                4. regular response from your server


                                             2. server-side API call to Facebook (optional)



                                           5. JS API Call to Facebook




                                                                                              3. server-side API response (optional)

        6. JS API response from Facebook
                                                            Facebook
Facebook Connect Apps
Getting Your Feet Wet
             Some Simple Examples



•   http://apps.facebook.com/devgaragekampala/

•   A Facebook app that I’ve set up that will let
    you test out snippets of code and get some
    experience with the API and FBML
Examples
•   http://apps.facebook.com/devgaragekampala/

• Hello, Uganda!
• Hello, Mark Zuckerberg
• Hello friends!
• Pick a friend
• Someone Else’s Code
Setting Up A Real App


• We’ll use a free hosting service called
  AppJet in this example but you can use any
  kind of hosting.
• AppJet is a free, web-based hosting service
• Great for prototyping websites with Javascript
• Has built-in Facebook support
Your    Preview
program
First
Program
Remember
this name.
Now
we have
 a real
website
http://www.facebook.com/developers
Remember this Canvas URL
Congratulations!
              You now have a Facebook application.




Write these
keys down
Add the following to your app.




    import(quot;facebookquot;);
    fb.init();
    print(quot;Hello Kampala!quot;);
Type in your Canvas url




  Paste in your API Key
       and Secret
Clicking
  Publish will
   take your
application live
Web Resources
•   FB Developers Wiki: http://wiki.developers.facebook.com/

•   API Test Console: http://developers.facebook.com/tools.php?api

•   FBML Test Console: http://developers.facebook.com/tools.php?fbml

•   AppJet (free, easy hosting): http://www.appjet.com/

•   FB Developer App (for setting up an app): http://www.facebook.com/
    developers/

•   Facebook Developer Site: http://developers.facebook.com/
Questions?

charlie@facebook.com

Más contenido relacionado

La actualidad más candente

Building resuable and customizable Vue components
Building resuable and customizable Vue componentsBuilding resuable and customizable Vue components
Building resuable and customizable Vue componentsFilip Rakowski
 
Mastering Mobile SEO for Your Website and Native App Content
Mastering Mobile SEO for Your Website and Native App ContentMastering Mobile SEO for Your Website and Native App Content
Mastering Mobile SEO for Your Website and Native App ContentBranch
 
Google AMP (Accelerated Mobile Pages)
Google AMP (Accelerated Mobile Pages)Google AMP (Accelerated Mobile Pages)
Google AMP (Accelerated Mobile Pages)Chitpong Wuttanan
 
What is FED
What is FEDWhat is FED
What is FEDSam Lee
 
Vue storefront London PWA meetup
Vue storefront London PWA meetupVue storefront London PWA meetup
Vue storefront London PWA meetupFilip Rakowski
 
Google's AMP project for web users
Google's AMP project for web usersGoogle's AMP project for web users
Google's AMP project for web usersPeter Knight
 
Instagram photos in your tablet photo frame [Solved]
Instagram photos in your tablet photo frame [Solved]Instagram photos in your tablet photo frame [Solved]
Instagram photos in your tablet photo frame [Solved]BEN LLEWELLYN
 
PhoneGap Session at Multi-Mania.be 2013
PhoneGap Session at Multi-Mania.be 2013PhoneGap Session at Multi-Mania.be 2013
PhoneGap Session at Multi-Mania.be 2013Mihai Corlan
 
Website Design Dos and Don’ts for a Successful Online Presence
Website Design Dos and Don’ts  for a Successful Online PresenceWebsite Design Dos and Don’ts  for a Successful Online Presence
Website Design Dos and Don’ts for a Successful Online PresenceBrad Williams
 
Navi-Mumbai/Mumbai Salesforce Developer user group Inaugural meetup
Navi-Mumbai/Mumbai Salesforce Developer user group Inaugural meetupNavi-Mumbai/Mumbai Salesforce Developer user group Inaugural meetup
Navi-Mumbai/Mumbai Salesforce Developer user group Inaugural meetupRakesh Gupta
 
Introduction to Adobe Brackets
Introduction to Adobe BracketsIntroduction to Adobe Brackets
Introduction to Adobe BracketsMihai Corlan
 
Shiny Agency's Facebook Development Guidelines
Shiny Agency's Facebook Development GuidelinesShiny Agency's Facebook Development Guidelines
Shiny Agency's Facebook Development GuidelinesRoy Pereira
 
Why Deep Linking is the Next Big Thing: App Indexing - SMX East 2015
Why Deep Linking is the Next Big Thing: App Indexing - SMX East 2015Why Deep Linking is the Next Big Thing: App Indexing - SMX East 2015
Why Deep Linking is the Next Big Thing: App Indexing - SMX East 2015Suzzicks
 
Wordpress to Facebook and Back Again
Wordpress to Facebook and Back AgainWordpress to Facebook and Back Again
Wordpress to Facebook and Back AgainJohn Eckman
 
WordPress SEO in 2014 - WordCamp Baltimore 2014
WordPress SEO in 2014 - WordCamp Baltimore 2014WordPress SEO in 2014 - WordCamp Baltimore 2014
WordPress SEO in 2014 - WordCamp Baltimore 2014Arsham Mirshah
 
Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)Future Insights
 
WordPress SEO & Optimisation
WordPress SEO & OptimisationWordPress SEO & Optimisation
WordPress SEO & OptimisationJoost de Valk
 

La actualidad más candente (20)

Building resuable and customizable Vue components
Building resuable and customizable Vue componentsBuilding resuable and customizable Vue components
Building resuable and customizable Vue components
 
Mastering Mobile SEO for Your Website and Native App Content
Mastering Mobile SEO for Your Website and Native App ContentMastering Mobile SEO for Your Website and Native App Content
Mastering Mobile SEO for Your Website and Native App Content
 
RupyTuesday - Facebook
RupyTuesday - FacebookRupyTuesday - Facebook
RupyTuesday - Facebook
 
PhoneGap/Cordova
PhoneGap/CordovaPhoneGap/Cordova
PhoneGap/Cordova
 
Google AMP (Accelerated Mobile Pages)
Google AMP (Accelerated Mobile Pages)Google AMP (Accelerated Mobile Pages)
Google AMP (Accelerated Mobile Pages)
 
What is FED
What is FEDWhat is FED
What is FED
 
Vue storefront London PWA meetup
Vue storefront London PWA meetupVue storefront London PWA meetup
Vue storefront London PWA meetup
 
Google's AMP project for web users
Google's AMP project for web usersGoogle's AMP project for web users
Google's AMP project for web users
 
Instagram photos in your tablet photo frame [Solved]
Instagram photos in your tablet photo frame [Solved]Instagram photos in your tablet photo frame [Solved]
Instagram photos in your tablet photo frame [Solved]
 
PhoneGap Session at Multi-Mania.be 2013
PhoneGap Session at Multi-Mania.be 2013PhoneGap Session at Multi-Mania.be 2013
PhoneGap Session at Multi-Mania.be 2013
 
Website Design Dos and Don’ts for a Successful Online Presence
Website Design Dos and Don’ts  for a Successful Online PresenceWebsite Design Dos and Don’ts  for a Successful Online Presence
Website Design Dos and Don’ts for a Successful Online Presence
 
Navi-Mumbai/Mumbai Salesforce Developer user group Inaugural meetup
Navi-Mumbai/Mumbai Salesforce Developer user group Inaugural meetupNavi-Mumbai/Mumbai Salesforce Developer user group Inaugural meetup
Navi-Mumbai/Mumbai Salesforce Developer user group Inaugural meetup
 
Introduction to Adobe Brackets
Introduction to Adobe BracketsIntroduction to Adobe Brackets
Introduction to Adobe Brackets
 
Shiny Agency's Facebook Development Guidelines
Shiny Agency's Facebook Development GuidelinesShiny Agency's Facebook Development Guidelines
Shiny Agency's Facebook Development Guidelines
 
Why Deep Linking is the Next Big Thing: App Indexing - SMX East 2015
Why Deep Linking is the Next Big Thing: App Indexing - SMX East 2015Why Deep Linking is the Next Big Thing: App Indexing - SMX East 2015
Why Deep Linking is the Next Big Thing: App Indexing - SMX East 2015
 
Wordpress to Facebook and Back Again
Wordpress to Facebook and Back AgainWordpress to Facebook and Back Again
Wordpress to Facebook and Back Again
 
WordPress SEO in 2014 - WordCamp Baltimore 2014
WordPress SEO in 2014 - WordCamp Baltimore 2014WordPress SEO in 2014 - WordCamp Baltimore 2014
WordPress SEO in 2014 - WordCamp Baltimore 2014
 
Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)Optimizing for Change (Henrik Joreteg)
Optimizing for Change (Henrik Joreteg)
 
Introduction to Facebook Platform by Andres Granda
Introduction to Facebook Platform by Andres GrandaIntroduction to Facebook Platform by Andres Granda
Introduction to Facebook Platform by Andres Granda
 
WordPress SEO & Optimisation
WordPress SEO & OptimisationWordPress SEO & Optimisation
WordPress SEO & Optimisation
 

Destacado

Staying Lean with Amazon Web Services
Staying Lean with Amazon Web ServicesStaying Lean with Amazon Web Services
Staying Lean with Amazon Web ServicesAmazon Web Services
 
Day In The Life Of A2 Z Oc
Day In The Life Of A2 Z OcDay In The Life Of A2 Z Oc
Day In The Life Of A2 Z Ocjamescsmith
 
Verteilte Versionskontrolle mit Git
Verteilte Versionskontrolle mit GitVerteilte Versionskontrolle mit Git
Verteilte Versionskontrolle mit GitDevDay Dresden
 
Senior Systems Engineering ( Microsoft) .
Senior Systems Engineering ( Microsoft) .Senior Systems Engineering ( Microsoft) .
Senior Systems Engineering ( Microsoft) .chalikars
 
Emergent Energy Futures
Emergent Energy FuturesEmergent Energy Futures
Emergent Energy Futuresjames_hamilton
 
Getting Started with Microsoft Office 365
Getting Started with Microsoft Office 365Getting Started with Microsoft Office 365
Getting Started with Microsoft Office 365Abhishek Kant
 
Rakuten and Microsoft talk DevOps in Real World
Rakuten and Microsoft talk DevOps in Real WorldRakuten and Microsoft talk DevOps in Real World
Rakuten and Microsoft talk DevOps in Real WorldTsuyoshi Ushio
 
Software Language Design & Engineering: Mobl & Spoofax
Software Language Design & Engineering: Mobl & SpoofaxSoftware Language Design & Engineering: Mobl & Spoofax
Software Language Design & Engineering: Mobl & SpoofaxEelco Visser
 
Transforming Software Development
Transforming Software Development Transforming Software Development
Transforming Software Development Amazon Web Services
 
#win8acad : Tiles and notifications
#win8acad : Tiles and notifications#win8acad : Tiles and notifications
#win8acad : Tiles and notificationsFrederik De Bruyne
 
Rethinking The Business Benefits of The Cloud
Rethinking The Business Benefits of The CloudRethinking The Business Benefits of The Cloud
Rethinking The Business Benefits of The CloudMicrosoft Azure
 
Empirical Software Engineering at Microsoft Research
Empirical Software Engineering at Microsoft ResearchEmpirical Software Engineering at Microsoft Research
Empirical Software Engineering at Microsoft ResearchThomas Zimmermann
 
Can we induce change with what we measure?
Can we induce change with what we measure?Can we induce change with what we measure?
Can we induce change with what we measure?Michaela Greiler
 
Feedback on AWS re:invent 2016
Feedback on AWS re:invent 2016Feedback on AWS re:invent 2016
Feedback on AWS re:invent 2016Laurent Bernaille
 
DevDay 2016: Dave Farley - Acceptance testing for continuous delivery
DevDay 2016: Dave Farley - Acceptance testing for continuous deliveryDevDay 2016: Dave Farley - Acceptance testing for continuous delivery
DevDay 2016: Dave Farley - Acceptance testing for continuous deliveryDevDay Dresden
 
DevDay 2016: Dave Farley - The Rationale for Continuous Delivery
DevDay 2016: Dave Farley - The Rationale for Continuous DeliveryDevDay 2016: Dave Farley - The Rationale for Continuous Delivery
DevDay 2016: Dave Farley - The Rationale for Continuous DeliveryDevDay Dresden
 
It transformation - DevOps Day - 02/02/2017
It transformation - DevOps Day - 02/02/2017It transformation - DevOps Day - 02/02/2017
It transformation - DevOps Day - 02/02/2017Clara Feuillet
 
DevDay 2016: Artur Speth - DevOps - Microsoft Developer Divisions Weg ins näc...
DevDay 2016: Artur Speth - DevOps - Microsoft Developer Divisions Weg ins näc...DevDay 2016: Artur Speth - DevOps - Microsoft Developer Divisions Weg ins näc...
DevDay 2016: Artur Speth - DevOps - Microsoft Developer Divisions Weg ins näc...DevDay Dresden
 

Destacado (20)

Staying Lean with Amazon Web Services
Staying Lean with Amazon Web ServicesStaying Lean with Amazon Web Services
Staying Lean with Amazon Web Services
 
Day In The Life Of A2 Z Oc
Day In The Life Of A2 Z OcDay In The Life Of A2 Z Oc
Day In The Life Of A2 Z Oc
 
Verteilte Versionskontrolle mit Git
Verteilte Versionskontrolle mit GitVerteilte Versionskontrolle mit Git
Verteilte Versionskontrolle mit Git
 
Senior Systems Engineering ( Microsoft) .
Senior Systems Engineering ( Microsoft) .Senior Systems Engineering ( Microsoft) .
Senior Systems Engineering ( Microsoft) .
 
Emergent Energy Futures
Emergent Energy FuturesEmergent Energy Futures
Emergent Energy Futures
 
Getting Started with Microsoft Office 365
Getting Started with Microsoft Office 365Getting Started with Microsoft Office 365
Getting Started with Microsoft Office 365
 
[Jun AWS 101] Running Lean on AWS
[Jun AWS 101] Running Lean on AWS[Jun AWS 101] Running Lean on AWS
[Jun AWS 101] Running Lean on AWS
 
Rakuten and Microsoft talk DevOps in Real World
Rakuten and Microsoft talk DevOps in Real WorldRakuten and Microsoft talk DevOps in Real World
Rakuten and Microsoft talk DevOps in Real World
 
Software Language Design & Engineering: Mobl & Spoofax
Software Language Design & Engineering: Mobl & SpoofaxSoftware Language Design & Engineering: Mobl & Spoofax
Software Language Design & Engineering: Mobl & Spoofax
 
Transforming Software Development
Transforming Software Development Transforming Software Development
Transforming Software Development
 
#win8acad : Tiles and notifications
#win8acad : Tiles and notifications#win8acad : Tiles and notifications
#win8acad : Tiles and notifications
 
Chowdhury webtech
Chowdhury webtechChowdhury webtech
Chowdhury webtech
 
Rethinking The Business Benefits of The Cloud
Rethinking The Business Benefits of The CloudRethinking The Business Benefits of The Cloud
Rethinking The Business Benefits of The Cloud
 
Empirical Software Engineering at Microsoft Research
Empirical Software Engineering at Microsoft ResearchEmpirical Software Engineering at Microsoft Research
Empirical Software Engineering at Microsoft Research
 
Can we induce change with what we measure?
Can we induce change with what we measure?Can we induce change with what we measure?
Can we induce change with what we measure?
 
Feedback on AWS re:invent 2016
Feedback on AWS re:invent 2016Feedback on AWS re:invent 2016
Feedback on AWS re:invent 2016
 
DevDay 2016: Dave Farley - Acceptance testing for continuous delivery
DevDay 2016: Dave Farley - Acceptance testing for continuous deliveryDevDay 2016: Dave Farley - Acceptance testing for continuous delivery
DevDay 2016: Dave Farley - Acceptance testing for continuous delivery
 
DevDay 2016: Dave Farley - The Rationale for Continuous Delivery
DevDay 2016: Dave Farley - The Rationale for Continuous DeliveryDevDay 2016: Dave Farley - The Rationale for Continuous Delivery
DevDay 2016: Dave Farley - The Rationale for Continuous Delivery
 
It transformation - DevOps Day - 02/02/2017
It transformation - DevOps Day - 02/02/2017It transformation - DevOps Day - 02/02/2017
It transformation - DevOps Day - 02/02/2017
 
DevDay 2016: Artur Speth - DevOps - Microsoft Developer Divisions Weg ins näc...
DevDay 2016: Artur Speth - DevOps - Microsoft Developer Divisions Weg ins näc...DevDay 2016: Artur Speth - DevOps - Microsoft Developer Divisions Weg ins näc...
DevDay 2016: Artur Speth - DevOps - Microsoft Developer Divisions Weg ins näc...
 

Similar a Charlie Cheever Facebook Developer Garage Uganda

Facebook Developer Garage Cyberjaya
Facebook Developer Garage CyberjayaFacebook Developer Garage Cyberjaya
Facebook Developer Garage CyberjayaMehedi Hasan Sumon
 
Firefox OS Talk - Web Applications and FirefoxOS Marketplace
Firefox OS Talk - Web Applications and FirefoxOS MarketplaceFirefox OS Talk - Web Applications and FirefoxOS Marketplace
Firefox OS Talk - Web Applications and FirefoxOS MarketplaceJorge Ferreiro
 
funP 麻吉 開發者俱樂部十月份聚會
funP 麻吉 開發者俱樂部十月份聚會funP 麻吉 開發者俱樂部十月份聚會
funP 麻吉 開發者俱樂部十月份聚會Nathan Chiu
 
Gig Monkey at Facebook Garage Ireland 2
Gig Monkey at Facebook Garage Ireland 2Gig Monkey at Facebook Garage Ireland 2
Gig Monkey at Facebook Garage Ireland 2Web2 Ireland
 
Webapps: introduction and publishing on Firefox OS
Webapps: introduction and publishing on Firefox OSWebapps: introduction and publishing on Firefox OS
Webapps: introduction and publishing on Firefox OSJorge Ferreiro
 
Facebook Apps Vs Google Open Social
Facebook Apps Vs Google Open SocialFacebook Apps Vs Google Open Social
Facebook Apps Vs Google Open SocialRachel Vacek
 
Connect with Facebook to Rails Application By Nyros Developer
Connect with Facebook to Rails Application By Nyros DeveloperConnect with Facebook to Rails Application By Nyros Developer
Connect with Facebook to Rails Application By Nyros DeveloperNyros Technologies
 
Peepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebookPeepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebooksushilprajapati
 
Facebook 3rd Party Api
Facebook 3rd Party ApiFacebook 3rd Party Api
Facebook 3rd Party ApiYoss Cohen
 
Google App Engine and Social Apps
Google App Engine and Social AppsGoogle App Engine and Social Apps
Google App Engine and Social AppsChris Schalk
 
Leynard quizon work portfolio (2012 to 2014)
Leynard quizon work portfolio (2012 to 2014)Leynard quizon work portfolio (2012 to 2014)
Leynard quizon work portfolio (2012 to 2014)Leynard Quizon
 
Working with Web 2.0 APIs (or, maybe just defining)
Working with Web 2.0 APIs (or, maybe just defining)Working with Web 2.0 APIs (or, maybe just defining)
Working with Web 2.0 APIs (or, maybe just defining)Bridget S
 
PhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe CampPhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe CampMihai Corlan
 
Facebook app development
Facebook app developmentFacebook app development
Facebook app developmentJohn Boudreaux
 

Similar a Charlie Cheever Facebook Developer Garage Uganda (20)

Facebook Developer Garage Cyberjaya
Facebook Developer Garage CyberjayaFacebook Developer Garage Cyberjaya
Facebook Developer Garage Cyberjaya
 
Firefox OS Talk - Web Applications and FirefoxOS Marketplace
Firefox OS Talk - Web Applications and FirefoxOS MarketplaceFirefox OS Talk - Web Applications and FirefoxOS Marketplace
Firefox OS Talk - Web Applications and FirefoxOS Marketplace
 
Creating a Facebook App
Creating a Facebook AppCreating a Facebook App
Creating a Facebook App
 
funP 麻吉 開發者俱樂部十月份聚會
funP 麻吉 開發者俱樂部十月份聚會funP 麻吉 開發者俱樂部十月份聚會
funP 麻吉 開發者俱樂部十月份聚會
 
Gig Monkey at Facebook Garage Ireland 2
Gig Monkey at Facebook Garage Ireland 2Gig Monkey at Facebook Garage Ireland 2
Gig Monkey at Facebook Garage Ireland 2
 
Webapi
WebapiWebapi
Webapi
 
Facebook Coin
Facebook CoinFacebook Coin
Facebook Coin
 
Webapps: introduction and publishing on Firefox OS
Webapps: introduction and publishing on Firefox OSWebapps: introduction and publishing on Firefox OS
Webapps: introduction and publishing on Firefox OS
 
Facebook Apps Vs Google Open Social
Facebook Apps Vs Google Open SocialFacebook Apps Vs Google Open Social
Facebook Apps Vs Google Open Social
 
Connect with Facebook to Rails Application By Nyros Developer
Connect with Facebook to Rails Application By Nyros DeveloperConnect with Facebook to Rails Application By Nyros Developer
Connect with Facebook to Rails Application By Nyros Developer
 
Peepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebookPeepcode facebook-2-rails on facebook
Peepcode facebook-2-rails on facebook
 
Facebook 3rd Party Api
Facebook 3rd Party ApiFacebook 3rd Party Api
Facebook 3rd Party Api
 
Google App Engine and Social Apps
Google App Engine and Social AppsGoogle App Engine and Social Apps
Google App Engine and Social Apps
 
Leynard quizon work portfolio (2012 to 2014)
Leynard quizon work portfolio (2012 to 2014)Leynard quizon work portfolio (2012 to 2014)
Leynard quizon work portfolio (2012 to 2014)
 
Working with Web 2.0 APIs (or, maybe just defining)
Working with Web 2.0 APIs (or, maybe just defining)Working with Web 2.0 APIs (or, maybe just defining)
Working with Web 2.0 APIs (or, maybe just defining)
 
PhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe CampPhoneGap/PhoneGap Build - Amsterdam Adobe Camp
PhoneGap/PhoneGap Build - Amsterdam Adobe Camp
 
Facebook Coin
Facebook CoinFacebook Coin
Facebook Coin
 
Facebook_Coin
Facebook_CoinFacebook_Coin
Facebook_Coin
 
Facebook Coin
Facebook CoinFacebook Coin
Facebook Coin
 
Facebook app development
Facebook app developmentFacebook app development
Facebook app development
 

Más de Leila Janah

Impact Sourcing: Connecting the World's Poor to Economic Opportunity
Impact Sourcing: Connecting the World's Poor to Economic OpportunityImpact Sourcing: Connecting the World's Poor to Economic Opportunity
Impact Sourcing: Connecting the World's Poor to Economic OpportunityLeila Janah
 
Samasource 2011 Annual Report
Samasource 2011 Annual ReportSamasource 2011 Annual Report
Samasource 2011 Annual ReportLeila Janah
 
Samasource Q4 2012 Impact Report
Samasource Q4 2012 Impact ReportSamasource Q4 2012 Impact Report
Samasource Q4 2012 Impact ReportLeila Janah
 
Making the Case for Impact Sourcing - Samasource
Making the Case for Impact Sourcing - SamasourceMaking the Case for Impact Sourcing - Samasource
Making the Case for Impact Sourcing - SamasourceLeila Janah
 
Samasource women 26_apr2010
Samasource women 26_apr2010Samasource women 26_apr2010
Samasource women 26_apr2010Leila Janah
 
Google Mission4636 16 Mar2010 Leila
Google Mission4636 16 Mar2010 LeilaGoogle Mission4636 16 Mar2010 Leila
Google Mission4636 16 Mar2010 LeilaLeila Janah
 
New Samasource Overview
New Samasource OverviewNew Samasource Overview
New Samasource OverviewLeila Janah
 
SRO at Asia-Pacific Outsourcing Summit
SRO at Asia-Pacific Outsourcing SummitSRO at Asia-Pacific Outsourcing Summit
SRO at Asia-Pacific Outsourcing SummitLeila Janah
 
Nonprofit Technology Conference: Empowering the Poor Through Remote Work
Nonprofit Technology Conference: Empowering the Poor Through Remote WorkNonprofit Technology Conference: Empowering the Poor Through Remote Work
Nonprofit Technology Conference: Empowering the Poor Through Remote WorkLeila Janah
 
Samasource: A New Model for Empowering the Poor
Samasource: A New Model for Empowering the PoorSamasource: A New Model for Empowering the Poor
Samasource: A New Model for Empowering the PoorLeila Janah
 
Facebook Developer Garage Uganda
Facebook Developer Garage UgandaFacebook Developer Garage Uganda
Facebook Developer Garage UgandaLeila Janah
 
Case Studies in Socially Responsible Outsourcing
Case Studies in Socially Responsible OutsourcingCase Studies in Socially Responsible Outsourcing
Case Studies in Socially Responsible OutsourcingLeila Janah
 
Facebook Developer Garage Uganda
Facebook Developer Garage UgandaFacebook Developer Garage Uganda
Facebook Developer Garage UgandaLeila Janah
 
Groups On Facebook
Groups On FacebookGroups On Facebook
Groups On FacebookLeila Janah
 
Guiding Principles For Socially Responsible Outsourcing v1.0
Guiding Principles For Socially Responsible Outsourcing v1.0Guiding Principles For Socially Responsible Outsourcing v1.0
Guiding Principles For Socially Responsible Outsourcing v1.0Leila Janah
 
Socially Responsible Outsourcing 101
Socially Responsible Outsourcing 101Socially Responsible Outsourcing 101
Socially Responsible Outsourcing 101Leila Janah
 

Más de Leila Janah (17)

Impact Sourcing: Connecting the World's Poor to Economic Opportunity
Impact Sourcing: Connecting the World's Poor to Economic OpportunityImpact Sourcing: Connecting the World's Poor to Economic Opportunity
Impact Sourcing: Connecting the World's Poor to Economic Opportunity
 
Samasource 2011 Annual Report
Samasource 2011 Annual ReportSamasource 2011 Annual Report
Samasource 2011 Annual Report
 
Samasource Q4 2012 Impact Report
Samasource Q4 2012 Impact ReportSamasource Q4 2012 Impact Report
Samasource Q4 2012 Impact Report
 
Making the Case for Impact Sourcing - Samasource
Making the Case for Impact Sourcing - SamasourceMaking the Case for Impact Sourcing - Samasource
Making the Case for Impact Sourcing - Samasource
 
Samasource women 26_apr2010
Samasource women 26_apr2010Samasource women 26_apr2010
Samasource women 26_apr2010
 
Google Mission4636 16 Mar2010 Leila
Google Mission4636 16 Mar2010 LeilaGoogle Mission4636 16 Mar2010 Leila
Google Mission4636 16 Mar2010 Leila
 
New Samasource Overview
New Samasource OverviewNew Samasource Overview
New Samasource Overview
 
Samasource
SamasourceSamasource
Samasource
 
SRO at Asia-Pacific Outsourcing Summit
SRO at Asia-Pacific Outsourcing SummitSRO at Asia-Pacific Outsourcing Summit
SRO at Asia-Pacific Outsourcing Summit
 
Nonprofit Technology Conference: Empowering the Poor Through Remote Work
Nonprofit Technology Conference: Empowering the Poor Through Remote WorkNonprofit Technology Conference: Empowering the Poor Through Remote Work
Nonprofit Technology Conference: Empowering the Poor Through Remote Work
 
Samasource: A New Model for Empowering the Poor
Samasource: A New Model for Empowering the PoorSamasource: A New Model for Empowering the Poor
Samasource: A New Model for Empowering the Poor
 
Facebook Developer Garage Uganda
Facebook Developer Garage UgandaFacebook Developer Garage Uganda
Facebook Developer Garage Uganda
 
Case Studies in Socially Responsible Outsourcing
Case Studies in Socially Responsible OutsourcingCase Studies in Socially Responsible Outsourcing
Case Studies in Socially Responsible Outsourcing
 
Facebook Developer Garage Uganda
Facebook Developer Garage UgandaFacebook Developer Garage Uganda
Facebook Developer Garage Uganda
 
Groups On Facebook
Groups On FacebookGroups On Facebook
Groups On Facebook
 
Guiding Principles For Socially Responsible Outsourcing v1.0
Guiding Principles For Socially Responsible Outsourcing v1.0Guiding Principles For Socially Responsible Outsourcing v1.0
Guiding Principles For Socially Responsible Outsourcing v1.0
 
Socially Responsible Outsourcing 101
Socially Responsible Outsourcing 101Socially Responsible Outsourcing 101
Socially Responsible Outsourcing 101
 

Último

Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsMiki Katsuragi
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 

Último (20)

Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
Vertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering TipsVertex AI Gemini Prompt Engineering Tips
Vertex AI Gemini Prompt Engineering Tips
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 

Charlie Cheever Facebook Developer Garage Uganda

  • 1. Facebook Developer Garage Kampala Charlie Cheever Platform Engineering, Facebook
  • 2. Review: A Web App pretty simple
  • 3. A Facebook App - What do you Get? • Authentication for free. Less code for you to write, less work for users to login, a realer concept of identity • Data about the people who use your app • names, profile pictures, interests, favorite books, favorite movies • ... and friends • Messaging (notifications, requests) -> Distribution • Convenient widgets. Friend selector, mp3 player, etc. • You can show ads on your application and keep all those revenues
  • 4. Some Examples of What’s Being Done with the Facebook Platform
  • 12. Facebook API • Read data from Facebook • about users, ex. names, profile pictures, favorite books, favorite movies, etc. • other data like photos, groups, events, etc. • almost all the data that’s available on Facebook • Messaging - sending e-mails to users, sending Facebook requests, sending Facebook notifications • Publishing news feed stories
  • 13. FBML • Basically HTML with a few extras • Sanitary - Safe for Facebook to display anywhere • Makes it easy to efficiently embed social data • Provides convenient widgets like friend selectors
  • 14. How Facebook Apps Work • Facebook Connect Applications • FBML Canvas Applications • IFrame Canvas Applications • Big Question: How do we efficiently involve a third party when a user loads a webpage?
  • 18. IFrame Canvas Apps Using XFBML
  • 20. Facebook Connect Apps 1. initial request from user Your Server User 4. regular response from your server 2. server-side API call to Facebook (optional) 5. JS API Call to Facebook 3. server-side API response (optional) 6. JS API response from Facebook Facebook
  • 22. Getting Your Feet Wet Some Simple Examples • http://apps.facebook.com/devgaragekampala/ • A Facebook app that I’ve set up that will let you test out snippets of code and get some experience with the API and FBML
  • 23. Examples • http://apps.facebook.com/devgaragekampala/ • Hello, Uganda! • Hello, Mark Zuckerberg • Hello friends! • Pick a friend • Someone Else’s Code
  • 24. Setting Up A Real App • We’ll use a free hosting service called AppJet in this example but you can use any kind of hosting.
  • 25. • AppJet is a free, web-based hosting service • Great for prototyping websites with Javascript • Has built-in Facebook support
  • 26. Your Preview program
  • 28.
  • 30. Now we have a real website
  • 32.
  • 34. Congratulations! You now have a Facebook application. Write these keys down
  • 35. Add the following to your app. import(quot;facebookquot;); fb.init(); print(quot;Hello Kampala!quot;);
  • 36.
  • 37. Type in your Canvas url Paste in your API Key and Secret
  • 38. Clicking Publish will take your application live
  • 39.
  • 40. Web Resources • FB Developers Wiki: http://wiki.developers.facebook.com/ • API Test Console: http://developers.facebook.com/tools.php?api • FBML Test Console: http://developers.facebook.com/tools.php?fbml • AppJet (free, easy hosting): http://www.appjet.com/ • FB Developer App (for setting up an app): http://www.facebook.com/ developers/ • Facebook Developer Site: http://developers.facebook.com/