SlideShare une entreprise Scribd logo
1  sur  28
We Don’t Need No Stinkin’ App Server!
   Building a Two-Tier Mobile App

                 Pat Patterson
                 @metadaddy

         Principal Developer Evangelist
                 salesforce.com
Safe Harbor
Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain
forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if
any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results
expressed or implied by the forward-looking statements we make. All statements other than statements of historical
fact could be deemed forward-looking, including any projections of subscriber growth, earnings, revenues, or other
financial items and any statements regarding strategies or plans of management for future operations, statements of
belief, any statements concerning new, planned, or upgraded services or technology developments and customer
contracts or use of our services.

The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and
delivering new functionality for our service, our new business model, our past operating losses, possible fluctuations in
our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures,
the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and
motivate our employees and manage our growth, new releases of our service and successful customer deployment,
and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the
financial results of salesforce.com, inc. is included in our annual report on Form 10-K filed on March 9, 2012 and in
other filings with the Securities and Exchange Commission. These documents are available on the SEC Filings section of
the Investor Information section of our Web site.

Any unreleased services or features referenced in this or other press releases or public statements are not currently
available and may not be delivered on time or at all. Customers who purchase our services should make the purchase
decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not
intend to update these forward-looking statements.
Agenda
• Database-as-a-Service

• Hybrid Mobile App Frameworks

• Combining the two approaches for rapid
  mobile app development
Agenda
• Database-as-a-Service

• Hybrid Mobile App Frameworks

• Combining the two approaches for rapid
  mobile app development
3-Tier Architecture
3-Tier Architecture
3-Tier Architecture
3-Tier Architecture
3-Tier Architecture
3-Tier Architecture
3-Tier Architecture
2-Tier Architecture
2-Tier Architecture




  iOS
Android
2-Tier Architecture




                          database.com
  iOS                  SimpleDB/DynamoDB
Android                   GAE Datastore
                             CouchDB
                            MongoDB
                                …
RESTful Database API
Resource Name        URI                                            Description

Versions             /                                              List of supported API versions

Resources by         /vXX.X/                                        Available resources for this version
Version
Describe Global      /vXX.X/sobjects/                               Available objects and metadata

SObject Basic Info   /vXX.X/sobjects/SObject/                       Metadata for object

SObject Describe     /vXX.X/sobjects/SObject/describe/              Metadata for object fields etc

SObject Rows         /vXX.X/sobjects/SObject/id/                    Access record by native ID

SObject Rows by      /vXX.X/sobjects/SObject/fieldName/fieldValue   Access record by external ID
External ID
User Password        /vXX.X/sobjects/User/userId/password           Set/reset user password

Query                /vXX.X/query/?q=soql                           SOQL query

Search               /vXX.X/search/?s=sosl                          SOSL query



         http://www.salesforce.com/us/developer/docs/dbcom_api_rest/index.htm
Agenda
• Database-as-a-Service

• Hybrid Mobile App Frameworks

• Combining the two approaches for rapid
  mobile app development
Agenda
• Database-as-a-Service

• Hybrid Mobile App Frameworks

• Combining the two approaches for rapid
  mobile app development
Mobile App Spectrum

   Native        Hybrid        Web




                 HTML5 +      HTML5 +
Objective C /
                  CSS +        CSS +
    Java
                JavaScript   JavaScript
Atwood’s Law

“Any application that can be written in
JavaScript, will eventually be written in
              JavaScript.”
 http://www.codinghorror.com/blog/2007/07/the-principle-of-least-power.html
Proof Point: LinkedIn iPad App

  “Yes, only one screen in the entire
 LinkedIn iPad app is actually native.
  The rest is good ol’ HTML5-based
mobile web technology, running in the
               browser.”
   http://venturebeat.com/2012/05/02/linkedin-ipad-app-engineering/
Hybrid Mobile App Platforms
•   Apache Cordova (aka [Adobe] PhoneGap)
•   Trigger.io
•   Appcelerator Titanium
•   Ansca Corona
•   Many, many, more
    – http://en.wikipedia.org/wiki/Mobile_application_development
Salesforce Mobile SDK
• Hybrid support built on PhoneGap 1.2
   + OAuth 2.0 built in
   + JavaScript binding to database.com REST API
• Current Version 1.1
   – Added Secure Offline API, more flexible OAuth 2.0 and more
• Version 1.2 coming soon
   – Adds PIN protection, session timeout and more
            2012


       1.0                   1.1                1.2
     Dec 2011              Mar 2012            Soon!

 • And…
It’s 100% open source
Agenda
• Database-as-a-Service

• Hybrid Mobile App Frameworks

• Combining the two approaches for rapid
  mobile app development
Agenda
• Database-as-a-Service

• Hybrid Mobile App Frameworks

• Combining the two approaches for rapid
  mobile app development
Code Time…



http://bit.ly/gc12-mobile-demo
Conclusion
• Database-as-a-Service can dramatically
  simplify your web app’s back end

• Frameworks such as Apache Cordova
  accelerate mobile app development

• Combine the two for rapid mobile app
  development
Thank You!
          Pat Patterson
          @metadaddy

  Principal Developer Evangelist
          salesforce.com

Contenu connexe

Tendances

End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...
End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...
End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...andrejusb
 
Building Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDKBuilding Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDKSalesforce Developers
 
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7CA API Management
 
Ram Kumar - Sr. Certified Mule ESB Integration Developer
Ram Kumar - Sr. Certified Mule ESB Integration DeveloperRam Kumar - Sr. Certified Mule ESB Integration Developer
Ram Kumar - Sr. Certified Mule ESB Integration DeveloperRam Kumar
 
Find the right mobile app architecture for your business [detailed guide]
Find the right mobile app architecture for your business [detailed guide]Find the right mobile app architecture for your business [detailed guide]
Find the right mobile app architecture for your business [detailed guide]Katy Slemon
 
5 Web Platforms to Build Online Business Edit
5 Web Platforms to Build Online Business Edit5 Web Platforms to Build Online Business Edit
5 Web Platforms to Build Online Business EditLearnToProgram, Inc.
 
Taking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service PlatformsTaking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service PlatformsAlan Quayle
 
The dashboarding problem
The dashboarding problemThe dashboarding problem
The dashboarding problemnuria_ruiz
 
Intro to the Salesforce Mobile SDK: Building iOS Apps Webinar
Intro to the Salesforce Mobile SDK: Building iOS Apps WebinarIntro to the Salesforce Mobile SDK: Building iOS Apps Webinar
Intro to the Salesforce Mobile SDK: Building iOS Apps WebinarSalesforce Developers
 
Past, Present and Future of APIs of Mobile and Web Apps
Past, Present and Future of APIs of Mobile and Web AppsPast, Present and Future of APIs of Mobile and Web Apps
Past, Present and Future of APIs of Mobile and Web AppsSmartBear
 
Mobile apparchitecture
Mobile apparchitectureMobile apparchitecture
Mobile apparchitecturehpcmitresearch
 
Introduction to The 6 Insights of API Practice (Bill Doerrfeld)
Introduction to The 6 Insights of API Practice (Bill Doerrfeld)Introduction to The 6 Insights of API Practice (Bill Doerrfeld)
Introduction to The 6 Insights of API Practice (Bill Doerrfeld)Nordic APIs
 
A Common API & UI for Building Next Generation Identity Services
A Common API & UI for Building Next Generation Identity ServicesA Common API & UI for Building Next Generation Identity Services
A Common API & UI for Building Next Generation Identity ServicesForgeRock
 
Implementing API Facade using WSO2 API Management Platform
Implementing API Facade using WSO2 API Management PlatformImplementing API Facade using WSO2 API Management Platform
Implementing API Facade using WSO2 API Management PlatformWSO2
 
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...Mike Walker
 
Sybase sup hybrid_web_container_article_wp
Sybase sup hybrid_web_container_article_wpSybase sup hybrid_web_container_article_wp
Sybase sup hybrid_web_container_article_wpPrabhakar Manthena
 

Tendances (20)

End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...
End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...
End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...
 
Building Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDKBuilding Mobile Apps on Salesforce Platform with Mobile SDK
Building Mobile Apps on Salesforce Platform with Mobile SDK
 
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
RESTful Web APIs – Mike Amundsen, Principal API Architect, Layer 7
 
Ram Kumar - Sr. Certified Mule ESB Integration Developer
Ram Kumar - Sr. Certified Mule ESB Integration DeveloperRam Kumar - Sr. Certified Mule ESB Integration Developer
Ram Kumar - Sr. Certified Mule ESB Integration Developer
 
omkar-hybris-cv
omkar-hybris-cvomkar-hybris-cv
omkar-hybris-cv
 
Find the right mobile app architecture for your business [detailed guide]
Find the right mobile app architecture for your business [detailed guide]Find the right mobile app architecture for your business [detailed guide]
Find the right mobile app architecture for your business [detailed guide]
 
sMash_for_zOS-users
sMash_for_zOS-userssMash_for_zOS-users
sMash_for_zOS-users
 
5 Web Platforms to Build Online Business Edit
5 Web Platforms to Build Online Business Edit5 Web Platforms to Build Online Business Edit
5 Web Platforms to Build Online Business Edit
 
Taking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service PlatformsTaking Control of Your Future: Own Your Service Platforms
Taking Control of Your Future: Own Your Service Platforms
 
The dashboarding problem
The dashboarding problemThe dashboarding problem
The dashboarding problem
 
Power Mobile Apps with Sitecore
Power Mobile Apps with SitecorePower Mobile Apps with Sitecore
Power Mobile Apps with Sitecore
 
Intro to the Salesforce Mobile SDK: Building iOS Apps Webinar
Intro to the Salesforce Mobile SDK: Building iOS Apps WebinarIntro to the Salesforce Mobile SDK: Building iOS Apps Webinar
Intro to the Salesforce Mobile SDK: Building iOS Apps Webinar
 
Past, Present and Future of APIs of Mobile and Web Apps
Past, Present and Future of APIs of Mobile and Web AppsPast, Present and Future of APIs of Mobile and Web Apps
Past, Present and Future of APIs of Mobile and Web Apps
 
Mobile apparchitecture
Mobile apparchitectureMobile apparchitecture
Mobile apparchitecture
 
Introduction to The 6 Insights of API Practice (Bill Doerrfeld)
Introduction to The 6 Insights of API Practice (Bill Doerrfeld)Introduction to The 6 Insights of API Practice (Bill Doerrfeld)
Introduction to The 6 Insights of API Practice (Bill Doerrfeld)
 
A Common API & UI for Building Next Generation Identity Services
A Common API & UI for Building Next Generation Identity ServicesA Common API & UI for Building Next Generation Identity Services
A Common API & UI for Building Next Generation Identity Services
 
portfolio
portfolioportfolio
portfolio
 
Implementing API Facade using WSO2 API Management Platform
Implementing API Facade using WSO2 API Management PlatformImplementing API Facade using WSO2 API Management Platform
Implementing API Facade using WSO2 API Management Platform
 
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...
Microsoft Insurance Solutions Keynote Presentation at the Financial Services ...
 
Sybase sup hybrid_web_container_article_wp
Sybase sup hybrid_web_container_article_wpSybase sup hybrid_web_container_article_wp
Sybase sup hybrid_web_container_article_wp
 

En vedette

Cross Platform Mobile Application Architecture
Cross Platform Mobile Application ArchitectureCross Platform Mobile Application Architecture
Cross Platform Mobile Application ArchitectureDerrick Bowen
 
The Cloud and Next Gen IT Gordon Haff - p camp-boston2012
The Cloud and Next Gen IT   Gordon Haff - p camp-boston2012The Cloud and Next Gen IT   Gordon Haff - p camp-boston2012
The Cloud and Next Gen IT Gordon Haff - p camp-boston2012ProductCamp Boston
 
Development in Testing
Development in TestingDevelopment in Testing
Development in TestingKatya Kameneva
 
Burak TOK Media Interviews
Burak TOK Media InterviewsBurak TOK Media Interviews
Burak TOK Media InterviewsTNS
 
Textos Complementares
Textos ComplementaresTextos Complementares
Textos Complementaresrafaelly04
 
5 qualities of a good website design
5 qualities of a good website design5 qualities of a good website design
5 qualities of a good website designJodie Harper
 
Social Networking 201: Engaging Learners and Professional Networking with Tw...
Social Networking 201:Engaging Learners and Professional Networking with Tw...Social Networking 201:Engaging Learners and Professional Networking with Tw...
Social Networking 201: Engaging Learners and Professional Networking with Tw...Nicholas Kman, MD, FACEP
 
Atividade - Mapa Conceitual
Atividade - Mapa ConceitualAtividade - Mapa Conceitual
Atividade - Mapa Conceitualrafaelly04
 
Open Coffee Patras XVII - Growthrocks
Open Coffee Patras XVII - GrowthrocksOpen Coffee Patras XVII - Growthrocks
Open Coffee Patras XVII - GrowthrocksInterMediaKT
 
17-D-1 Azure開発の極意 ~2011年版~
17-D-1 Azure開発の極意 ~2011年版~17-D-1 Azure開発の極意 ~2011年版~
17-D-1 Azure開発の極意 ~2011年版~Sunao Tomita
 
Telling Your Breakthrough Brand Story On Social Media For Entrepreneurs
Telling Your Breakthrough Brand Story On Social Media For EntrepreneursTelling Your Breakthrough Brand Story On Social Media For Entrepreneurs
Telling Your Breakthrough Brand Story On Social Media For EntrepreneursDoyle Buehler
 
Did you know LEVEL OF SERVICE is ruining your life?
Did you know LEVEL OF SERVICE is ruining your life?Did you know LEVEL OF SERVICE is ruining your life?
Did you know LEVEL OF SERVICE is ruining your life?Andy Boenau
 
FIWARE MEXICO WorkShop 2016 - 4. Ongoing & future FIWARE activities in Mexico...
FIWARE MEXICO WorkShop 2016 - 4. Ongoing & future FIWARE activities in Mexico...FIWARE MEXICO WorkShop 2016 - 4. Ongoing & future FIWARE activities in Mexico...
FIWARE MEXICO WorkShop 2016 - 4. Ongoing & future FIWARE activities in Mexico...FIWARE Mexico
 
буклет новий
буклет новийбуклет новий
буклет новийlenqik_07
 
Agency Marketing Innovations
Agency Marketing InnovationsAgency Marketing Innovations
Agency Marketing InnovationsHubSpot
 

En vedette (20)

Hybrid mobile apps
Hybrid mobile appsHybrid mobile apps
Hybrid mobile apps
 
Gluecon keynote
Gluecon keynoteGluecon keynote
Gluecon keynote
 
Cross Platform Mobile Application Architecture
Cross Platform Mobile Application ArchitectureCross Platform Mobile Application Architecture
Cross Platform Mobile Application Architecture
 
The Cloud and Next Gen IT Gordon Haff - p camp-boston2012
The Cloud and Next Gen IT   Gordon Haff - p camp-boston2012The Cloud and Next Gen IT   Gordon Haff - p camp-boston2012
The Cloud and Next Gen IT Gordon Haff - p camp-boston2012
 
Development in Testing
Development in TestingDevelopment in Testing
Development in Testing
 
Burak TOK Media Interviews
Burak TOK Media InterviewsBurak TOK Media Interviews
Burak TOK Media Interviews
 
Textos Complementares
Textos ComplementaresTextos Complementares
Textos Complementares
 
5 qualities of a good website design
5 qualities of a good website design5 qualities of a good website design
5 qualities of a good website design
 
Social Networking 201: Engaging Learners and Professional Networking with Tw...
Social Networking 201:Engaging Learners and Professional Networking with Tw...Social Networking 201:Engaging Learners and Professional Networking with Tw...
Social Networking 201: Engaging Learners and Professional Networking with Tw...
 
Atividade - Mapa Conceitual
Atividade - Mapa ConceitualAtividade - Mapa Conceitual
Atividade - Mapa Conceitual
 
shinohara m
shinohara mshinohara m
shinohara m
 
Open Coffee Patras XVII - Growthrocks
Open Coffee Patras XVII - GrowthrocksOpen Coffee Patras XVII - Growthrocks
Open Coffee Patras XVII - Growthrocks
 
17-D-1 Azure開発の極意 ~2011年版~
17-D-1 Azure開発の極意 ~2011年版~17-D-1 Azure開発の極意 ~2011年版~
17-D-1 Azure開発の極意 ~2011年版~
 
Telling Your Breakthrough Brand Story On Social Media For Entrepreneurs
Telling Your Breakthrough Brand Story On Social Media For EntrepreneursTelling Your Breakthrough Brand Story On Social Media For Entrepreneurs
Telling Your Breakthrough Brand Story On Social Media For Entrepreneurs
 
C v
C vC v
C v
 
Did you know LEVEL OF SERVICE is ruining your life?
Did you know LEVEL OF SERVICE is ruining your life?Did you know LEVEL OF SERVICE is ruining your life?
Did you know LEVEL OF SERVICE is ruining your life?
 
FIWARE MEXICO WorkShop 2016 - 4. Ongoing & future FIWARE activities in Mexico...
FIWARE MEXICO WorkShop 2016 - 4. Ongoing & future FIWARE activities in Mexico...FIWARE MEXICO WorkShop 2016 - 4. Ongoing & future FIWARE activities in Mexico...
FIWARE MEXICO WorkShop 2016 - 4. Ongoing & future FIWARE activities in Mexico...
 
буклет новий
буклет новийбуклет новий
буклет новий
 
Agency Marketing Innovations
Agency Marketing InnovationsAgency Marketing Innovations
Agency Marketing Innovations
 
Bharti retail.pptx by amandeep
Bharti retail.pptx by amandeepBharti retail.pptx by amandeep
Bharti retail.pptx by amandeep
 

Similaire à We don’t need no stinkin app server! Building a Two-Tier Mobile App

Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comCreating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comJeff Douglas
 
Developing Offline-Capable Apps with the Salesforce Mobile SDK and SmartStore
Developing Offline-Capable Apps with the Salesforce Mobile SDK and SmartStoreDeveloping Offline-Capable Apps with the Salesforce Mobile SDK and SmartStore
Developing Offline-Capable Apps with the Salesforce Mobile SDK and SmartStoreSalesforce Developers
 
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comCreating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comSalesforce Developers
 
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comCreating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comSalesforce Developers
 
Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]Sreeni Pamidala
 
Sukumar Nayak-Agile-DevOps-Cloud Management
Sukumar Nayak-Agile-DevOps-Cloud ManagementSukumar Nayak-Agile-DevOps-Cloud Management
Sukumar Nayak-Agile-DevOps-Cloud ManagementSukumar Nayak
 
Resume new it_format
Resume new it_formatResume new it_format
Resume new it_formatRajiv Saini
 
Cloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleCloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleMatthew Perrins
 
Salesforce Mobile architecture introduction
Salesforce Mobile architecture introductionSalesforce Mobile architecture introduction
Salesforce Mobile architecture introductionDavid Scruggs
 
Powering your Apps with Cloud Services
Powering your Apps with Cloud ServicesPowering your Apps with Cloud Services
Powering your Apps with Cloud ServicesXpand IT
 
Build, Manage, and Deploy Mobile Apps Faster with App Cloud Mobile
Build, Manage, and Deploy Mobile Apps Faster with App Cloud MobileBuild, Manage, and Deploy Mobile Apps Faster with App Cloud Mobile
Build, Manage, and Deploy Mobile Apps Faster with App Cloud MobileSalesforce Developers
 
z/OS Connect - Overview at the "z Systems Agile Enterprise Development Confer...
z/OS Connect - Overview at the "z Systems Agile Enterprise Development Confer...z/OS Connect - Overview at the "z Systems Agile Enterprise Development Confer...
z/OS Connect - Overview at the "z Systems Agile Enterprise Development Confer...DevOps for Enterprise Systems
 
@@@Resume2016 11 11_v001
@@@Resume2016 11 11_v001@@@Resume2016 11 11_v001
@@@Resume2016 11 11_v001Fred Jabbari
 
Mobile architecture overview
Mobile architecture overviewMobile architecture overview
Mobile architecture overviewDavid Scruggs
 
The App Evolution
The App Evolution The App Evolution
The App Evolution Dev_Events
 

Similaire à We don’t need no stinkin app server! Building a Two-Tier Mobile App (20)

Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comCreating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
 
Developing Offline-Capable Apps with the Salesforce Mobile SDK and SmartStore
Developing Offline-Capable Apps with the Salesforce Mobile SDK and SmartStoreDeveloping Offline-Capable Apps with the Salesforce Mobile SDK and SmartStore
Developing Offline-Capable Apps with the Salesforce Mobile SDK and SmartStore
 
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comCreating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
 
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.comCreating HTML5 Applications with jQuery Mobile, Ruby and Database.com
Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com
 
Brasil Roadshow
Brasil RoadshowBrasil Roadshow
Brasil Roadshow
 
Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]Soa architect summit mobile 2013_mar [compatibility mode]
Soa architect summit mobile 2013_mar [compatibility mode]
 
Sukumar Nayak-Agile-DevOps-Cloud Management
Sukumar Nayak-Agile-DevOps-Cloud ManagementSukumar Nayak-Agile-DevOps-Cloud Management
Sukumar Nayak-Agile-DevOps-Cloud Management
 
Regith Resume
Regith ResumeRegith Resume
Regith Resume
 
Resume new it_format
Resume new it_formatResume new it_format
Resume new it_format
 
Ramji
RamjiRamji
Ramji
 
Exploring the Salesforce REST API
Exploring the Salesforce REST APIExploring the Salesforce REST API
Exploring the Salesforce REST API
 
Cloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer ConsoleCloud Native Patterns with Bluemix Developer Console
Cloud Native Patterns with Bluemix Developer Console
 
Salesforce Mobile architecture introduction
Salesforce Mobile architecture introductionSalesforce Mobile architecture introduction
Salesforce Mobile architecture introduction
 
Powering your Apps with Cloud Services
Powering your Apps with Cloud ServicesPowering your Apps with Cloud Services
Powering your Apps with Cloud Services
 
Build, Manage, and Deploy Mobile Apps Faster with App Cloud Mobile
Build, Manage, and Deploy Mobile Apps Faster with App Cloud MobileBuild, Manage, and Deploy Mobile Apps Faster with App Cloud Mobile
Build, Manage, and Deploy Mobile Apps Faster with App Cloud Mobile
 
App Development Evolution: What has changed?
App Development Evolution: What has changed? App Development Evolution: What has changed?
App Development Evolution: What has changed?
 
z/OS Connect - Overview at the "z Systems Agile Enterprise Development Confer...
z/OS Connect - Overview at the "z Systems Agile Enterprise Development Confer...z/OS Connect - Overview at the "z Systems Agile Enterprise Development Confer...
z/OS Connect - Overview at the "z Systems Agile Enterprise Development Confer...
 
@@@Resume2016 11 11_v001
@@@Resume2016 11 11_v001@@@Resume2016 11 11_v001
@@@Resume2016 11 11_v001
 
Mobile architecture overview
Mobile architecture overviewMobile architecture overview
Mobile architecture overview
 
The App Evolution
The App Evolution The App Evolution
The App Evolution
 

Plus de Pat Patterson

DevOps from the Provider Perspective
DevOps from the Provider PerspectiveDevOps from the Provider Perspective
DevOps from the Provider PerspectivePat Patterson
 
How Imprivata Combines External Data Sources for Business Insights
How Imprivata Combines External Data Sources for Business InsightsHow Imprivata Combines External Data Sources for Business Insights
How Imprivata Combines External Data Sources for Business InsightsPat Patterson
 
Data Integration with Apache Kafka: What, Why, How
Data Integration with Apache Kafka: What, Why, HowData Integration with Apache Kafka: What, Why, How
Data Integration with Apache Kafka: What, Why, HowPat Patterson
 
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...Pat Patterson
 
Dealing with Drift: Building an Enterprise Data Lake
Dealing with Drift: Building an Enterprise Data LakeDealing with Drift: Building an Enterprise Data Lake
Dealing with Drift: Building an Enterprise Data LakePat Patterson
 
Integrating with Einstein Analytics
Integrating with Einstein AnalyticsIntegrating with Einstein Analytics
Integrating with Einstein AnalyticsPat Patterson
 
Efficient Schemas in Motion with Kafka and Schema Registry
Efficient Schemas in Motion with Kafka and Schema RegistryEfficient Schemas in Motion with Kafka and Schema Registry
Efficient Schemas in Motion with Kafka and Schema RegistryPat Patterson
 
Dealing With Drift - Building an Enterprise Data Lake
Dealing With Drift - Building an Enterprise Data LakeDealing With Drift - Building an Enterprise Data Lake
Dealing With Drift - Building an Enterprise Data LakePat Patterson
 
Building Data Pipelines with Spark and StreamSets
Building Data Pipelines with Spark and StreamSetsBuilding Data Pipelines with Spark and StreamSets
Building Data Pipelines with Spark and StreamSetsPat Patterson
 
Adaptive Data Cleansing with StreamSets and Cassandra
Adaptive Data Cleansing with StreamSets and CassandraAdaptive Data Cleansing with StreamSets and Cassandra
Adaptive Data Cleansing with StreamSets and CassandraPat Patterson
 
Building Custom Big Data Integrations
Building Custom Big Data IntegrationsBuilding Custom Big Data Integrations
Building Custom Big Data IntegrationsPat Patterson
 
Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?Pat Patterson
 
Open Source Big Data Ingestion - Without the Heartburn!
Open Source Big Data Ingestion - Without the Heartburn!Open Source Big Data Ingestion - Without the Heartburn!
Open Source Big Data Ingestion - Without the Heartburn!Pat Patterson
 
Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?Pat Patterson
 
All Aboard the Boxcar! Going Beyond the Basics of REST
All Aboard the Boxcar! Going Beyond the Basics of RESTAll Aboard the Boxcar! Going Beyond the Basics of REST
All Aboard the Boxcar! Going Beyond the Basics of RESTPat Patterson
 
Provisioning IDaaS - Using SCIM to Enable Cloud Identity
Provisioning IDaaS - Using SCIM to Enable Cloud IdentityProvisioning IDaaS - Using SCIM to Enable Cloud Identity
Provisioning IDaaS - Using SCIM to Enable Cloud IdentityPat Patterson
 
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)Pat Patterson
 
Enterprise IoT: Data in Context
Enterprise IoT: Data in ContextEnterprise IoT: Data in Context
Enterprise IoT: Data in ContextPat Patterson
 
OData: A Standard API for Data Access
OData: A Standard API for Data AccessOData: A Standard API for Data Access
OData: A Standard API for Data AccessPat Patterson
 
API-Driven Relationships: Building The Trans-Internet Express of the Future
API-Driven Relationships: Building The Trans-Internet Express of the FutureAPI-Driven Relationships: Building The Trans-Internet Express of the Future
API-Driven Relationships: Building The Trans-Internet Express of the FuturePat Patterson
 

Plus de Pat Patterson (20)

DevOps from the Provider Perspective
DevOps from the Provider PerspectiveDevOps from the Provider Perspective
DevOps from the Provider Perspective
 
How Imprivata Combines External Data Sources for Business Insights
How Imprivata Combines External Data Sources for Business InsightsHow Imprivata Combines External Data Sources for Business Insights
How Imprivata Combines External Data Sources for Business Insights
 
Data Integration with Apache Kafka: What, Why, How
Data Integration with Apache Kafka: What, Why, HowData Integration with Apache Kafka: What, Why, How
Data Integration with Apache Kafka: What, Why, How
 
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...
 
Dealing with Drift: Building an Enterprise Data Lake
Dealing with Drift: Building an Enterprise Data LakeDealing with Drift: Building an Enterprise Data Lake
Dealing with Drift: Building an Enterprise Data Lake
 
Integrating with Einstein Analytics
Integrating with Einstein AnalyticsIntegrating with Einstein Analytics
Integrating with Einstein Analytics
 
Efficient Schemas in Motion with Kafka and Schema Registry
Efficient Schemas in Motion with Kafka and Schema RegistryEfficient Schemas in Motion with Kafka and Schema Registry
Efficient Schemas in Motion with Kafka and Schema Registry
 
Dealing With Drift - Building an Enterprise Data Lake
Dealing With Drift - Building an Enterprise Data LakeDealing With Drift - Building an Enterprise Data Lake
Dealing With Drift - Building an Enterprise Data Lake
 
Building Data Pipelines with Spark and StreamSets
Building Data Pipelines with Spark and StreamSetsBuilding Data Pipelines with Spark and StreamSets
Building Data Pipelines with Spark and StreamSets
 
Adaptive Data Cleansing with StreamSets and Cassandra
Adaptive Data Cleansing with StreamSets and CassandraAdaptive Data Cleansing with StreamSets and Cassandra
Adaptive Data Cleansing with StreamSets and Cassandra
 
Building Custom Big Data Integrations
Building Custom Big Data IntegrationsBuilding Custom Big Data Integrations
Building Custom Big Data Integrations
 
Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?
 
Open Source Big Data Ingestion - Without the Heartburn!
Open Source Big Data Ingestion - Without the Heartburn!Open Source Big Data Ingestion - Without the Heartburn!
Open Source Big Data Ingestion - Without the Heartburn!
 
Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?
 
All Aboard the Boxcar! Going Beyond the Basics of REST
All Aboard the Boxcar! Going Beyond the Basics of RESTAll Aboard the Boxcar! Going Beyond the Basics of REST
All Aboard the Boxcar! Going Beyond the Basics of REST
 
Provisioning IDaaS - Using SCIM to Enable Cloud Identity
Provisioning IDaaS - Using SCIM to Enable Cloud IdentityProvisioning IDaaS - Using SCIM to Enable Cloud Identity
Provisioning IDaaS - Using SCIM to Enable Cloud Identity
 
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
 
Enterprise IoT: Data in Context
Enterprise IoT: Data in ContextEnterprise IoT: Data in Context
Enterprise IoT: Data in Context
 
OData: A Standard API for Data Access
OData: A Standard API for Data AccessOData: A Standard API for Data Access
OData: A Standard API for Data Access
 
API-Driven Relationships: Building The Trans-Internet Express of the Future
API-Driven Relationships: Building The Trans-Internet Express of the FutureAPI-Driven Relationships: Building The Trans-Internet Express of the Future
API-Driven Relationships: Building The Trans-Internet Express of the Future
 

Dernier

Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
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
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationSafe Software
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
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
 
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
 
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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
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
 
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
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?XfilesPro
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
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
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 

Dernier (20)

Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
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
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry InnovationBeyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
Beyond Boundaries: Leveraging No-Code Solutions for Industry Innovation
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
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
 
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
 
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 ...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
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
 
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...
 
How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?How to Remove Document Management Hurdles with X-Docs?
How to Remove Document Management Hurdles with X-Docs?
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 

We don’t need no stinkin app server! Building a Two-Tier Mobile App

  • 1. We Don’t Need No Stinkin’ App Server! Building a Two-Tier Mobile App Pat Patterson @metadaddy Principal Developer Evangelist salesforce.com
  • 2. Safe Harbor Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K filed on March 9, 2012 and in other filings with the Securities and Exchange Commission. These documents are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 3. Agenda • Database-as-a-Service • Hybrid Mobile App Frameworks • Combining the two approaches for rapid mobile app development
  • 4. Agenda • Database-as-a-Service • Hybrid Mobile App Frameworks • Combining the two approaches for rapid mobile app development
  • 13. 2-Tier Architecture iOS Android
  • 14. 2-Tier Architecture database.com iOS SimpleDB/DynamoDB Android GAE Datastore CouchDB MongoDB …
  • 15. RESTful Database API Resource Name URI Description Versions / List of supported API versions Resources by /vXX.X/ Available resources for this version Version Describe Global /vXX.X/sobjects/ Available objects and metadata SObject Basic Info /vXX.X/sobjects/SObject/ Metadata for object SObject Describe /vXX.X/sobjects/SObject/describe/ Metadata for object fields etc SObject Rows /vXX.X/sobjects/SObject/id/ Access record by native ID SObject Rows by /vXX.X/sobjects/SObject/fieldName/fieldValue Access record by external ID External ID User Password /vXX.X/sobjects/User/userId/password Set/reset user password Query /vXX.X/query/?q=soql SOQL query Search /vXX.X/search/?s=sosl SOSL query http://www.salesforce.com/us/developer/docs/dbcom_api_rest/index.htm
  • 16. Agenda • Database-as-a-Service • Hybrid Mobile App Frameworks • Combining the two approaches for rapid mobile app development
  • 17. Agenda • Database-as-a-Service • Hybrid Mobile App Frameworks • Combining the two approaches for rapid mobile app development
  • 18. Mobile App Spectrum Native Hybrid Web HTML5 + HTML5 + Objective C / CSS + CSS + Java JavaScript JavaScript
  • 19. Atwood’s Law “Any application that can be written in JavaScript, will eventually be written in JavaScript.” http://www.codinghorror.com/blog/2007/07/the-principle-of-least-power.html
  • 20. Proof Point: LinkedIn iPad App “Yes, only one screen in the entire LinkedIn iPad app is actually native. The rest is good ol’ HTML5-based mobile web technology, running in the browser.” http://venturebeat.com/2012/05/02/linkedin-ipad-app-engineering/
  • 21. Hybrid Mobile App Platforms • Apache Cordova (aka [Adobe] PhoneGap) • Trigger.io • Appcelerator Titanium • Ansca Corona • Many, many, more – http://en.wikipedia.org/wiki/Mobile_application_development
  • 22. Salesforce Mobile SDK • Hybrid support built on PhoneGap 1.2 + OAuth 2.0 built in + JavaScript binding to database.com REST API • Current Version 1.1 – Added Secure Offline API, more flexible OAuth 2.0 and more • Version 1.2 coming soon – Adds PIN protection, session timeout and more 2012 1.0 1.1 1.2 Dec 2011 Mar 2012 Soon! • And…
  • 24. Agenda • Database-as-a-Service • Hybrid Mobile App Frameworks • Combining the two approaches for rapid mobile app development
  • 25. Agenda • Database-as-a-Service • Hybrid Mobile App Frameworks • Combining the two approaches for rapid mobile app development
  • 27. Conclusion • Database-as-a-Service can dramatically simplify your web app’s back end • Frameworks such as Apache Cordova accelerate mobile app development • Combine the two for rapid mobile app development
  • 28. Thank You! Pat Patterson @metadaddy Principal Developer Evangelist salesforce.com

Notes de l'éditeur

  1. The traditional 3-tier architecture – web server, app server, database.
  2. Back in the days of Web 1.0, we served up web pages to browsers…
  3. …this required lots of code on the app server to retrieve data from the database and render it into those web pages, but very little code in the browser.
  4. Web 2.0 brought Ajax, so the amount of code in the browser increased as JavaScript retrieved data from the app server. Code on the app server shrank, since it was easier to return data than render a page.
  5. Now, websites such as Twitter use the page as a vehicle for a complete JavaScript web app that does all the retrieval and rendering of data. The back end shrinks again.
  6. Mobile enters the mix, and mobile apps running on the device do away with web pages altogether…
  7. …so you no longer need the web tier. The app server is reduced to marshalling data in and out of the database. What if the database itself spoke JSON over HTTP?
  8. This is the basis of the 2-tier architecture – app executing on the device interacting directly with a Database-as-a-Service. Still some code in the back-end for data validation, actions on triggers etc.
  9. Technology on the device is iOS or Android. I’ve heard there are other alternatives, but I rarely see them!
  10. A plethora of choices for the back end. These are all online services that talk JSON-over-HTTP.
  11. Every element of data and metadata in database.com is accessible by an HTTP operation on a URL.
  12. Native apps look great, perform well, but are more difficult to write than web apps. Web apps, on the other hand, can’t access device functionality such as the camera. Hybrid mobile app platforms such as PhoneGap offer a middle way – write your app in HTML/CSS/JS, but get access to device features, and package the app for distribution via the AppStore.
  13. https://github.com/forcedotcom/SalesforceMobileSDK-iOShttps://github.com/forcedotcom/SalesforceMobileSDK-Androidhttps://github.com/forcedotcom/SalesforceMobileSDK-Samples