migrating legacy applications, node.js on mobile devices...

25
Present and Future of the RhoMobile platform Migrating legacy applications, Node.js on mobile devices right now and more

Upload: lamtruc

Post on 26-Jun-2018

221 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Present and Future of the RhoMobile platform

Migrating legacy applications, Node.js on mobile devices right now and more

Page 2: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Key facts about RhoMobile and Tau

2008 2011 2014 20162015 2017

2008 RhoMobile founded2011 RhoMobile acquired by Motorola Solutions.2014 RhoMobile acquired by Zebra Technologies as part of Motorola’s enterprise business.2015 Tau Technologies founded by RhoMobile team members.2016 Zebra open-sourced RhoMobile. RMS 5.4 is the last release by Zebra. Tau becomes Zebra’s technology partner and main contributor of RhoMobile.

RMS 5.5 released by Tau in September 2016. This is the current full-featured release. RhoMobile Suite 6 is coming in June 2017 introducing new great features!

Page 3: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

What Tau does

Tau is a team of professionals founded by RhoMobile project members, who:

- Maintain and evolve RhoMobile toolkit to meet growing business needs.

- Support RhoMobile enterprise customers.

- Do custom development using various technology stacks.

- Provide consulting and learning services in the field of mobile development.

- Evolve community around RhoMobile platform. ( So please register at RhoMobile forum :)

forums.tau-technologies.com )

Page 4: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

What is RhoMobile now

RHOMOBILESUITE

RHODES RHOSTUDIOTAU

EXTENSIONS RHOCONNECT RHO BROWSER

MIT-licensed open source and free solution for cross-platform development.Hybrid or mixed hybrid approach for creation of mobile and desktop apps.Includes extendable programming platform, IDE, data sync solution and industrial web browser. Supports iOS, Android, WinCE/WM, WP8, UWP, Windows desktop and soon - OS X and desktop Linux.

Powered by

= + + +

Page 5: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Current situation

OLD GOOD LEGACY DEVICES

- More than 80% of industrial mobile devices are running on Windows CE/Mobile

- Majority of devices shipped in 2016 were running legacy Windows OS

- Windows CE time is getting to an end: extended support is over soon ( really soon )

- Android is going to be obviously dominant

- You will have to migrate

Page 6: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Migration cases

Major scenarios for migration from legacy CE app to a modern platform - Android or other:

- Mixed device park in large enterprise - both legacy CE and new devices run simultaneously.- A cross-platform solution which supports CE is a must have for this case.

- One-time migration - you only need to migrate to newer devices and drop support of legacy units.- Choice of modern cross-platform solutions is available.

Each scenario requires upgrade of the codebase. The app can’t be just “converted”. You can upgrade your app’s code with internal dev unit or request for third-party service. Tau has successful experience of app migration for several customers.

Another option is to use some kind of industrial browser ( like RhoBrowser ) to create lightweight web-apps that still have all advantages of hardware capabilities of enterprise devices.

Page 7: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Obvious benefits of hybrid cross platform solutions

- Web-based: used broadly or even dominant in some areas

- Shallow technology stack- Code is written once and works

everywhere- Code of existing web apps may be

reused- Virtually unlimited choice of front-end

frameworks

Web Technologies

Page 8: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Obvious benefits of hybrid cross platform solutions

- Existing web developers may be involved- Total cost of development and ownership

reduced multiply

- Application is developed quickly- Less developers needed

Page 9: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Obvious benefits of hybrid cross platform solutions

Hybrid middleware

- Handles fragmentation hell- Takes large part of development risks- Provides support of new OS versions

and hardware features- Does not own your technology stack- Provides means for back-end

integration

RHOMOBILESUITE

RHODES RHOSTUDIOTAU

EXTENSIONS RHOCONNECT

= + + +

Page 10: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

- Has uniform codebase- Delivered in a required timeframe- Easy to maintain- Performs comparable to a native if

using mixed-hybrid solution like RhoMobile

- Utilizes any hardware capability- Runs on any platform

Obvious benefits of hybrid cross platform solutions

Mobile Application

Page 11: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Migration

ALL OF THE ABOVE APPLIES TO MIGRATION AS WELL

GOOD NEWSEVERYONE !

Page 12: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Result that you get when you use RhoMobile for migration

- We are Zebra-friendly: Tau is Zebra’s technology partner and RhoMobile supports all Zebra devices.- All hybrid benefits mentioned above.- One application with united codebase that runs on all current and future platforms: WM/CE, Android, iOS,

UWP.- Developers use widespread technologies like JS/Node, HTML5 and Ruby, the app is easy to maintain.- Application performance is close to native.- After migration is done app is not tied to any specific OS, but utilizing any hardware feature available.- No platform fragmentation hell.- Reliable middleware vendor: Tau provides full set of mobile development services including consulting,

support and development.

- Time to market and cost of ownership is reduced greatly.

Page 13: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

RhoMobile vs ...

PhoneGap:- Limited (enterprise) functionality- reduced performance for complex apps- No WinCE support

Xamarin ( it is really great, but ):- Specific API you are bound to- Xamarin developers are more expensive than JS- No WinCE support

RhoMobile is the ONLY platform on the market that supports WinCE. Using newly-added Webkit it brings modern UI features even to legacy devices.

Page 14: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

RhoMobile6

coming June 2017

Page 15: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Unique solution on market

Rhomobile is unique solution on market. Only RhoMobile provide full-functionality server developer environment on mobile device!

Ruby on Rails on mobile device - check!Node.js on mobile device - check!

You can create native mobile apps only with web and backend developers.You also can share not only developers but code between server and mobile application.

Development of native mobile application with RhoMobile is the same with development of web application with server backend but server located on mobile device.

Page 16: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Mixed hybrid architecture

Platform Browser

UIHTML/CSS/JS

code

Mobile device

Platform API

Framework WebView

UI HTML/CSS/JS code

Framework

Logiccross-platform code

local serverRuby on Rails /

Node.js

LogicServer code based

onRuby on Rails

orNode.js

Remote server

Web application withremote server backend

Native application withmixed hybrid architecture

Mobile device

Page 17: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Node.JS on mobile devices

- First on market- Before RhoMobile was Ruby-oriented. Now it is both Ruby- and JS- oriented!- Fully functional Node.js on mobile device!

Rhodes application’s WebView

HTML/CSS/JS app code + JS frameworks

Rhodes API

Rhodes node.js environment

“nodejs” Rhodes extension

node.js applicationlocal webserver Rhodes API

Page 18: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Node.JS on mobile devices

- You can use any pure Javascript Node.js modules- 90% of NMP modules is pure Javascript and available on any mobile device and right now

out-of-the box!- Already ported SQLite Node.js module- All Rhomobile APIs accessible from Node.js Javascript code

Please see complex example with using of express.js, hbs, sequelize and other popular Node.js modules:https://github.com/tauplatform/todo-nodejs

You can just copy your Node.js code from desktop Node.js applications to Rhodes mobile application !

Page 19: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

New Ruby

- Ruby version:- 5.5: 1.9.1 released in 2010- 6.0: 2.3.4 released in 2017

- We use reference MRI Ruby implementation written in C ( not reduced-functionality implementations like mruby ).

- New language and syntax features

- Local server controller’s code performanceis increased up to 50%

- Lots of bugfixes and security patches

- Ruby multithreading fully supported

Page 20: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

New platforms

Soon:

Now:

Mobile And desktop

Page 21: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

WebKit for Windows CE

Tau introduces completely upgraded a WebKit-based browser engine.

- Full HTML5 compliance- High performance- Compatible with WinCE 5/6, Compact 7 and Windows

Mobile- Utilizes Cairo Graphics with FreeType support for

superb rendering- Can be built in third-party products on the licensing

basis

Page 22: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Enterprise security and tampering detection features:- app is able to check at runtime if it is legally installed and running securely in MDM environment:

APK signature validationCheck for jailbroken/rooted deviceCheck for installer package

- Crosswalk web engine for Android

- WKWebKit support for iOS

- QT for Windows/OSX is updated from 5.5 to 5.8

- Clipboard access extension for Android and iOS

- Lots of bugfixes

And more

Page 23: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

Try beta now or get full-featured release

http://tau-technologies.com/products/rhomobile/

5.5.0.29Production

6.0.beta4Beta

Page 24: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

What’s next: RhoMobile roadmap

Web technologies

Architecture

RhoConnect

RhoBrowser

Developer experience

Platforms

2017 2018

RMS 6.0-6.X

Couchbase Liteintegration

Meteor.jsintegration

MEAN integrationbased on Couchbase

Access to CommonAPIfrom native

SupportCordova plugins

Implement all existing API via CommonAPI

Rhodes code refactoring

iOS 11Android 8.0 SQLite 4

Tau’s port ofWebkit on WinCE/Mobile

DebugRuby+JS

LiveUpdateon WP8 & W10

Build systemimprovement

optional ISEQ

NPMinstaller

IoT integration

OpenSSL 1.0.2

libCURL 7.54Serverless WebView requests on Android

Desktop linux and OS X

Cloud deployment

Node.js environment ondevice

iOS 10Android 7.0UWP

Apple multi-push

RhoSim supportsGoogle dev tools

Page 25: Migrating legacy applications, Node.js on mobile devices ...files.tau-technologies.com/Events/2017_05_15_Zebra_AppForum_Pragu… · Couchbase Lite integration Meteor.js integration

http://tau-technologies.com

Your questions please