SlideShare uma empresa Scribd logo
1 de 31
What We Learned From
Porting 50+ Cloud Apps
to Tizen
Dima Malenko, Vlad Pavlov,
rollApp Inc.
2
Tizen is an open source, standards-based software platform…
From tizen.org
3
• Access to the Internet
• Ability to do office productivity tasks
What are the “must have” features for a computing
platform?
4
What is the most popular office productivity solution in the
world?
over 1,000,000,000 users
5
What is the second most popular office productivity
solution in the world?
over 100,000,000 users
6
How long will it take to port these
apps to new platform like Tizen?
7
We made
more than 50 popular desktop
apps
available on Tizen
in about 3 months
rollApp: cloud
applications
platform
9
• Supports Linux, Windows and Java desktop apps
• Works on
• Chrome, Safari, Firefox
• iOS, Android, Tizen
• Integrates with Dropbox, Google Drive, Box
rollApp: cloud applications platform
10
Work With Any App From Any Device With Just a Browser
have the same
look-and-feel
as if they were
installed locally
convert
applications to
online SaaS
on the fly
upload existing
Win, Linux,
Mac, Andorid,
iOS, etc.
applicatios
discover
and use
applications
through a
browser
Software
Vendors
rollApp
Servers
End Users
Applications
IBM Estimates: 50B Connected Devices by 2020,
“You Can Put a Chip in Nearly Anything”
rollApp’s goal is to enable all existing software
on all existing and future browser-equipped devices
11
rollApp Today
• Palo Alto (CA) based startup
• R&D in Ukraine
• Relatively small team (less than 30 people), includes some of the
best experts on the planet
• Bjarne Straustrup (the author of C++) and Bob Iannucci (former CTO
from NOKIA) are members of our Advisory Board
• Backed by prominent international venture investors
• Publicly available beta version of the technology
• attracted tremendous interest (over 100-fold traffic growth during the
year, over 5 mln users last month)
12
Apps Adapted For Touch Input
13
Do Precise Work With Touch Screen
14
Smart Window Management: Modals
15
Smart Window Management: Documents
Making it all
work together
17
Basic options for building apps
• Native C++ app
• Great for performance and access to low-level platform features
• Heavy-duty development, zero portability
• Native Web JavaScript app
• Good balance of access to low-level features and speed of development
• Portability is still questionable
• “Hosted” JavaScript app
• Great portability and speed of development
• Tricky access to low-level features
18
Good news: standards are on your side
19
Good news: standards are on your side,
but they are not panacea
5.1.6 Browser Context Names
… a new browsing context is being requested,
and what happens depends on the user agent's
configuration and/or abilities.
More at http://www.w3.org/TR/html5/browsers.html
20
Lesson: Web app ≠ JavaScript Mobile app
Web app Mobile app
Connectivity issues
Browser is the app.
Your app is just a content
Have to be handled by
the app
Sleep mode
Hardware buttons
App UI/UX Hey, it’s the Web!
Do what you want!
Have to conform to
platform UI guidelines
Access to 3rd-party web
services
Well developed and
natural
Can be cumbersome
and “not native”
21
“Cross-platformity” in rollApp
Features need to work in a way
“natural” for a target platform
Features need to work in a way
“natural” for an application and
its main use cases
22
30,000 feet overview
Application
Downloadable
client
Platform
wrapper
23
Platform-specific vs. cross-platform
Platform Wrapper
• Installable component
available from the store
• Helps handling low-level
platform specific functions
• Helps conforming to UX
guidelines
Downloadable Client
• Does all the user-app
interaction heavy lifting
• Adapts application UX to
target platform
• Supports “in-browser”
operation for all supported
platforms
24
Platform Wrapper Architecture
URL: file://…
URL: https://rollapp.com/…
Access to low-level
APIs via wrapper
TIZEN
Main interaction
with the app
Platform-specific interaction
• hardware buttons
• sleep status
Tizen-specific feature
implementations
25
What’s most popular mobile web browser engine of present
day?
26
Lesson: No one platform is a good approximation of
another platform
• Fonts/image rendering
• Scaling issues
• Handling of retina screen
• Keyboard activation
• Window is resized, when keyboard is open
• .focus() does not activate keyboard from ontouchstart() handler
• Performance
• canvas.getPixelData()
27
Lesson: Configuration Management is important
Platform under active development
+
Your app under active development
=
28
At times bugs can be related to very basic features
29
Lesson: Hosted apps and app store aren’t exactly friends
• Publishing of v.1 can be painful
• Hosted components updated instantaneously, but verification of
resubmitted apps can take weeks
• Having components on different deployment paths can add
complexity
• Managing many apps on the app store can be a hassle
30
Summary
• rollApp is a universal cloud platform making any application
available on any device
• JavaScript has become first class citizen for mobile apps
development, but some difficulties remain
• Turning Web app into high-quality JavaScript mobile app is no
easy ride
• Do not rely on cross-platform toolset; develop and test on the
specific platform
• Good engineering practice always helps
www.rollApp.com
@rollApp

Mais conteúdo relacionado

Mais procurados

Getting Started Developing Universal Windows Platform (UWP) Apps
Getting Started Developing Universal Windows Platform (UWP) AppsGetting Started Developing Universal Windows Platform (UWP) Apps
Getting Started Developing Universal Windows Platform (UWP) AppsJaliya Udagedara
 
Developing Windows Phone 8 apps using PhoneGap
Developing Windows Phone 8 apps using PhoneGapDeveloping Windows Phone 8 apps using PhoneGap
Developing Windows Phone 8 apps using PhoneGapAmar Mesic
 
Kevin Whinnery: Best Practices for Cross-Platform Mobile Development
Kevin Whinnery: Best Practices for Cross-Platform Mobile DevelopmentKevin Whinnery: Best Practices for Cross-Platform Mobile Development
Kevin Whinnery: Best Practices for Cross-Platform Mobile DevelopmentAxway Appcelerator
 
Building Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha TouchBuilding Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha TouchAxel Buerkle
 
What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015Fons Sonnemans
 
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicHybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicErmias Bayu
 
Mobile Development: HTML5 Vs. Native
Mobile Development: HTML5 Vs. NativeMobile Development: HTML5 Vs. Native
Mobile Development: HTML5 Vs. NativeSynerzip
 
SenchaCon 2016: Ext JS App Modernization Showcase - Richard Milone
SenchaCon 2016: Ext JS App Modernization Showcase - Richard MiloneSenchaCon 2016: Ext JS App Modernization Showcase - Richard Milone
SenchaCon 2016: Ext JS App Modernization Showcase - Richard MiloneSencha
 
Building Mobile Apps With Xamarin and Visual Studio App Center
Building Mobile Apps With Xamarin and Visual Studio App CenterBuilding Mobile Apps With Xamarin and Visual Studio App Center
Building Mobile Apps With Xamarin and Visual Studio App CenterSharePoint Saturday New Jersey
 
Mobile Cross Platform Automation in-practice and on a Large Scale
Mobile Cross Platform Automation in-practice and on a Large ScaleMobile Cross Platform Automation in-practice and on a Large Scale
Mobile Cross Platform Automation in-practice and on a Large ScaleSathish Gogineni
 
Open Web Apps - State of the Browser 2014
Open Web Apps - State of the Browser 2014Open Web Apps - State of the Browser 2014
Open Web Apps - State of the Browser 2014Christian Heilmann
 
Flutter or PWA Which Is Best For Application Development
Flutter or PWA Which Is Best For Application DevelopmentFlutter or PWA Which Is Best For Application Development
Flutter or PWA Which Is Best For Application DevelopmentMobiloitte
 
Cross platform Xamarin Apps With MVVM
Cross platform Xamarin Apps With MVVMCross platform Xamarin Apps With MVVM
Cross platform Xamarin Apps With MVVMJim Bennett
 
Lync integration with metro app
Lync integration with metro appLync integration with metro app
Lync integration with metro appAshish Agrawal
 
Hybrid Mobile App Development - Xamarin
Hybrid Mobile App Development - XamarinHybrid Mobile App Development - Xamarin
Hybrid Mobile App Development - XamarinDeepu S Nath
 
Jacky Wang - KKBOX Apple Watch App
Jacky Wang - KKBOX Apple Watch App Jacky Wang - KKBOX Apple Watch App
Jacky Wang - KKBOX Apple Watch App Jacky Wang
 

Mais procurados (20)

Getting Started Developing Universal Windows Platform (UWP) Apps
Getting Started Developing Universal Windows Platform (UWP) AppsGetting Started Developing Universal Windows Platform (UWP) Apps
Getting Started Developing Universal Windows Platform (UWP) Apps
 
Developing Windows Phone 8 apps using PhoneGap
Developing Windows Phone 8 apps using PhoneGapDeveloping Windows Phone 8 apps using PhoneGap
Developing Windows Phone 8 apps using PhoneGap
 
Kevin Whinnery: Best Practices for Cross-Platform Mobile Development
Kevin Whinnery: Best Practices for Cross-Platform Mobile DevelopmentKevin Whinnery: Best Practices for Cross-Platform Mobile Development
Kevin Whinnery: Best Practices for Cross-Platform Mobile Development
 
Building Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha TouchBuilding Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
Building Cross-Platform Mobile Apps with PhoneGap and Sencha Touch
 
What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015What's new in Blend for Visual Studio 2015
What's new in Blend for Visual Studio 2015
 
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionicHybrid Mobile Development with Apache Cordova,AngularJs and ionic
Hybrid Mobile Development with Apache Cordova,AngularJs and ionic
 
Mobile Development: HTML5 Vs. Native
Mobile Development: HTML5 Vs. NativeMobile Development: HTML5 Vs. Native
Mobile Development: HTML5 Vs. Native
 
SenchaCon 2016: Ext JS App Modernization Showcase - Richard Milone
SenchaCon 2016: Ext JS App Modernization Showcase - Richard MiloneSenchaCon 2016: Ext JS App Modernization Showcase - Richard Milone
SenchaCon 2016: Ext JS App Modernization Showcase - Richard Milone
 
Building Mobile Apps With Xamarin and Visual Studio App Center
Building Mobile Apps With Xamarin and Visual Studio App CenterBuilding Mobile Apps With Xamarin and Visual Studio App Center
Building Mobile Apps With Xamarin and Visual Studio App Center
 
App Studio: Hands-On
App Studio: Hands-OnApp Studio: Hands-On
App Studio: Hands-On
 
Mobile Cross Platform Automation in-practice and on a Large Scale
Mobile Cross Platform Automation in-practice and on a Large ScaleMobile Cross Platform Automation in-practice and on a Large Scale
Mobile Cross Platform Automation in-practice and on a Large Scale
 
Foss con2011
Foss con2011Foss con2011
Foss con2011
 
Open Web Apps - State of the Browser 2014
Open Web Apps - State of the Browser 2014Open Web Apps - State of the Browser 2014
Open Web Apps - State of the Browser 2014
 
Flutter or PWA Which Is Best For Application Development
Flutter or PWA Which Is Best For Application DevelopmentFlutter or PWA Which Is Best For Application Development
Flutter or PWA Which Is Best For Application Development
 
Cross platform Xamarin Apps With MVVM
Cross platform Xamarin Apps With MVVMCross platform Xamarin Apps With MVVM
Cross platform Xamarin Apps With MVVM
 
Selenium presentation
Selenium presentationSelenium presentation
Selenium presentation
 
Lync integration with metro app
Lync integration with metro appLync integration with metro app
Lync integration with metro app
 
Hybrid Mobile App Development - Xamarin
Hybrid Mobile App Development - XamarinHybrid Mobile App Development - Xamarin
Hybrid Mobile App Development - Xamarin
 
.NET (r)evolution
.NET (r)evolution.NET (r)evolution
.NET (r)evolution
 
Jacky Wang - KKBOX Apple Watch App
Jacky Wang - KKBOX Apple Watch App Jacky Wang - KKBOX Apple Watch App
Jacky Wang - KKBOX Apple Watch App
 

Semelhante a Cloud Apps Ported to Tizen in 3 Months

Platform guidance for Microsoft .NET Technology
Platform guidance for Microsoft .NET TechnologyPlatform guidance for Microsoft .NET Technology
Platform guidance for Microsoft .NET TechnologyLohith Goudagere Nagaraj
 
Build 12-Factor apps with Docker
Build 12-Factor apps with DockerBuild 12-Factor apps with Docker
Build 12-Factor apps with DockerJohn Zaccone
 
Mobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMukteswar Patnaik
 
Cross Platform Mobile Application Development
Cross Platform Mobile Application DevelopmentCross Platform Mobile Application Development
Cross Platform Mobile Application DevelopmentSenchu Thomas
 
Introducing ibm-lotus-notes-and-domino-85-slideshow-1231267606343259-1
Introducing ibm-lotus-notes-and-domino-85-slideshow-1231267606343259-1Introducing ibm-lotus-notes-and-domino-85-slideshow-1231267606343259-1
Introducing ibm-lotus-notes-and-domino-85-slideshow-1231267606343259-1Mehdi Loutfi
 
Windows 8 DevUnleashed - Session 1
Windows 8 DevUnleashed - Session 1Windows 8 DevUnleashed - Session 1
Windows 8 DevUnleashed - Session 1drudolph11
 
Which Cross-Platform App Development Framework Is Right for You
Which Cross-Platform App Development Framework Is Right for YouWhich Cross-Platform App Development Framework Is Right for You
Which Cross-Platform App Development Framework Is Right for YouInexture Solutions
 
Forge - DevCon 2016: Implementing Rich Applications in the Browser
Forge - DevCon 2016: Implementing Rich Applications in the BrowserForge - DevCon 2016: Implementing Rich Applications in the Browser
Forge - DevCon 2016: Implementing Rich Applications in the BrowserAutodesk
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Nuxeo
 
ADVANCED PROGRAMMING TECHNOLOGIES NOWADAYS - Copy.pptx
ADVANCED PROGRAMMING TECHNOLOGIES NOWADAYS - Copy.pptxADVANCED PROGRAMMING TECHNOLOGIES NOWADAYS - Copy.pptx
ADVANCED PROGRAMMING TECHNOLOGIES NOWADAYS - Copy.pptxRickyLoberiano
 
Navigating the Mobile maze
Navigating the Mobile mazeNavigating the Mobile maze
Navigating the Mobile mazePraveen Bohra
 
Mobility today & what's next. Application ecosystems.
Mobility today & what's next.Application ecosystems.Mobility today & what's next.Application ecosystems.
Mobility today & what's next. Application ecosystems.Petru Jucovschi
 
Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018
Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018
Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018UX Antwerp Meetup
 
Pelegri Desarrollando en una nueva era de software
Pelegri   Desarrollando en una nueva era de software Pelegri   Desarrollando en una nueva era de software
Pelegri Desarrollando en una nueva era de software Eduardo Pelegri-Llopart
 
Jfokus Workshop: Code in the Cloud for the Cloud
Jfokus Workshop: Code in the Cloud for the CloudJfokus Workshop: Code in the Cloud for the Cloud
Jfokus Workshop: Code in the Cloud for the CloudLauren Hayward Schaefer
 
Xamarin COE by Mukteswar Patnaik
Xamarin COE by Mukteswar PatnaikXamarin COE by Mukteswar Patnaik
Xamarin COE by Mukteswar PatnaikMukteswar Patnaik
 
.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los AngelesVMware Tanzu
 

Semelhante a Cloud Apps Ported to Tizen in 3 Months (20)

Platform guidance for Microsoft .NET Technology
Platform guidance for Microsoft .NET TechnologyPlatform guidance for Microsoft .NET Technology
Platform guidance for Microsoft .NET Technology
 
Build 12-Factor apps with Docker
Build 12-Factor apps with DockerBuild 12-Factor apps with Docker
Build 12-Factor apps with Docker
 
Mobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile SolutionMobile App Development and Xamarin as a Complete Mobile Solution
Mobile App Development and Xamarin as a Complete Mobile Solution
 
Cross Platform Mobile Application Development
Cross Platform Mobile Application DevelopmentCross Platform Mobile Application Development
Cross Platform Mobile Application Development
 
Dmdh workshop #6
Dmdh workshop #6Dmdh workshop #6
Dmdh workshop #6
 
Introducing ibm-lotus-notes-and-domino-85-slideshow-1231267606343259-1
Introducing ibm-lotus-notes-and-domino-85-slideshow-1231267606343259-1Introducing ibm-lotus-notes-and-domino-85-slideshow-1231267606343259-1
Introducing ibm-lotus-notes-and-domino-85-slideshow-1231267606343259-1
 
Windows 8 DevUnleashed - Session 1
Windows 8 DevUnleashed - Session 1Windows 8 DevUnleashed - Session 1
Windows 8 DevUnleashed - Session 1
 
Which Cross-Platform App Development Framework Is Right for You
Which Cross-Platform App Development Framework Is Right for YouWhich Cross-Platform App Development Framework Is Right for You
Which Cross-Platform App Development Framework Is Right for You
 
Forge - DevCon 2016: Implementing Rich Applications in the Browser
Forge - DevCon 2016: Implementing Rich Applications in the BrowserForge - DevCon 2016: Implementing Rich Applications in the Browser
Forge - DevCon 2016: Implementing Rich Applications in the Browser
 
Android - Anroid Pproject
Android - Anroid PprojectAndroid - Anroid Pproject
Android - Anroid Pproject
 
Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011Mobile ECM with JavaScript - JSE 2011
Mobile ECM with JavaScript - JSE 2011
 
ADVANCED PROGRAMMING TECHNOLOGIES NOWADAYS - Copy.pptx
ADVANCED PROGRAMMING TECHNOLOGIES NOWADAYS - Copy.pptxADVANCED PROGRAMMING TECHNOLOGIES NOWADAYS - Copy.pptx
ADVANCED PROGRAMMING TECHNOLOGIES NOWADAYS - Copy.pptx
 
Navigating the Mobile maze
Navigating the Mobile mazeNavigating the Mobile maze
Navigating the Mobile maze
 
Mobility today & what's next. Application ecosystems.
Mobility today & what's next.Application ecosystems.Mobility today & what's next.Application ecosystems.
Mobility today & what's next. Application ecosystems.
 
Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018
Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018
Kristiaan De Roeck at UX Antwerp Meetup - 30 January 2018
 
Introduction to xamarin
Introduction to xamarinIntroduction to xamarin
Introduction to xamarin
 
Pelegri Desarrollando en una nueva era de software
Pelegri   Desarrollando en una nueva era de software Pelegri   Desarrollando en una nueva era de software
Pelegri Desarrollando en una nueva era de software
 
Jfokus Workshop: Code in the Cloud for the Cloud
Jfokus Workshop: Code in the Cloud for the CloudJfokus Workshop: Code in the Cloud for the Cloud
Jfokus Workshop: Code in the Cloud for the Cloud
 
Xamarin COE by Mukteswar Patnaik
Xamarin COE by Mukteswar PatnaikXamarin COE by Mukteswar Patnaik
Xamarin COE by Mukteswar Patnaik
 
.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles.NET Cloud-Native Bootcamp- Los Angeles
.NET Cloud-Native Bootcamp- Los Angeles
 

Mais de Dima Malenko

Where are the new technologies coming from?
Where are the new technologies coming from?Where are the new technologies coming from?
Where are the new technologies coming from?Dima Malenko
 
Nation: technological and/or successful
Nation: technological and/or successfulNation: technological and/or successful
Nation: technological and/or successfulDima Malenko
 
3x3+3 #6 New and old platforms
3x3+3 #6 New and old platforms3x3+3 #6 New and old platforms
3x3+3 #6 New and old platformsDima Malenko
 
Future of the Apps: what startups need to know
Future of the Apps: what startups need to knowFuture of the Apps: what startups need to know
Future of the Apps: what startups need to knowDima Malenko
 
Crises in startups
Crises in startupsCrises in startups
Crises in startupsDima Malenko
 
Magic Triangle: Product, Market, Users
Magic Triangle: Product, Market, UsersMagic Triangle: Product, Market, Users
Magic Triangle: Product, Market, UsersDima Malenko
 
Scaling and Distributing
Scaling and DistributingScaling and Distributing
Scaling and DistributingDima Malenko
 
Evolution of software projects
Evolution of software projectsEvolution of software projects
Evolution of software projectsDima Malenko
 
Tornado - different Web programming
Tornado - different Web programmingTornado - different Web programming
Tornado - different Web programmingDima Malenko
 
Как команду соберете, так она и поплывет
Как команду соберете, так она и поплыветКак команду соберете, так она и поплывет
Как команду соберете, так она и поплыветDima Malenko
 
Cultural test by... a door at a mall
Cultural test by... a door at a mallCultural test by... a door at a mall
Cultural test by... a door at a mallDima Malenko
 

Mais de Dima Malenko (14)

Where are the new technologies coming from?
Where are the new technologies coming from?Where are the new technologies coming from?
Where are the new technologies coming from?
 
Nation: technological and/or successful
Nation: technological and/or successfulNation: technological and/or successful
Nation: technological and/or successful
 
3x3+3 #6 New and old platforms
3x3+3 #6 New and old platforms3x3+3 #6 New and old platforms
3x3+3 #6 New and old platforms
 
Future of the Apps: what startups need to know
Future of the Apps: what startups need to knowFuture of the Apps: what startups need to know
Future of the Apps: what startups need to know
 
Crises in startups
Crises in startupsCrises in startups
Crises in startups
 
Magic Triangle: Product, Market, Users
Magic Triangle: Product, Market, UsersMagic Triangle: Product, Market, Users
Magic Triangle: Product, Market, Users
 
Scaling and Distributing
Scaling and DistributingScaling and Distributing
Scaling and Distributing
 
Evolution of software projects
Evolution of software projectsEvolution of software projects
Evolution of software projects
 
Browsers
BrowsersBrowsers
Browsers
 
Tornado - different Web programming
Tornado - different Web programmingTornado - different Web programming
Tornado - different Web programming
 
Как команду соберете, так она и поплывет
Как команду соберете, так она и поплыветКак команду соберете, так она и поплывет
Как команду соберете, так она и поплывет
 
Part Time Agile
Part Time AgilePart Time Agile
Part Time Agile
 
Cultural test by... a door at a mall
Cultural test by... a door at a mallCultural test by... a door at a mall
Cultural test by... a door at a mall
 
Just Do It
Just Do ItJust Do It
Just Do It
 

Último

The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...MyIntelliSource, Inc.
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...harshavardhanraghave
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsJhone kinadey
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerThousandEyes
 

Último (20)

The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
Steps To Getting Up And Running Quickly With MyTimeClock Employee Scheduling ...
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected WorkerHow To Troubleshoot Collaboration Apps for the Modern Connected Worker
How To Troubleshoot Collaboration Apps for the Modern Connected Worker
 

Cloud Apps Ported to Tizen in 3 Months

  • 1. What We Learned From Porting 50+ Cloud Apps to Tizen Dima Malenko, Vlad Pavlov, rollApp Inc.
  • 2. 2 Tizen is an open source, standards-based software platform… From tizen.org
  • 3. 3 • Access to the Internet • Ability to do office productivity tasks What are the “must have” features for a computing platform?
  • 4. 4 What is the most popular office productivity solution in the world? over 1,000,000,000 users
  • 5. 5 What is the second most popular office productivity solution in the world? over 100,000,000 users
  • 6. 6 How long will it take to port these apps to new platform like Tizen?
  • 7. 7 We made more than 50 popular desktop apps available on Tizen in about 3 months
  • 9. 9 • Supports Linux, Windows and Java desktop apps • Works on • Chrome, Safari, Firefox • iOS, Android, Tizen • Integrates with Dropbox, Google Drive, Box rollApp: cloud applications platform
  • 10. 10 Work With Any App From Any Device With Just a Browser have the same look-and-feel as if they were installed locally convert applications to online SaaS on the fly upload existing Win, Linux, Mac, Andorid, iOS, etc. applicatios discover and use applications through a browser Software Vendors rollApp Servers End Users Applications IBM Estimates: 50B Connected Devices by 2020, “You Can Put a Chip in Nearly Anything” rollApp’s goal is to enable all existing software on all existing and future browser-equipped devices
  • 11. 11 rollApp Today • Palo Alto (CA) based startup • R&D in Ukraine • Relatively small team (less than 30 people), includes some of the best experts on the planet • Bjarne Straustrup (the author of C++) and Bob Iannucci (former CTO from NOKIA) are members of our Advisory Board • Backed by prominent international venture investors • Publicly available beta version of the technology • attracted tremendous interest (over 100-fold traffic growth during the year, over 5 mln users last month)
  • 12. 12 Apps Adapted For Touch Input
  • 13. 13 Do Precise Work With Touch Screen
  • 16. Making it all work together
  • 17. 17 Basic options for building apps • Native C++ app • Great for performance and access to low-level platform features • Heavy-duty development, zero portability • Native Web JavaScript app • Good balance of access to low-level features and speed of development • Portability is still questionable • “Hosted” JavaScript app • Great portability and speed of development • Tricky access to low-level features
  • 18. 18 Good news: standards are on your side
  • 19. 19 Good news: standards are on your side, but they are not panacea 5.1.6 Browser Context Names … a new browsing context is being requested, and what happens depends on the user agent's configuration and/or abilities. More at http://www.w3.org/TR/html5/browsers.html
  • 20. 20 Lesson: Web app ≠ JavaScript Mobile app Web app Mobile app Connectivity issues Browser is the app. Your app is just a content Have to be handled by the app Sleep mode Hardware buttons App UI/UX Hey, it’s the Web! Do what you want! Have to conform to platform UI guidelines Access to 3rd-party web services Well developed and natural Can be cumbersome and “not native”
  • 21. 21 “Cross-platformity” in rollApp Features need to work in a way “natural” for a target platform Features need to work in a way “natural” for an application and its main use cases
  • 23. 23 Platform-specific vs. cross-platform Platform Wrapper • Installable component available from the store • Helps handling low-level platform specific functions • Helps conforming to UX guidelines Downloadable Client • Does all the user-app interaction heavy lifting • Adapts application UX to target platform • Supports “in-browser” operation for all supported platforms
  • 24. 24 Platform Wrapper Architecture URL: file://… URL: https://rollapp.com/… Access to low-level APIs via wrapper TIZEN Main interaction with the app Platform-specific interaction • hardware buttons • sleep status Tizen-specific feature implementations
  • 25. 25 What’s most popular mobile web browser engine of present day?
  • 26. 26 Lesson: No one platform is a good approximation of another platform • Fonts/image rendering • Scaling issues • Handling of retina screen • Keyboard activation • Window is resized, when keyboard is open • .focus() does not activate keyboard from ontouchstart() handler • Performance • canvas.getPixelData()
  • 27. 27 Lesson: Configuration Management is important Platform under active development + Your app under active development =
  • 28. 28 At times bugs can be related to very basic features
  • 29. 29 Lesson: Hosted apps and app store aren’t exactly friends • Publishing of v.1 can be painful • Hosted components updated instantaneously, but verification of resubmitted apps can take weeks • Having components on different deployment paths can add complexity • Managing many apps on the app store can be a hassle
  • 30. 30 Summary • rollApp is a universal cloud platform making any application available on any device • JavaScript has become first class citizen for mobile apps development, but some difficulties remain • Turning Web app into high-quality JavaScript mobile app is no easy ride • Do not rely on cross-platform toolset; develop and test on the specific platform • Good engineering practice always helps