PWA-ifying Santa Tracker. Sam

Size: px
Start display at page:

Download "PWA-ifying Santa Tracker. Sam"

Transcription

1 PWA-ifying Santa Tracker Sam

2 About Sam Developer Relations on "Web" Varied projects: polyfills, apps, demos, videos, talks, internal + public advocacy

3

4

5

6 Demo

7 Why?

8 Open-Source

9 Education focus

10 Talks

11 Ghosts of Holidays Past

12

13 2014 Polymer 0.5 With two polyfills Shadow DOM Object.observe Horizontal design wasn't intuitive Half screen photo slide if text is necessary

14 2015 Total responsive village redesign Removed polyfills in favour of "production-ready Polymer 1.2" lots of bugs, especially around element upgrading and O.o Half screen photo slide if text is necessary

15 2016 Polymer fixed most weird bugs Binding to upgraded elements Used app-layout elements New landing pages and routing code, improved shareability Better use of shared elements for scoreboards, sharing,...

16 2017 Back to Shadow DOM polyfill with Polymer 2.0+ Supported on Chrome/Safari Some surprises?

17

18 Fast users have low attention.. squirrel Reliable Engaging

19 Fast Reliable offline + app-like caching Engaging

20 Fast Reliable Engaging app-like: fullscreen, notifications, modern APIs

21 Santa as a Progressive Web App

22 Add To Home Screen You can already "ATHS" this refers to the prompt Supported on Android Naïvely coerce it just add a Web App Manifest and a basic Service Worker

23 Add To Home Screen 10% of Santa Tracker's eligible sessions started here

24 Manifest describing home screen UX <link rel="manifest" href="manifest.json" /> <script> if ('serviceworker' in navigator) { window.sw = navigator.serviceworker.register( '/sw.js?lang=' + document.documentelement.lang); } </script> Install Service Worker where available

25 <link rel="manifest" href="manifest.json" /> <script> if ('serviceworker' in navigator) { window.sw = navigator.serviceworker.register( '/sw.js?lang=' + document.documentelement.lang); } </script> But still need this cruft <!-- non-standard meta tags --> <meta name="apple-mobile-web-app-capable" content="yes"> <meta name="apple-mobile-web-app-status-bar-style" content="#00c6ed"> <meta name="msapplication-tilecolor" content="#30b443"> <meta name="msapplication-tap-highlight" content="no"> <!-- icons --> <link rel="apple-touch-icon" sizes="76x76" href="/images/icon-76.png"> <link rel="apple-touch-icon" sizes="120x120" href="/images/icon-120.png"> <link rel="apple-touch-icon" sizes="152x152" href="/images/icon-152.png">

26 We actually link manifest in JS var manifest = document.createelement('link'); manifest.rel = 'manifest'; manifest.crossorigin = 'use-credentials'; manifest.href = 'manifest.json'; // avoid href rewriting from gulpfile document.head.appendchild(manifest); if ('serviceworker' in navigator) { window.sw = navigator.serviceworker.register( '/sw.js?lang=' + document.documentelement.lang); // Reload the page when a new SW takes over. This should only happen in staging. navigator.serviceworker.addeventlistener('controllerchange', function() { location.reload(); }); }

27 Offline We cache assets and work offline via a Service Worker This is a script that: a) has a lifetime, including install b) proxies network requests

28 Challenges Santa is ~226mb We can't/won't install all of it Languages: + Some different formats (mp3/ogg, gif/mp4) Continuous releases throughout December

29 Static vs prod Static maps.gstatic.com/santatracker Unique URLs per-version cached forever! Not just for offline loading Prod santatracker.google.com Low cache expiry, to detect new release

30 Load what you use Cache core of Santa on 'install' aka the "App Shell" Cache eligible scenes when user interacts with them The village itself is a scene Show offline via frozen houses...but UX is hard

31 <lazy-pages selected-item="village"> <dorf-scene id="village" route="village" icon="1f384" permanent path$="scenes/dorf/dorf-scene_[[language]].html" slot="santa-scene" allow-page-scrolling></dorf-scene> <boatload-scene route="boatload" icon="26f5" "village" route is loaded path$="scenes/boatload/boatload-scene_[[language]].html" loading-bg-color="#8fd7f7" loading-src="scenes/boatload/img/loading.svg" logo="scenes/boatload/img/logo.svg" slot="santa-scene"></boatload-scene>

32 <lazy-pages selected-item="village"> <dorf-scene id="village" route="village" icon="1f384" permanent path$="scenes/dorf/dorf-scene_[[language]].html" slot="santa-scene" allow-page-scrolling></dorf-scene> <boatload-scene route="boatload" icon="26f5" path$="scenes/boatload/boatload-scene_[[language]].html" loading-bg-color="#8fd7f7" loading-src="scenes/boatload/img/loading.svg" logo="scenes/boatload/img/logo.svg" slot="santa-scene"></boatload-scene> "boatload-scene" is HTMLUnknownElement until ready

33 Causes boatload scene to be loaded <lazy-pages selected-item="boatload"> <dorf-scene id="village" route="village" icon="1f384" permanent path$="scenes/dorf/dorf-scene_[[language]].html" slot="santa-scene" allow-page-scrolling></dorf-scene> <boatload-scene route="boatload" icon="26f5" path$="scenes/boatload/boatload-scene_[[language]].html" loading-bg-color="#8fd7f7" loading-src="scenes/boatload/img/loading.svg" logo="scenes/boatload/img/logo.svg" slot="santa-scene"></boatload-scene>

34 Request flow ht ne_en. e c s d tloa v1/boa ml

35 Response flow v1/boatload-scene_en.html ['village', 'boatload',...]

36 Install flow

37 Install flow

38 Install flow

39 Other APIs

40 Web Share New, unifying API for interacting with native share interface It replaces the sea of share buttons normally presented to users Available in Chrome 61+

41 Google Analytics About ¾ of Santa browsers support Web Components + Shadow DOM natively We log all JS errors with an onerror handler although we messed up this year as JS errors from an iframe have their stack trace stripped

42 Santa as a Polymer App

43 <dom-module id="santa-app"> <template> Shows friendly loader <santa-strings id="strings"></santa-strings> <iron-a11y-keys keys="esc enter" on-keys-pressed="_onkeyspressed"></...> <preload-overlay id="preloader"></preload-overlay> <santa-state during-tracker="{{duringtracker}}"...></santa-state> <santa-tracker-router route="{{route}}"></santa-tracker-router> Lazy loads Polymer elements at runtime <santa-chrome id="chrome" pause="{{userpause}}"...> <lazy-pages selected-item="{{selectedscene}}"...> <dorf-scene route="village" icon="1f384" permanent path$="scenes/dorf/dorf-scene_[[language]].html" class="santa-scene" allow-page-scrolling></dorf-scene> <!-- More scenes (30+) below -->

44 Preloader Hides: HTML import of scene itself Loading images, audio etc Matching image used on initial site load, to gain user attention

45 <dom-module id="santa-app"> <template> <santa-strings id="strings"></santa-strings> <iron-a11y-keys keys="esc enter" on-keys-pressed="_onkeyspressed"></...> <preload-overlay id="preloader"></preload-overlay> Takes /boatload.html and converts to route <santa-state during-tracker="{{duringtracker}}"...></santa-state> <santa-tracker-router route="{{route}}"></santa-tracker-router> <santa-chrome id="chrome" pause="{{userpause}}"...> <lazy-pages selected-item="{{selectedscene}}"...> <dorf-scene route="village" icon="1f384" permanent path$="scenes/dorf/dorf-scene_[[language]].html" class="santa-scene" allow-page-scrolling></dorf-scene> <!-- More scenes (30+) below -->

46 route="codeboogie"

47 Generated, shared strings for i18n <dom-module id="santa-app"> <template> <santa-strings id="strings"></santa-strings> <iron-a11y-keys keys="esc enter" on-keys-pressed="_onkeyspressed"></...> <preload-overlay id="preloader"></preload-overlay> <santa-state during-tracker="{{duringtracker}}"...></santa-state> <santa-tracker-router route="{{route}}"></santa-tracker-router> Singleton for Santa's position, date within Dec <santa-chrome id="chrome" pause="{{userpause}}"...> <lazy-pages selected-item="{{selectedscene}}"...> <dorf-scene route="village" icon="1f384" permanent path$="scenes/dorf/dorf-scene_[[language]].html" class="santa-scene" allow-page-scrolling></dorf-scene> <!-- More scenes (30+) below -->

48 Weather The <santa-weather> element wraps a canvas using raf to draw snow and clouds

49 Chrome/Badge The <santa-chrome> element provides the top bar, nav, sidebar etc, wrapping app-layout elements We also have <santa-badge>, which exists on its own: it is owned by the app, and is slotted in the top center

50 Finally...

51 More Resources 2014: How 20% engineers built Santa Tracker Keep an eye on Chrome Developers on YouTube "pwacompat"

52 Ho Ho Ho Sam

Eme03. Mobilise your Applications as Progressive Web Apps

Eme03. Mobilise your Applications as Progressive Web Apps Eme03. Mobilise your Applications as Progressive Web Apps Paul Harrison (Eight Dot Three) @PaulHarrison Knut Herrman (Leonso GmbH) @KnutHerrman 22nd May 2018 #engageug 1 Paul Harrison Consultant at own

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

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

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

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

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

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

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

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

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

Progressive Web Apps & Polymer. Wendy Ginsberg Product Manager,

Progressive Web Apps & Polymer. Wendy Ginsberg Product Manager, Progressive Web Apps & Polymer Wendy Ginsberg Product Manager, Google @wmginsberg Who am I? Wendy Ginsberg Chrome Web Platform Who are you?????????????????????????? 1. Polymer 2. PWAs 3. Polymer + PWAs

More information

ES6 Modules...& Polymer

ES6 Modules...& Polymer SYD ES6 Modules...& Polymer Sam Thorogood @samthor ES Modules ES Modules JavaScript Modules ES Modules JavaScript Modules ECMAScript Modules ES Modules JavaScript Modules ECMAScript Modules commonjs modules

More information

Intro, Version Control, HTML5. CS147L Lecture 1 Mike Krieger

Intro, Version Control, HTML5. CS147L Lecture 1 Mike Krieger Intro, Version Control, HTML5 CS147L Lecture 1 Mike Krieger Hello! - A little about me. Hello! - And a little bit about you? By the end of today - Know what this lab will & won t teach you - Have checked

More information

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

Google Sites Training

Google Sites Training The How to Dos of Google Sites Overview Page 1 Google Sites offers tremendous functionality to make collaborating and sharing information simple. This job aid provides the step-by-step instructions that

More information

Advanced Development with the ArcGIS API for JavaScript. Jeremy Bartley, Kelly Hutchins, Derek Swingley

Advanced Development with the ArcGIS API for JavaScript. Jeremy Bartley, Kelly Hutchins, Derek Swingley Advanced Development with the ArcGIS API for JavaScript Jeremy Bartley, Kelly Hutchins, Derek Swingley Agenda FeatureLayer esri.request and Identity Manager OO JS Building your first Dijit Popups Working

More information

JSN PageBuilder 3 Configuration Manual Introduction

JSN PageBuilder 3 Configuration Manual Introduction JSN PageBuilder 3 Configuration Manual Introduction About JSN PageBuilder 3 JSN PageBuilder 3 is the latest innovation of Joomla! PageBuilder with great improvements in the interface, features, and user

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

Programming in HTML5 with JavaScript and CSS3

Programming in HTML5 with JavaScript and CSS3 20480 - Programming in HTML5 with JavaScript and CSS3 Duration: 5 days Course Price: $2,975 Software Assurance Eligible Course Description Course Overview This training course provides an introduction

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

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

Web Components. Reactive Architecture for the Front End. Steven Skelton. Reactive Programming Toronto December 3, 2014

Web Components. Reactive Architecture for the Front End. Steven Skelton. Reactive Programming Toronto December 3, 2014 Web Components Reactive Architecture for the Front End Steven Skelton Reactive Programming Toronto December 3, 2014 Reactive Manifesto Is a pattern for building software capable of handling today's application

More information

The Road to the Native Mobile Web. Kenneth Rohde Christiansen

The Road to the Native Mobile Web. Kenneth Rohde Christiansen The Road to the Native Mobile Web Kenneth Rohde Christiansen Kenneth Rohde Christiansen Web Platform Architect at Intel Europe Blink core owner and former active WebKit reviewer Works on Chromium, Crosswalk

More information

Firefox OS App Days. Overview and High Level Architecture. Author: José M. Cantera Last update: March 2013 TELEFÓNICA I+D

Firefox OS App Days. Overview and High Level Architecture. Author: José M. Cantera Last update: March 2013 TELEFÓNICA I+D Firefox OS App Days Overview and High Level Architecture Author: José M. Cantera (@jmcantera) Last update: March 2013 TELEFÓNICA I+D 1 Introduction What is Firefox OS? A new mobile open OS fully based

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

Advertising Specifications for Alabama Media Group Properties

Advertising Specifications for Alabama Media Group Properties Advertising Specifications for Alabama Media Group Properties PRINT The Birmingham News The Huntsville Times Press-Register DIGITAL Standard Display High Impact Video Birmingham Magazine BROADSHEET AD

More information

127 Church Street, New Haven, CT O: (203) E: GlobalSearch ECM User Guide

127 Church Street, New Haven, CT O: (203) E:   GlobalSearch ECM User Guide 127 Church Street, New Haven, CT 06510 O: (203) 789-0889 E: sales@square-9.com www.square-9.com GlobalSearch Table of Contents GlobalSearch ECM... 3 GlobalSearch Security... 3 GlobalSearch Licensing Model...

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

Read the Docs Template Documentation

Read the Docs Template Documentation Read the Docs Template Documentation Release 1.0 Read the Docs Jun 27, 2017 KNOWLEDGE BASE 1 Support 1 2 AdminExtra 3 2.1 Compatibility............................................... 3 2.2 Features..................................................

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

Index LICENSED PRODUCT NOT FOR RESALE

Index LICENSED PRODUCT NOT FOR RESALE Index LICENSED PRODUCT NOT FOR RESALE A Absolute positioning, 100 102 with multi-columns, 101 Accelerometer, 263 Access data, 225 227 Adding elements, 209 211 to display, 210 Animated boxes creation using

More information

The paper shows how to realize write-once-run-anywhere for such apps, and what are important lessons learned from our experience.

The paper shows how to realize write-once-run-anywhere for such apps, and what are important lessons learned from our experience. Paper title: Developing WebRTC-based team apps with a cross-platform mobile framework. Speaker: John Buford. Track: Mobile and Wearable Devices, Services, and Applications. Hello everyone. My name is John

More information

Advanced JavaScript. Gary Sheppard & James Tedrick

Advanced JavaScript. Gary Sheppard & James Tedrick Advanced JavaScript Gary Sheppard & James Tedrick HTML 5 Working with jquery Modules, Dijits & AMD Cross-Domain Video Playback Canvas (2D graphics) Geolocation API Web Storage Drag & Drop Web Workers ApplicationCache

More information

ENGAGEMENT PRODUCT SHEET. Engagement. March 2018

ENGAGEMENT PRODUCT SHEET. Engagement. March 2018 PRODUCT SHEET ENGAGEMENT March 2018 Facelift brand building technologies GmbH Gerhofstr.19 20354 Hamburg Germany www.facelift-bbt.com + 49 40 2286 849 0 March 2018 Page 0 of 5 Features Summary World s

More information

NCORE 2018 New Orleans GUIDE to Guidebook. 31st ANNUAL NATIONAL CONFERENCE ON RACE AND ETHNICITY IN AMERICAN HIGHER EDUCATION 1

NCORE 2018 New Orleans GUIDE to Guidebook. 31st ANNUAL NATIONAL CONFERENCE ON RACE AND ETHNICITY IN AMERICAN HIGHER EDUCATION 1 NCORE 2018 New Orleans GUIDE to Guidebook 31st ANNUAL NATIONAL CONFERENCE ON RACE AND ETHNICITY IN AMERICAN HIGHER EDUCATION 1 Hello and welcome to this quick guidebook tutorial for downloading and using

More information

Pro JavaScript. Development. Coding, Capabilities, and Tooling. Den Odell. Apress"

Pro JavaScript. Development. Coding, Capabilities, and Tooling. Den Odell. Apress Pro JavaScript Development Coding, Capabilities, and Tooling Den Odell Apress" Contents J About the Author About the Technical Reviewers Acknowledgments Introduction xv xvii xix xxi Chapter 1: Object-Oriented

More information

ORACLE UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP)

ORACLE UNIVERSITY AUTHORISED EDUCATION PARTNER (WDP) Android Syllabus Pre-requisite: C, C++, Java Programming SQL & PL SQL Chapter 1: Introduction to Android Introduction to android operating system History of android operating system Features of Android

More information

Joomla! extension JSN EasySlider User Manual

Joomla! extension JSN EasySlider User Manual Joomla! extension JSN EasySlider User Manual (for JSN EasySlider 2.0.x) www.facebook.com/joomlashine www.twitter.com/joomlashine www.youtube.com/joomlashine This documentation is release under Creative

More information

ADOBE CAPTIVATE 8. Content Planning Guide

ADOBE CAPTIVATE 8. Content Planning Guide ADOBE CAPTIVATE 8 Content Planning Guide Summer 2014 Table of Contents Using Captivate 8 on Your OnPoint Learning Platform... 2 What are the Advantages and Disadvantages of Captivate?... 2 Use Cases for

More information

JSN EasySlider Configuration Manual

JSN EasySlider Configuration Manual JSN EasySlider Configuration Manual Introduction Product Overview JSN EasySlider JSN EasySlider is the cutting-edge way to present content on website: Informative - Impressive - Interactive. It helps you

More information

Microsoft Programming in HTML5 with JavaScript and CSS3

Microsoft Programming in HTML5 with JavaScript and CSS3 1800 ULEARN (853 276) www.ddls.com.au Microsoft 20480 - Programming in HTML5 with JavaScript and CSS3 Length 5 days Price $4510.00 (inc GST) Version B Overview This course provides an introduction to HTML5,

More information

Index. Bootstrap framework ASP.NET MVC project set-up, default template, 223

Index. Bootstrap framework ASP.NET MVC project set-up, default template, 223 Index A Accordion-style navigation expanding/shrinking navigation, 77 markup, 75 76 menu option, 75 nav element, 76 77 overflow function, 77 responsive design, 73 74 transition effect, 77 ASP.NET MVC custom

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

Web Community Manager 2.20 Release Notes

Web Community Manager 2.20 Release Notes New or Changed Functionality or User Experience GENERAL Sign-in with Google Login You can now allow users to sign-in with their Google TM login information. The user s Google email address must be associated

More information

Write a Touch-friendly HTML5 App. Hongbo Min, Intel Junmin Zhu, Intel Yongsheng Zhu, Intel

Write a Touch-friendly HTML5 App. Hongbo Min, Intel Junmin Zhu, Intel Yongsheng Zhu, Intel Write a Touch-friendly HTML5 App Hongbo Min, Intel Junmin Zhu, Intel Yongsheng Zhu, Intel Agenda Background Touch vs. Mouse Part I: UI Layout Part II: Event Handling Touch in HTML5 Framework Q/A 2 Background

More information

Google Sites 101. Mrs. Wilson

Google Sites 101. Mrs. Wilson Google Sites 101 Mrs. Wilson Google Sites 101 Create a site 1. Go to http://sites.google.com/ 2. Login with your Google Account [or Google Apps account] email address and password You can create a Google

More information

VoiceThread Training

VoiceThread Training VoiceThread Training Contents Introduction... 2 Objectives... 2 Connecting to VoiceThread Initially... 2 Creating a VoiceThread Presentation... 4 Accessing Existing VoiceThread Presentations... 5 Sharing

More information

Developer's HTML5. Cookbook. AAddison-Wesley. Chuck Hudson. Tom Leadbetter. Upper Saddle River, NJ Boston Indianapolis San Francisco

Developer's HTML5. Cookbook. AAddison-Wesley. Chuck Hudson. Tom Leadbetter. Upper Saddle River, NJ Boston Indianapolis San Francisco HTML5 Developer's Cookbook Chuck Hudson Tom Leadbetter AAddison-Wesley Upper Saddle River, NJ Boston Indianapolis San Francisco New York Toronto Montreal London Munich Paris Madrid Capetown Sydney Tokyo

More information

International Research Journal of Engineering and Technology (IRJET) e-issn: Volume: 05 Issue: 06 June p-issn:

International Research Journal of Engineering and Technology (IRJET) e-issn: Volume: 05 Issue: 06 June p-issn: Polymer JavaScript Shabnam Shaikh 1, Lavina Jadhav 2 1Student, Dept. of Institute of Computer Science, MET College, Maharashtra, India 2Professor, Dept. of Institute of Computer Science, MET College, Maharashtra,

More information

1 Hitachi ID Privileged Access Manager. 2 Overview. 3 HiPAM 9.0. Managing the User Lifecycle Across On-Premises and Cloud-Hosted Applications

1 Hitachi ID Privileged Access Manager. 2 Overview. 3 HiPAM 9.0. Managing the User Lifecycle Across On-Premises and Cloud-Hosted Applications 1 Hitachi ID Privileged Access Manager Managing the User Lifecycle Across On-Premises and Cloud-Hosted Applications Privileged Access Manager 10.0 Features and Technology. 2 Overview Hitachi ID Suite 9.0

More information

Web Community Manager Release 4 (2.20)

Web Community Manager Release 4 (2.20) Blackboard Help English Administrator Web Community Manager Release 4 (2.20) Here is what is new in Release 4 (2.20). Google sign-in You can now allow users to sign-in with their Google login information.

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

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

Firefox for Nokia N900 Reviewer s Guide

Firefox for Nokia N900 Reviewer s Guide Firefox for Nokia N900 Table of Contents Bringing Firefox to the Nokia N900 1 1. About Mozilla 2 2. Introducing Firefox for Mobile 2 3. Mozilla s Mobile Vision 3 4. Getting Started 4 5. Personalize Your

More information

ANDROID DEVELOPMENT. Course Details

ANDROID DEVELOPMENT. Course Details ANDROID DEVELOPMENT Course Details centers@acadgild.com www.acadgild.com 90360 10796 01 Brief About the Course Android s share of the global smartphone is 81%. The Google Certified Android development

More information

Varargs Training & Software Development Centre Private Limited, Module: HTML5, CSS3 & JavaScript

Varargs Training & Software Development Centre Private Limited, Module: HTML5, CSS3 & JavaScript PHP Curriculum Module: HTML5, CSS3 & JavaScript Introduction to the Web o Explain the evolution of HTML o Explain the page structure used by HTML o List the drawbacks in HTML 4 and XHTML o List the new

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

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

BEST PRACTICES HTML5 SPECIFICATIONS. what's next in data-driven advertising. File Types. HTML5: HTML, JS, CSS, JPG, JPEG, GIF, PNG, and SVG

BEST PRACTICES HTML5 SPECIFICATIONS. what's next in data-driven advertising. File Types. HTML5: HTML, JS, CSS, JPG, JPEG, GIF, PNG, and SVG SPECIFICATIONS HTML5 creatives are a type of display creative that must follow the same guidelines as display creatives with some additional recommendations. The IAB Display Advertising Guidelines (https://www.iab.com/newadportfolio/)

More information

Agylia Mobile Learning App Feature Summary

Agylia Mobile Learning App Feature Summary Agylia Mobile Learning App Feature Summary Version 12 Agylia Mobile Learning App Available Not Yet Available Optional General Content platforms supported Native device user experience Native Apps Offline

More information

Next Generation HMI/SCADA High Performance HMI

Next Generation HMI/SCADA High Performance HMI SESAM 08.09.2016 Next Generation HMI/SCADA High Performance HMI For more information visit us at www.novotek.com Old UI Updated UI New UX User interfaces 1990 Today What s the problem of today? Easy to

More information

Getting started with M-Files

Getting started with M-Files Getting started with M-Files This guide helps you to get up to speed with M-Files. M-Files Desktop M-Files Desktop is the full-featured client UI for M-Files users and is the primary user interface that

More information

Stencil: The Time for Vanilla Web Components has Arrived

Stencil: The Time for Vanilla Web Components has Arrived Stencil: The Time for Vanilla Web Components has Arrived Gil Fink sparxys CEO @gilfink / www.gilfink.net Typical Application Web Page Design From Design to Implementation Session List Day tabs Component

More information

User Guide: Experience Mobile App

User Guide: Experience Mobile App Experience Mobile App USER GUIDE Download from Windows Store Table of Contents Experience Mobile App User Guide... 3 Downloading the App... 3 Using the Experience App... 4 Step 1: The Library...4 Step

More information

VIEVU Solution App User Guide

VIEVU Solution App User Guide VIEVU Solution App User Guide INTRODUCTION VIEVU Solution is the next generation, fully-hosted, cloud evidence management system. This guide describes how to operate the VIEVU Solution. Additional support

More information

Hart House C&C Website Guide

Hart House C&C Website Guide step-by-step Instructions Hart House C&C Website Guide > Step-by-step instructions > Guidelines Materials available Online: www.harthouse.ca/design What s included in this guide? Included in this guide:

More information

Qiufeng Zhu Advanced User Interface Spring 2017

Qiufeng Zhu Advanced User Interface Spring 2017 Qiufeng Zhu Advanced User Interface Spring 2017 Brief history of the Web Topics: HTML 5 JavaScript Libraries and frameworks 3D Web Application: WebGL Brief History Phase 1 Pages, formstructured documents

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

Single Page Applications using AngularJS

Single Page Applications using AngularJS Single Page Applications using AngularJS About Your Instructor Session Objectives History of AngularJS Introduction & Features of AngularJS Why AngularJS Single Page Application and its challenges Data

More information

Next Generation HMI/SCADA High Performance HMI

Next Generation HMI/SCADA High Performance HMI Dau 06.02.2018 Next Generation HMI/SCADA High Performance HMI For more information visit us at www.novotek.com Old UI Updated UI New UX User interfaces 1990 Today What s the problem of today? Easy to put

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

Android Developer Nanodegree Syllabus

Android Developer Nanodegree Syllabus Before You Start This program is aimed at developers with 1-2 years of experience programming in Java or another object-oriented programming language like Python or C#. If you don t have this experience,

More information

The Economist Apps. Advertising Specs

The Economist Apps. Advertising Specs The Economist Apps Advertising Specs Apps Overview This is a living document that will evolve as we are presented with new formats, and we ll update it periodically to reflect these changes. All media

More information

Mobile Applications 2013/2014

Mobile Applications 2013/2014 Mobile Applications 2013/2014 Mike Taylor Product Manager February 6, 2015 Advanced Development Technology Agenda Devices App Types Test/Deploy Summary Devices Mobile (Feature) Phones Windows version 5/6

More information

How to use WordPress to create a website STEP-BY-STEP INSTRUCTIONS

How to use WordPress to create a website STEP-BY-STEP INSTRUCTIONS How to use WordPress to create a website STEP-BY-STEP INSTRUCTIONS STEP 1:Preparing your WordPress site Go to the Dashboard for your new site Select Appearance > Themes. Make sure you have Activated the

More information

Overview

Overview HTML4 & HTML5 Overview Basic Tags Elements Attributes Formatting Phrase Tags Meta Tags Comments Examples / Demos : Text Examples Headings Examples Links Examples Images Examples Lists Examples Tables Examples

More information

Release Notes. FW Version Localization

Release Notes. FW Version Localization Localization WW March 04, 2019 Firmware: 5.20.346 (March 04, 2019) Implemented: New Reading program 1. Improved reading experience thanks to the new PocketBook Reader application. This new embedded application

More information

UX/UI Controller Component

UX/UI Controller Component http://www.egovframe.go.kr/wiki/doku.php?id=egovframework:mrte:ux_ui:ux_ui_controller_component_3.5 UX/UI Controller Component Outline egovframework offers the user an experience to enjoy one of the most

More information

Signing Up Accessing Chatter On Your Computer On Your Smartphone Using Chatter Posting Like or Comment...

Signing Up Accessing Chatter On Your Computer On Your Smartphone Using Chatter Posting Like or Comment... Chatter Instructions Contents Signing Up... 2 Accessing Chatter... 5 On Your Computer... 5 On Your Smartphone... 6 Using Chatter... 9 Posting... 9 Like or Comment... 9 Share a File... 9 Search and Organize

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

JSN Sun Framework User's Guide

JSN Sun Framework User's Guide JSN Sun Framework User's Guide Getting Started Layout Overview & Key concepts To start with layout configuration, Go to Extension Template JSN_template_default The first tab you see will be the Layout

More information

MOC 20481C: Essentials of Developing Windows Store Apps Using HTML5 and JavaScript

MOC 20481C: Essentials of Developing Windows Store Apps Using HTML5 and JavaScript MOC 20481C: Essentials of Developing Windows Store Apps Using HTML5 and JavaScript Course Overview This course provides students with the knowledge and skills to develop Windows Store Apps using HTML5

More information

Vision Exchange TM Frequently asked questions

Vision Exchange TM Frequently asked questions Vision Exchange TM Frequently asked questions Vision Exchange is our powerful yet intuitive active learning solution for universities, colleges and meeting rooms. These FAQs answer some of your questions

More information

Installation and Configuration Manual

Installation and Configuration Manual Installation and Configuration Manual IMPORTANT YOU MUST READ AND AGREE TO THE TERMS AND CONDITIONS OF THE LICENSE BEFORE CONTINUING WITH THIS PROGRAM INSTALL. CIRRUS SOFT LTD End-User License Agreement

More information

OSSI TAMMI CASE STUDY ON MOBILE OPTIMIZATION OF A WEB APPLICATION. Master of Science thesis

OSSI TAMMI CASE STUDY ON MOBILE OPTIMIZATION OF A WEB APPLICATION. Master of Science thesis OSSI TAMMI CASE STUDY ON MOBILE OPTIMIZATION OF A WEB APPLICATION Master of Science thesis Examiner: Professor Kari Systä Examiner and topic approved by the Faculty Council of the Faculty of Computing

More information

Deploying VMware Workspace ONE Intelligent Hub. October 2018 VMware Workspace ONE

Deploying VMware Workspace ONE Intelligent Hub. October 2018 VMware Workspace ONE Deploying VMware Workspace ONE Intelligent Hub October 2018 VMware Workspace ONE You can find the most up-to-date technical documentation on the VMware website at: https://docs.vmware.com/ If you have

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

HTML5. HTML5 Introduction. Form Input Types. Semantic Elements. Form Attributes. Form Elements. Month Number Range Search Tel Url Time Week

HTML5. HTML5 Introduction. Form Input Types. Semantic Elements. Form Attributes. Form Elements. Month Number Range Search Tel Url Time Week WEB DESIGNING HTML HTML - Introduction HTML - Elements HTML - Tags HTML - Text HTML - Formatting HTML - Pre HTML - Attributes HTML - Font HTML - Text Links HTML - Comments HTML - Lists HTML - Images HTML

More information

DESIGN TRANSFORMATIONAL IPAD APPS

DESIGN TRANSFORMATIONAL IPAD APPS DESIGN TRANSFORMATIONAL IPAD APPS Thank you for participating in a workshop at MicroStrategy World 2019. If you missed or did not finish an exercise and want to complete it after the conference, use this

More information

Vetstreet Web Builder Editor Tool User Guide v2.1. Web Builder. User Guide v2.1

Vetstreet Web Builder Editor Tool User Guide v2.1. Web Builder. User Guide v2.1 Web Builder User Guide v2.1 Contact your Account Manager at (888) 799-8387 or email support@vetstreet.com with questions. Page 1 Index... 1 The Editor Tool... 7 Forgot Your Username or Password?... 7 How

More information

GRAPHIC WEB DESIGNER PROGRAM

GRAPHIC WEB DESIGNER PROGRAM NH128 HTML Level 1 24 Total Hours COURSE TITLE: HTML Level 1 COURSE OVERVIEW: This course introduces web designers to the nuts and bolts of HTML (HyperText Markup Language), the programming language used

More information

Nodes Tech Slides - Progressive Web Apps, 2018

Nodes Tech Slides - Progressive Web Apps, 2018 Nodes Tech Slides - Progressive Web Apps, 2018 Our belief Gone are the days where companies spend fortunes on building digital products that users don t want. Or at least they should be. And by now many

More information

Clients Continued... & Letters. Campaigns Continued To create a Custom Campaign you must first name the campaign and select

Clients Continued...  & Letters. Campaigns Continued To create a Custom Campaign you must first name the campaign and select Clients Continued... Campaigns Continued To create a Custom Campaign you must first name the campaign and select what type of campaign it will be. Next you will add letters to your campaign from your letter

More information

20480B - Version: 1. Programming in HTML5 with JavaScript and CSS3

20480B - Version: 1. Programming in HTML5 with JavaScript and CSS3 20480B - Version: 1 Programming in HTML5 with JavaScript and CSS3 Programming in HTML5 with JavaScript and CSS3 20480B - Version: 1 5 days Course Description: This course provides an introduction to HTML5,

More information

Feature Comparison Checklist

Feature Comparison Checklist Feature Comparison Checklist We invite you to use this checklist to help guide your team in identifying your mobile forms requirements. This checklist also provides an easy way to compare the Formotus

More information

DNNGo LayerSlider3D. User Manual

DNNGo LayerSlider3D. User Manual DNNGo LayerSlider3D User Manual Description This is a powerful 2D&3D transition module, you can set up the transition effect through various options for each element. It allows you to set up the amount

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

RKN 2015 Application Layer Short Summary

RKN 2015 Application Layer Short Summary RKN 2015 Application Layer Short Summary HTTP standard version now: 1.1 (former 1.0 HTTP /2.0 in draft form, already used HTTP Requests Headers and body counterpart: answer Safe methods (requests): GET,

More information

Android User Guide. User Guide 2.3

Android User Guide. User Guide 2.3 Android 2.3 THE INFORMATION CONTAINED IN THIS DOCUMENT IS PROVIDED AS IS WITHOUT ANY EXPRESS REPRESENTATIONS OF WARRANTIES. IN ADDITION, INFRAGISTCS, INC. DISCLAIMS ALL IMPLIED REPRESENTATIONS AND WARRANTIES,

More information

The first time you launch the application you will have to accept the Terms and Conditions.

The first time you launch the application you will have to accept the Terms and Conditions. Cisco WebEx Meetings Updated as of 8/7/18 Use Guide Cisco Webex Meetings Mobile (Android) Install Webex Meetings View Your Upcoming Meetings Join a Meeting Connect to the Audio Conference Schedule a Meeting

More information