Eme03. Mobilise your Applications as Progressive Web Apps

Size: px
Start display at page:

Download "Eme03. Mobilise your Applications as Progressive Web Apps"

Transcription

1 Eme03. Mobilise your Applications as Progressive Web Apps Paul Harrison (Eight Dot Knut Herrman (Leonso 22nd May 2018 #engageug 1

2 Paul Harrison Consultant at own Company, Eight Dot Three Ltd Domino Administration, Infrastructure & Migrations Web and Native App Developer Skype: edt.paul 2

3 Knut Herrmann Senior Software Architect Leonso GmbH Notes Domino developer since version 2 Web application developer StackOverflow contributor IBM Champion knut.herrmann@leonso.de Skype: knut.herrmann 3

4 Agenda Introduction Key Components Service Worker Lifecycle Events and Storage Development Tools Demo #engageug 4

5 Introduction 5

6 Who is developing Progressive Web Apps? Fun fact: Gartner projects, by 2020, progressive web apps will have replaced 50% of general-purpose, consumer-facing mobile apps. 6

7 What are Progressive Web Apps (PWAs)? Regular web apps, that meet specific criteria, to provide a native-like experience They are platform independent on supported Browsers Native javascript - no Framework required Write once work everywhere, mobile and desktop No need for App Store review and publishing - perfect for Business environments Leverage and enhance your existing Web Development Skills 7

8 PWA Key Characteristics Credit: Microsoft Build

9 Browser Support Credit: Google IO

10 Key Components 10

11 Web App Manifest A simple JSON formatted text file Application configuration options, including: Icon title Icon Launch screen background colour Colour theme Browser chrome (navigation controls) Orientation 11

12 Web App Manifest - Registration Registered in index.html <head> tag using: <link rel="manifest" href="manifest.json"> 12

13 Web App Manifest - Basic Example { "name": "Engage PWA Demo", "short_name": "Engage PWA", "description": "Progressive Web App Demo for Engage 2018", "orientation" : "portrait", "start_url": "index.html", "display": "standalone", "icons": [{ "src": "icon/engage-icon.png", "sizes": "512x512", "type": "image/png" }], "background_color": "#4e8ef7", "theme_color": "#FF7F00" } 13

14 Web App Manifest - Apple Specific Issues Whilst Apple now supports Web App Manifests with the recent introduction of ios 11.3, not all functions have yet been completely implemented, for example icon and launch screen support, as well as Add to Home Screen. Workarounds are available for many of these issues, for example, by using Apple specific metadata entries in index.html - a useful link to a in-depth web articles on this topic in our references. 14

15 Service Workers A Service Worker is a type of web worker. It is essentially a JavaScript file that runs separately from the main browser thread. Intercepts network requests, and either responds with cached data, or fetches requested data from the network It can also respond to other events or messages, such as for example push messages No direct DOM Access If the Service Worker is byte-different, it is considered to be a new version, and it s install event is fired 15

16 Service Worker - Registration Registered in index.html (or index.js): <script> if ('serviceworker' in navigator) { navigator.serviceworker.register('sw.js').then(function(sw) { console.log('service worker installed. Scope is "+ sw.scope)'); }).catch(function(err) { console.error('error', err); }); } </script> 16

17 Service Worker Lifecycle Events and Storage 17

18 Service Worker - Lifecycle 18

19 Service Worker - Lifecycle Events Service Workers have their own lifecycles, and are eventbased: Install - used to cache all required files Activate - can be used to clear stale cache data Idle waiting for an event (fetch / message etc.) Fetch - works as proxy for every network requests Allows you to manipulate requests, or replace a response In combination with the Cache API, provides the core feature for offline capability, where it returns cached responses instead of fetching them again 19

20 Service Worker - Additional Events Message - used to communicate with the web application (can be 2-way) Push - used for push notifications (where supported) 20

21 Service Worker - Example (1/2) self.addeventlistener('install', function(e) { e.waituntil( caches.open('engage-pwa-v1').then(function(cache) { return cache.addall([ '/', 'sw.js', 'index.html','index.js', 'style.css', 'images/kitten1.jpeg','images/kitten2.jpeg', 'images/kitten3.jpeg','images/kitten4.jpeg' ]); }) ); }); 21

22 Service Worker - Example (2/2) self.addeventlistener('activate', function(e) { console.log('now tidy any stale previous cache etc if required'); }); self.addeventlistener('fetch', function(e) { // Example of cache first, network fallback console.log("sw.js fetch request: " + e.request.url); e.respondwith( caches.match(e.request).then(function(response) { return response fetch(e.request); }) ); }); 22

23 Storage Browser storage for PWA s is shared between Cache and IndexedDB General storage recommendation is to use Cache API for static items (URL-addressable), and IndexedDB for everything else Storage amounts differ between browsers 23

24 Storage Limits Credit: 24

25 Cache API Provides a storage mechanism for Request / Response object pairs (similar to Local Storage) Exposed to the app itself, as well as service workers Cached items persist until you delete or overwrite them Provides for flexible cache strategies (BYO): Cache first, Network fallback (e.g. data) Network first, Cache fallback (e.g. data) Cache / network race (e.g. data) Network only (e.g. fresh data only) Cache only (e.g. internal static resources like HTML, CSS, JS Files, etc) 25

26 Service Worker - Additional APIs Notifications API Push API Background Sync API - Chrome only Credential Management API - Chrome only Payment Request API - Chrome and Safari (partial) 26

27 Development Tools 27

28 Chrome Development Tools Inspect the current Web App Manifest Force Add to Home Screen Inspect the active state of your Service Worker Options to: Force refresh of Service Worker on reload Bypass Service Worker for network requests Disable network access Clear local cache and data storage with single click Force installation of an updated Service Worker version Trigger test sync tasks and push notifications 28

29 Chrome Audit (Lighthouse) Validate PWA Requirements: Web App Manifest Service Worker HTTPS Scores your PWA against the Google PWA Checklist 29

30 Demo 30

31 Demo React + Domino 31

32 32

33 Initial Application PWA Audit with Lighthouse 33

34 34

35 + SSL on Domino Server + hint into index.html <noscript> You need to enable JavaScript to run this app. </noscript> 35

36 + https + hint to enable JavaScript PWA Audit with Lighthouse 36

37 37

38 + manifest.json + icons + to index.html <meta name="theme-color" content="#9b0000"> <link rel="manifest" href="%public_url%/manifest.json"> { "name": "Theater React Demo", "short_name": "Theater", "theme_color": "#9b0000", "background_color": "#fffafa", "display": "standalone", "start_url": "./index.html", "icons": [ { "src": "icons/icon-192x192.png", "sizes": "192x192", "type": "image/png" }, { "src": "icons/icon-512x512.png", "sizes": "512x512", "type": "image/png" },... 38

39 + manifest PWA Audit with Lighthouse 39

40 40

41 + Service Worker with service-worker.js importscripts(" workbox.precaching.precacheandroute([]); [ ] gets automatically filled with list of static files like *.js, *.html, *.css for precache during build index.js if ('serviceworker' in navigator) { navigator.serviceworker.register('./service-worker.js').then(registration => { console.log(`service Worker registered! Scope: ${registration.scope}`); }).catch(err => { console.log(`service Worker registration failed: ${err}`); }); } 41

42 + Service Worker PWA Audit with Lighthouse 42

43 Offline? 43

44 Offline? JS/HTML/CSS Data 44

45 + Service Worker - live data caching workbox.routing.registerroute( /(.*)data\.xsp\/data\/(.*)/, workbox.strategies.networkfirst({ cachename: 'theater-cache' }) ); 45

46 + Background sync + notifications const bgsyncplugin = new workbox.backgroundsync.plugin( 'theater-queue', { callbacks: { requestwillenqueue: shownotificationenqueue, queuedidreplay: shownotificationsuccess, } } ); const networkwithbackgroundsync = new workbox.strategies.networkonly({ plugins: [bgsyncplugin], }); workbox.routing.registerroute( /(.*)data\.xsp\/data\/(.*)/, networkwithbackgroundsync, 'POST' ); 46

47 Service Worker - Notifications offline back online 47

48 Demo Code: 48

49 Summary PWA s are very easy to implement - range of sample Service Worker scripts available, including Google's excellent WorkBox Cross-Platform - single base code across all devices, mobile and desktop alike Ideal for Business environments - no App Stores Future proof - due to their Progressive nature, PWA s can make use of new Browser capabilities as and when they become available Leverage and enhance your existing Web Development Skills 49

50 Thank You 50

51 Questions? 51

52 References (1/2)

53 References (2/2) US/docs/Web/API/Service_Worker_API

Building Mobile Apps with the ArcGIS API for JavaScript. Andy Gup, Lloyd Heberlie, Thomas Other

Building Mobile Apps with the ArcGIS API for JavaScript. Andy Gup, Lloyd Heberlie, Thomas Other Building Mobile Apps with the ArcGIS API for JavaScript Andy Gup, Lloyd Heberlie, Thomas Other Agenda Capabilities Managing app life-cycle Working with locally hosted builds Working from JS frameworks

More information

PROGRESSIVE WEB APPS & EDUCATION

PROGRESSIVE WEB APPS & EDUCATION PROGRESSIVE WEB APPS & EDUCATION How Developers Can Build Web Sites With Native App User Experience and the Natural Advantages the Web Offers Businesses and Customers CHRIS LOVE http://bit.ly/2j3salg @chrislove

More information

Progressive Web Applications

Progressive Web Applications Introduction Progressive Web Applications Progressive Web Applications (PWAs for short) are a new type of application that represents a hybrid application type. A PWA is not only able to work without a

More information

Deep User Engagement:

Deep User Engagement: Deep User Engagement: Add to Home Screen and Web Push Notifications ROADSHOW Progressive Web Apps Reliable Fast loading, work offline and on flaky networks Fast Smooth animation, jank-free scrolling and

More information

Evaluation and Implementation of Progressive Web Application

Evaluation and Implementation of Progressive Web Application Parbat Thakur Evaluation and Implementation of Progressive Web Application Helsinki Metropolia University of Applied Sciences Bachelor of Engineering Information Technology Thesis 6 April, 2018 Abstract

More information

Offline-first PWA con Firebase y Vue.js

Offline-first PWA con Firebase y Vue.js Offline-first PWA con Firebase y Vue.js About me Kike Navalon, engineer Currently working at BICG playing with data You can find me at @garcianavalon 2 We live in a disconnected & battery powered world,

More information

Service Workers & APEX

Service Workers & APEX Dimitri Gielis Service Workers & APEX www.apexrnd.be dgielis.blogspot.com @dgielis dgielis@apexrnd.be Dimitri Gielis Founder & CEO of APEX R&D 18+ years of Oracle Experience (OCP & APEX Certified) Oracle

More information

Strategies for Selecting the Right Open Source Framework for Cross-Browser Testing

Strategies for Selecting the Right Open Source Framework for Cross-Browser Testing BW6 Test Automation Wednesday, June 6th, 2018, 1:30 PM Strategies for Selecting the Right Open Source Framework for Cross-Browser Testing Presented by: Eran Kinsbruner Perfecto Brought to you by: 350 Corporate

More information

React(.js) the Domino Way High-Performance Client for Domino. Knut Herrmann

React(.js) the Domino Way High-Performance Client for Domino. Knut Herrmann React(.js) the Domino Way High-Performance Client for Domino Knut Herrmann CollabSphere 2018 Sponsors Knut Herrmann Senior Software Architect Leonso GmbH Notes Domino developer since version 2 Web application

More information

Progressive Web Apps

Progressive Web Apps Progressive Web Apps The web isready, but what about the users? Version: 1.8 Orientation in Objects GmbH Weinheimer Str. 68 68309 Mannheim www.oio.de info@oio.de Your Speaker Loris Bachert Trainer, Consultant,

More information

SAMPLE CHAPTER. Dean Alan Hume. FOREWORD BY Addy Osmani MANNING

SAMPLE CHAPTER. Dean Alan Hume. FOREWORD BY Addy Osmani MANNING SAMPLE CHAPTER Dean Alan Hume FOREWORD BY Addy Osmani MANNING Progressive Web Apps by Dean Alan Hume Chapter 3 Copyright 2018 Manning Publications brief contents PART 1 DEFINING PROGRESSIVE WEB APPS...1

More information

Build Native-like Experiences in HTML5

Build Native-like Experiences in HTML5 Developers Build Native-like Experiences in HTML5 The Chrome Apps Platform Joe Marini - Chrome Developer Advocate About Me Joe Marini Developer Relations Lead - Google Chrome google.com/+joemarini @joemarini

More information

PWA-ifying Santa Tracker. Sam

PWA-ifying Santa Tracker. Sam PWA-ifying Santa Tracker Sam Thorogood @samthor About Sam Developer Relations on "Web" Varied projects: polyfills, apps, demos, videos, talks, internal + public advocacy Demo Why? Open-Source Education

More information

SAMPLE CHAPTER. Dean Alan Hume. FOREWORD BY Addy Osmani MANNING

SAMPLE CHAPTER. Dean Alan Hume. FOREWORD BY Addy Osmani MANNING SAMPLE CHAPTER Dean Alan Hume FOREWORD BY Addy Osmani MANNING Progressive Web Apps by Dean Alan Hume Chapter 4 Copyright 2018 Manning Publications brief contents PART 1 DEFINING PROGRESSIVE WEB APPS...1

More information

Etanova Enterprise Solutions

Etanova Enterprise Solutions Etanova Enterprise Solutions Front End Development» 2018-09-23 http://www.etanova.com/technologies/front-end-development Contents HTML 5... 6 Rich Internet Applications... 6 Web Browser Hardware Acceleration...

More information

Progressive web app. Juraj Kubala

Progressive web app. Juraj Kubala Progressive web app with Angular 2 and ASP.NET Juraj Kubala Bachelor s thesis December 2017 School of Technology, Communication and Transport Degree Programme in Information and Communications Technology

More information

Building Native Mapping Apps with PhoneGap: Advanced Techniques Andy

Building Native Mapping Apps with PhoneGap: Advanced Techniques Andy Building Native Mapping Apps with PhoneGap: Advanced Techniques Andy Gup @agup Agenda Application life-cycle Working with UI frameworks Security Geolocation Offline Expectations Experience with PhoneGap

More information

Native Mobile Apps in JavaScript

Native Mobile Apps in JavaScript Native Mobile Apps in JavaScript Using Exponent and React Native Charlie Cheever CS50 Seminar October 28, 2016 About Me Harvard Amazon Facebook Quora Exponent A Brief History of Mobile Development Mobile

More information

HTTP, WebSocket, SPDY, HTTP/2.0

HTTP, WebSocket, SPDY, HTTP/2.0 HTTP, WebSocket, SPDY, HTTP/2.0 Evolution of Web Protocols Thomas Becker tbecker@intalio.com 1 Intalio Intalio Jetty Services, Training and Support for Jetty and CometD Intalio BPMS Business Process Management

More information

Executive Summary. Performance Report for: https://edwardtbabinski.us/blogger/social/index. The web should be fast. How does this affect me?

Executive Summary. Performance Report for: https://edwardtbabinski.us/blogger/social/index. The web should be fast. How does this affect me? The web should be fast. Executive Summary Performance Report for: https://edwardtbabinski.us/blogger/social/index Report generated: Test Server Region: Using: Analysis options: Tue,, 2017, 4:21 AM -0400

More information

HTML5 Evolution and Development. Matt Spencer UI & Browser Marketing Manager

HTML5 Evolution and Development. Matt Spencer UI & Browser Marketing Manager HTML5 Evolution and Development Matt Spencer UI & Browser Marketing Manager 1 HTML5 Ratified. finally! After 7 years of development, the HTML5 specification was ratified on 28 th October 14 urce>

More information

HTML 5 and CSS 3, Illustrated Complete. Unit L: Programming Web Pages with JavaScript

HTML 5 and CSS 3, Illustrated Complete. Unit L: Programming Web Pages with JavaScript HTML 5 and CSS 3, Illustrated Complete Unit L: Programming Web Pages with JavaScript Objectives Explore the Document Object Model Add content using a script Trigger a script using an event handler Create

More information

A Library and Proxy for SPDY

A Library and Proxy for SPDY A Library and Proxy for SPDY Interdisciplinary Project Andrey Uzunov Chair for Network Architectures and Services Department of Informatics Technische Universität München April 3, 2013 Andrey Uzunov (TUM)

More information

Computer Systems Department, University of Castilla-La Mancha Albacete, Spain

Computer Systems Department, University of Castilla-La Mancha Albacete, Spain Review of the HTML5 API Computer Systems Department, University of Castilla-La Mancha Albacete, Spain felix.albertos@uclm.es 5th June 2018 Félix Albertos Marco ICWE 2018 TUTORIAL Review of the HTML5 API

More information

Introduction to Sencha Ext JS

Introduction to Sencha Ext JS Introduction to Sencha Ext JS Olga Petrova olga@sencha.com Sales Engineer EMEA Agenda Use Case How It Works Advantages Demo Use case Ext JS a Javascript framework for building enterprise data-intensive

More information

OU Mashup V2. Display Page

OU Mashup V2. Display Page OU Mashup V2 OU Mashup v2 is the new iteration of OU Mashup. All instances of OU Mashup implemented in 2018 and onwards are v2. Its main advantages include: The ability to add multiple accounts per social

More information

Real-time video chat XPage application using websocket and WebRTC technologies AD-1077

Real-time video chat XPage application using websocket and WebRTC technologies AD-1077 Real-time video chat XPage application using websocket and WebRTC technologies AD-1077 Dr Csaba Kiss 02/03/2016 LA-UR-16-20047 Credentials Over 25 years experience in molecular biology Began Xpage application

More information

Open Mic Webcast. IBM Verse Offline Yingle Jia, Mark Wallace April 20, 2016

Open Mic Webcast. IBM Verse Offline Yingle Jia, Mark Wallace April 20, 2016 Open Mic Webcast IBM Verse Offline Yingle Jia, Mark Wallace April 20, 2016 Agenda Verse Offline Overview Offline Architecture Offline UX and Features Offline Troubleshooting Q&A 2016 IBM Corporation 2

More information

Firefox for Android. Reviewer s Guide. Contact us:

Firefox for Android. Reviewer s Guide. Contact us: Reviewer s Guide Contact us: press@mozilla.com Table of Contents About Mozilla 1 Move at the Speed of the Web 2 Get Started 3 Mobile Browsing Upgrade 4 Get Up and Go 6 Customize On the Go 7 Privacy and

More information

DECOUPLING PATTERNS, SERVICES AND CREATING AN ENTERPRISE LEVEL EDITORIAL EXPERIENCE

DECOUPLING PATTERNS, SERVICES AND CREATING AN ENTERPRISE LEVEL EDITORIAL EXPERIENCE DECOUPLING PATTERNS, SERVICES AND CREATING AN ENTERPRISE LEVEL EDITORIAL EXPERIENCE Who we are and Why we are here? Saurabh Chugh Started Drupal journey in 2010 with Drupal 6, long journey with Drupal

More information

The Web, after HTML5. Jonghong Jeon. 9 December 2015

The Web, after HTML5. Jonghong Jeon. 9 December 2015 The Web, after HTML5 Jonghong Jeon hollobit@etri.re.kr 9 December 2015 1 hollobit@etri.re.kr 2 3 Agenda What s mean HTML5 is done Starting point Adaptation, Certification, Interoperability Challenge to

More information

Executive Summary. Performance Report for: The web should be fast. Top 5 Priority Issues. How does this affect me?

Executive Summary. Performance Report for:   The web should be fast. Top 5 Priority Issues. How does this affect me? The web should be fast. Executive Summary Performance Report for: https://designmartijn.nl/ Report generated: Test Server Region: Using: Sun, Sep 30, 2018, 7:29 AM -0700 Vancouver, Canada Chrome (Desktop)

More information

UNIT 3 SECTION 1 Answer the following questions Q.1: What is an editor? editor editor Q.2: What do you understand by a web browser?

UNIT 3 SECTION 1 Answer the following questions Q.1: What is an editor? editor editor Q.2: What do you understand by a web browser? UNIT 3 SECTION 1 Answer the following questions Q.1: What is an editor? A 1: A text editor is a program that helps you write plain text (without any formatting) and save it to a file. A good example is

More information

Serverless Single Page Web Apps, Part Four. CSCI 5828: Foundations of Software Engineering Lecture 24 11/10/2016

Serverless Single Page Web Apps, Part Four. CSCI 5828: Foundations of Software Engineering Lecture 24 11/10/2016 Serverless Single Page Web Apps, Part Four CSCI 5828: Foundations of Software Engineering Lecture 24 11/10/2016 1 Goals Cover Chapter 4 of Serverless Single Page Web Apps by Ben Rady Present the issues

More information

Integration Service. Admin Console User Guide. On-Premises

Integration Service. Admin Console User Guide. On-Premises Kony MobileFabric TM Integration Service Admin Console User Guide On-Premises Release 7.3 Document Relevance and Accuracy This document is considered relevant to the Release stated on this title page and

More information

Sweet Themes Are Made of This: The Magento PWA Studio

Sweet Themes Are Made of This: The Magento PWA Studio Sweet Themes Are Made of This: The Magento PWA Studio James Zetlen Frontend Architect Magento Commerce @JamesZetlen A suite of tools, standards, and top-quality ingredients for building and sharing Progressive

More information

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments.

The course also includes an overview of some of the most popular frameworks that you will most likely encounter in your real work environments. Web Development WEB101: Web Development Fundamentals using HTML, CSS and JavaScript $2,495.00 5 Days Replay Class Recordings included with this course Upcoming Dates Course Description This 5-day instructor-led

More information

Strategies for Selecting the Right Open Source Framework for Cross- Browser Testing

Strategies for Selecting the Right Open Source Framework for Cross- Browser Testing W13 Test Frameworks Wednesday, October 17th, 2018 3:00 PM Strategies for Selecting the Right Open Source Framework for Cross- Browser Testing Presented by: Eran Kinsbruner Brought to you by: 350 Corporate

More information

Offline

Offline Offline First @caolan Unlike the always-wired machines of the past, computers are now truly personal, and people move through online and offline seamlessly our apps should do the same More often than

More information

Chrome Extension Security Architecture

Chrome Extension Security Architecture Chrome Extension Security Architecture Presenter: Jienan Liu Network, Intelligence & security Lab outline Chrome extension introduction Threats towards extension Chrome extension s security architecture

More information

Rediscover Google AMP Learn to integrate AMP with your Drupal project Twin Cities Drupal Camp June 9, 2018

Rediscover Google AMP Learn to integrate AMP with your Drupal project Twin Cities Drupal Camp June 9, 2018 Learn to integrate AMP with your Drupal project Twin Cities Drupal Camp June 9, 2018 : Learn to integrate AMP with your Drupal project Jason A. Want @jasonawant Senior Software Engineer The Nerdery 3 STRATEGY.

More information

Executive Summary. Performance Report for: The web should be fast. Top 4 Priority Issues

Executive Summary. Performance Report for:   The web should be fast. Top 4 Priority Issues The web should be fast. Executive Summary Performance Report for: https://www.wpspeedupoptimisation.com/ Report generated: Test Server Region: Using: Tue,, 2018, 12:04 PM -0800 London, UK Chrome (Desktop)

More information

Customizing the Blackboard Learn UI & Tag Libraries. George Kroner, Developer Relations Engineer

Customizing the Blackboard Learn UI & Tag Libraries. George Kroner, Developer Relations Engineer Customizing the Blackboard Learn UI & Tag Libraries George Kroner, Developer Relations Engineer Agenda Product capabilities Capabilities in more depth Building Blocks revisited (tag libraries) Tag libraries

More information

APEX Unplugged Building Oracle Application Express Applications That Can Survive Without the Internet. Dan McGhan Senior Technical Consultant

APEX Unplugged Building Oracle Application Express Applications That Can Survive Without the Internet. Dan McGhan Senior Technical Consultant APEX Unplugged Building Oracle Application Express Applications That Can Survive Without the Internet Dan McGhan Senior Technical Consultant 1 My background Dan McGhan Senior consultant with Enkitec Joined

More information

BIG-IP Access Policy Manager : Portal Access. Version 12.1

BIG-IP Access Policy Manager : Portal Access. Version 12.1 BIG-IP Access Policy Manager : Portal Access Version 12.1 Table of Contents Table of Contents Overview of Portal Access...7 Overview: What is portal access?...7 About portal access configuration elements...7

More information

Using Development Tools to Examine Webpages

Using Development Tools to Examine Webpages Chapter 9 Using Development Tools to Examine Webpages Skills you will learn: For this tutorial, we will use the developer tools in Firefox. However, these are quite similar to the developer tools found

More information

IGME-330. Rich Media Web Application Development I Week 1

IGME-330. Rich Media Web Application Development I Week 1 IGME-330 Rich Media Web Application Development I Week 1 Developing Rich Media Apps Today s topics Tools we ll use what s the IDE we ll be using? (hint: none) This class is about Rich Media we ll need

More information

Tizen Web Runtime. Ming Jin, Samsung Electronics. (May 8, 2012)

Tizen Web Runtime. Ming Jin, Samsung Electronics. (May 8, 2012) Tizen Web Runtime Ming Jin, Samsung Electronics (May 8, 2012) Contents What is Web Application & Web Runtime Tizen Web Application Packaging & Configuration Network Access Tizen Web Runtime Installer Core

More information

A Closer Look at XPages in IBM Lotus Domino Designer 8.5 Ray Chan Advisory I/T Specialist Lotus, IBM Software Group

A Closer Look at XPages in IBM Lotus Domino Designer 8.5 Ray Chan Advisory I/T Specialist Lotus, IBM Software Group A Closer Look at XPages in IBM Lotus Domino Designer 8.5 Ray Chan Advisory I/T Specialist Lotus, IBM Software Group 2008 IBM Corporation Agenda XPage overview From palette to properties: Controls, Ajax

More information

Customizing Web AppBuilder using Third Party Products. Presented to: Esri Canada Toronto UC Presented by: Maura Daffern October 11 th, 2018

Customizing Web AppBuilder using Third Party Products. Presented to: Esri Canada Toronto UC Presented by: Maura Daffern October 11 th, 2018 Customizing Web AppBuilder using Third Party Products Presented to: Esri Canada Toronto UC Presented by: Maura Daffern October 11 th, 2018 Introduction Third Party Products? Who Am I? Agenda What is the

More information

COURSE 20480B: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3

COURSE 20480B: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3 ABOUT THIS COURSE This course provides an introduction to HTML5, CSS3, and JavaScript. This course helps students gain basic HTML5/CSS3/JavaScript programming skills. This course is an entry point into

More information

Beginner s Guide to Cordova and Mobile Application Development

Beginner s Guide to Cordova and Mobile Application Development November 13, 2018 Beginner s Guide to Cordova and Mobile Application Development George Campbell Lead Software Engineer Doug Davies Lead Software Engineer George Campbell Lead Software Engineer Doug Davies

More information

HTML5 - INTERVIEW QUESTIONS

HTML5 - INTERVIEW QUESTIONS HTML5 - INTERVIEW QUESTIONS http://www.tutorialspoint.com/html5/html5_interview_questions.htm Copyright tutorialspoint.com Dear readers, these HTML5 Interview Questions have been designed specially to

More information

Mobile Web Applications. Gary Dubuque IT Research Architect Department of Revenue

Mobile Web Applications. Gary Dubuque IT Research Architect Department of Revenue Mobile Web Applications Gary Dubuque IT Research Architect Department of Revenue Summary Times are approximate 10:15am 10:25am 10:35am 10:45am Evolution of Web Applications How they got replaced by native

More information

How to start with 3DHOP

How to start with 3DHOP How to start with 3DHOP Package content, local setup, online deployment http://3dhop.net 25/5/2018 The 3DHOP distribution Where to find it, what s inside The 3DHOP distribution package From the page http://3dhop.net/download.php

More information

Programming in HTML5 with JavaScript and CSS3

Programming in HTML5 with JavaScript and CSS3 Programming in HTML5 with JavaScript and CSS3 20480B; 5 days, Instructor-led Course Description This course provides an introduction to HTML5, CSS3, and JavaScript. This course helps students gain basic

More information

UI Course HTML: (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) Introduction. The World Wide Web (WWW) and history of HTML

UI Course HTML: (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) Introduction. The World Wide Web (WWW) and history of HTML UI Course (Html, CSS, JavaScript, JQuery, Bootstrap, AngularJS) HTML: Introduction The World Wide Web (WWW) and history of HTML Hypertext and Hypertext Markup Language Why HTML Prerequisites Objective

More information

Lab 1: Getting Started with IBM Worklight Lab Exercise

Lab 1: Getting Started with IBM Worklight Lab Exercise Lab 1: Getting Started with IBM Worklight Lab Exercise Table of Contents 1. Getting Started with IBM Worklight... 3 1.1 Start Worklight Studio... 5 1.1.1 Start Worklight Studio... 6 1.2 Create new MyMemories

More information

Luckily, our enterprise had most of the back-end (services, middleware, business logic) already.

Luckily, our enterprise had most of the back-end (services, middleware, business logic) already. 2 3 4 The point here is that for real business applications, there is a connected back-end for services. The mobile part of the app is just a presentation layer that is unique for the mobile environment.

More information

All India Council For Research & Training

All India Council For Research & Training WEB DEVELOPMENT & DESIGNING Are you looking for a master program in web that covers everything related to web? Then yes! You have landed up on the right page. Web Master Course is an advanced web designing,

More information

GRITS AJAX & GWT. Trey Roby. GRITS 5/14/09 Roby - 1

GRITS AJAX & GWT. Trey Roby. GRITS 5/14/09 Roby - 1 AJAX & GWT Trey Roby GRITS 5/14/09 Roby - 1 1 Change The Web is Changing Things we never imagined Central to people s lives Great Opportunity GRITS 5/14/09 Roby - 2 2 A Very Brief History of Computing

More information

What Mobile Development Model is Right for You?

What Mobile Development Model is Right for You? What Mobile Development Model is Right for You? An analysis of the pros and cons of Responsive Web App, Hybrid App I - Hybrid Web App, Hybrid App II - Hybrid Mixed App and Native App Contents Mobile Development

More information

Getting started with Tabris.js Tutorial Ebook

Getting started with Tabris.js Tutorial Ebook Getting started with Tabris.js 2.3.0 Tutorial Ebook Table of contents Introduction...3 1 Get started...4 2 Tabris.js in action...5 2.1 Try the examples...5 2.2 Play with the examples...7 2.3 Write your

More information

Adapt Learning: Adapt Framework Concept and Vision

Adapt Learning: Adapt Framework Concept and Vision Adapt Learning: Adapt Framework Concept and Vision Document control Abstract: Author: Describes the concept of the Adapt Framework Sven Laux, Daryl Hedley, Paul Welch Version: 1.0 Date: 27 / 11 / 2013

More information

DEVELOPING MICROSOFT SHAREPOINT SERVER 2013 ADVANCED SOLUTIONS. Course: 20489A; Duration: 5 Days; Instructor-led

DEVELOPING MICROSOFT SHAREPOINT SERVER 2013 ADVANCED SOLUTIONS. Course: 20489A; Duration: 5 Days; Instructor-led CENTER OF KNOWLEDGE, PATH TO SUCCESS Website: DEVELOPING MICROSOFT SHAREPOINT SERVER 2013 ADVANCED SOLUTIONS Course: 20489A; Duration: 5 Days; Instructor-led WHAT YOU WILL LEARN This course provides SharePoint

More information

AD406: What s New in Digital Experience Development with IBM Web Experience Factory

AD406: What s New in Digital Experience Development with IBM Web Experience Factory AD406: What s New in Digital Experience Development with IBM Web Experience Factory Jonathan Booth, Senior Architect, Digital Experience Tooling, IBM Adam Ginsburg, Product Manager, Digital Experience

More information

Quick Desktop Application Development Using Electron

Quick Desktop Application Development Using Electron Quick Desktop Application Development Using Electron Copyright Blurb All rights reserved. No part of this book may be reproduced in any form or by any electronic or mechanical means including information

More information

Executive Summary. Performance Report for: The web should be fast. Top 5 Priority Issues. How does this affect me?

Executive Summary. Performance Report for:   The web should be fast. Top 5 Priority Issues. How does this affect me? The web should be fast. Executive Summary Performance Report for: https://www.cookandlucas.com/ Report generated: Test Server Region: Using: Fri, Jul 20, 2018, 4:28 AM -0700 Vancouver, Canada Chrome (Desktop)

More information

Integration Service. Admin Console User Guide. On-Premises

Integration Service. Admin Console User Guide. On-Premises Kony Fabric Integration Service Admin Console User Guide On-Premises Release V8 SP1 Document Relevance and Accuracy This document is considered relevant to the Release stated on this title page and the

More information

HTML5 MOCK TEST HTML5 MOCK TEST I

HTML5 MOCK TEST HTML5 MOCK TEST I http://www.tutorialspoint.com HTML5 MOCK TEST Copyright tutorialspoint.com This section presents you various set of Mock Tests related to HTML5 Framework. You can download these sample mock tests at your

More information

Connect and Transform Your Digital Business with IBM

Connect and Transform Your Digital Business with IBM Connect and Transform Your Digital Business with IBM 1 MANAGEMENT ANALYTICS SECURITY MobileFirst Foundation will help deliver your mobile apps faster IDE & Tools Mobile App Builder Development Framework

More information

Flex 3 Pre-release Tour

Flex 3 Pre-release Tour Flex 3 Pre-release Tour Andrew Shorten shorten@adobe.com Enrique Duvos duvos@adobe.com Flex 3 Pre-release Tour Agenda Adobe Platform Update (45 mins) Flex Builder 3 Features (45 mins) Adobe & Open Source

More information

Lecture 4: Data Collection and Munging

Lecture 4: Data Collection and Munging Lecture 4: Data Collection and Munging Instructor: Outline 1 Data Collection and Scraping 2 Web Scraping basics In-Class Quizzes URL: http://m.socrative.com/ Room Name: 4f2bb99e Data Collection What you

More information

Review of Mobile Web Application Frameworks

Review of Mobile Web Application Frameworks Review of Mobile Web Application Frameworks Article Number: 909 Rating: Unrated Last Updated: Mon, May 9, 2011 at 10:57 AM If you are serious about getting your website or web application mobile-friendly,

More information

This tutorial is intended to make you comfortable in getting started with the Firebase backend platform and its various functions.

This tutorial is intended to make you comfortable in getting started with the Firebase backend platform and its various functions. Firebase About the Tutorial Firebase is a backend platform for building Web, Android and IOS applications. It offers real time database, different APIs, multiple authentication types and hosting platform.

More information

Ten interesting features of Google s Angular Project

Ten interesting features of Google s Angular Project Ten interesting features of Google s Angular Project - 1 Ten interesting features of Google s Angular Project Copyright Clipcode Ltd 2018 All rights reserved Ten interesting features of Google s Angular

More information

4D Live Window Addendum 1.1

4D Live Window Addendum 1.1 Version 1.1 enhances the feature set to allow users to add HTML to a 4D window to present data and respond with interactive content on user clicks. Main enhancements Control of Context Menu/New Window

More information

AngularJS Fundamentals

AngularJS Fundamentals AngularJS Fundamentals by Jeremy Zerr Blog: http://www.jeremyzerr.com LinkedIn: http://www.linkedin.com/in/jrzerr Twitter: http://www.twitter.com/jrzerr What is AngularJS Open Source Javascript MVC/MVVM

More information

Migrating traditional Java EE applications to mobile

Migrating traditional Java EE applications to mobile Migrating traditional Java EE applications to mobile Serge Pagop Sr. Channel MW Solution Architect, Red Hat spagop@redhat.com Burr Sutter Product Management Director, Red Hat bsutter@redhat.com 2014-04-16

More information

How To Present Progressive Web Apps To Your Clients

How To Present Progressive Web Apps To Your Clients How To Present Progressive Web Apps To Your Clients AND HELP THEM WIN THE MOBILE WEB TABLE OF CONTENTS 01 And Then There Were Three PAGE 03 05 The Major Benefits of PWAs PAGE 07 02 Introducing PWAs PAGE

More information

20480B: Programming in HTML5 with JavaScript and CSS3

20480B: Programming in HTML5 with JavaScript and CSS3 20480B: Programming in HTML5 with JavaScript and CSS3 Course Details Course Code: Duration: Notes: 20480B 5 days This course syllabus should be used to determine whether the course is appropriate for the

More information

Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise)

Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise) Homework 8: Ajax, JSON and Responsive Design Travel and Entertainment Search (Bootstrap/Angular/AJAX/JSON/jQuery /Cloud Exercise) 1. Objectives Get familiar with the AJAX and JSON technologies Use a combination

More information

Fundamentals of Website Development

Fundamentals of Website Development Fundamentals of Website Development CSC 2320, Fall 2015 The Department of Computer Science In this chapter History of HTML HTML 5-2- 1 The birth of HTML HTML Blows and standardization -3- -4-2 HTML 4.0

More information

Automation with Meraki Provisioning API

Automation with Meraki Provisioning API DEVNET-2120 Automation with Meraki Provisioning API Courtney M. Batiste, Solutions Architect- Cisco Meraki Cisco Spark How Questions? Use Cisco Spark to communicate with the speaker after the session 1.

More information

Developing Microsoft SharePoint Server 2013 Advanced Solutions

Developing Microsoft SharePoint Server 2013 Advanced Solutions 20489 - Developing Microsoft SharePoint Server 2013 Advanced Solutions Duration: 5 Days Course Price: $2,975 Software Assurance Eligible Course Description Course Overview This training course provides

More information

ASP.NET MVC Training

ASP.NET MVC Training TRELLISSOFT ASP.NET MVC Training About This Course: Audience(s): Developers Technology: Visual Studio Duration: 6 days (48 Hours) Language(s): English Overview In this course, students will learn to develop

More information

Full Stack boot camp

Full Stack boot camp Name Full Stack boot camp Duration (Hours) JavaScript Programming 56 Git 8 Front End Development Basics 24 Typescript 8 React Basics 40 E2E Testing 8 Build & Setup 8 Advanced JavaScript 48 NodeJS 24 Building

More information

Jquery.ajax Call Returns Status Code Of 200 But Fires Jquery Error

Jquery.ajax Call Returns Status Code Of 200 But Fires Jquery Error Jquery.ajax Call Returns Status Code Of 200 But Fires Jquery Error The request returns http 200 OK, but the xhr status is 0, error. jquery Ajax Request to get JSON data fires error event to make an ajax

More information

Front End Nanodegree Syllabus

Front End Nanodegree Syllabus Front End Nanodegree Syllabus Build Stunning User Experiences Before You Start You've taken the first step toward becoming a web developer by choosing the Front End Nanodegree program. In order to succeed,

More information

Stamp Builder. Documentation. v1.0.0

Stamp  Builder. Documentation.   v1.0.0 Stamp Email Builder Documentation http://getemailbuilder.com v1.0.0 THANK YOU FOR PURCHASING OUR EMAIL EDITOR! This documentation covers all main features of the STAMP Self-hosted email editor. If you

More information

COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3

COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3 COURSE OUTLINE MOC 20480: PROGRAMMING IN HTML5 WITH JAVASCRIPT AND CSS3 MODULE 1: OVERVIEW OF HTML AND CSS This module provides an overview of HTML and CSS, and describes how to use Visual Studio 2012

More information

Front End Nanodegree Syllabus

Front End Nanodegree Syllabus Front End Nanodegree Syllabus Build Stunning User Experiences Before You Start You've taken the first step toward becoming a web developer by choosing the Front End Nanodegree program. In order to succeed,

More information

Course 20480: Programming in HTML5 with JavaScript and CSS3

Course 20480: Programming in HTML5 with JavaScript and CSS3 Course 20480: Programming in HTML5 with JavaScript and CSS3 Overview About this course This course provides an introduction to HTML5, CSS3, and JavaScript. This course helps students gain basic HTML5/CSS3/JavaScript

More information

VMware Identity Manager Administration

VMware Identity Manager Administration VMware Identity Manager Administration VMware AirWatch 9.1 This document supports the version of each product listed and supports all subsequent versions until the document is replaced by a new edition.

More information

When learning coding, be brave

When learning coding, be brave Who am I? Web Technology Overview with a focus on JavaScript-based technologies Lawrence Yao l.yao@unsw.edu.au Lawrence Yao UNSW casual staff Developer Analyst at YTML Consulting Email me if you need technical

More information

20486: Developing ASP.NET MVC 4 Web Applications

20486: Developing ASP.NET MVC 4 Web Applications 20486: Developing ASP.NET MVC 4 Web Applications Length: 5 days Audience: Developers Level: 300 OVERVIEW In this course, students will learn to develop advanced ASP.NET MVC applications using.net Framework

More information

WebKit ; FOR : DUMMIES. by Chris Minnick WILEY. John Wiley & Sons, Inc.

WebKit ; FOR : DUMMIES. by Chris Minnick WILEY. John Wiley & Sons, Inc. WebKit ; FOR : DUMMIES by Chris Minnick WILEY John Wiley & Sons, Inc. Table of Contents Introduction 7 Why I Love WebKit, and You Should Too 1 Who Should Read This Book 2 Conventions Used in This Book

More information

Lab 2 Examine More Development Features in IBM Worklight

Lab 2 Examine More Development Features in IBM Worklight Lab 2 Examine More Development Features in IBM Worklight Table of Contents 2. Examine More Development Features in IBM Worklight... 2-3 2.1 Examine the fully-built and styled version of MyMemories...2-4

More information

FIREFLY ARCHITECTURE: CO-BROWSING AT SCALE FOR THE ENTERPRISE

FIREFLY ARCHITECTURE: CO-BROWSING AT SCALE FOR THE ENTERPRISE FIREFLY ARCHITECTURE: CO-BROWSING AT SCALE FOR THE ENTERPRISE Table of Contents Introduction... 2 Architecture Overview... 2 Supported Browser Versions and Technologies... 3 Firewalls and Login Sessions...

More information

eclipse rich ajax platform (rap)

eclipse rich ajax platform (rap) eclipse rich ajax platform (rap) winner Jochen Krause CEO Innoopract Member of the Board of Directors Eclipse Foundation jkrause@innoopract.com GmbH outline rich ajax platform project status and background

More information