SlideShare a Scribd company logo
D E M Y S T I F Y I N G
P R O G R E S S I V E W E B A P P S
@ M A R C U S H E L L B E R G
5
S T O R Y A N D P H I L O S O P H Y
Software is eating the world and what most of us see of it is the user interface. The user
interface has become the key component of how the users experience the business
behind it. Competition is lost or won due to user experience. Simplicity is king and the
users get frustrated by anything ugly, slow or not working on the device they happen to
use at the time. We at Vaadin fight for simplicity and invite everyone to join this fight.
Together we want to build a user interface that puts a smile on the user’s face.
Vaadin is the technology that empowers developers to build the best web-apps for
business purposes. Our priority over everything else is developer productivity because
we believe that by simplifying the developer experience and saving the developer’s
time, they are best able to focus on building great user interfaces.
Our brand is what we want everyone to think about us. When everyone - both us and
the people around us - have a consistent understanding of what Vaadin is and what we
stand for, it enables that image to spread and amplify. This book defines what we want
that image to be. It defines what the Vaadin brand is.
I hope that You are as excited and proud of living and breathing the Vaadin brand as
I am. You are the one who is shaping what everyone thinks about Vaadin - using this
brand as a tool and a guideline every day.
Let’s fight for simplicity for both the users and the developers!
Joonas Lehtinen
Founder & CEO
Vaadin
I N T R O D U C T I O N
Demystifying progressive web apps
A P P I N S TA L L S / M O N T H :
0
While we haven’t yet reached ‘Peak App’ the market
is definitely tightening, and app publishers need to
rethink how to break through to the consumer’s
screen.
comScore 2016 US Mobile App report
comscore.com/Insights/Presentations-and-Whitepapers/2016/The-2016-US-Mobile-App-Report

Recommended for you

The Hitchhiker's Guide to Building a Progressive Web App
The Hitchhiker's Guide to Building a Progressive Web AppThe Hitchhiker's Guide to Building a Progressive Web App
The Hitchhiker's Guide to Building a Progressive Web App

What makes something a Progressive Web App? A discussion about the qualities and real world use-cases for developing a PWA. This was presented at DevFestDC 2016.

mobile-firstprogressive web appdevfestdc 2016
DDD架構設計
DDD架構設計DDD架構設計
DDD架構設計

This slide presents some famous architectures and how to use DDD to implement system and choose which architecture is more appropriate.

dddarchitecture
Vaadin 8 with Spring Frameworks AutoConfiguration
Vaadin 8 with Spring Frameworks AutoConfigurationVaadin 8 with Spring Frameworks AutoConfiguration
Vaadin 8 with Spring Frameworks AutoConfiguration

AutoConfiguration is an amazing feature of Spring Boot allowing integrating technologies more easily. Vaadin utilises AutoConfiguration for setting up beautiful Vaadin UIs with Spring Boot Applications. This talks tells all about how Boot's AutoConfiguration works with Vaadin and what kind of benefits it provides for developers

frameworkspringboot
Despite signi��cant investment and hopes for positive ROI,
mobile applications are not paying off for many
brands.
Compelling alternatives such as progressive web apps
mean the branded app economy is poised for change.
gartner.com/smarterwithgartner/gartner-predicts-2017-marketers-expect-the-unexpected
GARTNER: 20% WILL ABANDON THEIR
MOBILE APPS BY 2019
T H E P R O B L E M I S F R I C T I O N
open the app store80
find your app in the store64
tap install51
accept permission requests41
find the app on their home screen33
26 will open the app
O U T O F 1 0 0 I N T E R E S T E D P E O P L E
Demystifying progressive web apps

Recommended for you

Docker進階探討
Docker進階探討Docker進階探討
Docker進階探討

This slide talk about more details about Docker and what is Docker Swarm mode. There are also some examples in this slide, you can follow them to practice.

docker-swarmcidocker
PWA 101
PWA 101PWA 101
PWA 101

(Progressive Web Apps)PWA 入门分享

front-endpwajavascript
Introducción a las Progressive web apps
Introducción a las Progressive web appsIntroducción a las Progressive web apps
Introducción a las Progressive web apps

Progressive Web Apps es el término que se ha acuñado para describir a las webapps que utilizan service-workers para cachear su contenido y que puedan ser utilizadas aún cuando no hay conexión a internet. Además veremos cómo podemos definir un archivo manifest con la descripción de nuestra webapp y un pequeño ejemplo de cómo recibir notificaciones push en nuestra pwa.

chromejavascriptpwa
tap install80
accept permission requests64
find the app on their home screen51
41will open the app
S T I L L , O N L Y . . .
C O S T P E R I N S TA L L
$ 1 . 5 0 +
fiksu.com/resources/fiksu-indexes
Users spend almost
90% of time in their top
5 apps.
Source: comScore 2016 report
W H AT A B O U T M O B I L E W E B ?

Recommended for you

Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps

A Progressive Web App uses modern web capabilities to deliver an app-like user experience. Progressive Web Apps bring features we expect from native apps to the mobile browser experience in a way that uses standards-based technologies and run in a secure container accessible to anyone on the web.

progressive web appsjavascriptpwa
Vue
VueVue
Vue

Introduce Vue.js 2.0 and its family: Vue-Route, Vuex

vue.jscomppnent-basedfront-end
Building Progressive Web Apps (Kyle Buchanan)
Building Progressive Web Apps (Kyle Buchanan)Building Progressive Web Apps (Kyle Buchanan)
Building Progressive Web Apps (Kyle Buchanan)

With the recent advancements in modern browsers, more native app-like features are coming to the browser. Things like push notifications, background sync, offline capabilities and home screen app icons have been added to browsers allowing developers to continue building web apps, but now include features that users expect from native apps. In this session we'll take an existing web app and transform it into a progressive web app. We’ll learn how to make the web app installable, how to make it work offline and finally we’ll learn how to add push notifications to re-engage our users.

Demystifying progressive web apps
80 will open the app
O U T O F 1 0 0 I N T E R E S T E D P E O P L E
Source: comScore 2016 report
0
3
6
9
12
# Visitors (MM)
0
50
100
150
200
Minutes
3x 20x
Native apps Mobile web
Top 1000 Mobile Apps vs. Top 1000 Mobile Web Properties
H O W A B O U T H Y B R I D , T H E N ?

Recommended for you

Getting Started with Progressive Web Apps
Getting Started with Progressive Web AppsGetting Started with Progressive Web Apps
Getting Started with Progressive Web Apps

Progressive Web Apps consist of a new palette of technologies such as the Web App Manifest, homescreen install support, Service Workers and the app shell. These bridge the gap between native and web apps offering new capabilities for web developers to create amazing desktop and mobile experiences.

installable web-appspwaapp-shell
PWA e Hybrid App VS Native
PWA e Hybrid App VS NativePWA e Hybrid App VS Native
PWA e Hybrid App VS Native

I did a talk at DevFest Nord Italia 2016 about Progressive Web Apps, Hybrid and Native Apps, i've analyzed the pros and cons of the various technologies and described how to get started with Ionic, React Native and how work a Progressive Web App.

web developmentmobile application developmentapps
Anatomy of a Progressive Web App
Anatomy of a Progressive Web AppAnatomy of a Progressive Web App
Anatomy of a Progressive Web App

Growth of mobile web traffic has been outpacing desktop web traffic for years, and data reveals that users are likely to abandon experiences that too long to load. Progressive web apps aim to be reliable, fast and engaging, regardless of form factor or quality of internet connection. We'll walk through several key aspects of PWAs, illustrating performance and usability improvements by showing quantitative comparisons to an equivalent "classic SPA".

programmingjavascriptmobile web
WHAT'S HOLDING BACK THE
MOBILE WEB?
1 . B A D U S E R E X P E R I E N C E
Demystifying progressive web apps
Demystifying progressive web apps

Recommended for you

Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps

Progressive Web Apps - Get your site out of the tab! A talk slide shared to Naver in Jan 2016 and to KIG in April 2016.

progressive web appsmanifestservice worker
Docker 入門 Introduction to Docker
Docker 入門  Introduction to DockerDocker 入門  Introduction to Docker
Docker 入門 Introduction to Docker

This document provides an agenda for discussing Docker concepts including images and containers, Dockerfiles, Docker Hub and private registries, processes in containers, volumes, and networking. Key topics covered are that Docker allows running applications isolated in containers without needing virtual machines, images contain the files for an application and its dependencies, and Dockerfiles define what goes into an image. Networking and volumes allow containers to communicate and share data.

containerdocker
Why Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your BusinessWhy Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your Business

Progressive Web Apps (PWAs) are web applications that have responsive designs, work offline, and can be installed on a user's home screen. Key features of PWAs include being responsive across devices, working offline through service workers, being discoverable through web app manifests, automatically updating, using secure HTTPS connections, and allowing users to re-engage through push notifications and installing on home screens without an app store. PWAs provide faster experiences for web users compared to regular websites and allow developers to engage users similar to native mobile apps.

web designonline businessdesign
2 . P O O R R E - E N G A G E M E N T
Demystifying progressive web apps
Demystifying progressive web apps
3 . P E R F O R M A N C E

Recommended for you

More tips and tricks for running containers like a pro - Rancher Online MEetu...
More tips and tricks for running containers like a pro - Rancher Online MEetu...More tips and tricks for running containers like a pro - Rancher Online MEetu...
More tips and tricks for running containers like a pro - Rancher Online MEetu...

This document outlines the agenda for a Rancher meetup on tips and tricks for running containers like a pro. The agenda includes presentations on integrated secrets management, autoscaling with Rancher webhooks, using Traefik for load balancing, and the Kubernetes dashboard and Helm. It also provides information on the latest Rancher releases.

dockerranchercontainers
Load Balancing Apps in Docker Swarm with NGINX
Load Balancing Apps in Docker Swarm with NGINXLoad Balancing Apps in Docker Swarm with NGINX
Load Balancing Apps in Docker Swarm with NGINX

On-demand webinar recording: http://bit.ly/2mRjk2g Docker and other container technologies continue to gain in popularity. We recently surveyed the broad community of NGINX and NGINX Plus users and found that two-thirds of organizations are either investigating containers, using them in development, or using them in production. Why? Because abstracting your applications from the underlying infrastructure makes developing, distributing, and running software simpler, faster, and more robust than ever before. But when you move from running your app in a development environment to deploying containers in production, you face new challenges – such as how to effectively run and scale an application across multiple hosts with the performance and uptime that your customers demand. The latest Docker release, 1.12, supports multihost container orchestration, which simplifies deployment and management of containers across a cluster of Docker hosts. In a complex environment like this, load balancing plays an essential part in delivering your container-based application with reliability and high performance. Join us in this webinar to learn: * The basic built-in load balancing options available in Docker Swarm Mode * The pros and cons of moving to an advanced load balancer like NGINX * How to integrate NGINX and NGINX Plus with Swarm Mode to provide an advanced load-balancing solution for a cluster with orchestration * How to scale your Docker-based application with Swarm Mode and NGINX Plus

nginx +containerizationnginx plus
Going web native - Feb 2018
Going web native - Feb 2018Going web native - Feb 2018
Going web native - Feb 2018

A state of web talk, discussing how Web Components, Progressive Web Apps, and Web Assembly are turning the web into an application platform.

pwawebcomponentswebasm
P R O G R E S S I V E W E B A P P S
1. Reliable
2. Fast
3. Engaging
T R Y B E F O R E Y O U B U Y
Demystifying progressive web apps

Recommended for you

Vaadin Flow - How to start - a short intro for Java Devs
Vaadin Flow - How to start - a short intro for Java DevsVaadin Flow - How to start - a short intro for Java Devs
Vaadin Flow - How to start - a short intro for Java Devs

Do you want to write a web application with Core Java? Then you are exactly right here. With Core Java and Vaadin Flow, we will develop a web application from the ground up in this session. We will only use Java, HTML and CSS will not be used during programming. The result, however, will be a web-based application based on web-components that meets the latest standards.

vaadinvaadin-flowjava
From desktop to the cloud, cutting costs with Virtual kubelet and ACI
From desktop to the cloud, cutting costs with Virtual kubelet and ACIFrom desktop to the cloud, cutting costs with Virtual kubelet and ACI
From desktop to the cloud, cutting costs with Virtual kubelet and ACI

Breaking up a monolith or switching from client desktop to using the web in scale, require us to think of many factors, like the engineering team and the knowledge that the team already possess, technologies that exist, how to build the infrastructure right and much more. How can we use Kubernetes with Virtual Kubelet to cut costs and use the right service for the workload, whether it is a burst workload or a steady one

kubernetescloud computingjava
Planning Your Progressive Web App
Planning Your Progressive Web AppPlanning Your Progressive Web App
Planning Your Progressive Web App

Presented at Web Directions Code, Melbourne If you have a website—particularly one that generates revenue for your organization—you need a Progressive Web App. So where do you begin? How do you decide which features of a Progressive Web App make sense for your users? What tools can make the process easier (or harder)? In this practical session, Jason will guide you through the key design decisions you’ll need to make about your Progressive Web App and how those decisions impact the scope of your project. He'll also teach you how to avoid common pitfalls and help you take full advantage of Progressive Web App technology.

progressive web appswebdesign
H O W D O Y O U B U I L D A P W A ?
P W A C H E C K L I S T :
Site is served over HTTPS
Responsive layouts, works on mobile
First load is fast even on 3G
Site works cross-browser
Page transitions don't feel like they block on network
Each page has a URL
Metadata is provided for Add to Home screen
developers.google.com/web/progressive-web-apps/checklist
D O Y O U N E E D T O S TA R T F R O M
S C R AT C H ?
N O .
1 . A D D A N A P P M A N I F E S T

Recommended for you

Hiring UX/UI designers
Hiring UX/UI designersHiring UX/UI designers
Hiring UX/UI designers

We are hiring UX / UI Designers ! We like to hand pick them as we understand design in a particular way and we would like to work with those who can challenge our benchmarks ! Growth can only come by competition ! Inviting the Creative inside you to participate and apply !

uxuiinterface
CognitiveClouds Customer Presentation
CognitiveClouds Customer PresentationCognitiveClouds Customer Presentation
CognitiveClouds Customer Presentation

CognitiveClouds is a software consulting company founded by Prasanna Gopinath that brings Silicon Valley processes and culture to India. The company has over 100 employees across 4 offices serving over 2000 customers globally. CognitiveClouds focuses on creating software products through strategy, design, and engineering that customers love by listening to real users. They have experience delivering projects across many industries.

cognitivecloudssoftware development companyapp development company
12 top app testing tools
12 top app testing tools12 top app testing tools
12 top app testing tools

To Learn more about Apps, and how to optimize your app, check today Gabriel Machuret App store optimization blog at http://www.asoprofessional.com

{
"name": "Todo App",
"icons": [{
"src": "todo.png",
"sizes": "192x192",
"type": "image/png"
}],
"start_url": "/index.html",
"display": "standalone",
"orientation": "portrait"
}
https://developer.mozilla.org/en-US/docs/Web/Manifest
W E B A P P M A N I F E S T
<head>
...
<link rel="manifest" href="/manifest.webmanifest">
</head>
2 . D E F I N E A S E R V I C E W O R K E R
Service worker

S E R V I C E W O R K E R

Recommended for you

The smart way of combining web & apps
The smart way of combining web & appsThe smart way of combining web & apps
The smart way of combining web & apps

Many companies still consider web and apps two totally separate silos with different POs, contents, dev teams, design principles etc. It doesn’t have to be like this. Hence, combining web and app development and operations in a smart way has become one of my favourite topics recently. In May 2019 I got to share my views at the E-handelsskola organised by DIBS at Retail Experience Live exhibition in Sweden. I was asked to talk about progressive web apps but since I feel they are not a viable solution yet, I ended up telling why and what you should do instead. This is an extended edition of the slides I used at the event. This was my summary of what I would currently suggest by default: - Maximise usage of web-based content inside your app - Leverage app stores as a delivery channel - Leverage native for special tech as needed (push, sensors, proper camera etc.) - Be ready to pivot to PWA if that takes off

pwamobilemobile strategy
eywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdf
eywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdfeywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdf
eywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdf

Ysudhddhh

Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017

The document discusses the challenges facing the progressive web and introduces progressive web apps (PWAs) as a solution. PWAs are built using modern web standards to provide native app-like experiences through features like push notifications, offline support, and app installation. They address issues with native apps like high installation friction, lack of control for publishers, and app store policies. PWAs are gaining adoption from companies like Alibaba and Housing.com who saw increases in user engagement metrics after implementing PWAs. The document outlines the core components of PWAs and provides an overview of browser and platform support.

gotochgoprogressivewebappsgotocon
if ('serviceWorker' in navigator) {
}
if ('serviceWorker' in navigator) {
window.addEventListener('load', () => {
navigator.serviceWorker.register('/sw.js');
});
}
let CACHE_NAME = 'cache-v1';
let urlsToCache = ['/', '/styles/main.css',
'/script/main.js'];
/sw.js
let CACHE_NAME = 'cache-v1';
let urlsToCache = ['/', '/styles/main.css',
'/script/main.js'];
self.addEventListener('install', event => {
});

Recommended for you

Mobile Application Development - Guide 2020
Mobile Application Development - Guide 2020Mobile Application Development - Guide 2020
Mobile Application Development - Guide 2020

This document provides a 10-step guide for creating a mobile app from scratch: 1. The discovery phase involves generating ideas, analyzing competitors, defining the target audience, and creating a business model. 2. The design phase focuses on user experience (UX) design like wireframes, and user interface (UI) design including a style guide and rendered designs. 3. The development team is handed the designs and user goals to begin front-end development using native or hybrid approaches, and back-end development selecting programming languages and databases. 4. Testing of the app's functionality, performance, and other types is completed by testers who provide reports to developers. 5. After testing,

mobile appsmobile application developmentmobile web
nTwine pitch: Set up digital businesses with zero code
nTwine pitch: Set up digital businesses with zero codenTwine pitch: Set up digital businesses with zero code
nTwine pitch: Set up digital businesses with zero code

nTwine is a product by Needle Innovision. It helps digital businesses like e-commerce stores, marketplaces, rental platforms etc set up with zero code, hassle free.

pitchstartupsntwine
Paulius Papreckis - Mobile UX: Unified vs Native
Paulius Papreckis - Mobile UX: Unified vs NativePaulius Papreckis - Mobile UX: Unified vs Native
Paulius Papreckis - Mobile UX: Unified vs Native

During his presentation “Mobile UX: Native vs Unified” Paulius will talk about how to decide the very first steps of your mobile app and will help to choose design direction - native or unified experience between platforms. Practical examples and a real case study of the new Wix App are guaranteed."

mobileuxui
let CACHE_NAME = 'cache-v1';
let urlsToCache = ['/', '/styles/main.css',
'/script/main.js'];
self.addEventListener('install', event => {
event.waitUntil(
caches.open(CACHE_NAME));
});
let CACHE_NAME = 'cache-v1';
let urlsToCache = ['/', '/styles/main.css',
'/script/main.js'];
self.addEventListener('install', event => {
event.waitUntil(
caches.open(CACHE_NAME)
.then(cache => cache.addAll(urlsToCache));
);
});
self.addEventListener('fetch', event => {
});
self.addEventListener('fetch', event => {
event.respondWith(
);
});

Recommended for you

Why Progressive Web Apps will transform your website
Why Progressive Web Apps will transform your websiteWhy Progressive Web Apps will transform your website
Why Progressive Web Apps will transform your website

Progressive web apps (PWAs) can transform websites by making them more like native apps through the use of service workers, web app manifests, and other modern web capabilities. Some key benefits of PWAs include providing fast and reliable experiences even on slow mobile networks, working regardless of a network connection, and engaging users through web app banners and push notifications. Early results show that PWAs can significantly reduce data usage and increase user engagement, conversion rates, and sales compared to mobile websites. While PWAs work across browsers, including on iOS, their full capabilities are still progressively being adopted.

progressive web appswebwebsite
Digital Predictions, 2010 and Beyond
Digital Predictions, 2010 and BeyondDigital Predictions, 2010 and Beyond
Digital Predictions, 2010 and Beyond

A look at digital marketing in the not-too-distant future. From shifting privacy norms, evolving SERPs, the game-ification of everything, social business, and more. Implications and business application included as well.

digital marketingsocialonline media
2016 Death of the Home Screen
2016 Death of the Home Screen2016 Death of the Home Screen
2016 Death of the Home Screen

The experience of the mobile home screen being a bank of app icons that lead to independent destinations is dying. And that changes how we need to design and build digital products. In this talk I show current trends and examples and explain what it means for User Experience Design and for businesses.

search engine optimizationassistantsmobile
self.addEventListener('fetch', event => {
event.respondWith(
caches.match(event.request)
);
});
self.addEventListener('fetch', event => {
event.respondWith(
caches.match(event.request)
.then(response => {
if (response) {
return response;
}
return fetch(event.request);
}
)
);
});
github.com/GoogleChrome/sw-precache
github.com/GoogleChrome/sw-toolbox
toolbox.router.get('*.json', toolbox.cacheFirst);->
T O O L S
3 . A D D P U S H , B A C K G R O U N D S Y N C
( I F Y O U W A N T T O )

Recommended for you

Mohammed Elsabry pm resume
Mohammed Elsabry pm resumeMohammed Elsabry pm resume
Mohammed Elsabry pm resume

This document is a resume for MohammedMagdy Elsabry. It summarizes his experience as a product manager and software engineer, including roles at eDigits.net, Startappz, and other companies. It lists his technical skills in areas like product management, mobile and web development, databases, and design tools. Examples of projects he worked on are provided, such as Appolo, a social discovery app, and Al Ahram, a newspaper app. His education and honors are also mentioned.

project managercvproduct manager
CEE the Mobile Activation Platform
CEE the Mobile Activation PlatformCEE the Mobile Activation Platform
CEE the Mobile Activation Platform

CEE provides all the available technologies to make the journey from Attention to Activation. CEE converts an offline encounter to an online relation.

mobile marketing
Why websites will never die?
Why websites will never die?Why websites will never die?
Why websites will never die?

Websites will never die because they provide an important online presence for businesses. Most customers now research companies online before making purchase decisions, so a website allows companies to establish credibility and provide information to potential clients. Having an online presence through a website is also important as more services move to ecommerce and cloud-based models. Websites are a key tool for online marketing and allowing companies to properly represent themselves and gain an advantage over competitors in the digital marketplace.

website designonline marketingwebsite
developers.google.com
😅
/web
/fundamentals
/getting-started
/codelabs
/push-notifications
Lighthouse
T H E B A D N E W S
N O I O S S U P P O R T
(YET)

Recommended for you

Branded employee communication & engagement apps
Branded employee communication & engagement apps Branded employee communication & engagement apps
Branded employee communication & engagement apps

Platform to launch custom branded employee apps without developers & designers. Solve key issues like - (a) Better engagement than Intranet & chat tools (b) Connect with remote/desk-less/contract employees (c) Reduce email clutter to employee inbox with better responses/comms (d) Company social network instead of relying on whatsapps, facebook, slack and others (e) Collection of accurate engagement & communication metrics We are an enterprise-ready platform - ISO 27001 certified & GDPR compliant. Trusted by corporates like Amazon, TESCO, Titan amongst others - https://www.aidaio.com/employee-engagement/

employee engagementcommunicationscommunity
Building performant web apps
Building performant web appsBuilding performant web apps
Building performant web apps

The document discusses ways to build performant web apps. It recommends sending less JavaScript to mobile phones since JavaScript can slow down interactivity. It suggests using progressive web apps, web components, and tools to build performant apps without relying on frameworks. The document promotes laziness and procrastination in coding approaches.

pwaweb componentsvaadin
Building web apps with vaadin 10
Building web apps with vaadin 10Building web apps with vaadin 10
Building web apps with vaadin 10

The document discusses building modern web apps in Java using Vaadin 10. It provides an agenda that includes a quick intro to Vaadin 10 and hands-on programming. It then covers Vaadin 10's focus on productivity and great UX through great DX. The core concepts of Vaadin are also summarized, including standard-based web components and the Java API.

vaadinwebcomponentsjava
T H E G O O D N E W S
G R E AT A N D R O I D S U P P O R T
(88% MARKET SHARE)
A N D D E S K T O P O F C O U R S E
T H E Y A R E A P R O G R E S S I V E
E N H A N C E M E N T

Recommended for you

Building web apps with Vaadin 8
Building web apps with Vaadin 8 Building web apps with Vaadin 8
Building web apps with Vaadin 8

Intro to developing web apps with Vaadin 8. The live coding demo using spring boot can be found here: https://www.youtube.com/watch?v=tnVKN25dIm8

spring bootvaadinspring
Progressive web apps with polymer
Progressive web apps with polymerProgressive web apps with polymer
Progressive web apps with polymer

Progressive Web Apps use new web platform technologies like manifest files and service workers to deliver app-style experiences to users on the mobile web. By adding features normally only available to native apps, like home screen shortcuts, push notifications, and offline access, Progressive Web Apps improve user engagement. For example, one Progressive Web App saw time spent increase 3x and returning visitor rates rise by 63% after adding these capabilities. While browser support for the required technologies is still evolving, Progressive Web Apps provide a path for the mobile web to better compete with native apps.

polymerofflineprogressive web apps
Booting up with polymer
Booting up with polymerBooting up with polymer
Booting up with polymer

This document discusses using Polymer to build web component-based applications. It begins by explaining what web components are and how browsers support them through standards like custom elements, HTML imports and templates. It then introduces Polymer as a library that helps build web components and provides ready-made reusable components. The document outlines how to build full-stack apps with Polymer, including using Spring Boot on the backend to provide features like authentication. It also covers tools like Vulcanize, Crisper and build optimizations to improve performance of Polymer apps.

polymerhtml5spring boot
C A N B E U S E D W I T H A N Y
F R A M E W O R K
P A R T O F T H E W E B P L AT F O R M
Demystifying progressive web apps
Demystifying progressive web apps
Help developers build
web apps that users ♡

Recommended for you

Booting up with polymer
Booting up with polymerBooting up with polymer
Booting up with polymer

In this presentation we'll take a look at building a full stack web application using Polymer and Web Components. After a quick introduction to Polymer, we’ll see how we can handle things like authentication, pagination of large data sets, and adapting our UI to different viewports. We’ll also review what’s needed for moving our app to production and optimizing our User Experience with quick load times and transition animations.

web componentsvaadinspring
Vaadin NYC Meetup
Vaadin NYC MeetupVaadin NYC Meetup
Vaadin NYC Meetup

The meetup agenda includes an introduction to Vaadin, what's new in Vaadin 7.4, designer and declarative layouts, web components, and community demos and discussion. Vaadin is a Java framework that uses server-side components and rendering to build fast and good-looking HTML5 apps with less code. It has a large community of over 130k developers and is used by 40% of Fortune 100 companies.

web componentshtml5visual designer
Wired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptxWired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptx

In this talk, we will explore strategies to optimize the success rate of storing and retaining new information. We will discuss scientifically proven ideal learning intervals and content structures. Additionally, we will examine how to create an environment that improves our focus while you remain in the “flow”. Lastly we will also address the influence of AI on learning capabilities. In the dynamic field of software development, this knowledge will empower you to accelerate your learning curve and support others in their learning journeys.

T H A N K Y O U !
@ M A R C U S H E L L B E R G
5
S T O R Y A N D P H I L O S O P H Y
Software is eating the world and what most of us see of it is the user interface. The user
interface has become the key component of how the users experience the business
behind it. Competition is lost or won due to user experience. Simplicity is king and the
users get frustrated by anything ugly, slow or not working on the device they happen to
use at the time. We at Vaadin fight for simplicity and invite everyone to join this fight.
Together we want to build a user interface that puts a smile on the user’s face.
Vaadin is the technology that empowers developers to build the best web-apps for
business purposes. Our priority over everything else is developer productivity because
we believe that by simplifying the developer experience and saving the developer’s
time, they are best able to focus on building great user interfaces.
Our brand is what we want everyone to think about us. When everyone - both us and
the people around us - have a consistent understanding of what Vaadin is and what we
stand for, it enables that image to spread and amplify. This book defines what we want
that image to be. It defines what the Vaadin brand is.
I hope that You are as excited and proud of living and breathing the Vaadin brand as
I am. You are the one who is shaping what everyone thinks about Vaadin - using this
brand as a tool and a guideline every day.
Let’s fight for simplicity for both the users and the developers!
Joonas Lehtinen
Founder & CEO
Vaadin
I N T R O D U C T I O N

More Related Content

Viewers also liked

Docker基礎
Docker基礎Docker基礎
Docker基礎
國昭 張
 
San Diego Daily Transcript - PR Newswire Event July 2009
San Diego Daily Transcript - PR Newswire Event July 2009San Diego Daily Transcript - PR Newswire Event July 2009
San Diego Daily Transcript - PR Newswire Event July 2009
Michael Pranikoff
 
“How can we face Facebook?”
“How can we face Facebook?”“How can we face Facebook?”
“How can we face Facebook?”
Coreconsulting
 
The Hitchhiker's Guide to Building a Progressive Web App
The Hitchhiker's Guide to Building a Progressive Web AppThe Hitchhiker's Guide to Building a Progressive Web App
The Hitchhiker's Guide to Building a Progressive Web App
Christopher Nguyen
 
DDD架構設計
DDD架構設計DDD架構設計
DDD架構設計
國昭 張
 
Vaadin 8 with Spring Frameworks AutoConfiguration
Vaadin 8 with Spring Frameworks AutoConfigurationVaadin 8 with Spring Frameworks AutoConfiguration
Vaadin 8 with Spring Frameworks AutoConfiguration
Peter Lehto
 
Docker進階探討
Docker進階探討Docker進階探討
Docker進階探討
國昭 張
 
PWA 101
PWA 101PWA 101
PWA 101
m_catt
 
Introducción a las Progressive web apps
Introducción a las Progressive web appsIntroducción a las Progressive web apps
Introducción a las Progressive web apps
Gabriel Perales Portillo
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
Nitheesh T Ganesh
 
Vue
VueVue
Building Progressive Web Apps (Kyle Buchanan)
Building Progressive Web Apps (Kyle Buchanan)Building Progressive Web Apps (Kyle Buchanan)
Building Progressive Web Apps (Kyle Buchanan)
Red Hat Developers
 
Getting Started with Progressive Web Apps
Getting Started with Progressive Web AppsGetting Started with Progressive Web Apps
Getting Started with Progressive Web Apps
Bill Stavroulakis
 
PWA e Hybrid App VS Native
PWA e Hybrid App VS NativePWA e Hybrid App VS Native
PWA e Hybrid App VS Native
Alberto Abruzzo
 
Anatomy of a Progressive Web App
Anatomy of a Progressive Web AppAnatomy of a Progressive Web App
Anatomy of a Progressive Web App
Mike North
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
jungkees
 
Docker 入門 Introduction to Docker
Docker 入門  Introduction to DockerDocker 入門  Introduction to Docker
Docker 入門 Introduction to Docker
Genchi Lu
 
Why Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your BusinessWhy Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your Business
Lets Grow Business
 
More tips and tricks for running containers like a pro - Rancher Online MEetu...
More tips and tricks for running containers like a pro - Rancher Online MEetu...More tips and tricks for running containers like a pro - Rancher Online MEetu...
More tips and tricks for running containers like a pro - Rancher Online MEetu...
Shannon Williams
 
Load Balancing Apps in Docker Swarm with NGINX
Load Balancing Apps in Docker Swarm with NGINXLoad Balancing Apps in Docker Swarm with NGINX
Load Balancing Apps in Docker Swarm with NGINX
NGINX, Inc.
 

Viewers also liked (20)

Docker基礎
Docker基礎Docker基礎
Docker基礎
 
San Diego Daily Transcript - PR Newswire Event July 2009
San Diego Daily Transcript - PR Newswire Event July 2009San Diego Daily Transcript - PR Newswire Event July 2009
San Diego Daily Transcript - PR Newswire Event July 2009
 
“How can we face Facebook?”
“How can we face Facebook?”“How can we face Facebook?”
“How can we face Facebook?”
 
The Hitchhiker's Guide to Building a Progressive Web App
The Hitchhiker's Guide to Building a Progressive Web AppThe Hitchhiker's Guide to Building a Progressive Web App
The Hitchhiker's Guide to Building a Progressive Web App
 
DDD架構設計
DDD架構設計DDD架構設計
DDD架構設計
 
Vaadin 8 with Spring Frameworks AutoConfiguration
Vaadin 8 with Spring Frameworks AutoConfigurationVaadin 8 with Spring Frameworks AutoConfiguration
Vaadin 8 with Spring Frameworks AutoConfiguration
 
Docker進階探討
Docker進階探討Docker進階探討
Docker進階探討
 
PWA 101
PWA 101PWA 101
PWA 101
 
Introducción a las Progressive web apps
Introducción a las Progressive web appsIntroducción a las Progressive web apps
Introducción a las Progressive web apps
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Vue
VueVue
Vue
 
Building Progressive Web Apps (Kyle Buchanan)
Building Progressive Web Apps (Kyle Buchanan)Building Progressive Web Apps (Kyle Buchanan)
Building Progressive Web Apps (Kyle Buchanan)
 
Getting Started with Progressive Web Apps
Getting Started with Progressive Web AppsGetting Started with Progressive Web Apps
Getting Started with Progressive Web Apps
 
PWA e Hybrid App VS Native
PWA e Hybrid App VS NativePWA e Hybrid App VS Native
PWA e Hybrid App VS Native
 
Anatomy of a Progressive Web App
Anatomy of a Progressive Web AppAnatomy of a Progressive Web App
Anatomy of a Progressive Web App
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
Progressive Web Apps
 
Docker 入門 Introduction to Docker
Docker 入門  Introduction to DockerDocker 入門  Introduction to Docker
Docker 入門 Introduction to Docker
 
Why Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your BusinessWhy Progressive Web App is what you need for your Business
Why Progressive Web App is what you need for your Business
 
More tips and tricks for running containers like a pro - Rancher Online MEetu...
More tips and tricks for running containers like a pro - Rancher Online MEetu...More tips and tricks for running containers like a pro - Rancher Online MEetu...
More tips and tricks for running containers like a pro - Rancher Online MEetu...
 
Load Balancing Apps in Docker Swarm with NGINX
Load Balancing Apps in Docker Swarm with NGINXLoad Balancing Apps in Docker Swarm with NGINX
Load Balancing Apps in Docker Swarm with NGINX
 

Similar to Demystifying progressive web apps

Going web native - Feb 2018
Going web native - Feb 2018Going web native - Feb 2018
Going web native - Feb 2018
Marcus Hellberg
 
Vaadin Flow - How to start - a short intro for Java Devs
Vaadin Flow - How to start - a short intro for Java DevsVaadin Flow - How to start - a short intro for Java Devs
Vaadin Flow - How to start - a short intro for Java Devs
Sven Ruppert
 
From desktop to the cloud, cutting costs with Virtual kubelet and ACI
From desktop to the cloud, cutting costs with Virtual kubelet and ACIFrom desktop to the cloud, cutting costs with Virtual kubelet and ACI
From desktop to the cloud, cutting costs with Virtual kubelet and ACI
Adi Polak
 
Planning Your Progressive Web App
Planning Your Progressive Web AppPlanning Your Progressive Web App
Planning Your Progressive Web App
Jason Grigsby
 
Hiring UX/UI designers
Hiring UX/UI designersHiring UX/UI designers
Hiring UX/UI designers
Leadzpipe
 
CognitiveClouds Customer Presentation
CognitiveClouds Customer PresentationCognitiveClouds Customer Presentation
CognitiveClouds Customer Presentation
Amit Ashwini
 
12 top app testing tools
12 top app testing tools12 top app testing tools
12 top app testing tools
Gabirel Machuret
 
The smart way of combining web & apps
The smart way of combining web & appsThe smart way of combining web & apps
The smart way of combining web & apps
Matias Pietilä
 
eywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdf
eywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdfeywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdf
eywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdf
AhsanS6
 
Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017
Christian Heilmann
 
Mobile Application Development - Guide 2020
Mobile Application Development - Guide 2020Mobile Application Development - Guide 2020
Mobile Application Development - Guide 2020
Mantha Phani Satya Anirudh
 
nTwine pitch: Set up digital businesses with zero code
nTwine pitch: Set up digital businesses with zero codenTwine pitch: Set up digital businesses with zero code
nTwine pitch: Set up digital businesses with zero code
Rupam Gogoi
 
Paulius Papreckis - Mobile UX: Unified vs Native
Paulius Papreckis - Mobile UX: Unified vs NativePaulius Papreckis - Mobile UX: Unified vs Native
Paulius Papreckis - Mobile UX: Unified vs Native
Paulius Papreckis
 
Why Progressive Web Apps will transform your website
Why Progressive Web Apps will transform your websiteWhy Progressive Web Apps will transform your website
Why Progressive Web Apps will transform your website
Jason Grigsby
 
Digital Predictions, 2010 and Beyond
Digital Predictions, 2010 and BeyondDigital Predictions, 2010 and Beyond
Digital Predictions, 2010 and Beyond
Dan Dooley
 
2016 Death of the Home Screen
2016 Death of the Home Screen2016 Death of the Home Screen
2016 Death of the Home Screen
Alexander Meinhardt
 
Mohammed Elsabry pm resume
Mohammed Elsabry pm resumeMohammed Elsabry pm resume
Mohammed Elsabry pm resume
Nazzelha
 
CEE the Mobile Activation Platform
CEE the Mobile Activation PlatformCEE the Mobile Activation Platform
CEE the Mobile Activation Platform
#EndeavourMedia
 
Why websites will never die?
Why websites will never die?Why websites will never die?
Why websites will never die?
TechPro Studio
 
Branded employee communication & engagement apps
Branded employee communication & engagement apps Branded employee communication & engagement apps
Branded employee communication & engagement apps
Gautam Singh
 

Similar to Demystifying progressive web apps (20)

Going web native - Feb 2018
Going web native - Feb 2018Going web native - Feb 2018
Going web native - Feb 2018
 
Vaadin Flow - How to start - a short intro for Java Devs
Vaadin Flow - How to start - a short intro for Java DevsVaadin Flow - How to start - a short intro for Java Devs
Vaadin Flow - How to start - a short intro for Java Devs
 
From desktop to the cloud, cutting costs with Virtual kubelet and ACI
From desktop to the cloud, cutting costs with Virtual kubelet and ACIFrom desktop to the cloud, cutting costs with Virtual kubelet and ACI
From desktop to the cloud, cutting costs with Virtual kubelet and ACI
 
Planning Your Progressive Web App
Planning Your Progressive Web AppPlanning Your Progressive Web App
Planning Your Progressive Web App
 
Hiring UX/UI designers
Hiring UX/UI designersHiring UX/UI designers
Hiring UX/UI designers
 
CognitiveClouds Customer Presentation
CognitiveClouds Customer PresentationCognitiveClouds Customer Presentation
CognitiveClouds Customer Presentation
 
12 top app testing tools
12 top app testing tools12 top app testing tools
12 top app testing tools
 
The smart way of combining web & apps
The smart way of combining web & appsThe smart way of combining web & apps
The smart way of combining web & apps
 
eywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdf
eywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdfeywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdf
eywuwhsgshehjhcfihhgyi3krgdhdheheheh.pdf
 
Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017Progressive Web Apps - Goto Chicago 2017
Progressive Web Apps - Goto Chicago 2017
 
Mobile Application Development - Guide 2020
Mobile Application Development - Guide 2020Mobile Application Development - Guide 2020
Mobile Application Development - Guide 2020
 
nTwine pitch: Set up digital businesses with zero code
nTwine pitch: Set up digital businesses with zero codenTwine pitch: Set up digital businesses with zero code
nTwine pitch: Set up digital businesses with zero code
 
Paulius Papreckis - Mobile UX: Unified vs Native
Paulius Papreckis - Mobile UX: Unified vs NativePaulius Papreckis - Mobile UX: Unified vs Native
Paulius Papreckis - Mobile UX: Unified vs Native
 
Why Progressive Web Apps will transform your website
Why Progressive Web Apps will transform your websiteWhy Progressive Web Apps will transform your website
Why Progressive Web Apps will transform your website
 
Digital Predictions, 2010 and Beyond
Digital Predictions, 2010 and BeyondDigital Predictions, 2010 and Beyond
Digital Predictions, 2010 and Beyond
 
2016 Death of the Home Screen
2016 Death of the Home Screen2016 Death of the Home Screen
2016 Death of the Home Screen
 
Mohammed Elsabry pm resume
Mohammed Elsabry pm resumeMohammed Elsabry pm resume
Mohammed Elsabry pm resume
 
CEE the Mobile Activation Platform
CEE the Mobile Activation PlatformCEE the Mobile Activation Platform
CEE the Mobile Activation Platform
 
Why websites will never die?
Why websites will never die?Why websites will never die?
Why websites will never die?
 
Branded employee communication & engagement apps
Branded employee communication & engagement apps Branded employee communication & engagement apps
Branded employee communication & engagement apps
 

More from Marcus Hellberg

Building performant web apps
Building performant web appsBuilding performant web apps
Building performant web apps
Marcus Hellberg
 
Building web apps with vaadin 10
Building web apps with vaadin 10Building web apps with vaadin 10
Building web apps with vaadin 10
Marcus Hellberg
 
Building web apps with Vaadin 8
Building web apps with Vaadin 8 Building web apps with Vaadin 8
Building web apps with Vaadin 8
Marcus Hellberg
 
Progressive web apps with polymer
Progressive web apps with polymerProgressive web apps with polymer
Progressive web apps with polymer
Marcus Hellberg
 
Booting up with polymer
Booting up with polymerBooting up with polymer
Booting up with polymer
Marcus Hellberg
 
Booting up with polymer
Booting up with polymerBooting up with polymer
Booting up with polymer
Marcus Hellberg
 
Vaadin NYC Meetup
Vaadin NYC MeetupVaadin NYC Meetup
Vaadin NYC Meetup
Marcus Hellberg
 

More from Marcus Hellberg (7)

Building performant web apps
Building performant web appsBuilding performant web apps
Building performant web apps
 
Building web apps with vaadin 10
Building web apps with vaadin 10Building web apps with vaadin 10
Building web apps with vaadin 10
 
Building web apps with Vaadin 8
Building web apps with Vaadin 8 Building web apps with Vaadin 8
Building web apps with Vaadin 8
 
Progressive web apps with polymer
Progressive web apps with polymerProgressive web apps with polymer
Progressive web apps with polymer
 
Booting up with polymer
Booting up with polymerBooting up with polymer
Booting up with polymer
 
Booting up with polymer
Booting up with polymerBooting up with polymer
Booting up with polymer
 
Vaadin NYC Meetup
Vaadin NYC MeetupVaadin NYC Meetup
Vaadin NYC Meetup
 

Recently uploaded

Wired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptxWired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptx
SimonedeGijt
 
ANSYS Mechanical APDL Introductory Tutorials.pdf
ANSYS Mechanical APDL Introductory Tutorials.pdfANSYS Mechanical APDL Introductory Tutorials.pdf
ANSYS Mechanical APDL Introductory Tutorials.pdf
sachin chaurasia
 
Development of Chatbot Using AI\ML Technologies
Development of Chatbot Using AI\ML TechnologiesDevelopment of Chatbot Using AI\ML Technologies
Development of Chatbot Using AI\ML Technologies
MaisnamLuwangPibarel
 
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
Asher Sterkin
 
React vs Next js: Which is Better for Web Development? - Semiosis Software Pr...
React vs Next js: Which is Better for Web Development? - Semiosis Software Pr...React vs Next js: Which is Better for Web Development? - Semiosis Software Pr...
React vs Next js: Which is Better for Web Development? - Semiosis Software Pr...
Semiosis Software Private Limited
 
Attendance Tracking From Paper To Digital
Attendance Tracking From Paper To DigitalAttendance Tracking From Paper To Digital
Attendance Tracking From Paper To Digital
Task Tracker
 
MVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptxMVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptx
Mitchell Marsh
 
Safe Work Permit Management Software for Hot Work Permits
Safe Work Permit Management Software for Hot Work PermitsSafe Work Permit Management Software for Hot Work Permits
Safe Work Permit Management Software for Hot Work Permits
sheqnetworkmarketing
 
Independence Day Hasn’t Always Been a U.S. Holiday.pdf
Independence Day Hasn’t Always Been a U.S. Holiday.pdfIndependence Day Hasn’t Always Been a U.S. Holiday.pdf
Independence Day Hasn’t Always Been a U.S. Holiday.pdf
Livetecs LLC
 
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
ThousandEyes
 
Google ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learningGoogle ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learning
VishrutGoyani1
 
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple StepsSeamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Estuary Flow
 
Top 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your WebsiteTop 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your Website
e-Definers Technology
 
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdfAWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
karim wahed
 
NYC 26-Jun-2024 Combined Presentations.pdf
NYC 26-Jun-2024 Combined Presentations.pdfNYC 26-Jun-2024 Combined Presentations.pdf
NYC 26-Jun-2024 Combined Presentations.pdf
AUGNYC
 
Cultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational TransformationCultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational Transformation
Mindfire Solution
 
Leading Project Management Tool Taskruop.pptx
Leading Project Management Tool Taskruop.pptxLeading Project Management Tool Taskruop.pptx
Leading Project Management Tool Taskruop.pptx
taskroupseo
 
dachnug51 - HCL Sametime 12 as a Software Appliance.pdf
dachnug51 - HCL Sametime 12 as a Software Appliance.pdfdachnug51 - HCL Sametime 12 as a Software Appliance.pdf
dachnug51 - HCL Sametime 12 as a Software Appliance.pdf
DNUG e.V.
 
ThaiPy meetup - Indexes and Django
ThaiPy meetup - Indexes and DjangoThaiPy meetup - Indexes and Django
ThaiPy meetup - Indexes and Django
akshesh doshi
 
dachnug51 - Whats new in domino 14 .pdf
dachnug51 - Whats new in domino 14  .pdfdachnug51 - Whats new in domino 14  .pdf
dachnug51 - Whats new in domino 14 .pdf
DNUG e.V.
 

Recently uploaded (20)

Wired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptxWired_2.0_Create_AmsterdamJUG_09072024.pptx
Wired_2.0_Create_AmsterdamJUG_09072024.pptx
 
ANSYS Mechanical APDL Introductory Tutorials.pdf
ANSYS Mechanical APDL Introductory Tutorials.pdfANSYS Mechanical APDL Introductory Tutorials.pdf
ANSYS Mechanical APDL Introductory Tutorials.pdf
 
Development of Chatbot Using AI\ML Technologies
Development of Chatbot Using AI\ML TechnologiesDevelopment of Chatbot Using AI\ML Technologies
Development of Chatbot Using AI\ML Technologies
 
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
Ported to Cloud with Wing_ Blue ZnZone app from _Hexagonal Architecture Expla...
 
React vs Next js: Which is Better for Web Development? - Semiosis Software Pr...
React vs Next js: Which is Better for Web Development? - Semiosis Software Pr...React vs Next js: Which is Better for Web Development? - Semiosis Software Pr...
React vs Next js: Which is Better for Web Development? - Semiosis Software Pr...
 
Attendance Tracking From Paper To Digital
Attendance Tracking From Paper To DigitalAttendance Tracking From Paper To Digital
Attendance Tracking From Paper To Digital
 
MVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptxMVP Mobile Application - Codearrest.pptx
MVP Mobile Application - Codearrest.pptx
 
Safe Work Permit Management Software for Hot Work Permits
Safe Work Permit Management Software for Hot Work PermitsSafe Work Permit Management Software for Hot Work Permits
Safe Work Permit Management Software for Hot Work Permits
 
Independence Day Hasn’t Always Been a U.S. Holiday.pdf
Independence Day Hasn’t Always Been a U.S. Holiday.pdfIndependence Day Hasn’t Always Been a U.S. Holiday.pdf
Independence Day Hasn’t Always Been a U.S. Holiday.pdf
 
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
Cisco Live Announcements: New ThousandEyes Release Highlights - July 2024
 
Google ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learningGoogle ML-Kit - Understanding on-device machine learning
Google ML-Kit - Understanding on-device machine learning
 
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple StepsSeamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
Seamless PostgreSQL to Snowflake Data Transfer in 8 Simple Steps
 
Top 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your WebsiteTop 10 Tips To Get Google AdSense For Your Website
Top 10 Tips To Get Google AdSense For Your Website
 
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdfAWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
AWS Cloud Practitioner Essentials (Second Edition) (Arabic) AWS Security .pdf
 
NYC 26-Jun-2024 Combined Presentations.pdf
NYC 26-Jun-2024 Combined Presentations.pdfNYC 26-Jun-2024 Combined Presentations.pdf
NYC 26-Jun-2024 Combined Presentations.pdf
 
Cultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational TransformationCultural Shifts: Embracing DevOps for Organizational Transformation
Cultural Shifts: Embracing DevOps for Organizational Transformation
 
Leading Project Management Tool Taskruop.pptx
Leading Project Management Tool Taskruop.pptxLeading Project Management Tool Taskruop.pptx
Leading Project Management Tool Taskruop.pptx
 
dachnug51 - HCL Sametime 12 as a Software Appliance.pdf
dachnug51 - HCL Sametime 12 as a Software Appliance.pdfdachnug51 - HCL Sametime 12 as a Software Appliance.pdf
dachnug51 - HCL Sametime 12 as a Software Appliance.pdf
 
ThaiPy meetup - Indexes and Django
ThaiPy meetup - Indexes and DjangoThaiPy meetup - Indexes and Django
ThaiPy meetup - Indexes and Django
 
dachnug51 - Whats new in domino 14 .pdf
dachnug51 - Whats new in domino 14  .pdfdachnug51 - Whats new in domino 14  .pdf
dachnug51 - Whats new in domino 14 .pdf
 

Demystifying progressive web apps

  • 1. D E M Y S T I F Y I N G P R O G R E S S I V E W E B A P P S @ M A R C U S H E L L B E R G 5 S T O R Y A N D P H I L O S O P H Y Software is eating the world and what most of us see of it is the user interface. The user interface has become the key component of how the users experience the business behind it. Competition is lost or won due to user experience. Simplicity is king and the users get frustrated by anything ugly, slow or not working on the device they happen to use at the time. We at Vaadin fight for simplicity and invite everyone to join this fight. Together we want to build a user interface that puts a smile on the user’s face. Vaadin is the technology that empowers developers to build the best web-apps for business purposes. Our priority over everything else is developer productivity because we believe that by simplifying the developer experience and saving the developer’s time, they are best able to focus on building great user interfaces. Our brand is what we want everyone to think about us. When everyone - both us and the people around us - have a consistent understanding of what Vaadin is and what we stand for, it enables that image to spread and amplify. This book defines what we want that image to be. It defines what the Vaadin brand is. I hope that You are as excited and proud of living and breathing the Vaadin brand as I am. You are the one who is shaping what everyone thinks about Vaadin - using this brand as a tool and a guideline every day. Let’s fight for simplicity for both the users and the developers! Joonas Lehtinen Founder & CEO Vaadin I N T R O D U C T I O N
  • 3. A P P I N S TA L L S / M O N T H : 0
  • 4. While we haven’t yet reached ‘Peak App’ the market is definitely tightening, and app publishers need to rethink how to break through to the consumer’s screen. comScore 2016 US Mobile App report comscore.com/Insights/Presentations-and-Whitepapers/2016/The-2016-US-Mobile-App-Report
  • 5. Despite significant investment and hopes for positive ROI, mobile applications are not paying off for many brands. Compelling alternatives such as progressive web apps mean the branded app economy is poised for change. gartner.com/smarterwithgartner/gartner-predicts-2017-marketers-expect-the-unexpected GARTNER: 20% WILL ABANDON THEIR MOBILE APPS BY 2019
  • 6. T H E P R O B L E M I S F R I C T I O N
  • 7. open the app store80 find your app in the store64 tap install51 accept permission requests41 find the app on their home screen33 26 will open the app O U T O F 1 0 0 I N T E R E S T E D P E O P L E
  • 9. tap install80 accept permission requests64 find the app on their home screen51 41will open the app S T I L L , O N L Y . . .
  • 10. C O S T P E R I N S TA L L $ 1 . 5 0 + fiksu.com/resources/fiksu-indexes
  • 11. Users spend almost 90% of time in their top 5 apps. Source: comScore 2016 report
  • 12. W H AT A B O U T M O B I L E W E B ?
  • 14. 80 will open the app O U T O F 1 0 0 I N T E R E S T E D P E O P L E
  • 15. Source: comScore 2016 report 0 3 6 9 12 # Visitors (MM) 0 50 100 150 200 Minutes 3x 20x Native apps Mobile web Top 1000 Mobile Apps vs. Top 1000 Mobile Web Properties
  • 16. H O W A B O U T H Y B R I D , T H E N ?
  • 17. WHAT'S HOLDING BACK THE MOBILE WEB?
  • 18. 1 . B A D U S E R E X P E R I E N C E
  • 21. 2 . P O O R R E - E N G A G E M E N T
  • 24. 3 . P E R F O R M A N C E
  • 25. P R O G R E S S I V E W E B A P P S
  • 27. T R Y B E F O R E Y O U B U Y
  • 29. H O W D O Y O U B U I L D A P W A ?
  • 30. P W A C H E C K L I S T : Site is served over HTTPS Responsive layouts, works on mobile First load is fast even on 3G Site works cross-browser Page transitions don't feel like they block on network Each page has a URL Metadata is provided for Add to Home screen developers.google.com/web/progressive-web-apps/checklist
  • 31. D O Y O U N E E D T O S TA R T F R O M S C R AT C H ? N O .
  • 32. 1 . A D D A N A P P M A N I F E S T
  • 33. { "name": "Todo App", "icons": [{ "src": "todo.png", "sizes": "192x192", "type": "image/png" }], "start_url": "/index.html", "display": "standalone", "orientation": "portrait" } https://developer.mozilla.org/en-US/docs/Web/Manifest W E B A P P M A N I F E S T
  • 35. 2 . D E F I N E A S E R V I C E W O R K E R
  • 36. Service worker  S E R V I C E W O R K E R
  • 37. if ('serviceWorker' in navigator) { }
  • 38. if ('serviceWorker' in navigator) { window.addEventListener('load', () => { navigator.serviceWorker.register('/sw.js'); }); }
  • 39. let CACHE_NAME = 'cache-v1'; let urlsToCache = ['/', '/styles/main.css', '/script/main.js']; /sw.js
  • 40. let CACHE_NAME = 'cache-v1'; let urlsToCache = ['/', '/styles/main.css', '/script/main.js']; self.addEventListener('install', event => { });
  • 41. let CACHE_NAME = 'cache-v1'; let urlsToCache = ['/', '/styles/main.css', '/script/main.js']; self.addEventListener('install', event => { event.waitUntil( caches.open(CACHE_NAME)); });
  • 42. let CACHE_NAME = 'cache-v1'; let urlsToCache = ['/', '/styles/main.css', '/script/main.js']; self.addEventListener('install', event => { event.waitUntil( caches.open(CACHE_NAME) .then(cache => cache.addAll(urlsToCache)); ); });
  • 44. self.addEventListener('fetch', event => { event.respondWith( ); });
  • 45. self.addEventListener('fetch', event => { event.respondWith( caches.match(event.request) ); });
  • 46. self.addEventListener('fetch', event => { event.respondWith( caches.match(event.request) .then(response => { if (response) { return response; } return fetch(event.request); } ) ); });
  • 48. 3 . A D D P U S H , B A C K G R O U N D S Y N C ( I F Y O U W A N T T O )
  • 51. T H E B A D N E W S
  • 52. N O I O S S U P P O R T (YET)
  • 53. T H E G O O D N E W S
  • 54. G R E AT A N D R O I D S U P P O R T (88% MARKET SHARE)
  • 55. A N D D E S K T O P O F C O U R S E
  • 56. T H E Y A R E A P R O G R E S S I V E E N H A N C E M E N T
  • 57. C A N B E U S E D W I T H A N Y F R A M E W O R K P A R T O F T H E W E B P L AT F O R M
  • 60. Help developers build web apps that users ♡
  • 61. T H A N K Y O U ! @ M A R C U S H E L L B E R G 5 S T O R Y A N D P H I L O S O P H Y Software is eating the world and what most of us see of it is the user interface. The user interface has become the key component of how the users experience the business behind it. Competition is lost or won due to user experience. Simplicity is king and the users get frustrated by anything ugly, slow or not working on the device they happen to use at the time. We at Vaadin fight for simplicity and invite everyone to join this fight. Together we want to build a user interface that puts a smile on the user’s face. Vaadin is the technology that empowers developers to build the best web-apps for business purposes. Our priority over everything else is developer productivity because we believe that by simplifying the developer experience and saving the developer’s time, they are best able to focus on building great user interfaces. Our brand is what we want everyone to think about us. When everyone - both us and the people around us - have a consistent understanding of what Vaadin is and what we stand for, it enables that image to spread and amplify. This book defines what we want that image to be. It defines what the Vaadin brand is. I hope that You are as excited and proud of living and breathing the Vaadin brand as I am. You are the one who is shaping what everyone thinks about Vaadin - using this brand as a tool and a guideline every day. Let’s fight for simplicity for both the users and the developers! Joonas Lehtinen Founder & CEO Vaadin I N T R O D U C T I O N