SlideShare uma empresa Scribd logo
1 de 34
Kirsten Jones, Technical Leader – Cisco Systems
http://www.princesspolymath.com
   Cloud computing is the new black
   Getting started can be daunting
   Get a working stack in less than a half hour
   Cloud providers with Facebook quick start
     Heroku
     PHPFog
   “Polyglot” cloud provider supporting multiple
    languages
   https://devcenter.heroku.com/articles/facebo
    ok
   Tight integration with Facebook
   Additional PHP support is limited
   Visit https://developers.facebook.com/apps




                        Prove you’re a human with the captcha…
Social integration is a little boring until you log in…
Log In with Facebook to make it fly
The default application has
examples from the Facebook
PHP SDK


              Profile
           Information



             Friends



             Photos
            and Likes
Check your email




                   Pick a password
   https://toolbelt.herokuapp.com/
   Use ‘heroku’ or ‘cmd.exe’ on Windows
   On initial login, you may need to set up an
    SSH key
   http://developers.facebook.com/apps
   https://api.heroku.com/myapps
   https://api.heroku.com/myapps/floating-sunset-9217
% git clone git@heroku.com:<application_id>.git -o heroku




% ls <application_id>
   Loads the Facebook PHP SDK and examples
   Index.php has the magic juice
   Grabs the current authenticated user
   Provides code examples for graph calls
   $likes = idx($facebook->
         api('/me/likes?limit=4'),
         'data', array());
   You can use your local web server to serve the
    Facebook application
   You need to create a “development” version
    of the application on Facebook with your
    localhost URL
   Configure your key and secret in the .env file
   Free to get started
   Not strong PHP Cloud provider
   Facebook integration extremely easy
   Examples from Facebook SDK make it easy
    to get started
   PHP dedicated cloud service
   Supports PHP applications and frameworks
    such as
    WordPress, Drupal, Joomla, Zend, Cake and
    Kohana
   Tuned for PHP performance, scaling
   Facebook Jumpstart
   http://blog.phpfog.com/2012/03/19/a-closer-
    look-at-the-php-fog-facebook-jumpstart/
   ... or just sign in
   https://developers.facebook.com/apps
Application ID and Secret   yourapplicationname.phpfogapp.com
   Hey, that looks familiar – let’s log in
Follow the
instructions for
   your O/S
   Git based
   Toolkit available ‘pf’ for macintosh
   Other O/Ss use git directly
   “Source Code” link on the dashboard to get
    started
   PHPFog also uses Facebook SDK example
    source code
   Apps are portable between systems – copy
    the code over to use a different system
   The Facebook SDK can be downloaded
    locally and deployed to any cloud provider –
    Engineyard, PHPCloud
   Creating the application and tying the URLs
    together needs to be done manually
   Engineyard has a webcast covering this
    process (creating the app locally then
    deploying)
   Free startup
   Try multiple providers to see what works best
   PHP-only developers may find PHPFog a
    better choice
   Polyglots can work on Heroku
   Other PHP cloud providers to check out:
    EngineYard (Orchestra) and PHPCloud (Zend)
Facebook appsincloud

Mais conteúdo relacionado

Mais procurados

Debugging mobile websites and web apps
Debugging mobile websites and web appsDebugging mobile websites and web apps
Debugging mobile websites and web appsMihai Corlan
 
Android app development Hybrid approach for beginners
Android app development  Hybrid approach for beginnersAndroid app development  Hybrid approach for beginners
Android app development Hybrid approach for beginnersKhirulnizam Abd Rahman
 
FATC - AIR 2.0 workshop
FATC - AIR 2.0 workshopFATC - AIR 2.0 workshop
FATC - AIR 2.0 workshopPeter Elst
 
Building Cross-Platform Mobile Apps
Building Cross-Platform Mobile AppsBuilding Cross-Platform Mobile Apps
Building Cross-Platform Mobile AppsTroy Miles
 
Learn to build real world desktop apps
Learn to build real world desktop appsLearn to build real world desktop apps
Learn to build real world desktop appsJohn Alex
 
How to start ui automation in 15 mins with Puppeteer
How to start ui automation in 15 mins with PuppeteerHow to start ui automation in 15 mins with Puppeteer
How to start ui automation in 15 mins with PuppeteerOleksandr Pelykh
 
JS Fest 2018. Тимофей Лавренюк. Делаем веб приложение лучше с помощью совреме...
JS Fest 2018. Тимофей Лавренюк. Делаем веб приложение лучше с помощью совреме...JS Fest 2018. Тимофей Лавренюк. Делаем веб приложение лучше с помощью совреме...
JS Fest 2018. Тимофей Лавренюк. Делаем веб приложение лучше с помощью совреме...JSFestUA
 
Flutter workshop @ bang saen 2020
Flutter workshop @ bang saen 2020Flutter workshop @ bang saen 2020
Flutter workshop @ bang saen 2020Anuchit Chalothorn
 
Building data driven mobile apps with phone gap and webapi
Building data driven mobile apps with phone gap and webapiBuilding data driven mobile apps with phone gap and webapi
Building data driven mobile apps with phone gap and webapiDerek Smith
 
20150423 Android Taipei : 祖克伯F8的奇幻之旅
20150423 Android Taipei : 祖克伯F8的奇幻之旅20150423 Android Taipei : 祖克伯F8的奇幻之旅
20150423 Android Taipei : 祖克伯F8的奇幻之旅PRADA Hsiung
 
Introduction to Adobe Shadow
Introduction to Adobe ShadowIntroduction to Adobe Shadow
Introduction to Adobe ShadowMihai Corlan
 
PHP Development for Google Glass using Phass
PHP Development for Google Glass using PhassPHP Development for Google Glass using Phass
PHP Development for Google Glass using PhassJohn Coggeshall
 
Android app development hybrid approach for beginners - Tools Installations ...
Android app development  hybrid approach for beginners - Tools Installations ...Android app development  hybrid approach for beginners - Tools Installations ...
Android app development hybrid approach for beginners - Tools Installations ...Khirulnizam Abd Rahman
 
Pdx Se Intro To Se
Pdx Se Intro To SePdx Se Intro To Se
Pdx Se Intro To SeAn Doan
 
Wordpress as a Back Office for Mobile Applications
Wordpress as a Back Office for Mobile ApplicationsWordpress as a Back Office for Mobile Applications
Wordpress as a Back Office for Mobile ApplicationsBenjamin LUPU
 
Cordova training : Day 5 - UI development using Framework7
Cordova training : Day 5 - UI development using Framework7Cordova training : Day 5 - UI development using Framework7
Cordova training : Day 5 - UI development using Framework7Binu Paul
 

Mais procurados (20)

Debugging mobile websites and web apps
Debugging mobile websites and web appsDebugging mobile websites and web apps
Debugging mobile websites and web apps
 
Android app development Hybrid approach for beginners
Android app development  Hybrid approach for beginnersAndroid app development  Hybrid approach for beginners
Android app development Hybrid approach for beginners
 
FATC - AIR 2.0 workshop
FATC - AIR 2.0 workshopFATC - AIR 2.0 workshop
FATC - AIR 2.0 workshop
 
Building Cross-Platform Mobile Apps
Building Cross-Platform Mobile AppsBuilding Cross-Platform Mobile Apps
Building Cross-Platform Mobile Apps
 
Google app engine
Google app engineGoogle app engine
Google app engine
 
Learn to build real world desktop apps
Learn to build real world desktop appsLearn to build real world desktop apps
Learn to build real world desktop apps
 
How to start ui automation in 15 mins with Puppeteer
How to start ui automation in 15 mins with PuppeteerHow to start ui automation in 15 mins with Puppeteer
How to start ui automation in 15 mins with Puppeteer
 
JS Fest 2018. Тимофей Лавренюк. Делаем веб приложение лучше с помощью совреме...
JS Fest 2018. Тимофей Лавренюк. Делаем веб приложение лучше с помощью совреме...JS Fest 2018. Тимофей Лавренюк. Делаем веб приложение лучше с помощью совреме...
JS Fest 2018. Тимофей Лавренюк. Делаем веб приложение лучше с помощью совреме...
 
Flutter workshop @ bang saen 2020
Flutter workshop @ bang saen 2020Flutter workshop @ bang saen 2020
Flutter workshop @ bang saen 2020
 
Building data driven mobile apps with phone gap and webapi
Building data driven mobile apps with phone gap and webapiBuilding data driven mobile apps with phone gap and webapi
Building data driven mobile apps with phone gap and webapi
 
LVPHP.org
LVPHP.orgLVPHP.org
LVPHP.org
 
20150423 Android Taipei : 祖克伯F8的奇幻之旅
20150423 Android Taipei : 祖克伯F8的奇幻之旅20150423 Android Taipei : 祖克伯F8的奇幻之旅
20150423 Android Taipei : 祖克伯F8的奇幻之旅
 
SDK Hackery
SDK HackerySDK Hackery
SDK Hackery
 
Introduction to Adobe Shadow
Introduction to Adobe ShadowIntroduction to Adobe Shadow
Introduction to Adobe Shadow
 
PHP Development for Google Glass using Phass
PHP Development for Google Glass using PhassPHP Development for Google Glass using Phass
PHP Development for Google Glass using Phass
 
Firebase play-games-services-unity
Firebase play-games-services-unityFirebase play-games-services-unity
Firebase play-games-services-unity
 
Android app development hybrid approach for beginners - Tools Installations ...
Android app development  hybrid approach for beginners - Tools Installations ...Android app development  hybrid approach for beginners - Tools Installations ...
Android app development hybrid approach for beginners - Tools Installations ...
 
Pdx Se Intro To Se
Pdx Se Intro To SePdx Se Intro To Se
Pdx Se Intro To Se
 
Wordpress as a Back Office for Mobile Applications
Wordpress as a Back Office for Mobile ApplicationsWordpress as a Back Office for Mobile Applications
Wordpress as a Back Office for Mobile Applications
 
Cordova training : Day 5 - UI development using Framework7
Cordova training : Day 5 - UI development using Framework7Cordova training : Day 5 - UI development using Framework7
Cordova training : Day 5 - UI development using Framework7
 

Destaque

Design Patterns avec PHP 5.3, Symfony et Pimple
Design Patterns avec PHP 5.3, Symfony et PimpleDesign Patterns avec PHP 5.3, Symfony et Pimple
Design Patterns avec PHP 5.3, Symfony et PimpleHugo Hamon
 
Speed up your developments with Symfony2
Speed up your developments with Symfony2Speed up your developments with Symfony2
Speed up your developments with Symfony2Hugo Hamon
 
Monitor the quality of your Symfony projects
Monitor the quality of your Symfony projectsMonitor the quality of your Symfony projects
Monitor the quality of your Symfony projectsHugo Hamon
 
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?Mark Heckler
 
Designing for developers
Designing for developersDesigning for developers
Designing for developersKirsten Hunter
 
Symfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantSymfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantHugo Hamon
 
API 101 Workshop from APIStrat Conference
API 101 Workshop from APIStrat ConferenceAPI 101 Workshop from APIStrat Conference
API 101 Workshop from APIStrat ConferenceKirsten Hunter
 
Symfony2 en pièces détachées
Symfony2 en pièces détachéesSymfony2 en pièces détachées
Symfony2 en pièces détachéesHugo Hamon
 
Prototyping in the cloud
Prototyping in the cloudPrototyping in the cloud
Prototyping in the cloudKirsten Hunter
 
The History of PHPersistence
The History of PHPersistenceThe History of PHPersistence
The History of PHPersistenceHugo Hamon
 
Développeurs, cachez-moi ça ! (Paris Web 2011)
Développeurs, cachez-moi ça ! (Paris Web 2011)Développeurs, cachez-moi ça ! (Paris Web 2011)
Développeurs, cachez-moi ça ! (Paris Web 2011)Hugo Hamon
 
Symfony2 - extending the console component
Symfony2 - extending the console componentSymfony2 - extending the console component
Symfony2 - extending the console componentHugo Hamon
 
Api intensive - What they Are
Api intensive - What they AreApi intensive - What they Are
Api intensive - What they AreKirsten Hunter
 

Destaque (20)

Design Patterns avec PHP 5.3, Symfony et Pimple
Design Patterns avec PHP 5.3, Symfony et PimpleDesign Patterns avec PHP 5.3, Symfony et Pimple
Design Patterns avec PHP 5.3, Symfony et Pimple
 
Api 101
Api 101Api 101
Api 101
 
Speed up your developments with Symfony2
Speed up your developments with Symfony2Speed up your developments with Symfony2
Speed up your developments with Symfony2
 
Monitor the quality of your Symfony projects
Monitor the quality of your Symfony projectsMonitor the quality of your Symfony projects
Monitor the quality of your Symfony projects
 
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
This stuff is cool, but...HOW CAN I GET MY COMPANY TO DO IT?
 
Designing for developers
Designing for developersDesigning for developers
Designing for developers
 
Symfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 PerformantSymfony2 - Un Framework PHP 5 Performant
Symfony2 - Un Framework PHP 5 Performant
 
API First
API FirstAPI First
API First
 
API 101 Workshop from APIStrat Conference
API 101 Workshop from APIStrat ConferenceAPI 101 Workshop from APIStrat Conference
API 101 Workshop from APIStrat Conference
 
Quantifying fitness
Quantifying fitnessQuantifying fitness
Quantifying fitness
 
Symfony2 en pièces détachées
Symfony2 en pièces détachéesSymfony2 en pièces détachées
Symfony2 en pièces détachées
 
Liberating your data
Liberating your dataLiberating your data
Liberating your data
 
Liberating your data
Liberating your dataLiberating your data
Liberating your data
 
Prototyping in the cloud
Prototyping in the cloudPrototyping in the cloud
Prototyping in the cloud
 
The History of PHPersistence
The History of PHPersistenceThe History of PHPersistence
The History of PHPersistence
 
Développeurs, cachez-moi ça ! (Paris Web 2011)
Développeurs, cachez-moi ça ! (Paris Web 2011)Développeurs, cachez-moi ça ! (Paris Web 2011)
Développeurs, cachez-moi ça ! (Paris Web 2011)
 
Polyglot copy
Polyglot copyPolyglot copy
Polyglot copy
 
Symfony2 - extending the console component
Symfony2 - extending the console componentSymfony2 - extending the console component
Symfony2 - extending the console component
 
Git store
Git storeGit store
Git store
 
Api intensive - What they Are
Api intensive - What they AreApi intensive - What they Are
Api intensive - What they Are
 

Semelhante a Facebook appsincloud

Introduction to Google App Engine with Python
Introduction to Google App Engine with PythonIntroduction to Google App Engine with Python
Introduction to Google App Engine with PythonBrian Lyttle
 
Facebook api
Facebook api Facebook api
Facebook api snipermkd
 
Facebook API
Facebook APIFacebook API
Facebook APIsnipermkd
 
Flash Development Guide
Flash Development GuideFlash Development Guide
Flash Development GuideStanley Fok
 
Google App Engine for PHP
Google App Engine for PHP Google App Engine for PHP
Google App Engine for PHP Eric Johnson
 
Facebook Connect Tutorial
Facebook Connect TutorialFacebook Connect Tutorial
Facebook Connect TutorialPrateek Dayal
 
PHP and Zend Framework on Windows
PHP and Zend Framework on WindowsPHP and Zend Framework on Windows
PHP and Zend Framework on WindowsShahar Evron
 
Facebook Application Crash Course
Facebook Application Crash CourseFacebook Application Crash Course
Facebook Application Crash CourseXavier Ochoa
 
Benefits of the CodeIgniter Framework
Benefits of the CodeIgniter FrameworkBenefits of the CodeIgniter Framework
Benefits of the CodeIgniter FrameworkToby Beresford
 
Flash-based audio and video communication
Flash-based audio and video communicationFlash-based audio and video communication
Flash-based audio and video communicationKundan Singh
 
Deploy a PHP App on Google App Engine
Deploy a PHP App on Google App EngineDeploy a PHP App on Google App Engine
Deploy a PHP App on Google App EngineMichele Orselli
 
Rapid Prototyping Chatter with a PHP/Hack Canvas App on Heroku
Rapid Prototyping Chatter with a PHP/Hack Canvas App on HerokuRapid Prototyping Chatter with a PHP/Hack Canvas App on Heroku
Rapid Prototyping Chatter with a PHP/Hack Canvas App on HerokuSalesforce Developers
 
Php Conference Brazil - Phalcon Giant Killer
Php Conference Brazil - Phalcon Giant KillerPhp Conference Brazil - Phalcon Giant Killer
Php Conference Brazil - Phalcon Giant KillerJackson F. de A. Mafra
 
Unleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ PlatformUnleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ PlatformSébastien Morel
 
Introduction To Simple WordPress Plugin Development
Introduction To Simple WordPress Plugin DevelopmentIntroduction To Simple WordPress Plugin Development
Introduction To Simple WordPress Plugin DevelopmentBruce L Chamoff
 
Introducing How to Build a Personal Voice Assistant (AIY Edition)
Introducing How to Build a Personal Voice Assistant (AIY Edition) Introducing How to Build a Personal Voice Assistant (AIY Edition)
Introducing How to Build a Personal Voice Assistant (AIY Edition) St. Petersburg College
 
WordPress Plugin Development- Rich Media Institute Workshop
WordPress Plugin Development- Rich Media Institute WorkshopWordPress Plugin Development- Rich Media Institute Workshop
WordPress Plugin Development- Rich Media Institute WorkshopBrendan Sera-Shriar
 

Semelhante a Facebook appsincloud (20)

Introduction to Google App Engine with Python
Introduction to Google App Engine with PythonIntroduction to Google App Engine with Python
Introduction to Google App Engine with Python
 
Facebook api
Facebook api Facebook api
Facebook api
 
Facebook API
Facebook APIFacebook API
Facebook API
 
Mairn "Introducing How to Build a Personal Voice Assistant"
Mairn "Introducing How to Build a Personal Voice Assistant"Mairn "Introducing How to Build a Personal Voice Assistant"
Mairn "Introducing How to Build a Personal Voice Assistant"
 
Flash Development Guide
Flash Development GuideFlash Development Guide
Flash Development Guide
 
Google App Engine for PHP
Google App Engine for PHP Google App Engine for PHP
Google App Engine for PHP
 
Facebook Connect Tutorial
Facebook Connect TutorialFacebook Connect Tutorial
Facebook Connect Tutorial
 
PHP and Zend Framework on Windows
PHP and Zend Framework on WindowsPHP and Zend Framework on Windows
PHP and Zend Framework on Windows
 
Facebook Application Crash Course
Facebook Application Crash CourseFacebook Application Crash Course
Facebook Application Crash Course
 
Developing Facebook Application
Developing Facebook ApplicationDeveloping Facebook Application
Developing Facebook Application
 
Benefits of the CodeIgniter Framework
Benefits of the CodeIgniter FrameworkBenefits of the CodeIgniter Framework
Benefits of the CodeIgniter Framework
 
Flash-based audio and video communication
Flash-based audio and video communicationFlash-based audio and video communication
Flash-based audio and video communication
 
Deploy a PHP App on Google App Engine
Deploy a PHP App on Google App EngineDeploy a PHP App on Google App Engine
Deploy a PHP App on Google App Engine
 
Rapid Prototyping Chatter with a PHP/Hack Canvas App on Heroku
Rapid Prototyping Chatter with a PHP/Hack Canvas App on HerokuRapid Prototyping Chatter with a PHP/Hack Canvas App on Heroku
Rapid Prototyping Chatter with a PHP/Hack Canvas App on Heroku
 
Wordpress as a framework
Wordpress as a frameworkWordpress as a framework
Wordpress as a framework
 
Php Conference Brazil - Phalcon Giant Killer
Php Conference Brazil - Phalcon Giant KillerPhp Conference Brazil - Phalcon Giant Killer
Php Conference Brazil - Phalcon Giant Killer
 
Unleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ PlatformUnleash your Symfony projects with eZ Platform
Unleash your Symfony projects with eZ Platform
 
Introduction To Simple WordPress Plugin Development
Introduction To Simple WordPress Plugin DevelopmentIntroduction To Simple WordPress Plugin Development
Introduction To Simple WordPress Plugin Development
 
Introducing How to Build a Personal Voice Assistant (AIY Edition)
Introducing How to Build a Personal Voice Assistant (AIY Edition) Introducing How to Build a Personal Voice Assistant (AIY Edition)
Introducing How to Build a Personal Voice Assistant (AIY Edition)
 
WordPress Plugin Development- Rich Media Institute Workshop
WordPress Plugin Development- Rich Media Institute WorkshopWordPress Plugin Development- Rich Media Institute Workshop
WordPress Plugin Development- Rich Media Institute Workshop
 

Mais de Kirsten Hunter

Quantifying your-fitness
Quantifying your-fitnessQuantifying your-fitness
Quantifying your-fitnessKirsten Hunter
 
Designing irresistible apis
Designing irresistible apisDesigning irresistible apis
Designing irresistible apisKirsten Hunter
 
Designing irresistible apis
Designing irresistible apisDesigning irresistible apis
Designing irresistible apisKirsten Hunter
 
Designing irresistible APIs
Designing irresistible APIsDesigning irresistible APIs
Designing irresistible APIsKirsten Hunter
 
API 101 - Understanding APIs.
API 101 - Understanding APIs.API 101 - Understanding APIs.
API 101 - Understanding APIs.Kirsten Hunter
 
Demystifying REST - SFRails meetup
Demystifying REST - SFRails meetupDemystifying REST - SFRails meetup
Demystifying REST - SFRails meetupKirsten Hunter
 
PHP Architect Virtual Cloud summit
PHP Architect Virtual Cloud summitPHP Architect Virtual Cloud summit
PHP Architect Virtual Cloud summitKirsten Hunter
 
Social Marketing with LinkedIn
Social Marketing with LinkedInSocial Marketing with LinkedIn
Social Marketing with LinkedInKirsten Hunter
 
Creating Professional Applications with the LinkedIn API
Creating Professional Applications with the LinkedIn APICreating Professional Applications with the LinkedIn API
Creating Professional Applications with the LinkedIn APIKirsten Hunter
 

Mais de Kirsten Hunter (14)

Quantifying your-fitness
Quantifying your-fitnessQuantifying your-fitness
Quantifying your-fitness
 
Designing irresistible apis
Designing irresistible apisDesigning irresistible apis
Designing irresistible apis
 
Designing irresistible apis
Designing irresistible apisDesigning irresistible apis
Designing irresistible apis
 
Api 101
Api 101Api 101
Api 101
 
Designing irresistible APIs
Designing irresistible APIsDesigning irresistible APIs
Designing irresistible APIs
 
API 101 - Understanding APIs.
API 101 - Understanding APIs.API 101 - Understanding APIs.
API 101 - Understanding APIs.
 
Demystifying REST - SFRails meetup
Demystifying REST - SFRails meetupDemystifying REST - SFRails meetup
Demystifying REST - SFRails meetup
 
Rest schema design
Rest schema designRest schema design
Rest schema design
 
Successful developers
Successful developersSuccessful developers
Successful developers
 
Demystifying REST
Demystifying RESTDemystifying REST
Demystifying REST
 
PHP Architect Virtual Cloud summit
PHP Architect Virtual Cloud summitPHP Architect Virtual Cloud summit
PHP Architect Virtual Cloud summit
 
Social Marketing with LinkedIn
Social Marketing with LinkedInSocial Marketing with LinkedIn
Social Marketing with LinkedIn
 
LinkedIn Everywhere
LinkedIn EverywhereLinkedIn Everywhere
LinkedIn Everywhere
 
Creating Professional Applications with the LinkedIn API
Creating Professional Applications with the LinkedIn APICreating Professional Applications with the LinkedIn API
Creating Professional Applications with the LinkedIn API
 

Último

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 

Último (20)

The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Pigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping ElbowsPigging Solutions Piggable Sweeping Elbows
Pigging Solutions Piggable Sweeping Elbows
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 

Facebook appsincloud

  • 1. Kirsten Jones, Technical Leader – Cisco Systems http://www.princesspolymath.com
  • 2. Cloud computing is the new black  Getting started can be daunting  Get a working stack in less than a half hour  Cloud providers with Facebook quick start  Heroku  PHPFog
  • 3. “Polyglot” cloud provider supporting multiple languages  https://devcenter.heroku.com/articles/facebo ok  Tight integration with Facebook  Additional PHP support is limited
  • 4. Visit https://developers.facebook.com/apps Prove you’re a human with the captcha…
  • 5.
  • 6. Social integration is a little boring until you log in…
  • 7. Log In with Facebook to make it fly
  • 8. The default application has examples from the Facebook PHP SDK Profile Information Friends Photos and Likes
  • 9. Check your email Pick a password
  • 10. https://toolbelt.herokuapp.com/
  • 11. Use ‘heroku’ or ‘cmd.exe’ on Windows  On initial login, you may need to set up an SSH key
  • 12. http://developers.facebook.com/apps
  • 13. https://api.heroku.com/myapps
  • 14. https://api.heroku.com/myapps/floating-sunset-9217
  • 15. % git clone git@heroku.com:<application_id>.git -o heroku % ls <application_id>
  • 16. Loads the Facebook PHP SDK and examples  Index.php has the magic juice  Grabs the current authenticated user  Provides code examples for graph calls
  • 17. $likes = idx($facebook-> api('/me/likes?limit=4'), 'data', array());
  • 18. You can use your local web server to serve the Facebook application  You need to create a “development” version of the application on Facebook with your localhost URL  Configure your key and secret in the .env file
  • 19. Free to get started  Not strong PHP Cloud provider  Facebook integration extremely easy  Examples from Facebook SDK make it easy to get started
  • 20. PHP dedicated cloud service  Supports PHP applications and frameworks such as WordPress, Drupal, Joomla, Zend, Cake and Kohana  Tuned for PHP performance, scaling  Facebook Jumpstart  http://blog.phpfog.com/2012/03/19/a-closer- look-at-the-php-fog-facebook-jumpstart/
  • 21. ... or just sign in
  • 22. https://developers.facebook.com/apps
  • 23. Application ID and Secret yourapplicationname.phpfogapp.com
  • 24.
  • 25.
  • 26.
  • 27. Hey, that looks familiar – let’s log in
  • 28.
  • 30. Git based  Toolkit available ‘pf’ for macintosh  Other O/Ss use git directly  “Source Code” link on the dashboard to get started
  • 31. PHPFog also uses Facebook SDK example source code  Apps are portable between systems – copy the code over to use a different system
  • 32. The Facebook SDK can be downloaded locally and deployed to any cloud provider – Engineyard, PHPCloud  Creating the application and tying the URLs together needs to be done manually  Engineyard has a webcast covering this process (creating the app locally then deploying)
  • 33. Free startup  Try multiple providers to see what works best  PHP-only developers may find PHPFog a better choice  Polyglots can work on Heroku  Other PHP cloud providers to check out: EngineYard (Orchestra) and PHPCloud (Zend)

Notas do Editor

  1. Kirsten Jones, Technical Leader at Cisco SystemsWorking with APIs, creating mashups for longer than I care to admitFascinated with taking different web services and combining them to give users a new way to interact with their information and networksOne challenge of creating prototypes or applications is getting them onto a public server – cloud providers have made that a lot easierRecently they’ve started adding frameworks to speed application development even moreFacebook has a great SDK for PHP development, and combining that with a cloud provider who sets it up for you means you can get right to the meat of your application.I really appreciate you taking the time to listen to my talk on this, I’m going to take just a minute to give you an overview of what I’m going to cover so you can decide if it’s useful for you.
  2. One of the things I’ve learned in talking to developers… very talented and skilled developers who have made really cool shit… is that they’re intimidated by the thought of learning “yet another framework” to add cloud development into their toolbox. I’m here to tell you, and show you, that it’s actually really easy. The cloud providers I’m going to cover here – Heroku and PHPFog – both have excellent toolkits based around the source code management tool git. So you develop locally on your own system, then push your changes to the cloud. It’s really no different than any other release process you might be familiar with – and the other end is set up for you, your own system. Both of these cloud providers are free to get started with, and they both include the Facebook SDK, which means that whatever you write is portable to other cloud providers, or to your own hosted system when you’re ready for that. I’m going to start with Heroku.
  3. Heroku is a cloud provider that was originally designed as a Ruby on Rails cloud provider, but recently they’ve branched out to a very large list of languages and frameworks – Python, Java, Scala, Clojure… and PHP. Most of their PHP support is around Facebook applications, but you can use the same setup, really, for any PHP application. For today I’m going to walk through their tutorial so you can understand how easy it is to get started using their system. I know it’s a little annoying to I’ve created a cheat sheet for this talk which is available on my website at princesspolymath.com – from there you can get to the links I mention in the talk.
  4. The default application is a little… boring.
  5. Talk about authentication model, supported by the Facebook SDK, good to specify the pieces you want. Facebook may get a lot of shit for bad privacy practices, but they do make it easy for developers to communicate to their users exactly which pieces of the facebook pie their application is going to touch.
  6. *describe page*Wow, that’s really cool! Now there’s an application… somewhere… with code that’s making this page. I guess that’s pretty cool, but it seems kind of abstract since you don’t really have a way to touch, see and edit the code. Let’s think of this as the “front end”, or UI of your application, and figure out how to get at the bits that are making it go. The first thing you’ll need to do is get set up with Heroku.
  7. If you already have a Heroku account, you can just log in to continue here. If not, they’ll have sent you an email with a link to get started, which is pretty much the standard stuff. Pick a password, log in, and you’re ready to get started on the backend side of your application
  8. Once you’ve logged in, you can jump to the toolbelt to get your system set up to work with Heroku. As I mentioned before, Heroku started as a RoR cloud provider, and their toolkit is based on Ruby. You’ll need to have ruby on your system in order to make this go. It comes standard on most unix based systems (like OSX and Ubuntu) but for Windows you may end up installing a larger set of files to get your application going.
  9. Once thetoolbelt is set up, you need to login to heroku from the toolbelt so it knows who you are and has the necessary credentials for getting to the repository with your source code. The first time you log in you’ll need to set up an SSH key so you don’t need to enter your credentials every time – if you don’t already have one set up on your system the Heroku tutorial has instructions for getting one generated.Now that you’ve got your toolkit set up, you need to find out where Heroku has stashed the code for you.
  10. While the integration between Facebook and Heroku is pretty slick, figuring out how to identify your repository takes a bit of work. On the Facebook application information page, your “Site Domain” will be set up with your heroku-assigned domain. This is a haiku-based name with a random number on the end, and this is your application’s home in the Heroku cloud. This is also how you identify your repository when interacting with your code on Heroku.
  11. Once you’ve logged in and have the toolkit, you can see all of the applications associated with your login. As you can see, I have a lot of Heroku instances because it’s really easy to make one whenever I have an idea I want to try out. From the list of your applications you can view the general information for the instance or set up resources – if you want to change the scale, or add a plugin, or add scaling or database resources. For now, we’ll just check out the general information. As you can see, my Facebook application is listed here, with the memorable name/URL floating-sunset-9217
  12. Here it is, in all its glory. Your instance information. Name, URL, collaborator. You can add other heroku users as collaborators on your repo so you can, you know, collaborate. The git repo information is listed here, although it’s relatively easy to build once you have the name for your application. The repo will always be reached as git@heroku.com:appname.git It’s nice to have it here, though, for reference and copy-and-pasting, so you don’t have to remember the right information to build it later.All right, we’ve got the information we need to actually get the source code now. Awesome 
  13. PHPFog! These guys are great, and they’re a cloud provider dedicated to PHP. All of their systems are designed to optimize PHP performance. If you’re a PHP developer looking to deploy multiple different types of applications to the cloud, they’re probably your guys. As you can see, they provide a wide range of PHP frameworks.Their Facebook integration is a little more work than Heroku, but it’s still quick to get set up and running.
  14. Again, if you’ve got a PHPFog account already you’re one step ahead. Otherwise you’ll need to sign up for a free PHPFog account to get started.
  15. You’re going to start out in the same place this time, but you’ll need to do a little more work to get everything set up how you want. Set up your application, but this time don’t click the Heroku button.
  16. Pick a unique application identifier for your application to be used as part of the PHPFog domain. You need to input that domain into the “App Domains” section of the page. You’ll also want to open the “Website with Facebook Login” section and input it as your site URL, so the Facebook system knows where to send the users after they’ve authenticated – these pieces were set up for you magically with the Heroku version, but as you can see it’s really not difficult to get it working manually.You’ll need your app ID and secret for the PHPFog configuration side, so copy those somewhere, or just keep this browser window open while you set up the PHPFog end of your application.
  17. Now that you’ve set up the Facebook side, you need to actually create the application on PHPFog so that it’ll actually do something. Click “New App” to get started, and select “Facebook” as the application type you want.
  18. Here’s where you need to put in your application key and secret from the facebook application. You’ll also put in that unique application ID you created so that the domain Facebook expects is where phpfog puts the application. Click “Create app”
  19. Once your application is created PHPFog will present you with a dashboard of information. Like Heroku, the startup/default configuration is free, but this is where you can add more storage, plugins, or other goodies for your site. Additionally, there’s a wealth of analytical and configuration management tools on the dashboard. We’ll come back here in a minute, but for now let’s go ahead and view the application, since we’ve set up both sides and they should be ready to go.
  20. Yep, pretty much exactly the same thing. The Facebook SDK examples are a great place to work from. I’ve already covered how the code works (at the end if you want I can show you more, but really it’s best to poke around yourself.