Creating HTML5 Applications with jQuery Mobile, Ruby and Database.com

Preview:

DESCRIPTION

Dreamforce 2012

Citation preview

Creating HTML5 Applications withjQuery Mobile, Ruby andDatabase.comDeveloper Track

Senior Technical Consultant, Appirio & Platform Architect, CloudSpokes

@jeffdonthemic

Safe harborSafe 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 product or service availability, 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, new products and services, 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 outcome of intellectual property and other litigation, risks associated with possible mergers and acquisitions, 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, our limited history reselling non-salesforce.com products, 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-Q for the most recent fiscal quarter ended July 31, 2012. This documents and others containing important disclosures 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 presentations, 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.

Jeff Douglas

Senior Technical Consultant, Appirio

Platform Architect, CloudSpokes

Co-Author, “Salesforce Handbook”

& “Beginning Java Google App Engine”

http://blog.jeffdouglas.com

@jeffdonthemic

Appirio Helps Enterprises Power Their Business withPublic Cloud Solutions

4

Technology-enabled professional services, supported by 500 cloud experts and

a 50,000+ cloud developer community

Helping Enterprises Become:

Efficient Effective

5 years, 300 enterprises, 1.5M users moved to the cloud

Social MobileAgile

What to walk away with

Strategies for building mobile applications with the Force.com platform.

Mechanics on how to build a jQuery mobile application with

Database.com and Ruby on Rails.

Sample code for your mobile project.

Best practices with Force.com mobile application with Ruby on Rails and

Database.com.

A deep love and appreciation for the Force.com platform.

Agenda

Mobile development strategies

Salesforce Mobile SDK

The “Mobile Chow Finder” application

Technology stack overview• Database.com

• Ruby on Rails

• jQuery Mobile

• Databasedotcom gem

Demo (aka “Show me the code!”)

Native vs. HTML5 vs. Hybrid

Native applications

Pros• Feature rich, look & feel and performance

• Objective-C & Java

• Easy to find applications

• Easy to monetize applications

Cons• Limited to single platform

• Objective-C & Java

• Distribution via Apple App Store and Google Play

HTML5 applications

Pros• A "write one, run many" solution that is cross platform and cross device

• Low barrier to entry - HTML5, CSS3 & JavaScript skills

Cons• Not up to par with the native app experience

“Frameworks”• jQuery Mobile

• Sencha Touch

• jQTouch

Hybrid applications

Pros• Application framework that enables you to build natively installed applications

using HTML, CSS and JavaScript.

• Supports accelerometer, camera, compass, contacts, geolocation, sotification,

storage and more.

• PhoneGap Build – no SDKs to install! Spits out binaries for 7 mobile platforms

• Discover and monetize via App Store and Play

Cons• PhoneGap: Doesn’t look native

• Titanium: Platform specific API via JavaScript for Android & iOS. No HTML or

CSS support.

CloudSpokes HTML5 Apps

Salesforce.com Mobile SDK

Suite of open-source technologies for iOS, Android, HTML5 and hybrid

applications

Sample applications, quick start and webinars

Mobile components for Visualforce

Easy to build jQuery Mobile Visualforce applications

Building the “Mobile Chow Finder”

HTML5 application for service members to find the local “Chow Hall”

Database.com

jQuery Mobile

Ruby on Rails

Geolocation

Store favorites using LocalStorage

jQuery Mobile - View

Super easy! Uses web standard HTML5, CSS3, and JavaScript to easily

develop user interfaces for mobile web apps

Framework built on top of jQuery – EVERYONE loves jQuery!

Provides custom events to detect mobile and touch specific actions like

tap, tap-and-hold, swipe, and orientation change (i.e. rotating the device).

We are just building web pages!!

Database.com - Model

A secure, cloud database for building social and mobile enterprise apps.

Slimmed down version of Force.com database (essentially the Setup

section)• Only custom objects (no CRUD UI)

• Apex classes, triggers & workflow

• Identity & user management plus role and profile security

• Oauth2 & REST baked in

Utilize your favorite Force.com tools

Pricing based upon user licenses, records and transactions

Ruby on Rails - Controller

Great for quickly building social and mobile applications

Leverage thousands of open source packages and frameworks to build

amazing applications.

Databasedotcom Ruby gem• Open source ruby client for accessing REST and Chatter APIs

• Supports OAuth2

• ActiveRecord syntax

• Should be called ‘Forcedotcom’ gem

Host the application on Heroku – WINNING!

Let’s code this sucker up!

Recap – What did we just see?

Strengths and weaknesses of mobile application development strategies.

When to use one versus the other.

The Salesforce.com Mobile SDK embraces all three development

approaches.

Advantages of using Database.com as a data store.

How to quickly and easily develop HTML5 mobile applications using

open source technologies.

Best practices for developing mobile applications.

Jeff Douglas

Senior Technical Consultant, AppirioPlatform Architect, CloudSpokes

@jeffdonthemic

Recommended