Upload
kopertop
View
632
Download
1
Embed Size (px)
DESCRIPTION
Chris Moyer's guest lecture on Mobile and Clo
Citation preview
How CloudComputing changed Mobile Development
Chris MoyerVP of Technology @ Newstex, LLC
Monday, October 1, 12
Who am I?
✦ Author
✦ Building Applications in the Cloud
✦ Not just about AWS, but cloud computing “patterns” in general
Monday, October 1, 12
Author
✦ Now available in multiple languages
✦ Available through Amazon.com
Monday, October 1, 12
Newstex VP
✦ VP of Technology: Newstex, LLC
✦ Took Newstex from a datacenter to AWS
✦ All applications run entirely within AWS
Monday, October 1, 12
Mobile + CloudMonday, October 1, 12
What is a cloud service?
Monday, October 1, 12
Do you have a smartphone or
tablet?
Monday, October 1, 12
The original Mobile Phone
Radio Common Carrier
1960s by AT&T
Voice only
Monday, October 1, 12
Smartphones - Business only
Blackberry introduces a phone with Email
Lets you keep in contact with the office outside the office
Allows you to be mobile
Monday, October 1, 12
Smartphones for everyone!
Smartphones for normal people
“Apps” become more useful then the phone
Usage shifts
“Mobile” doesn’t just mean “phone” anymore
Monday, October 1, 12
What do you use your mobile for?
Monday, October 1, 12
Data usage increasing
Monday, October 1, 12
Faster processors use more battery
Small - Not a desktop
Use less power
Produce less heat
Don’t process:
Background Tasks
Expensive Tasks
Monday, October 1, 12
Selling a service, not an application
Applications have short lifespan
Services give you paying customers forever
Think “World of Warcraft” vs “Warcraft 3”
Monday, October 1, 12
But where do I run these tasks?
Traditional DCs don’t scale
Users may jump from 500 to 5 million overnight
Users may drop, need to be flexible
Monday, October 1, 12
Offloading data/processing to a CloudElastic back-end
Scale when you get more users
Network accessible
Allow localized access
Monday, October 1, 12
Lets put everything on the backend!
HTML5 Only apps
HTML5 is slow
Not everything is “standard”
Not all devices deserve the same layout
Transmitting data + layout over high-latency networks
Monday, October 1, 12
How often are you on-the-go with your
mobile?
Monday, October 1, 12
Speed is everythingMonday, October 1, 12
LTE “Speed”Monday, October 1, 12
Mobile networksLatency is much higher
Users pay for data usage
Networks are unreliable
Minimal offline functionality
Monday, October 1, 12
Big Data, Big analytics
Monday, October 1, 12
Tracking: Device or API?Track on Device:
Interactions
User Workflow
Track in API:
API Calls
Usage statistics
Monday, October 1, 12
What about the User?
Monday, October 1, 12
Mobile devices are disposable
Phones get lost, destroyed, or stolen
Enterprise:
Prevent unauthorized access on stolen devices
Protect your data
Monday, October 1, 12
Sync everywhere
One login, any device
Makes you mobile
Use services, not apps
“My data is in the cloud”
Monday, October 1, 12
Newstex System
External ServicesReal Time updates
Push notifications
Email notifications
Social Sharing
Monday, October 1, 12
Newstex’s Solution
Monday, October 1, 12
One API to rule them all?
Not all devices have the same “workflow”
Not all devices authenticate the same
API developer and client developer disconnect
Monday, October 1, 12
Taking a cue from Netflix
Different APIs for different clients
One underlying API with different adapters
Client Adapter written specifically for each development team
Monday, October 1, 12
Newstex API
CloudSearch DynamoDB SimpleDB S3
Web Adapter
Device Adapter
AdaptersPlug in Cloud Services to Centralized API
Build adapters on top of this API for individual use-cases
Web adapter - HTTP/REST + JSON
Mobile devices: Socket + XDR
Monday, October 1, 12
REST is not always bestVersion 1:
REST + JSON
Slow
Lots of overhead
Not Bandwidth efficient
No Sessions
Text parsing is expensive on mobile
Monday, October 1, 12
Custom APIsVersion 2:
Custom “Socket” API
Simple XDR based output
Compact data representation
Fast - Session based
Cheap to decode
Monday, October 1, 12
DNS
us-west
us-east
eu-west
Request RoutingLocation-based DNS
Takes you to the closest servers
Reduce latency
Synchronize databases
Monday, October 1, 12
We’re hiring!
newstex.com/about/jobs
Web Developers
Mobile Developers
Python Developers
Monday, October 1, 12