SlideShare una empresa de Scribd logo
1 de 24
Does WebApp come Native to me? ,[object Object],[object Object],[object Object],The Junction Advanced iOS Engineering 28 July, 2011
Agenda ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
So, who is Onavo? Onavo puts smartphone and tablet users in control of their mobile data usage
POC BETA WebApp Launch 05/10 02/11 04/11 WebApp Container + Native
[object Object],[object Object],OnavoApp ’ s evolution
The Challenge A GOOD product Developer Easy-to-make. Impressive. Familiar.  Fast-to-make. As good as others. Pretty. Functional. Best. Worth money. Cross platform. Functional. Wide. Easy-to-update..... Gorgeous. Really-pretty. Free. Easy-to-use. Valuable. Easy-to-install. Cheap. Cool. Recommended by Apple. Common. Unique.  In The AppStore... User
The Challenge Categories of  “ A GOOD product ” ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
The Possibilities  WebApp Container Native
UX  “ A GOOD product ”   categories Pretty good Still, lacks in loading time and responsiveness Amazing ! Also.. the users expect nothing  less. Container Native WebApp
UX  “ A GOOD product ”   categories Pretty good Still, lacks in loading time and responsiveness Amazing ! Also.. the users expect nothing  less. Container Native WebApp I highly recommend using advanced, well-established, amazing frameworks like   Sencha Touch  or  Appcelerator ’ s Titanium Mobile
Native Abilities  “ A GOOD product ”   categories Nope. none. nada.  (some pseudo abilities, but not really)  Fully. Yes we can! Container Native WebApp
Native Abilities  “ A GOOD product ”   categories Nope. none. nada.  (some pseudo abilities, but not really)  Fully. Yes we can! Container Native WebApp * Reminder:   App Purchase / In-App Payments are also a Native Abilities
Distribution “ A GOOD product ”   categories Yes we can! Nope. none. nada.  1,000,000 WebApp users? i don ’ t see it Yes, it ’ s crowded, yes, it ’ s noisy, and you have to work hard to get noticed - but  it ’ s still THE go-to place for users looking for new apps * Must read Apple ’ s guidelines. Container WebApp Native
Distribution “ A GOOD product ”   categories Yes we can! Nope. none. nada.  1,000,000 WebApp users? i don ’ t see it Yes, it ’ s crowded, yes, it ’ s noisy, and you have to work hard to get noticed - but  it ’ s still THE go-to place for users looking for new apps * Must read Apple ’ s guidelines. Container WebApp Native There are nice solution to manage iOS native beta distribution like  TestFlight .
Dynamic “ A GOOD product ”   categories Change it. now bring it back.  now put something new.. Hardly. Apple ’ s approve is required on each-and-every update Like a charm Container Native WebApp
Cross Platform “ A GOOD product ”   categories Well. no. (keep in mind, iOS is a range of devices YES, with a bit more effort As far as possible Container Native WebApp
Cross Platform “ A GOOD product ”   categories Well. no. (keep in mind, iOS is a range of devices YES, with a bit more effort As far as possible Container Native WebApp Frameworks like  Sencha ,  PhoneGap  provide very impressive Cross-Platform. appcelerator ’ s  Titanium Mobile  translates your web code into different, cross-platform native Apps
Development Tools, Community & Support  “ A GOOD product ”   categories Amazing development, design, debugging tools. VAST amount of developers. A bit of both. major part is still developed as Web. Improving tools & frameworks, substantial developers community... until you get stuck *stackoverflow.com is you friend Container Native WebApp
In a nutshell WebApp ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
In a nutshell Offline WebApp Cache Storage CACHE MANIFEST /main/home /main/app.js /settings/home /settings/app.js http://img.example.com/logo.png http://img.example.com/check.pn g http://img.example.com/cross.p ng var db = openDatabase("Database_Name", "Database_Version");  database.executeSql("SELECT * FROM thejunction", function(result1) { database.executeSql("DROP TABLE thejunction", function(result2) { alert("My second database query finished executing!");  });  }); localStorage.setItem( ‘ userName ’ ,  ‘ TheJunction ’ ); alert( “ Hello  “  + localStorage.userName); localStorage.removeItem( ‘ userName ’ );
In a nutshell JS-Native communication Container Native code can set  JS variables and  call it ’ s functions JS code can trigger Native code callback (with params)
Conclusions Lots of Questions to be asked.
My Thoughts Best practices ,[object Object],[object Object],[object Object],[object Object],[object Object],[object Object]
Q & A Nadav Wizman [email_address] @nadavwiz

Más contenido relacionado

La actualidad más candente

Webapps: introduction and publishing on Firefox OS
Webapps: introduction and publishing on Firefox OSWebapps: introduction and publishing on Firefox OS
Webapps: introduction and publishing on Firefox OSJorge Ferreiro
 
Cost of iPhone Apps - InfoBeans iPhone app development practice
Cost of iPhone Apps - InfoBeans iPhone app development practiceCost of iPhone Apps - InfoBeans iPhone app development practice
Cost of iPhone Apps - InfoBeans iPhone app development practiceInfoBeans Technologies Ltd.
 
Automated Visual Testing That Does Not Suck
Automated Visual Testing That Does Not SuckAutomated Visual Testing That Does Not Suck
Automated Visual Testing That Does Not Suckadamcarmi
 
Building desktop apps in 2016
Building desktop apps in 2016Building desktop apps in 2016
Building desktop apps in 2016Giovanni Frigo
 
PSU Web 2014: UX and Design Tools That Will Improve Your Productivity
PSU Web 2014: UX and Design Tools That Will Improve Your ProductivityPSU Web 2014: UX and Design Tools That Will Improve Your Productivity
PSU Web 2014: UX and Design Tools That Will Improve Your ProductivityJennifer Aldrich
 
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
 

La actualidad más candente (10)

Angular Connect
Angular ConnectAngular Connect
Angular Connect
 
Evaluation 6
Evaluation 6Evaluation 6
Evaluation 6
 
Webapps: introduction and publishing on Firefox OS
Webapps: introduction and publishing on Firefox OSWebapps: introduction and publishing on Firefox OS
Webapps: introduction and publishing on Firefox OS
 
Cost of iPhone Apps - InfoBeans iPhone app development practice
Cost of iPhone Apps - InfoBeans iPhone app development practiceCost of iPhone Apps - InfoBeans iPhone app development practice
Cost of iPhone Apps - InfoBeans iPhone app development practice
 
Evaluation 6
Evaluation 6Evaluation 6
Evaluation 6
 
Automated Visual Testing That Does Not Suck
Automated Visual Testing That Does Not SuckAutomated Visual Testing That Does Not Suck
Automated Visual Testing That Does Not Suck
 
Building desktop apps in 2016
Building desktop apps in 2016Building desktop apps in 2016
Building desktop apps in 2016
 
PSU Web 2014: UX and Design Tools That Will Improve Your Productivity
PSU Web 2014: UX and Design Tools That Will Improve Your ProductivityPSU Web 2014: UX and Design Tools That Will Improve Your Productivity
PSU Web 2014: UX and Design Tools That Will Improve Your Productivity
 
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)
 
Making Apps Awesomer
Making Apps AwesomerMaking Apps Awesomer
Making Apps Awesomer
 

Destacado

Onavo presentation @ International Startup Festival 2011
Onavo presentation @ International Startup Festival 2011Onavo presentation @ International Startup Festival 2011
Onavo presentation @ International Startup Festival 2011Startupfest
 
Mise à jour de Windows Live Messenger à Skype
Mise à jour de Windows Live Messenger à SkypeMise à jour de Windows Live Messenger à Skype
Mise à jour de Windows Live Messenger à SkypeSkype
 
Quip buyer-persona-kit
Quip buyer-persona-kitQuip buyer-persona-kit
Quip buyer-persona-kitquip marketing
 
How to Create a Social Media strategy
How to Create a Social Media strategyHow to Create a Social Media strategy
How to Create a Social Media strategyDebbie O'Connor
 
Social Media Success: Creating & Implementing a Social Media Plan!
Social Media Success: Creating & Implementing a Social Media Plan! Social Media Success: Creating & Implementing a Social Media Plan!
Social Media Success: Creating & Implementing a Social Media Plan! Rachel Eichen
 
Social Media Strategic Planning
Social Media Strategic PlanningSocial Media Strategic Planning
Social Media Strategic PlanningBrian Huonker
 
Building a Social Media Plan that Gets Results
Building a Social Media Plan that Gets ResultsBuilding a Social Media Plan that Gets Results
Building a Social Media Plan that Gets ResultsKrista Neher
 
Strategic Social Media Management 2009
Strategic Social Media Management 2009Strategic Social Media Management 2009
Strategic Social Media Management 2009Kami Watson Huyse, APR
 
Building or Re-envisioning a Social Media Plan
Building or Re-envisioning a Social Media PlanBuilding or Re-envisioning a Social Media Plan
Building or Re-envisioning a Social Media PlanWest Muse
 
How to Create a Cohesive Social Media Marketing Plan
How to Create a Cohesive Social Media Marketing PlanHow to Create a Cohesive Social Media Marketing Plan
How to Create a Cohesive Social Media Marketing PlanCindy Kim
 
247Shouts Social Media Marketing Plan
247Shouts Social Media Marketing Plan247Shouts Social Media Marketing Plan
247Shouts Social Media Marketing Plan247Shouts
 
Create a Solid Social Media Plan to Get More Business
Create a Solid Social Media Plan to Get More BusinessCreate a Solid Social Media Plan to Get More Business
Create a Solid Social Media Plan to Get More BusinessMarki Lemons Ryhal
 
Create Your First Social Media Content Plan in 3 Simple Steps
Create Your First Social Media Content Plan in 3 Simple StepsCreate Your First Social Media Content Plan in 3 Simple Steps
Create Your First Social Media Content Plan in 3 Simple StepsAli Mirza
 
How To Create A #SocialMedia Plan From Scratch
How To Create A #SocialMedia Plan From ScratchHow To Create A #SocialMedia Plan From Scratch
How To Create A #SocialMedia Plan From ScratchHeba AlSamt
 
Principles of social media marketing
Principles of social media marketingPrinciples of social media marketing
Principles of social media marketingAndrew Cavallaro
 
How to create a social media strategy
How to create a social media strategyHow to create a social media strategy
How to create a social media strategyCarlo Angelo Gonzales
 
Social Amplification - Secrets of the trade
Social Amplification - Secrets of the tradeSocial Amplification - Secrets of the trade
Social Amplification - Secrets of the tradeMiel Van Opstal
 
Social Media Strategies Summit: How to Create an Effective Social Media Plan ...
Social Media Strategies Summit: How to Create an Effective Social Media Plan ...Social Media Strategies Summit: How to Create an Effective Social Media Plan ...
Social Media Strategies Summit: How to Create an Effective Social Media Plan ...Elly Deutch Moody
 
How to Create a Successful Social Media Marketing Action Plan for B2B Business
How to Create a Successful Social Media Marketing Action Plan for B2B BusinessHow to Create a Successful Social Media Marketing Action Plan for B2B Business
How to Create a Successful Social Media Marketing Action Plan for B2B BusinessDigital Vidya
 
How to create a social media strategy
How to create a social media strategyHow to create a social media strategy
How to create a social media strategyDavid Griner
 

Destacado (20)

Onavo presentation @ International Startup Festival 2011
Onavo presentation @ International Startup Festival 2011Onavo presentation @ International Startup Festival 2011
Onavo presentation @ International Startup Festival 2011
 
Mise à jour de Windows Live Messenger à Skype
Mise à jour de Windows Live Messenger à SkypeMise à jour de Windows Live Messenger à Skype
Mise à jour de Windows Live Messenger à Skype
 
Quip buyer-persona-kit
Quip buyer-persona-kitQuip buyer-persona-kit
Quip buyer-persona-kit
 
How to Create a Social Media strategy
How to Create a Social Media strategyHow to Create a Social Media strategy
How to Create a Social Media strategy
 
Social Media Success: Creating & Implementing a Social Media Plan!
Social Media Success: Creating & Implementing a Social Media Plan! Social Media Success: Creating & Implementing a Social Media Plan!
Social Media Success: Creating & Implementing a Social Media Plan!
 
Social Media Strategic Planning
Social Media Strategic PlanningSocial Media Strategic Planning
Social Media Strategic Planning
 
Building a Social Media Plan that Gets Results
Building a Social Media Plan that Gets ResultsBuilding a Social Media Plan that Gets Results
Building a Social Media Plan that Gets Results
 
Strategic Social Media Management 2009
Strategic Social Media Management 2009Strategic Social Media Management 2009
Strategic Social Media Management 2009
 
Building or Re-envisioning a Social Media Plan
Building or Re-envisioning a Social Media PlanBuilding or Re-envisioning a Social Media Plan
Building or Re-envisioning a Social Media Plan
 
How to Create a Cohesive Social Media Marketing Plan
How to Create a Cohesive Social Media Marketing PlanHow to Create a Cohesive Social Media Marketing Plan
How to Create a Cohesive Social Media Marketing Plan
 
247Shouts Social Media Marketing Plan
247Shouts Social Media Marketing Plan247Shouts Social Media Marketing Plan
247Shouts Social Media Marketing Plan
 
Create a Solid Social Media Plan to Get More Business
Create a Solid Social Media Plan to Get More BusinessCreate a Solid Social Media Plan to Get More Business
Create a Solid Social Media Plan to Get More Business
 
Create Your First Social Media Content Plan in 3 Simple Steps
Create Your First Social Media Content Plan in 3 Simple StepsCreate Your First Social Media Content Plan in 3 Simple Steps
Create Your First Social Media Content Plan in 3 Simple Steps
 
How To Create A #SocialMedia Plan From Scratch
How To Create A #SocialMedia Plan From ScratchHow To Create A #SocialMedia Plan From Scratch
How To Create A #SocialMedia Plan From Scratch
 
Principles of social media marketing
Principles of social media marketingPrinciples of social media marketing
Principles of social media marketing
 
How to create a social media strategy
How to create a social media strategyHow to create a social media strategy
How to create a social media strategy
 
Social Amplification - Secrets of the trade
Social Amplification - Secrets of the tradeSocial Amplification - Secrets of the trade
Social Amplification - Secrets of the trade
 
Social Media Strategies Summit: How to Create an Effective Social Media Plan ...
Social Media Strategies Summit: How to Create an Effective Social Media Plan ...Social Media Strategies Summit: How to Create an Effective Social Media Plan ...
Social Media Strategies Summit: How to Create an Effective Social Media Plan ...
 
How to Create a Successful Social Media Marketing Action Plan for B2B Business
How to Create a Successful Social Media Marketing Action Plan for B2B BusinessHow to Create a Successful Social Media Marketing Action Plan for B2B Business
How to Create a Successful Social Media Marketing Action Plan for B2B Business
 
How to create a social media strategy
How to create a social media strategyHow to create a social media strategy
How to create a social media strategy
 

Similar a Advanced iOS Engineering - The Junction Talk

Offline of web applications
Offline of web applicationsOffline of web applications
Offline of web applicationsFDConf
 
Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014Jan Jongboom
 
Using PhoneGap to develop incredible HTML5 hybrid mobile apps
Using PhoneGap to develop incredible HTML5 hybrid mobile appsUsing PhoneGap to develop incredible HTML5 hybrid mobile apps
Using PhoneGap to develop incredible HTML5 hybrid mobile appsMonaca
 
The FT Web App: Coding Responsively
The FT Web App: Coding ResponsivelyThe FT Web App: Coding Responsively
The FT Web App: Coding ResponsivelyC4Media
 
9 reasons why programmers should learn react native
9 reasons why programmers should learn react native9 reasons why programmers should learn react native
9 reasons why programmers should learn react nativeReact Sharing
 
Mobile application development React Native - Tidepool Labs
Mobile application development React Native - Tidepool LabsMobile application development React Native - Tidepool Labs
Mobile application development React Native - Tidepool LabsHarutyun Abgaryan
 
React Native and the future of web technology (Mark Wilcox) - GreeceJS #15
React Native and the future of web technology (Mark Wilcox) - GreeceJS #15React Native and the future of web technology (Mark Wilcox) - GreeceJS #15
React Native and the future of web technology (Mark Wilcox) - GreeceJS #15GreeceJS
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampChris Love
 
React Native Adoption at Bacancy Technology: The Journey from Beginners to Be...
React Native Adoption at Bacancy Technology: The Journey from Beginners to Be...React Native Adoption at Bacancy Technology: The Journey from Beginners to Be...
React Native Adoption at Bacancy Technology: The Journey from Beginners to Be...Katy Slemon
 
HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do ThatNathan Smith
 
How we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we gotHow we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we gotBaruch Sadogursky
 
We’re Going Mobile! Great! Wait… What Does That Mean?
We’re Going Mobile! Great! Wait… What Does That Mean?We’re Going Mobile! Great! Wait… What Does That Mean?
We’re Going Mobile! Great! Wait… What Does That Mean?STC-Philadelphia Metro Chapter
 
Titanium Meetup Deck
Titanium Meetup DeckTitanium Meetup Deck
Titanium Meetup Decksschwarzhoff
 
Cordova + Ionic + MobileFirst
Cordova + Ionic + MobileFirstCordova + Ionic + MobileFirst
Cordova + Ionic + MobileFirstRaymond Camden
 
Keynote- We're going wrong: Choosing the web's future. Peter Paul Koch
Keynote- We're going wrong: Choosing the web's future. Peter Paul KochKeynote- We're going wrong: Choosing the web's future. Peter Paul Koch
Keynote- We're going wrong: Choosing the web's future. Peter Paul KochFuture Insights
 
Intro to tech stacks bonny
Intro to tech stacks bonnyIntro to tech stacks bonny
Intro to tech stacks bonnyLama K Banna
 
iOS Testing With Appium at Gilt
iOS Testing With Appium at GiltiOS Testing With Appium at Gilt
iOS Testing With Appium at GiltGilt Tech Talks
 
React Native - Build Native Mobile App
React Native - Build Native Mobile AppReact Native - Build Native Mobile App
React Native - Build Native Mobile AppMobio Solutions
 
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha TouchJQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha TouchSteve Drucker
 

Similar a Advanced iOS Engineering - The Junction Talk (20)

Offline of web applications
Offline of web applicationsOffline of web applications
Offline of web applications
 
Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014Offline for web - Frontend Dev Conf Minsk 2014
Offline for web - Frontend Dev Conf Minsk 2014
 
Using PhoneGap to develop incredible HTML5 hybrid mobile apps
Using PhoneGap to develop incredible HTML5 hybrid mobile appsUsing PhoneGap to develop incredible HTML5 hybrid mobile apps
Using PhoneGap to develop incredible HTML5 hybrid mobile apps
 
The FT Web App: Coding Responsively
The FT Web App: Coding ResponsivelyThe FT Web App: Coding Responsively
The FT Web App: Coding Responsively
 
9 reasons why programmers should learn react native
9 reasons why programmers should learn react native9 reasons why programmers should learn react native
9 reasons why programmers should learn react native
 
NetBeans 6.5
NetBeans 6.5NetBeans 6.5
NetBeans 6.5
 
Mobile application development React Native - Tidepool Labs
Mobile application development React Native - Tidepool LabsMobile application development React Native - Tidepool Labs
Mobile application development React Native - Tidepool Labs
 
React Native and the future of web technology (Mark Wilcox) - GreeceJS #15
React Native and the future of web technology (Mark Wilcox) - GreeceJS #15React Native and the future of web technology (Mark Wilcox) - GreeceJS #15
React Native and the future of web technology (Mark Wilcox) - GreeceJS #15
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
 
React Native Adoption at Bacancy Technology: The Journey from Beginners to Be...
React Native Adoption at Bacancy Technology: The Journey from Beginners to Be...React Native Adoption at Bacancy Technology: The Journey from Beginners to Be...
React Native Adoption at Bacancy Technology: The Journey from Beginners to Be...
 
HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do That
 
How we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we gotHow we took our server side application to the cloud and liked what we got
How we took our server side application to the cloud and liked what we got
 
We’re Going Mobile! Great! Wait… What Does That Mean?
We’re Going Mobile! Great! Wait… What Does That Mean?We’re Going Mobile! Great! Wait… What Does That Mean?
We’re Going Mobile! Great! Wait… What Does That Mean?
 
Titanium Meetup Deck
Titanium Meetup DeckTitanium Meetup Deck
Titanium Meetup Deck
 
Cordova + Ionic + MobileFirst
Cordova + Ionic + MobileFirstCordova + Ionic + MobileFirst
Cordova + Ionic + MobileFirst
 
Keynote- We're going wrong: Choosing the web's future. Peter Paul Koch
Keynote- We're going wrong: Choosing the web's future. Peter Paul KochKeynote- We're going wrong: Choosing the web's future. Peter Paul Koch
Keynote- We're going wrong: Choosing the web's future. Peter Paul Koch
 
Intro to tech stacks bonny
Intro to tech stacks bonnyIntro to tech stacks bonny
Intro to tech stacks bonny
 
iOS Testing With Appium at Gilt
iOS Testing With Appium at GiltiOS Testing With Appium at Gilt
iOS Testing With Appium at Gilt
 
React Native - Build Native Mobile App
React Native - Build Native Mobile AppReact Native - Build Native Mobile App
React Native - Build Native Mobile App
 
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha TouchJQuery Mobile vs Appcelerator Titanium vs Sencha Touch
JQuery Mobile vs Appcelerator Titanium vs Sencha Touch
 

Último

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native ApplicationsWSO2
 
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
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesrafiqahmad00786416
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDropbox
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...Zilliz
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
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
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
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
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxRustici Software
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProduct Anonymous
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024The Digital Insurer
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
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
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
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
 
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
 
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
 

Último (20)

Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
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
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
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
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
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
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 
Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024Manulife - Insurer Transformation Award 2024
Manulife - Insurer Transformation Award 2024
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
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
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
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 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
 
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
 

Advanced iOS Engineering - The Junction Talk

  • 1.
  • 2.
  • 3. So, who is Onavo? Onavo puts smartphone and tablet users in control of their mobile data usage
  • 4. POC BETA WebApp Launch 05/10 02/11 04/11 WebApp Container + Native
  • 5.
  • 6. The Challenge A GOOD product Developer Easy-to-make. Impressive. Familiar. Fast-to-make. As good as others. Pretty. Functional. Best. Worth money. Cross platform. Functional. Wide. Easy-to-update..... Gorgeous. Really-pretty. Free. Easy-to-use. Valuable. Easy-to-install. Cheap. Cool. Recommended by Apple. Common. Unique. In The AppStore... User
  • 7.
  • 8. The Possibilities WebApp Container Native
  • 9. UX “ A GOOD product ” categories Pretty good Still, lacks in loading time and responsiveness Amazing ! Also.. the users expect nothing less. Container Native WebApp
  • 10. UX “ A GOOD product ” categories Pretty good Still, lacks in loading time and responsiveness Amazing ! Also.. the users expect nothing less. Container Native WebApp I highly recommend using advanced, well-established, amazing frameworks like Sencha Touch or Appcelerator ’ s Titanium Mobile
  • 11. Native Abilities “ A GOOD product ” categories Nope. none. nada. (some pseudo abilities, but not really) Fully. Yes we can! Container Native WebApp
  • 12. Native Abilities “ A GOOD product ” categories Nope. none. nada. (some pseudo abilities, but not really) Fully. Yes we can! Container Native WebApp * Reminder: App Purchase / In-App Payments are also a Native Abilities
  • 13. Distribution “ A GOOD product ” categories Yes we can! Nope. none. nada. 1,000,000 WebApp users? i don ’ t see it Yes, it ’ s crowded, yes, it ’ s noisy, and you have to work hard to get noticed - but it ’ s still THE go-to place for users looking for new apps * Must read Apple ’ s guidelines. Container WebApp Native
  • 14. Distribution “ A GOOD product ” categories Yes we can! Nope. none. nada. 1,000,000 WebApp users? i don ’ t see it Yes, it ’ s crowded, yes, it ’ s noisy, and you have to work hard to get noticed - but it ’ s still THE go-to place for users looking for new apps * Must read Apple ’ s guidelines. Container WebApp Native There are nice solution to manage iOS native beta distribution like TestFlight .
  • 15. Dynamic “ A GOOD product ” categories Change it. now bring it back. now put something new.. Hardly. Apple ’ s approve is required on each-and-every update Like a charm Container Native WebApp
  • 16. Cross Platform “ A GOOD product ” categories Well. no. (keep in mind, iOS is a range of devices YES, with a bit more effort As far as possible Container Native WebApp
  • 17. Cross Platform “ A GOOD product ” categories Well. no. (keep in mind, iOS is a range of devices YES, with a bit more effort As far as possible Container Native WebApp Frameworks like Sencha , PhoneGap provide very impressive Cross-Platform. appcelerator ’ s Titanium Mobile translates your web code into different, cross-platform native Apps
  • 18. Development Tools, Community & Support “ A GOOD product ” categories Amazing development, design, debugging tools. VAST amount of developers. A bit of both. major part is still developed as Web. Improving tools & frameworks, substantial developers community... until you get stuck *stackoverflow.com is you friend Container Native WebApp
  • 19.
  • 20. In a nutshell Offline WebApp Cache Storage CACHE MANIFEST /main/home /main/app.js /settings/home /settings/app.js http://img.example.com/logo.png http://img.example.com/check.pn g http://img.example.com/cross.p ng var db = openDatabase("Database_Name", "Database_Version"); database.executeSql("SELECT * FROM thejunction", function(result1) { database.executeSql("DROP TABLE thejunction", function(result2) { alert("My second database query finished executing!"); }); }); localStorage.setItem( ‘ userName ’ , ‘ TheJunction ’ ); alert( “ Hello “ + localStorage.userName); localStorage.removeItem( ‘ userName ’ );
  • 21. In a nutshell JS-Native communication Container Native code can set JS variables and call it ’ s functions JS code can trigger Native code callback (with params)
  • 22. Conclusions Lots of Questions to be asked.
  • 23.
  • 24. Q & A Nadav Wizman [email_address] @nadavwiz