SlideShare una empresa de Scribd logo
1 de 17
Descargar para leer sin conexión
Connecting
Apple’s iPhone To
 Google’s cloud
  Jonathan Saggau and Noah Gift
agenda

• Wherefore the cloud for iPhone data
  storage?
• Why Google App Engine?
• What does TouchEngine do, exactly?
• How Does it do that?
• What’s next / roadmap
Mobile + Cloud
    It’s like chocolate and peanut
                 butter




http://www.flickr.com/photos/rocknroll_guitar/3737067347/
Mobile + Google’s Cloud
 • It’s like chocolate and really, really good peanut
   butter.




http://www.tj.la/2009/09/17/peanutbutter-overload/
What Does AppEngine Do
       and Why

• Generates data model files that match for both GAE
  and iPhone (coredata)
• Simplifies communication between GAE data models
  and iPhone apps using plists (GAE)
• Semi-Automatically synchronizes data model objects
  python and objc
• Google user login included (new feature using the
  open source GAE login code from github)
Demo
Default Core Data Books
How Does It Do It


• GoogleAppEngineAuth from cameronr
  on github.
• (Note, GAE will do OAuth but it’s beta)



    http://github.com/cameronr/
        GoogleAppEngineAuth
Mogenerator

• What is it for?
• How it works (MiscMerge)
• What the templates look like
• What the data model looks like
 • Special GAE_ and gae_ attributes and
   why

                                          Code
How to Insert Touchengine
     into Appengine



          Demo
Technologies
               Soon
 Current
Google App Engine:
 Core Data Books
     Adding a book




           Live Site - also JQuery Code
Google App Engine:
 Core Data Books
     View Library
Plist generation



• Why PList?
• plistlib
• introspection
• Registering objects


                                Code
How We Use the plists
   on the iPhone

• GAEModelSync + bookModelSync
• Show how the app goes from login to
  downloading the appropriate plists and then
  goes about.
• Segue into what’s next by mentioning that
  one-way sync could be much more
  automated.

                                                Code
Roadmap




http://www.flickr.com/photos/solaluminacaptura/
              54667385/sizes/z/
What’s Next
• Automate the one-way sync translation
  between strings in plist and dates and
  gae_ stuff that we’re currently doing
  manually
• Two-way real-time communications
• Two-way sync offline
• Integrate Ads w/ iAd and mobclix
Questions




Noah’s frickin’ picture

Más contenido relacionado

La actualidad más candente

Component Driven Development - DrupalCamp London 2017
Component Driven Development - DrupalCamp London 2017Component Driven Development - DrupalCamp London 2017
Component Driven Development - DrupalCamp London 2017
John Ennew
 
10 Must-Use Components for Your Mobile Apps, James Clancey
10 Must-Use Components for Your Mobile Apps, James Clancey10 Must-Use Components for Your Mobile Apps, James Clancey
10 Must-Use Components for Your Mobile Apps, James Clancey
Xamarin
 

La actualidad más candente (16)

Share point app architecture for the cloud and on premise
Share point app architecture for the cloud and on premiseShare point app architecture for the cloud and on premise
Share point app architecture for the cloud and on premise
 
Component Driven Development - DrupalCamp London 2017
Component Driven Development - DrupalCamp London 2017Component Driven Development - DrupalCamp London 2017
Component Driven Development - DrupalCamp London 2017
 
See the time on your wrist - Apple Watch presentation
See the time on your wrist - Apple Watch presentationSee the time on your wrist - Apple Watch presentation
See the time on your wrist - Apple Watch presentation
 
Relearning SharePoint Development
Relearning SharePoint DevelopmentRelearning SharePoint Development
Relearning SharePoint Development
 
Introduction to Cloud Foundry
Introduction to Cloud FoundryIntroduction to Cloud Foundry
Introduction to Cloud Foundry
 
I've (probably) been using Google App Engine for a week longer than you have
I've (probably) been using Google App Engine for a week longer than you haveI've (probably) been using Google App Engine for a week longer than you have
I've (probably) been using Google App Engine for a week longer than you have
 
Building 3D Models with Skycatch & Autodesk Recap API's
Building 3D Models with Skycatch & Autodesk Recap API'sBuilding 3D Models with Skycatch & Autodesk Recap API's
Building 3D Models with Skycatch & Autodesk Recap API's
 
Code workshop
Code workshopCode workshop
Code workshop
 
React For Vikings
React For VikingsReact For Vikings
React For Vikings
 
10 Must-Use Components for Your Mobile Apps, James Clancey
10 Must-Use Components for Your Mobile Apps, James Clancey10 Must-Use Components for Your Mobile Apps, James Clancey
10 Must-Use Components for Your Mobile Apps, James Clancey
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
Google App Engine
Google App EngineGoogle App Engine
Google App Engine
 
Stunning Mobile Apps with the Xamarin Visual Design System​
Stunning Mobile Apps with the Xamarin Visual Design System​Stunning Mobile Apps with the Xamarin Visual Design System​
Stunning Mobile Apps with the Xamarin Visual Design System​
 
Cache me if you can
Cache me if you canCache me if you can
Cache me if you can
 
GermaniumWeb for Barcamp Singapore 5
GermaniumWeb for Barcamp Singapore 5GermaniumWeb for Barcamp Singapore 5
GermaniumWeb for Barcamp Singapore 5
 
Operationalizing R with Azure ML
Operationalizing R with Azure MLOperationalizing R with Azure ML
Operationalizing R with Azure ML
 

Destacado

Email encryption project review
Email encryption project reviewEmail encryption project review
Email encryption project review
Amit Debnath
 
interior design lectures - measure drawing building study
interior design lectures - measure drawing building study interior design lectures - measure drawing building study
interior design lectures - measure drawing building study
designcube6
 

Destacado (6)

AUGMENTED, ASSESSED, ADDRESSED: REFRAMING THE CURRICULA FOR FIRST YEAR STEM S...
AUGMENTED, ASSESSED, ADDRESSED: REFRAMING THE CURRICULA FOR FIRST YEAR STEM S...AUGMENTED, ASSESSED, ADDRESSED: REFRAMING THE CURRICULA FOR FIRST YEAR STEM S...
AUGMENTED, ASSESSED, ADDRESSED: REFRAMING THE CURRICULA FOR FIRST YEAR STEM S...
 
203 Is It Real or Is It Virtual? Augmented Reality on the iPhone
203 Is It Real or Is It Virtual? Augmented Reality on the iPhone203 Is It Real or Is It Virtual? Augmented Reality on the iPhone
203 Is It Real or Is It Virtual? Augmented Reality on the iPhone
 
Augmented Reality Presentation at Leadership Forum 2012 Randwick
Augmented Reality Presentation at Leadership Forum 2012 RandwickAugmented Reality Presentation at Leadership Forum 2012 Randwick
Augmented Reality Presentation at Leadership Forum 2012 Randwick
 
303 TANSTAAFL: Using Open Source iPhone UI Code
303 TANSTAAFL: Using Open Source iPhone UI Code303 TANSTAAFL: Using Open Source iPhone UI Code
303 TANSTAAFL: Using Open Source iPhone UI Code
 
Email encryption project review
Email encryption project reviewEmail encryption project review
Email encryption project review
 
interior design lectures - measure drawing building study
interior design lectures - measure drawing building study interior design lectures - measure drawing building study
interior design lectures - measure drawing building study
 

Similar a Connecting Apple’s iPhone To Google’s cloud

Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
Nuxeo
 
Test+video+upload
Test+video+uploadTest+video+upload
Test+video+upload
Tianwei_liu
 
Javaedge 2010-cschalk
Javaedge 2010-cschalkJavaedge 2010-cschalk
Javaedge 2010-cschalk
Chris Schalk
 
Progressive Enhancement using WSGI
Progressive Enhancement using WSGIProgressive Enhancement using WSGI
Progressive Enhancement using WSGI
Matthew Wilkes
 

Similar a Connecting Apple’s iPhone To Google’s cloud (20)

Building mobile apps with PhoneGap and Backbone
Building mobile apps with PhoneGap and BackboneBuilding mobile apps with PhoneGap and Backbone
Building mobile apps with PhoneGap and Backbone
 
Google Cloud Platform Update
Google Cloud Platform UpdateGoogle Cloud Platform Update
Google Cloud Platform Update
 
How to build a SaaS solution in 60 days
How to build a SaaS solution in 60 daysHow to build a SaaS solution in 60 days
How to build a SaaS solution in 60 days
 
Phonegap - An Introduction
Phonegap - An IntroductionPhonegap - An Introduction
Phonegap - An Introduction
 
Florian Pertynski session at Google Partner Summit Review
Florian Pertynski session at Google Partner Summit Review Florian Pertynski session at Google Partner Summit Review
Florian Pertynski session at Google Partner Summit Review
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
[Public] between two worlds native&no-native experiences
[Public] between two worlds  native&no-native experiences[Public] between two worlds  native&no-native experiences
[Public] between two worlds native&no-native experiences
 
OpenStack DevOps Workflows with TOSCA
OpenStack DevOps Workflows with TOSCAOpenStack DevOps Workflows with TOSCA
OpenStack DevOps Workflows with TOSCA
 
Deploying and Scaling Your First Cloud Application with Amazon Lightsail
Deploying and Scaling Your First Cloud Application with Amazon LightsailDeploying and Scaling Your First Cloud Application with Amazon Lightsail
Deploying and Scaling Your First Cloud Application with Amazon Lightsail
 
From Napkin to Network: Rapidly Design, Prototype and Leverage Network APIs
From Napkin to Network: Rapidly Design, Prototype and Leverage Network APIsFrom Napkin to Network: Rapidly Design, Prototype and Leverage Network APIs
From Napkin to Network: Rapidly Design, Prototype and Leverage Network APIs
 
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
Make Cross-platform Mobile Apps Quickly - SIGGRAPH 2014
 
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
#MBLTdev: Разработка backend для мобильного приложения с использованием Googl...
 
UXDev Summit Keynote : A real world story of Angular and Apache Unomi integra...
UXDev Summit Keynote : A real world story of Angular and Apache Unomi integra...UXDev Summit Keynote : A real world story of Angular and Apache Unomi integra...
UXDev Summit Keynote : A real world story of Angular and Apache Unomi integra...
 
Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite
Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite
Couchbase Mobile Ideathon in Tokyo 2014.08.29: Developing with couchbase lite
 
Test+video+upload
Test+video+uploadTest+video+upload
Test+video+upload
 
Javaedge 2010-cschalk
Javaedge 2010-cschalkJavaedge 2010-cschalk
Javaedge 2010-cschalk
 
Automating Application over OpenStack using Workflows
Automating Application over OpenStack using WorkflowsAutomating Application over OpenStack using Workflows
Automating Application over OpenStack using Workflows
 
Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...
Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...
Infinum android talks #12 - Google IO report: Milkshakes, Marshmallows and Ma...
 
All about that reactive ui
All about that reactive uiAll about that reactive ui
All about that reactive ui
 
Progressive Enhancement using WSGI
Progressive Enhancement using WSGIProgressive Enhancement using WSGI
Progressive Enhancement using WSGI
 

Connecting Apple’s iPhone To Google’s cloud

  • 1. Connecting Apple’s iPhone To Google’s cloud Jonathan Saggau and Noah Gift
  • 2. agenda • Wherefore the cloud for iPhone data storage? • Why Google App Engine? • What does TouchEngine do, exactly? • How Does it do that? • What’s next / roadmap
  • 3. Mobile + Cloud It’s like chocolate and peanut butter http://www.flickr.com/photos/rocknroll_guitar/3737067347/
  • 4. Mobile + Google’s Cloud • It’s like chocolate and really, really good peanut butter. http://www.tj.la/2009/09/17/peanutbutter-overload/
  • 5. What Does AppEngine Do and Why • Generates data model files that match for both GAE and iPhone (coredata) • Simplifies communication between GAE data models and iPhone apps using plists (GAE) • Semi-Automatically synchronizes data model objects python and objc • Google user login included (new feature using the open source GAE login code from github)
  • 7. How Does It Do It • GoogleAppEngineAuth from cameronr on github. • (Note, GAE will do OAuth but it’s beta) http://github.com/cameronr/ GoogleAppEngineAuth
  • 8. Mogenerator • What is it for? • How it works (MiscMerge) • What the templates look like • What the data model looks like • Special GAE_ and gae_ attributes and why Code
  • 9. How to Insert Touchengine into Appengine Demo
  • 10. Technologies Soon Current
  • 11. Google App Engine: Core Data Books Adding a book Live Site - also JQuery Code
  • 12. Google App Engine: Core Data Books View Library
  • 13. Plist generation • Why PList? • plistlib • introspection • Registering objects Code
  • 14. How We Use the plists on the iPhone • GAEModelSync + bookModelSync • Show how the app goes from login to downloading the appropriate plists and then goes about. • Segue into what’s next by mentioning that one-way sync could be much more automated. Code
  • 16. What’s Next • Automate the one-way sync translation between strings in plist and dates and gae_ stuff that we’re currently doing manually • Two-way real-time communications • Two-way sync offline • Integrate Ads w/ iAd and mobclix