Building Mobile Apps with Node.js Bob Dickinson Synchro Labs, Inc. https://synchro.io Seattle Node.js Meetup June 22, 2016.

Slides:



Advertisements
Similar presentations
UNIT-e futures and UNIT-e Mobile Ben Potter Systems Architect.
Advertisements

Mobile DevOps Mobile Apps + APIs = Mobile DevOps Alex Gaber Crittercism QCon New York 2014.
Building Mobile Apps in the Cloud – Comparing Approaches.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Access Web Apps – OK, Now What? EXTENDING ACCESS WEB APPS George Young Dawson Butte Software ACCESS DAY – OCTOBER DENVER,
Unified. Simplified. Unified Communications Launch 2007.
Intro to Apps Minnesota SharePoint User Group Raymond April 2014.
Basic SharePoint 2013 App Development start-up for New Developers
Introducing Xamarin 2.0 Introducing Xamarin 2.0 Michael Hutchinson
Paul Trani Adobe Certified Instructor/Expert Resources:
Building Offline/Cache Mode Web Apps Using Sync Framework Mike Clark Group Manager Cloud Data Services Team
How to write less code to build and extend Enterprise Portal How to share code and metadata between Enterprise Portal and Client.
Cross Platform Mobile Backend with Mobile Services James
Windows.Net Programming Series Preview. Course Schedule CourseDate Microsoft.Net Fundamentals 01/13/2014 Microsoft Windows/Web Fundamentals 01/20/2014.
 Cloud computing is one of the more recent technologies that many businesses, individuals and other industry organizations believe to by one of the keys.
Cloud computing is the use of computing resources (hardware and software) that are delivered as a service over the Internet. Cloud is the metaphor for.
©Kwan Sai Kit, All Rights Reserved Windows Small Business Server 2003 Features.
SharePoint Services Indiana University Cory P. Retherford May 9 th, 2011.
Java Mobile Apps with GWT & PhoneGap Josh Marinacci, webOS Developer Advocate.
Windows Reimagine d Windows 8 Data explosion Browser-based apps Natural interaction Ubiquitous connectivity Personal devices in the.
MIS3300_Team8 Service Aron Allen Angela Chong Cameron Sutherland Edment Thai Nakyung Kim.
Developing Enterprise Mobile Apps with Xamarin Loren Horsager CEO, Mobile Composer.
ICINETIC Experts in.NET technologies and architectures.
Next-Generation Formotus Forms Replace Paper and InfoPath with Mobile Business Applications Created and Deployed Using Microsoft Azure MICROSOFT AZURE.
Maximize Return on Engagement via Scalable Omni-Channel Online Services in the Cloud COMPANY PROFILE: XOMNI, INC. Founded in 2011 and headquartered in.
608D CloudStack 3.0 Omer Palo Readiness Specialist, WW Tech Support Readiness May 8, 2012.
Communicate with All Workers Involved in the Process of Delivering High-Quality Health Care by Choosing Dossier365 on the Azure Platform MICROSOFT AZURE.
Folio3 IPhone Training Session 1 Presenter: Imam Raza.
Bizfss File Sync and Sharing Solution, Built on Microsoft Azure, Allows Businesses to Sync, Share, Back Up Using Their Own Cloud Storage MICROSOFT AZURE.
Securely Synchronize and Share Enterprise Files across Desktops, Web, and Mobile with EasiShare on the Powerful Microsoft Azure Cloud Platform MICROSOFT.
Trunica Inc. 500 East Kennedy Blvd #300 Tampa, FL Cross Platform Mobile Apps With Cordova and Visual Studio 2015 © Copyright 2015.
IBM Bluemix Ecosystem Development Hands on Workshop Section 1 - Overview.
Introduction To BlueMix By: Ryan
Saranya Sriram Developer Evangelist | Microsoft
François Briard GS-AIS-HR Database Developers Forum, APEX 6th May 2014 APEX Mobile Application Development 101.
Back to Basics A Tour of Microsoft SharePoint. Who am I? Kenny Duenke Lead Systems Analyst RGA
Their newest version, Office 365 is available for $80 to $150, based on a yearly subscription or a software purchase. There are several ways to gain access.
Exploring Networked Data and Data Stores Lesson 3.
Your Host & Speaker Shahed Chowdhuri Sr. Technical Microsoft Technology Areas Enterprise Web/Software Development Game Development Mobile.
Bluemix for Domino Developers Niklas Heidloff, heidloff.net.
Build Cross-Platform Mobile Apps Using Visual Studio A Telerik webinar by Jeffrey T. Fritz March 27, 2014 AND.
Build Hybrid Mobile Apps with Ionic, Angular, & Cordova Brian
Guide To Develop Mobile Apps With Titanium. Agenda Overview Installation of Platform SDKs Pros of Appcelerator Titanium Cons of Appcelerator Titanium.
Mobile Application Solution
Beginning of Xamarin for iOS development
Supporting Windows 8.1 Krystle Portocarrero | Training Experts Inc.
Secure Hyperconnectivity with TeamViewer and Windows technologies
The Universal Windows Platform
Logo here Module 3 Microsoft Azure Web App. Logo here Module Overview Introduction to App Service Overview of Web Apps Hosting Web Applications in Azure.
Jon Galloway | Tech Evangelist Christopher Harrison | Head Geek
Mobile Application Solution
Week 01 Comp 7780 – Class Overview.
Office Power Hour New developer APIs and features for Apps for Office
Updated Agenda 12:00PM–1:00PM | Session #1 1:00PM–2:00PM | Lunch.
Running on the Powerful Microsoft Azure Platform,
11/19/2018 © 2014 Microsoft Corporation. All rights reserved. Microsoft, Windows, and other product names are or may be registered trademarks and/or trademarks.
Windows 10 Preview Andy & Jerry
Hosted Web Apps with Windows App Studio
Modern cloud PaaS for mobile apps, web sites, API's and business logic apps
Riva – Sync Dynamics CRM directly to Exchange
What's New in Visual Studio 2005
Serverless Architecture in the Cloud
What’s new in ASP.NET Core and Entity Framework 2.2 (Preview 3)
Office 365 Development.
Open Automation Software
Introduction to Portal for ArcGIS
Mark Quirk Head of Technology Developer & Platform Group
The Future is Now with ASP.NET Core 3.0
Running C# in the browser
Preparing for the Windows 8. 1 MCSA Module 6: Securing Windows 8
Presentation transcript:

Building Mobile Apps with Node.js Bob Dickinson Synchro Labs, Inc. Seattle Node.js Meetup June 22, 2016

Synchro Labs, SynchroLabs Redmond, WA Bob Dickinson Blake bcr Founding Team

Alternate Profile Pic with Ranger, my pet llama

What is Synchro? Mobile app development platform based on JavaScript and Node.js Native apps for Android, iOS, Windows, and Windows Phone, and web apps (mobile-optimized and desktop) - all from a single code base Enterprise focus Free for developers, licensed for enterprise deployment Server and Web Client are Open Source Shared (but closed) source

We Thought: “The World Needs Another Mobile App Development Platform” NativeScript

But for Enterprise Apps, Maybe it does…

Enterprise-first approach to the mobile application development platform The kind of apps enterprises need to build The dev skills they already have (JavaScript) The frameworks they already use (Node.js) Integration – of mobile apps with enterprise infrastructure (apps, databases, resources, etc) DevOps – How enterprises deploy and manage apps Security – Enterprise concerns / requirements

PropertyCross

Analysis of ProperyCross implementation on over a dozen platforms Why are these applications so complex? What is all of this code doing? Babysitting and Boilerplate Networking (poorly) What is the smallest amount of code that *should* be able to do the job?

How can we… Make mobile apps easier to develop in general While still providing a high-quality, native user experience And address enterprise concerns Integration, DevOps, Security

What if… We remoted the UX so that it ran on the mobile device and presented as a native mobile client, but… All of the mobile app code, including UX definition and interaction logic, ran on the Node.js server Then… Apps would present as native to end users, but as Node/web apps to developers and DevOps

Our solution Synchro Mobile Client (native, tuned implementations) Synchro Explorer – generic client that can connect to any Synchro app endpoint Your custom app – same code, but your icon/name and nailed to your endpoint Installs like a native app, rarely if ever needs to be updated No native mobile dev tooling required Synchro Server Runs your mobile app code (Synchro app) in a Node.js environment Highly sophisticated client-server data binding engine allows for client logic to run on the server as if it was running on the client

MVVM: Model – View –ViewModel View UX Presentation View Model UX Data and Logic Model Business Logic Data Binding Services, Data sources Data structures, Commands Style, Layout, Controls John Smith Customer Name: Search… var customerName = “John Smith”; function doSearch( ); Customer Database Customer DB API

Synchro Client-Server MVVM View UX Presentation View Model UX Data and Command Routers Data Binding Data Sources View Model UX Data and Command Implementations View Template Route commands Synchronize data Filter and download APIs, Services

What does that look like in code? exports.View = { title: "Click Counter", elements:[ { control: "text", value: "Count: {count}" }, { control: "button", caption: "Add", binding: "onAdd" } ] } exports.InitializeViewModel = function(context, session) { var viewModel = { count: 0 } return viewModel; } exports.Commands = { onAdd: function(context, session, viewModel) { viewModel.count++; }

What does this mean to you? Radically simplifies application design Mobile app code runs on server - no more client/server! App code can access enterprise resources directly, auth as app/server High quality native client experience, robust communications Provably secure No app code ever runs on the mobile client All communication between mobile client and server is always secure Mobile client never communicates with anything other than server Ability to control access, instantly deploy updates, etc. But mostly…

PropertyCross with Synchro

What Synchro is not…

We’re not the platform for your “Hero” app Poor support for intense client-side logic, custom graphics processing, cutting edge OS features (games, augmented reality, photo editing, accessory hardware integration, etc) We require a network connection (no offline mode) But ideal for most enterprise client-server applications

Install Synchro, Create an app, and Run it… $ npm install –g synchro $ synchro init $ synchro new hello $ npm start Download Synchro Explorer from any app store to connect to the endpoint, or explore the web app version

Building upon that app Watch out! Live coding happens here!

Hosted Samples Demo Endpoint: Wide variety of samples demonstrating supported controls and concepts Hosted on Microsoft Azure Running in data center in Chicago, IL

Synchro Studio: Debug, Edit, and Re-deploy

Demo of Synchro Civics 200~ lines of code, all mobile platforms + web, running from the cloud

Deploying Synchro Deploy however you currently deploy Node.js apps Horizontally scalable via shared cache and shared module store Support for Azure, AWS, Joyent, IBM BlueMix, RackSpace, any OpenStack-based provider (via pkgcloud) Multi-tennant Each Synchro app running on a server runs in its own process Container support (Docker)

Synchro and IoT Quick and easy way to build mobile/web interfaces to IoT projects App is served from the “Thing” in most cases (Node.js everywhere!) Review / Demo BeagleBone LED example Raspberry Pi Drinkro (Synchro app and hardware) See our blog entries covering these in detail

Getting Help Comprehensive online documentation: Including step-by-step tutorial Lots of sample code: Open a ticket from docs, or

Call to Action Trial customers wanted Support from core team Contact us for fee waiver We want your feedback Spread the word!

Questions If we don’t get to you, please reach out via - -

The End