SlideShare une entreprise Scribd logo
1  sur  27
Get in touch n.roche@ucl.ac.uk
APIs: A Mobile
Developer’s Perspective
Niall Roche
@niallroche
• Background
• Brief History of Mobile & APIs
• Mobile API Good Practice
• API issues for Mobile
• BaaS
• Future API Considerations
Agenda
• Mobile Developer - pretty much every platform!
• Lecturer in Distributed and Mobile Computing
• UCL Decide - building App Lab Digital Testbed
• Tech Trainer
• Mentor at
Background
“Helping London’s entrepreneurs test, iterate and
launch their ideas”
DECIDE services include:
•Open Device Lab
•User Experience Expertise
•App Store – closed testing service
Get in touch at decide@ucl.ac.uk
UCL Decide
@ucldecide
• Occasionally Connected / Disconnected
• High Latency & network congestion
• Low or varying Bandwidth
• Battery Issues
• Storage Restrictions
• Processing Restrictions
Mobile Issues
• Small screen sizes and bad browsers - bad HTML support
• No easy way to get content out of DB or existing system
• Solution was to extract content by Screen Scraping
• Horrible selection rules in Regex
• Pages broke if content changed (and it usually did!)
• Needed to repurpose content to be mobile friendly
• Or alternatively maintain Two different versions of content
• Web version and Mobile version
A Brief History of Mobile
• Two major changes happened
• Mobile Changed
• Devices, browsers and networks got better
• Mobile Internet became usable
• Backends Changed
• Along came Web Services then APIs then REST APIs
• Life became easier!
A Brief History of Mobile
WebsiteWebsite
Dat
a
Desktop
Browser
Desktop
Browser
HTM
L
Adaptive
Website
Adaptive
Website
Dat
a
Desktop
Browser
Desktop
Browser
Mobile
Browser
Mobile
Browser
WML
/XHTML-
MP
HTM
L
WebsiteWebsite
Dat
a
Mobile
Browser
Mobile
Browser
ProxyProxy
WML
/XHTML-
MP
HTM
L
HTML
Desktop
Browser
Desktop
Browser
WebsiteWebsite
Dat
a
Mobile
Browser
Mobile
Browser
ProxyProxy
WML
/XHTML-
MP
HTM
L
WebsiteWebsite
Dat
a
Mobile AppMobile App
ProxyProxy
XML /
Text /
JSON
HTM
L
WebsiteWebsite
Dat
a
Mobile AppMobile App ServerServer
HTM
LDesktop
Browser
Desktop
Browser
XML /
Text /
JSON
ServerServer
Dat
a
BrowserBrowser
Web
Server
Web
Server
JSON
APIAPI
HTML /
CSS
JavaScript
ServerServer
Dat
a
Mobile
App
Mobile
App
JSON
APIAPI
• Data entry still a bit issue for users, help to avoid typing
• reactive autocomplete like Google search
• Interactions should not be bursty, not chatty
• bad for the battery
• do more with a single interaction
• not too much in a failure scenario!
• Reactive to the network type do more on WiFi
• Check if EDGE vs LTE or measure throughput
Mobile API Good Practice
• Use lightweight data exchanges JSON / BSON
• no SOAP please!
• Consider just sending the data that has changed only
• Design APIs to make Entities cacheable when offline
• Design to be easy to sync data and effectively recover
from interruption - this is not easy!
• Support cross platform, with apis and samples
• Http pipeline - make more of the bandwidth you have
Mobile API Good Practice
HTTP
Reques
t
HTTP
Respons
e
HTTP
Reques
t
HTTP
Respons
e
• Don't have APIs that are not easy to test or to mock out
• No polling please! Bad in general, terrible on mobile
• Users access services from multiple devices &
concurrently
• desktop & multiple mobile
• don’t presume a single connection, adapt accordingly
• Don’t push what has already been seen
• Don’t Fetch a large set of results at once
• could vary based on device or network or user pattern
API issues for Mobile
• BaaS great to start with and for simple apps and
prototyping - more time to concentrate on the App
• Push integration is a must - key for Mobile, keeps
users engaged
• handling the plumbing around managing device ids
• manage Apple/Google/Microsoft API integration
• Need SDK & samples for major platforms & HTML5
• Use Appropriate and Secure Storage & Authentication
• Offer Offline & Sync and your developers will love you!
BaaS
• Great in the beginning but have medium-term issues
• When app needs to go beyond basic CRUD
• e.g. take action once entity added deleted updated
• Problems with migrating data into other systems
• Customisation beyond functions in the platform or
extras that can be purchased
BaaS issues for Mobile
• The Web is changing
• Offline Apps - Chrome WebApps
• WebSockets - Push (Server Send Events)
• SPDY (HTTP 2.0)
• priority on Web Requests
• Leaner with less headers
• The Growth of Wearables and Embedded / M2M
• Back to small (no) screens, limited processing
API Future Considerations
• Amazon AppStream - GUI in the cloud for streaming UIs
• Api for rendering complex User Interfaces at sever-side
• Shows potential of the future, older cheaper mobile devices that
can handle rich content
• Trend early towards updatable apps,
• ease of pulling down new logic or app updates are now a
patch
• rather than a complete replacement and down in background
API Future Considerations
Julia Shalet, Product Doctor 1
27
#needtoknowmobile for hipsters, hustlers & hackers
Next Evening Programme:
25th
March – 27th
May 2014
Shoreditch, London
“…Brilliant insights from industry pros, fresh thinking, interesting contacts,
a new understanding of what it means to be 'mobile‘…”
CPD Accredited, hosted by UCL & Mobile Monday London
20% Discount Code: Niall

Contenu connexe

Tendances

Why Enterprises Are Embracing the Cloud
Why Enterprises Are Embracing the CloudWhy Enterprises Are Embracing the Cloud
Why Enterprises Are Embracing the CloudRandy Shoup
 
Building Networked Apps
Building Networked AppsBuilding Networked Apps
Building Networked AppsSean Meador
 
Making the case for Play Framework and Scala- Budapest Ping-Conf (2014)
Making the case for Play Framework and Scala- Budapest Ping-Conf (2014)Making the case for Play Framework and Scala- Budapest Ping-Conf (2014)
Making the case for Play Framework and Scala- Budapest Ping-Conf (2014)ajevans
 
When small problems become big problems
When small problems become big problemsWhen small problems become big problems
When small problems become big problemsAdrian Cole
 
Ultra-scale e-Commerce Transaction Services with Lean Middleware
Ultra-scale e-Commerce Transaction Services with Lean Middleware Ultra-scale e-Commerce Transaction Services with Lean Middleware
Ultra-scale e-Commerce Transaction Services with Lean Middleware WSO2
 
DevOpsDays Silicon Valley 2014 - The Game of Operations
DevOpsDays Silicon Valley 2014 - The Game of OperationsDevOpsDays Silicon Valley 2014 - The Game of Operations
DevOpsDays Silicon Valley 2014 - The Game of OperationsRandy Shoup
 
Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014AuraPlayer
 
Phonedeck Developers' Introduction - Salesforce Meetup Berlin
Phonedeck Developers' Introduction - Salesforce Meetup BerlinPhonedeck Developers' Introduction - Salesforce Meetup Berlin
Phonedeck Developers' Introduction - Salesforce Meetup BerlinGergő Ertli
 
Stream upload and asynchronous job processing in large scale systems
Stream upload and asynchronous job processing  in large scale systemsStream upload and asynchronous job processing  in large scale systems
Stream upload and asynchronous job processing in large scale systemsZalo_app
 
PWAs and their place in order @ Frontend.Sphere 2018
PWAs and their place in order @ Frontend.Sphere 2018PWAs and their place in order @ Frontend.Sphere 2018
PWAs and their place in order @ Frontend.Sphere 2018Mateusz Ziarko
 
User percieved performance
User percieved performanceUser percieved performance
User percieved performanceMike North
 
Accelerated Mobile Pages
Accelerated Mobile PagesAccelerated Mobile Pages
Accelerated Mobile PagesJayaseelan cp
 
Rest in Practice, Brazil 2010
Rest in Practice, Brazil 2010Rest in Practice, Brazil 2010
Rest in Practice, Brazil 2010Thoughtworks
 
SenchaCon 2016: Creating a Flexible and Usable Industry Specific Solution - D...
SenchaCon 2016: Creating a Flexible and Usable Industry Specific Solution - D...SenchaCon 2016: Creating a Flexible and Usable Industry Specific Solution - D...
SenchaCon 2016: Creating a Flexible and Usable Industry Specific Solution - D...Sencha
 
Tech for the Non Technical - Anatomy of an Application Stack
Tech for the Non Technical - Anatomy of an Application StackTech for the Non Technical - Anatomy of an Application Stack
Tech for the Non Technical - Anatomy of an Application StackIntelligent_ly
 
Basecamp presentation
Basecamp presentationBasecamp presentation
Basecamp presentationAnumadil1
 
Splunk MINT for Mobile Intelligence
Splunk MINT for Mobile IntelligenceSplunk MINT for Mobile Intelligence
Splunk MINT for Mobile IntelligenceSplunk
 
iPad Development Slides #ilta12
iPad Development Slides #ilta12iPad Development Slides #ilta12
iPad Development Slides #ilta12Ike Ellis
 
SenchaCon 2016: Web Development at the Speed of Thought: Succeeding in the Ap...
SenchaCon 2016: Web Development at the Speed of Thought: Succeeding in the Ap...SenchaCon 2016: Web Development at the Speed of Thought: Succeeding in the Ap...
SenchaCon 2016: Web Development at the Speed of Thought: Succeeding in the Ap...Sencha
 

Tendances (20)

Why Enterprises Are Embracing the Cloud
Why Enterprises Are Embracing the CloudWhy Enterprises Are Embracing the Cloud
Why Enterprises Are Embracing the Cloud
 
Building Networked Apps
Building Networked AppsBuilding Networked Apps
Building Networked Apps
 
Making the case for Play Framework and Scala- Budapest Ping-Conf (2014)
Making the case for Play Framework and Scala- Budapest Ping-Conf (2014)Making the case for Play Framework and Scala- Budapest Ping-Conf (2014)
Making the case for Play Framework and Scala- Budapest Ping-Conf (2014)
 
When small problems become big problems
When small problems become big problemsWhen small problems become big problems
When small problems become big problems
 
Ultra-scale e-Commerce Transaction Services with Lean Middleware
Ultra-scale e-Commerce Transaction Services with Lean Middleware Ultra-scale e-Commerce Transaction Services with Lean Middleware
Ultra-scale e-Commerce Transaction Services with Lean Middleware
 
DevOpsDays Silicon Valley 2014 - The Game of Operations
DevOpsDays Silicon Valley 2014 - The Game of OperationsDevOpsDays Silicon Valley 2014 - The Game of Operations
DevOpsDays Silicon Valley 2014 - The Game of Operations
 
Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014Bring Your Legacy Applications to the Mobile World - DOAG 2014
Bring Your Legacy Applications to the Mobile World - DOAG 2014
 
Phonedeck Developers' Introduction - Salesforce Meetup Berlin
Phonedeck Developers' Introduction - Salesforce Meetup BerlinPhonedeck Developers' Introduction - Salesforce Meetup Berlin
Phonedeck Developers' Introduction - Salesforce Meetup Berlin
 
Stream upload and asynchronous job processing in large scale systems
Stream upload and asynchronous job processing  in large scale systemsStream upload and asynchronous job processing  in large scale systems
Stream upload and asynchronous job processing in large scale systems
 
PWAs and their place in order @ Frontend.Sphere 2018
PWAs and their place in order @ Frontend.Sphere 2018PWAs and their place in order @ Frontend.Sphere 2018
PWAs and their place in order @ Frontend.Sphere 2018
 
User percieved performance
User percieved performanceUser percieved performance
User percieved performance
 
Accelerated Mobile Pages
Accelerated Mobile PagesAccelerated Mobile Pages
Accelerated Mobile Pages
 
Rest in Practice, Brazil 2010
Rest in Practice, Brazil 2010Rest in Practice, Brazil 2010
Rest in Practice, Brazil 2010
 
SenchaCon 2016: Creating a Flexible and Usable Industry Specific Solution - D...
SenchaCon 2016: Creating a Flexible and Usable Industry Specific Solution - D...SenchaCon 2016: Creating a Flexible and Usable Industry Specific Solution - D...
SenchaCon 2016: Creating a Flexible and Usable Industry Specific Solution - D...
 
Tech for the Non Technical - Anatomy of an Application Stack
Tech for the Non Technical - Anatomy of an Application StackTech for the Non Technical - Anatomy of an Application Stack
Tech for the Non Technical - Anatomy of an Application Stack
 
ppt-basecamp
ppt-basecampppt-basecamp
ppt-basecamp
 
Basecamp presentation
Basecamp presentationBasecamp presentation
Basecamp presentation
 
Splunk MINT for Mobile Intelligence
Splunk MINT for Mobile IntelligenceSplunk MINT for Mobile Intelligence
Splunk MINT for Mobile Intelligence
 
iPad Development Slides #ilta12
iPad Development Slides #ilta12iPad Development Slides #ilta12
iPad Development Slides #ilta12
 
SenchaCon 2016: Web Development at the Speed of Thought: Succeeding in the Ap...
SenchaCon 2016: Web Development at the Speed of Thought: Succeeding in the Ap...SenchaCon 2016: Web Development at the Speed of Thought: Succeeding in the Ap...
SenchaCon 2016: Web Development at the Speed of Thought: Succeeding in the Ap...
 

En vedette

Ελεύθερο Λογισμικό
Ελεύθερο ΛογισμικόΕλεύθερο Λογισμικό
Ελεύθερο Λογισμικόdroula_
 
Presentación victoria_yovicha
Presentación victoria_yovichaPresentación victoria_yovicha
Presentación victoria_yovichaAlma Monreal
 
Oferta de medicamentos gratuitos freia crescimento de internações por diabetes
Oferta de medicamentos gratuitos freia crescimento de internações por diabetesOferta de medicamentos gratuitos freia crescimento de internações por diabetes
Oferta de medicamentos gratuitos freia crescimento de internações por diabetesMinistério da Saúde
 
2017 Chevrolet Silverado Catalog
2017 Chevrolet Silverado Catalog2017 Chevrolet Silverado Catalog
2017 Chevrolet Silverado CatalogRessler Motors
 
Conteneurs et stockage Palamatic Process
Conteneurs et stockage Palamatic ProcessConteneurs et stockage Palamatic Process
Conteneurs et stockage Palamatic ProcessPalamatic process
 
Vidange big bags Palamatic Process
Vidange big bags Palamatic ProcessVidange big bags Palamatic Process
Vidange big bags Palamatic ProcessPalamatic process
 
Diferencias transcripcion eucariotas procariotas
Diferencias transcripcion eucariotas procariotasDiferencias transcripcion eucariotas procariotas
Diferencias transcripcion eucariotas procariotasEducación
 
Tendencias de los medios sociales 2016
Tendencias de los medios sociales 2016Tendencias de los medios sociales 2016
Tendencias de los medios sociales 2016Carlos Jiménez
 
Andrea Angosto_portfolio
Andrea Angosto_portfolioAndrea Angosto_portfolio
Andrea Angosto_portfolioAndrea Angosto
 

En vedette (11)

Unidad 3
Unidad 3Unidad 3
Unidad 3
 
Ελεύθερο Λογισμικό
Ελεύθερο ΛογισμικόΕλεύθερο Λογισμικό
Ελεύθερο Λογισμικό
 
Presentación victoria_yovicha
Presentación victoria_yovichaPresentación victoria_yovicha
Presentación victoria_yovicha
 
CRM
CRMCRM
CRM
 
Oferta de medicamentos gratuitos freia crescimento de internações por diabetes
Oferta de medicamentos gratuitos freia crescimento de internações por diabetesOferta de medicamentos gratuitos freia crescimento de internações por diabetes
Oferta de medicamentos gratuitos freia crescimento de internações por diabetes
 
2017 Chevrolet Silverado Catalog
2017 Chevrolet Silverado Catalog2017 Chevrolet Silverado Catalog
2017 Chevrolet Silverado Catalog
 
Conteneurs et stockage Palamatic Process
Conteneurs et stockage Palamatic ProcessConteneurs et stockage Palamatic Process
Conteneurs et stockage Palamatic Process
 
Vidange big bags Palamatic Process
Vidange big bags Palamatic ProcessVidange big bags Palamatic Process
Vidange big bags Palamatic Process
 
Diferencias transcripcion eucariotas procariotas
Diferencias transcripcion eucariotas procariotasDiferencias transcripcion eucariotas procariotas
Diferencias transcripcion eucariotas procariotas
 
Tendencias de los medios sociales 2016
Tendencias de los medios sociales 2016Tendencias de los medios sociales 2016
Tendencias de los medios sociales 2016
 
Andrea Angosto_portfolio
Andrea Angosto_portfolioAndrea Angosto_portfolio
Andrea Angosto_portfolio
 

Similaire à API Architecture Summit 2014- APIs: A Mobile Developer's Perspective

Mobile gotcha
Mobile gotchaMobile gotcha
Mobile gotchaphegaro
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Nuxeo
 
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
Building Enterprise Grade Front-End Applications with JavaScript FrameworksBuilding Enterprise Grade Front-End Applications with JavaScript Frameworks
Building Enterprise Grade Front-End Applications with JavaScript FrameworksFITC
 
Five Early Challenges Of Building Streaming Fast Data Applications
Five Early Challenges Of Building Streaming Fast Data ApplicationsFive Early Challenges Of Building Streaming Fast Data Applications
Five Early Challenges Of Building Streaming Fast Data ApplicationsLightbend
 
Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Jeremy Likness
 
Service Architectures at Scale
Service Architectures at ScaleService Architectures at Scale
Service Architectures at ScaleRandy Shoup
 
Building rich interface components with SharePoint
Building rich interface components with SharePointBuilding rich interface components with SharePoint
Building rich interface components with SharePointLouis-Philippe Lavoie
 
Understanding Microservices
Understanding Microservices Understanding Microservices
Understanding Microservices M A Hossain Tonu
 
Designing your API Server for mobile apps
Designing your API Server for mobile appsDesigning your API Server for mobile apps
Designing your API Server for mobile appsMugunth Kumar
 
What ya gonna do?
What ya gonna do?What ya gonna do?
What ya gonna do?CQD
 
Cloud Services Powered by IBM SoftLayer and NetflixOSS
Cloud Services Powered by IBM SoftLayer and NetflixOSSCloud Services Powered by IBM SoftLayer and NetflixOSS
Cloud Services Powered by IBM SoftLayer and NetflixOSSaspyker
 
How to be Successful with Responsive Sites (Koombea & NGINX) - English
How to be Successful with Responsive Sites (Koombea & NGINX) - EnglishHow to be Successful with Responsive Sites (Koombea & NGINX) - English
How to be Successful with Responsive Sites (Koombea & NGINX) - EnglishKoombea
 
Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)
Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)
Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)VMware Tanzu
 
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJSSrijan Technologies
 
oracle ebs free web service integration tools
oracle ebs free web service integration toolsoracle ebs free web service integration tools
oracle ebs free web service integration toolsSmartDog Services
 
Eric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler
 
All about that reactive ui
All about that reactive uiAll about that reactive ui
All about that reactive uiPaul van Zyl
 
Lessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptxLessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptxapidays
 
Contract-Based Web Services API Deep Dive
Contract-Based Web Services API Deep DiveContract-Based Web Services API Deep Dive
Contract-Based Web Services API Deep DiveGabriel Michaud
 

Similaire à API Architecture Summit 2014- APIs: A Mobile Developer's Perspective (20)

Mobile gotcha
Mobile gotchaMobile gotcha
Mobile gotcha
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
Building Enterprise Grade Front-End Applications with JavaScript FrameworksBuilding Enterprise Grade Front-End Applications with JavaScript Frameworks
Building Enterprise Grade Front-End Applications with JavaScript Frameworks
 
Five Early Challenges Of Building Streaming Fast Data Applications
Five Early Challenges Of Building Streaming Fast Data ApplicationsFive Early Challenges Of Building Streaming Fast Data Applications
Five Early Challenges Of Building Streaming Fast Data Applications
 
Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!Single Page Applications: Your Browser is the OS!
Single Page Applications: Your Browser is the OS!
 
Service Architectures at Scale
Service Architectures at ScaleService Architectures at Scale
Service Architectures at Scale
 
Building rich interface components with SharePoint
Building rich interface components with SharePointBuilding rich interface components with SharePoint
Building rich interface components with SharePoint
 
Understanding Microservices
Understanding Microservices Understanding Microservices
Understanding Microservices
 
Designing your API Server for mobile apps
Designing your API Server for mobile appsDesigning your API Server for mobile apps
Designing your API Server for mobile apps
 
What ya gonna do?
What ya gonna do?What ya gonna do?
What ya gonna do?
 
Cloud Services Powered by IBM SoftLayer and NetflixOSS
Cloud Services Powered by IBM SoftLayer and NetflixOSSCloud Services Powered by IBM SoftLayer and NetflixOSS
Cloud Services Powered by IBM SoftLayer and NetflixOSS
 
How to be Successful with Responsive Sites (Koombea & NGINX) - English
How to be Successful with Responsive Sites (Koombea & NGINX) - EnglishHow to be Successful with Responsive Sites (Koombea & NGINX) - English
How to be Successful with Responsive Sites (Koombea & NGINX) - English
 
Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)
Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)
Cloud Foundry Compared With Other PaaSes (Cloud Foundry Summit 2014)
 
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
[Srijan Wednesday Webinars] Developing Large Scale Applications in AngularJS
 
oracle ebs free web service integration tools
oracle ebs free web service integration toolsoracle ebs free web service integration tools
oracle ebs free web service integration tools
 
Eric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New ContextsEric Proegler Oredev Performance Testing in New Contexts
Eric Proegler Oredev Performance Testing in New Contexts
 
Mobile APIs in Practice
Mobile APIs in PracticeMobile APIs in Practice
Mobile APIs in Practice
 
All about that reactive ui
All about that reactive uiAll about that reactive ui
All about that reactive ui
 
Lessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptxLessons learned on the Azure API Stewardship Journey.pptx
Lessons learned on the Azure API Stewardship Journey.pptx
 
Contract-Based Web Services API Deep Dive
Contract-Based Web Services API Deep DiveContract-Based Web Services API Deep Dive
Contract-Based Web Services API Deep Dive
 

Plus de Niall Roche

Architectural Considerations for Startups
Architectural Considerations for StartupsArchitectural Considerations for Startups
Architectural Considerations for StartupsNiall Roche
 
App testing and publishing
App testing and publishingApp testing and publishing
App testing and publishingNiall Roche
 
UCL M.Sc. Technology Entrepreneurship 2015 - Analytics
UCL M.Sc. Technology Entrepreneurship 2015 -  AnalyticsUCL M.Sc. Technology Entrepreneurship 2015 -  Analytics
UCL M.Sc. Technology Entrepreneurship 2015 - AnalyticsNiall Roche
 
UCL M.Sc. Technology Entrepreneurship 2015 - Launching Digital Products
UCL M.Sc. Technology Entrepreneurship 2015 -  Launching Digital ProductsUCL M.Sc. Technology Entrepreneurship 2015 -  Launching Digital Products
UCL M.Sc. Technology Entrepreneurship 2015 - Launching Digital ProductsNiall Roche
 
Mobile Devs of London Meetup April 2016- Analytics
Mobile Devs of London Meetup April 2016- AnalyticsMobile Devs of London Meetup April 2016- Analytics
Mobile Devs of London Meetup April 2016- AnalyticsNiall Roche
 
Wearables Europe 2015 - Designing for Wearables
Wearables Europe 2015 - Designing for WearablesWearables Europe 2015 - Designing for Wearables
Wearables Europe 2015 - Designing for WearablesNiall Roche
 

Plus de Niall Roche (6)

Architectural Considerations for Startups
Architectural Considerations for StartupsArchitectural Considerations for Startups
Architectural Considerations for Startups
 
App testing and publishing
App testing and publishingApp testing and publishing
App testing and publishing
 
UCL M.Sc. Technology Entrepreneurship 2015 - Analytics
UCL M.Sc. Technology Entrepreneurship 2015 -  AnalyticsUCL M.Sc. Technology Entrepreneurship 2015 -  Analytics
UCL M.Sc. Technology Entrepreneurship 2015 - Analytics
 
UCL M.Sc. Technology Entrepreneurship 2015 - Launching Digital Products
UCL M.Sc. Technology Entrepreneurship 2015 -  Launching Digital ProductsUCL M.Sc. Technology Entrepreneurship 2015 -  Launching Digital Products
UCL M.Sc. Technology Entrepreneurship 2015 - Launching Digital Products
 
Mobile Devs of London Meetup April 2016- Analytics
Mobile Devs of London Meetup April 2016- AnalyticsMobile Devs of London Meetup April 2016- Analytics
Mobile Devs of London Meetup April 2016- Analytics
 
Wearables Europe 2015 - Designing for Wearables
Wearables Europe 2015 - Designing for WearablesWearables Europe 2015 - Designing for Wearables
Wearables Europe 2015 - Designing for Wearables
 

Dernier

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
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
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...apidays
 

Dernier (20)

How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
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
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 

API Architecture Summit 2014- APIs: A Mobile Developer's Perspective

  • 1. Get in touch n.roche@ucl.ac.uk APIs: A Mobile Developer’s Perspective Niall Roche @niallroche
  • 2. • Background • Brief History of Mobile & APIs • Mobile API Good Practice • API issues for Mobile • BaaS • Future API Considerations Agenda
  • 3. • Mobile Developer - pretty much every platform! • Lecturer in Distributed and Mobile Computing • UCL Decide - building App Lab Digital Testbed • Tech Trainer • Mentor at Background
  • 4. “Helping London’s entrepreneurs test, iterate and launch their ideas” DECIDE services include: •Open Device Lab •User Experience Expertise •App Store – closed testing service Get in touch at decide@ucl.ac.uk UCL Decide @ucldecide
  • 5. • Occasionally Connected / Disconnected • High Latency & network congestion • Low or varying Bandwidth • Battery Issues • Storage Restrictions • Processing Restrictions Mobile Issues
  • 6. • Small screen sizes and bad browsers - bad HTML support • No easy way to get content out of DB or existing system • Solution was to extract content by Screen Scraping • Horrible selection rules in Regex • Pages broke if content changed (and it usually did!) • Needed to repurpose content to be mobile friendly • Or alternatively maintain Two different versions of content • Web version and Mobile version A Brief History of Mobile
  • 7. • Two major changes happened • Mobile Changed • Devices, browsers and networks got better • Mobile Internet became usable • Backends Changed • Along came Web Services then APIs then REST APIs • Life became easier! A Brief History of Mobile
  • 8.
  • 14. WebsiteWebsite Dat a Mobile AppMobile App ServerServer HTM LDesktop Browser Desktop Browser XML / Text / JSON
  • 17.
  • 18. • Data entry still a bit issue for users, help to avoid typing • reactive autocomplete like Google search • Interactions should not be bursty, not chatty • bad for the battery • do more with a single interaction • not too much in a failure scenario! • Reactive to the network type do more on WiFi • Check if EDGE vs LTE or measure throughput Mobile API Good Practice
  • 19. • Use lightweight data exchanges JSON / BSON • no SOAP please! • Consider just sending the data that has changed only • Design APIs to make Entities cacheable when offline • Design to be easy to sync data and effectively recover from interruption - this is not easy! • Support cross platform, with apis and samples • Http pipeline - make more of the bandwidth you have Mobile API Good Practice
  • 22. • Don't have APIs that are not easy to test or to mock out • No polling please! Bad in general, terrible on mobile • Users access services from multiple devices & concurrently • desktop & multiple mobile • don’t presume a single connection, adapt accordingly • Don’t push what has already been seen • Don’t Fetch a large set of results at once • could vary based on device or network or user pattern API issues for Mobile
  • 23. • BaaS great to start with and for simple apps and prototyping - more time to concentrate on the App • Push integration is a must - key for Mobile, keeps users engaged • handling the plumbing around managing device ids • manage Apple/Google/Microsoft API integration • Need SDK & samples for major platforms & HTML5 • Use Appropriate and Secure Storage & Authentication • Offer Offline & Sync and your developers will love you! BaaS
  • 24. • Great in the beginning but have medium-term issues • When app needs to go beyond basic CRUD • e.g. take action once entity added deleted updated • Problems with migrating data into other systems • Customisation beyond functions in the platform or extras that can be purchased BaaS issues for Mobile
  • 25. • The Web is changing • Offline Apps - Chrome WebApps • WebSockets - Push (Server Send Events) • SPDY (HTTP 2.0) • priority on Web Requests • Leaner with less headers • The Growth of Wearables and Embedded / M2M • Back to small (no) screens, limited processing API Future Considerations
  • 26. • Amazon AppStream - GUI in the cloud for streaming UIs • Api for rendering complex User Interfaces at sever-side • Shows potential of the future, older cheaper mobile devices that can handle rich content • Trend early towards updatable apps, • ease of pulling down new logic or app updates are now a patch • rather than a complete replacement and down in background API Future Considerations
  • 27. Julia Shalet, Product Doctor 1 27 #needtoknowmobile for hipsters, hustlers & hackers Next Evening Programme: 25th March – 27th May 2014 Shoreditch, London “…Brilliant insights from industry pros, fresh thinking, interesting contacts, a new understanding of what it means to be 'mobile‘…” CPD Accredited, hosted by UCL & Mobile Monday London 20% Discount Code: Niall

Notes de l'éditeur

  1. Our alumni have gone on to receive awards, establish important partnerships, receive early stage funding, get jobs they want & get to the top of the App stores.