Building Enterprise Apps Rapidly with Salesforce Mobile Packs Webinar


Published on

Mobile has revolutionized the way we live and work and enterprises are demanding mobile business apps for their always-connected, mobile workforce. Salesforce Platform Mobile Services, announced in early April, gave developers two sets of tools to rise to the challenge - version 2.0 of the Salesforce Mobile SDK, and Salesforce Mobile Packs, a set of templates for writing web and hybrid mobile applications with HTML5, JavaScript and CSS using frameworks such as AngularJS, Backbone.js and jQuery Mobile. This webinar focuses on the Mobile Packs, but stay tuned for a future webinar on Mobile SDK 2.0.

In this webinar, Pat and Raja will explain the differences between the Mobile Packs currently offered, show you how to get started on your own mobile app, and give you pointers on building a great app with web technologies. Join us to learn all about:

Client-side JavaScript Model-View-* frameworks
Running the Mobile Pack templates on, off-platform web servers and as hybrid apps
Building your own mobile app using a Mobile Pack as the foundation

We'll start from the basics, so whether you're experienced with and looking to get started with mobile apps and JavaScript, or vice versa, join us, grab the Mobile Packs from GitHub, and start coding!

Published in: Technology, Business
  • Be the first to comment

No Downloads
Total views
On SlideShare
From Embeds
Number of Embeds
Embeds 0
No embeds

No notes for slide

Building Enterprise Apps Rapidly with Salesforce Mobile Packs Webinar

  1. 1. Building Enterprise Apps Rapidlywith Salesforce Mobile PacksPat Patterson,, Principal Developer Evangelist@metadaddyRaja Rao DV,, Developer Evangelist@rajaraodv
  2. 2. Join the conversation: #forcewebinarSafe 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 uncertaintiesmaterialize or if any of the assumptions proves incorrect, the results of, inc. could differ materially from the resultsexpressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could bedeemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or otherfinancial items and any statements regarding strategies or plans of management for future operations, statements of belief, anystatements 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 newfunctionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in ouroperating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome ofintellectual property and other litigation, risks associated with possible mergers and acquisitions, the immature market in which weoperate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, newreleases of our service and successful customer deployment, our limited history reselling products, and utilizationand selling to larger enterprise customers. Further information on potential factors that could affect the financial results of,inc. is included in our annual report on Form 10-Q for the most recent fiscal quarter ended July 31, 2012. This documents and otherscontaining 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 currentlyavailable and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions basedupon features that are currently available., inc. assumes no obligation and does not intend to update these forward-looking statements.
  3. 3. Join the conversation: #forcewebinarJoin the conversation: #forcewebinarPat PattersonPrincipal DeveloperEvangelist,@metadaddyRaja Rao DVDeveloper Evangelist,@rajaraodvSpeakers
  4. 4. Join the conversation: #forcewebinarFollow Developer Force for the latest news@forcedotcom / #forcewebinarDeveloper Force groupDeveloper Force – Community+Developer Force – CommunityDeveloper Force
  5. 5. Join the conversation: #forcewebinarJoin the conversation: #forcewebinarHave questions?§  We have an expert support team at the ready to answer yourquestions during the webinar.§  Ask your questions via the GoToWebinar Questions Pane.§  The speaker(s) will choose top questions to answer live at theend of the webinar.§  Please post your questions as we go along!§  Only post your question once; we’ll get to it as we go down thelist.
  6. 6. Join the conversation: #forcewebinarJoin the conversation: #forcewebinarAgenda§  Mobile at Salesforce•  Core Apps•  Platform•  Marketplace§  Mobile Pack for AngularJS•  AngularJS in 15 Minutes•  Overview of the Mobile Pack§  Roundup
  7. 7. Join the conversation: #forcewebinarJoin the conversation: #forcewebinarAssumptionsThis webinar assumes the following:§ Some minimal knowledge of the Force.complatform§ Some minimal knowledge of JavaScriptBut don t worry, this is an introduction to MobilePacks and AngularJS – we won t leave you behind!
  8. 8. Join the conversation: #forcewebinarWe’re living in the post-PC eraiPhone RevenueQ1 FY12$24.42 billionTOTAL Microsoft RevenueQ2 FY12$20.89 billion>
  9. 9. Join the conversation: #forcewebinarSuite of downloadable apps foraccessing Salesforce data froma mobile deviceMobile AppExchange fordiscovering purpose-built appsor vertical solutions by industryCustom mobile appsdesigned and built by you oran ISV partnerSalesforce Has The Answer For Every Mobile Need
  10. 10. Join the conversation: #forcewebinarThree Mobile Development Options
  11. 11. Join the conversation: #forcewebinarSalesforce Mobile PacksThe Fastest Path From Idea to Connected Mobile AppIdeaBuild Appwith ModernFrameworksConnectCustomer &Business DataConnectedMobile Apps
  12. 12. Join the conversation: #forcewebinarMobile PacksJumpstart web and hybrid mobile developmentFocus on modern JavaScript frameworksSimplify Salesforce data accessDeploy on the platform or elsewhere(e.g. Heroku)JavaScript basedQuick Starts and tutorials
  13. 13. Join the conversation: #forcewebinarCurrent Mobile PacksFirst of many mobile packs and samplesOpen-source and community driven
  14. 14. Join the conversation: #forcewebinarAngularJSIn 15mins
  15. 15. Join the conversation: #forcewebinarAngularJS – In 15mins§  One of the most popular JavaScript frameworks.§  Provides declarative MVC framework§  Uses several advanced concepts like directives,services, factories, modules, dependency injection etc. tohelp quickly build (& test) production quality apps.§  Has vibrant community support and funded by Google.
  16. 16. Join the conversation: #forcewebinarDirectives§  Directives are simply strings on HTML that represent some function (behind-the-scene).§  They look like:•  <span my-dir="exp"></span> or <span data-my-dir="exp"></span> or <span my-dir></span>!•  <span class="my-dir: exp;"></span>!•  <my-dir></my-dir> //custom element!!•  <!-- directive: my-dir exp --> //Even comments!§  AngularJS calls and keeps track of directives and associated functions.§  AngularJS has tons of built-in directives like ng-model, ng-repeat, ng-click etc.Example 1: Show Hello <name>! as & when the user types in a field.
  17. 17. Join the conversation: #forcewebinarDirectivesExample 2: Show Hello <username> as the user types it BUT only if thereis some text.
  18. 18. Join the conversation: #forcewebinarMVC
  19. 19. Join the conversation: #forcewebinarng-controllers, $scope & $rootScopesdf<div ng-controller= topBarCtrl >has its own $scope </div><div ng-controller=“LeftBarCtrl”>// has its own$scope</div><div ng-controller=“MainCtrl”>//has it’s own $scope</div><html ng-app= appName > $rootScope •  Use Controller to divide up your app•  Every Controller gets its own $scope.•  $scope is an empty object w/ AngularJS functions.•  $rootScope is a global object.function toolbarCtrl($rootScope, $scope) {!$rootScope.loggedIn = true; //visible to all ctrls!$scope.somFunc = function() {};!$scope.contactsList = [{}, {}, {}];!}!!function mainCtrl($rootScope, $scope) {!if($rootScope.loggedIn) { //use $rootScope!//do something!}!$scope.onItemClick = function() { … } ! !}!!Module.controller( LeftBarCtr , function() {});!A tablet app
  20. 20. Join the conversation: #forcewebinarSingle page app – ng-view<div ng-view></div>Contact Edit Page (edit.html)!<div ng-controller= EditCtrl ></div>!!Contacts DetailsView Page (view.html)!<div ng-controller= ViewCtrl ></div>!!Contacts List Page (list.html)!<div ng-controller= ListCtrl ></div>!!Main Page (index.html)<script src= bla.js ></script>!!<div ng-view> //Directive that allows switching different views!!!!!!!!!!!!!!</div>!
  21. 21. Join the conversation: #forcewebinar$routeProvider & $location “services” to switch views§  Angular provides ‘#’ based routing via $routeProvider.§  Configure when some #path is hit, which controller to use and which view to inject.§  Use $location to actually change views inside a controller.
  22. 22. Join the conversation: #forcewebinarModules – Packaging it all up§  Modules provides namespace & help divide your app into different pieces.var myModule = angular.module( myModule’, [‘dependentMod1’,‘dependantMod2’]);!§  You can create and attach custom directives , controllers , services , factories etc to amodule.myModule.directive(…) or myModule.controller(…) etc.§  In AngularJS, your app itself is a module.var myApp = angular.module(‘myAppName’, [depMod1, depMod2]!§  Note: App name should match ng-app in html!.<html ng-app=“myAppName”>!</html>!
  23. 23. Join the conversation: #forcewebinarJoin the conversation: #forcewebinarBest places to learn AngularJS..§•  AngularJS Tutorial§•  Excellent 44 short videos from @johnlindquist§•  AngularJS Youtube Channel
  24. 24. Join the conversation: #forcewebinarAngularJSMobilePack
  25. 25. Join the conversation: #forcewebinarJoin the conversation: #forcewebinarRecap & Resources§  AngularJS provides declarative MVC via directives•  Less code = more quality, quicker development.•  Learn more:• - AngularJS Tutorial• - 44 short videos from @johnlindquist• AngularJS Youtube Channel§  Other tools mentioned in the webinar:• - Grunt: JavaScript Task Runner• - Yeoman: Workflow for Modern Webapps
  26. 26. Join the conversation: #forcewebinarJoin the conversation: #forcewebinarRecap & Resources§  AngularJS Mobile Pack provides a template tokickstart your development•• Start§  Sign up for a FREE Developer Edition account•
  27. 27. Join the conversation: #forcewebinarJoin the conversation: #forcewebinarNext Steps§  Get further acquainted with AngularJS§  Run through the Mobile Pack Quick Start(s)§  Build your own mobile app!
  28. 28. 2013 Mobile Dev ChallengeMay the best mobile app winCreate your killer app with our New Mobile Packs$16,000 up for grabs!
  29. 29. Join the conversation: #forcewebinarJoin the conversation: #forcewebinarQ&APat PattersonPrincipal DeveloperEvangelist,@metadaddyRaja Rao DVDeveloper Evangelist,@rajaraodv