• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Amsterdam Titanium User Group - Cloud Services for Apps Nov 2013
 

Amsterdam Titanium User Group - Cloud Services for Apps Nov 2013

on

  • 870 views

 

Statistics

Views

Total Views
870
Views on SlideShare
864
Embed Views
6

Actions

Likes
3
Downloads
13
Comments
0

1 Embed 6

https://twitter.com 6

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Time doesn’t really matter, the important thing here is that there is focus spent there and not on the mobile app
  • Time doesn’t really matter, the important thing here is that there is focus spent there and not on the mobile app
  • Extend the object you created in the Parse admin console, set the properties and call the save method
  • Kinvey allows you to use backbone as your base and then just extend your backbone model with kinvey’s models to get access to there backend; Kinvey like Parse utilizes promises OR callbacks for managing your application structure
  • Kinvey allows you to use backbone as your base and then just extend your backbone model with kinvey’s models to get access to there backend; Kinvey like Parse utilizes promises OR callbacks for managing your application structure
  • Kinvey allows you to use backbone as your base and then just extend your backbone model with kinvey’s models to get access to there backend; Kinvey like Parse utilizes promises OR callbacks for managing your application structure
  • Define the model type and then the specific collection name. we use the collection name in the sync adapter to know how to process the object
  • ----- Meeting Notes (11/5/13 21:13) -----we set the Cloud variable so we have a local instance and then we pass it to the configuration variable so all of the asssociated models using this adapter have access to the ti.cloud library
  • When backbone does it’s magic, it is only concerned with the REST verbs, you need to figure out how to implement your functionality using these verbs.
  • We add the meta data to the object for use later, and create a photo using the same function as the ti.cloud library but get all of the benefits of backbone. You also get seperation of concerns in regards to functionality and flexibility in your implementation since you can always trade out your acs adapter for any other type of adapter
  • We add the meta data to the object for use later, and create a photo using the same function as the ti.cloud library but get all of the benefits of backbone. You also get seperation of concerns in regards to functionality and flexibility in your implementation since you can always trade out your acs adapter for any other type of adapter
  • We add the meta data to the object for use later, and create a photo using the same function as the ti.cloud library but get all of the benefits of backbone. You also get seperation of concerns in regards to functionality and flexibility in your implementation since you can always trade out your acs adapter for any other type of adapter
  • We add the meta data to the object for use later, and create a photo using the same function as the ti.cloud library but get all of the benefits of backbone. You also get seperation of concerns in regards to functionality and flexibility in your implementation since you can always trade out your acs adapter for any other type of adapter
  • All of these options can be easily accessed through the APIs, wrapped in a sync adapter and easily integrated into your application
  • We add the meta data to the object for use later, and create a photo using the same function as the ti.cloud library but get all of the benefits of backbone. You also get seperation of concerns in regards to functionality and flexibility in your implementation since you can always trade out your acs adapter for any other type of adapter

Amsterdam Titanium User Group - Cloud Services for Apps Nov 2013 Amsterdam Titanium User Group - Cloud Services for Apps Nov 2013 Presentation Transcript

  • Amsterdam Titanium Meetup Cloud Services for Apps Aaron K. Saunders CEO Clearly Innovative Inc November 6th 2013
  • Who Am I • CEO Clearly Innovative Inc. mobile development agency specializing in HTML5, javascript & nodejs • Over 20yrs software development experience using mostly open source, java technologies • Appcelerator Partner Platform • 4+ years of working with Appcelerator • Working on book with Appcelerator Cloud Services and Alloy for Wiley & Sons
  • Why Cloud Services • Because You Might Need… – User Management – Social Media Integrations – Push Notifications – Hosting – Server side pre/post processing – Legacy Integrations/Connectors – Blob Storage
  • Where do you go? • • • • • • Hire a developer… Build your own custom API… Find Hosting Provider… Integrate a Push Notifications Server… Find Database Designer/Developer… Why manage all of this chaos!!!
  • Cloud Service Providers
  • Basic Services Provided • APIs Provided – JavaScript, IOS, Android, .NET, REST • Most have a free starter plan – See specific sites for more information • Basic Features Most Have – Custom Objects, Users, Push, Social Integrations, File Storage and Geolocation
  • Parse • Owned by Facebook, some consider it market leader • Features – Cloud Code – Simple Hosting Feature – Free starter Pack – Advanced Console, Great Documentation – POOR Appcelerator Support and responsiveness
  • Stackmob • There is a basic plan but it is rate limited and difficult to determine restrictions without calling support • Differentiators – Provides a marketplace of integrated services – Advanced Custom Code: Java,Scala,Clojure – HTML Hosting – Binary Storage through Amazon S3
  • Kinvey • Success Pricing Model – You only pay if your application is successful • Offline Cache is built into the solution • Custom Business Logic • Third Party Data Integration Feature – Location & Social
  • Appcelerator • Will focus more on Appcelerator in end, but key benefits are – Pre-built components – Fits with the stack if you already use Appcelerator – Node.ACS
  • How Long To Build an App • Kinvey says it takes approximately 18 months to build an app with huge effort spent on backend. • http://www.kinvey.com/blog/2086/how-longdoes-it-take-to-build-a-mobile-app
  • Leverage the Cloud to get to MVP • Even if you don’t stay in cloud forever use it to mitigate risk in early phase of project • Build product and validate assumptions • Conserve budget for value added functionality • Conserve development effort for value added functionality
  • JavaScript, Alloy & ACS • JavaScript is EVERYWHERE • Cross-Platform Mobile development for more efficient development cycles • Integrated Cloud Services Platform to further enhance development cycle efficiencies • Code & expertise utilized on mobile solution, can be leveraged on web application
  • Alloy Benefits • Alloy comes with a clean well defined XML UI markup, style sheets, and reusable widget components. • Built-in Backbone.js and Underscore.js support
  • Backbone.js gives structure to web applications by providing models with key-value binding and custom events, collections with a rich API of enumerable functions, views with declarative event handling, and connects it all to your existing API over a RESTful JSON interface.
  • Backbone In Alloy • Models – Keep track of your data • Collections – Manage lists/arrays of your data • Sync Adapter(s) – Local Storage, SQL, Properties, extendable
  • Alloy Models & Collections • Collections inherit from Backbone.Collections. • Created a simple Javascript object and it is persisted as an model
  • Alloy Sync Adapter • Support for persisting application content • Based on common REST verbs – GET > READ – PUT > UPDATE – POST > CREATE – DELETE > DELETE • Can be integrated with local or remote data stores
  • Saving Models - Parse
  • Saving Models Kinvey
  • Saving Models Kinvey + Alloy • Recommended Approach when integrating with Appcelerator Alloy
  • Saving Models StackMob
  • ACS in Alloy Sync Adapter • We follow the standard Backbone structure to respond to the rest verbs and just include the ti.cloud.js API calls
  • Alloy ACS Model Definition
  • Alloy ACS Sync Adapter • Do some initialization for the adapter and associated models • Provide access to the ti.cloud.js library
  • Alloy ACS Sync Adapter • Handle the Sync entry point • Separate object functionality into distinct functions
  • Alloy ACS Sync Adapter • Creating a Photo using ti.cloud.js
  • Alloy ACS Sync Adapter • Creating a Photo using adapter
  • Use of Adapter in Alloy Code • Creating a Photo using Backbone save
  • Use of Adapter in Alloy Code • Creating a Photo using Backbone save
  • Appcelerator Cloud Services
  • Use of Adapter in Alloy Code • Creating a Photo using Backbone save
  • Node.ACS • Built using NodeJS, ExpressJS under the covers • Build and host custom services to extend Appcelerator Cloud Services (ACS) • Host your existing node.js app/service on the Appcelerator Cloud • Create Node.ACS apps directly from TiStudio http://nodeacs.cloud.appcelerator.com/guides/quickstart
  • Look For the Book Out in January
  • Aaron K Saunders Twitter: @aaronksaunders blog: http://blog.clearlyinnovative.com Facebook: https://www.facebook.com/ClearlyInnovativeInc Github : https://github.com/aaronksaunders/ SlideShare: http://www.slideshare.net/aaronksaunders/ 1706 R Street, NW Washington, DC 20009 www.clearlyinnovative.com