SlideShare ist ein Scribd-Unternehmen logo
1 von 75
Progressive Web Apps: Opera’s
Perspective
Andreas Bovens | @andreasbovens
Opera for Android Product Manager & Dev Relations Lead
opr.as/oa
home screen offline push bg sync
SOON
# UX patterns
home screen offline push
home screen
Pattern:
Channeling users to install banners
home
screen
If a user engages frequently with
a site that is a PWA, the browser
shows an “add to home screen”
install banner.
https://pokedex.org/
home
screen
It’s possible to prevent this
banner from popping up all by
itself, and it can be tied to a an
alternative trigger, like an
“Install” button.
https://airhorner.com/
home
screen
Flipkart uses its own “nudging”
mechanism, allowing it to target
users multiple times, and channel
only really engaged users to the
install banner.
https://www.flipkart.com/
home
screen
Pattern:
Using a contextually optimal
orientation and display mode
home
screen
"display": "standalone",
"orientation": "portrait"
home
screen
https://airhorner.com/
"display": "standalone",
"orientation": "portrait"
https://riorun.theguardian.com/
home
screen
[…] we think that PWAs are potentially a
perfect vehicle for all kinds of journalism –
events like election night results, specific
verticals like recipes, long-running
investigations like The Counted – and we hope
to see (and make) more in future.
home
screen
https://www.theguardian.com/info/developer-
blog/2016/aug/19/how-we-made-the-riorun-progressive-
web-app
"display": "browser"
https://www.theguardian.com/
home
screen
"display": "fullscreen",
"orientation": "portrait"
https://www.flickplayapp.io/
home
screen
"display": "fullscreen",
"orientation": "landscape"
https://andreasbovens.github.io/inbox-attack/
home
screen
offline
offline
Pattern:
Saving specific content units
offline
https://www.soundslice.com/scores/34716/
Soundslice offers a “save offline”
option for specific content units.
offline
When we are offline, the site
offers a handy overview of all
available content.
offline
offline
Pattern:
Saving (almost) all site content
offline
The WaPo PWA’s frontpage
works great online…
https://www.washingtonpost.com/pwa/
offline
… and here’s its offline
experience!
offline
We can even read full articles, but
the images are not pre-fetched.
offline
Well… not really ;-)
We can even read full articles, but
the images are not pre-fetched.
offline
This is what the article looks like
when we reconnect and refresh.
offline
And if we go offline again and
refresh, already downloaded
images stay nicely cached.
Google I/O PWA downloads the
full site in the background (except
videos, of course), and informs us
that it will work offline.
offline
https://events.google.com/io2016/
offline
Pattern:
Indicating that the user is offline
When we go offline on the Google
I/O site, there’s a banner pointing
out that we’re offline, but that
editing will work.
offline
offline
offline
Flipkart &
Geo.tv
indicate “offline”
with a grey
scale filter.
offline
https://m.geo.tv/
https://www.flipkart.com/
push
push
push
push
Pattern:
Using notifications for re-engagement
push
Push notifications allow web apps to list
visitors for re-engagement in a low-friction
manner,
without requiring sign-up or app download.
push
New Scientist asks if it can send
push notifications, instead of
asking for an email address, sign
up or app download.
https://www.newscientist.com/
push
http://www.slideshare.net/julianmartinez2/building-selio-a-local-market-progressive-web-app
push
Pattern:
Contextualizing why the user should
grant permission to send notifications
push
Weather.com does a good job at
contextualizing why we’d want to
click “Allow” on the push
notification permission prompt.
push
Facebook asks immediately after
the user is logged in, so there is
indirect context.
https://m.facebook.com/
So, to summarize — you should consider:
Channel “add to home screen” prompts, or not?
Is the display mode and orientation optimal?
What type of content is saved for offline?
Save content after a user action, or automatically?
How to indicate that the user is offline?
Is sign up needed, or are push notifications better?
When & how to ask users to accept notifications?
# Why do PWAs matter in Africa?
PWAs are typically more lightweight than native
apps, and offer an always up-to-date
experience.
This is great for end users (no more data-
slurping app updates & more available device
storage) and developers (updates are
distributed instantly).
“If I were to pick just one feature of
PWAs that I’m super-excited
about, it’s the ability to detect
and handle offline / unreliable
network conditions with service
workers.”
Constance Okoghenun (Konga):
https://dev.opera.com/articles/pwa-nigeria-kenya-interview/
Early progressive web apps in Asia & Africa
And now that we’re talking about data
savings…
Let’s talk about
Almost 250 million people
every month use Opera Mini.
6.5 million of whom live in Kenya,
20.5 million of whom live in Nigeria, and
11 million of whom live in South-Africa.
Opera Mini now has multiple
rendering modes on Android.
On data, it uses built-in webview
with compression.
On data, it uses built-in webview
with compression.
On WiFi, it uses built-in webview
without compression,
unless you turn it on.
There’s also “Extreme mode”,
which is the classic Presto-based
compression mode.
This gives large savings, but may
cause breakage.
We’re moving users as much as possible over to
the webview-powered modes (sometimes
dynamically), but many still use extreme mode.
Also note: Opera Mini on iOS also ships with multiple modes, whereas Opera Mini
for J2ME & Opera Mini for Windows Phone only ship with extreme mode.
So, what about PWA support?
The webview-powered modes
have solid standards support,
incl. service workers.
“Extreme mode” however does not support PWA
features, and comes with limited JS support.
For this reason, it’s important you build your apps
carefully balancing content, presentation and
client-side scripting, following progressive
enhancement principles as much as possible.
https://dev.opera.com/articles/making-sites-work-opera-mini/
# Did you know about…?
… the display-mode media query
{
"name": "Simple web app demo",
"short_name": "Demo",
"icons": [
{
"src": "icon-medium.png",
"sizes": "96x96"
},{
"src": "icon-large.png",
"sizes": "192x192"
}
],
"theme_color": "#3F51B5",
"background_color": "#F5F5F5",
"display": "standalone",
"orientation": "portrait",
"start_url": "/simple-demo/?home=true"
}
{
"name": "Simple web app demo",
"short_name": "Demo",
"icons": [
{
"src": "icon-medium.png",
"sizes": "96x96"
},{
"src": "icon-large.png",
"sizes": "192x192"
}
],
"theme_color": "#3F51B5",
"background_color": "#F5F5F5",
"display": "standalone",
"orientation": "portrait",
"start_url": "/simple-demo/?home=true"
}
CSS
@media (display-mode: standalone) {
h3:after {content: " in standalone mode!"}
}
… the “Pop into browser” experiment
Standalone & fullscreen modes
hide the URL bar…
Jeremy Keith:
“I want people to be able to copy URLs. I want
people to be able to hack URLs. I’m not ashamed
of my URLs …I’m downright proud.”
https://twitter.com/adactio/status/734875747169501185
https://dev.opera.com/blog/pwa-badge-pop/
… the pwa.rocks demo site!
https://pwa.rocks/
Thank you!
@andreasbovens
#PWARoadshow
#PWARoadshowNairobi
#PWARoadshowLagos
#PWARoadshowJoburg

Weitere ähnliche Inhalte

Was ist angesagt?

Trip advsiorhybridpresentation
Trip advsiorhybridpresentationTrip advsiorhybridpresentation
Trip advsiorhybridpresentation
ElanaBoehm
 
Responsive design bookmarklet
Responsive design bookmarkletResponsive design bookmarklet
Responsive design bookmarklet
CocoaHeads France
 

Was ist angesagt? (20)

Trip advsiorhybridpresentation
Trip advsiorhybridpresentationTrip advsiorhybridpresentation
Trip advsiorhybridpresentation
 
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
 
Smart app banners
Smart app bannersSmart app banners
Smart app banners
 
App Marketing 101
App Marketing 101App Marketing 101
App Marketing 101
 
The Mobile Experiment
The Mobile ExperimentThe Mobile Experiment
The Mobile Experiment
 
Facebook update feature APR 2016
Facebook update feature APR 2016Facebook update feature APR 2016
Facebook update feature APR 2016
 
Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps   Progressive Web Apps –The Future of Apps
Progressive Web Apps –The Future of Apps
 
Playbook for promoting kids' apps
Playbook for promoting kids' appsPlaybook for promoting kids' apps
Playbook for promoting kids' apps
 
#MTC2019: Mobile (jeszcze bardziej) first! PWA jako wyzwanie UX - Filip Makow...
#MTC2019: Mobile (jeszcze bardziej) first! PWA jako wyzwanie UX - Filip Makow...#MTC2019: Mobile (jeszcze bardziej) first! PWA jako wyzwanie UX - Filip Makow...
#MTC2019: Mobile (jeszcze bardziej) first! PWA jako wyzwanie UX - Filip Makow...
 
Seminar Android - Pengenalan PhoneGap
Seminar Android - Pengenalan PhoneGapSeminar Android - Pengenalan PhoneGap
Seminar Android - Pengenalan PhoneGap
 
Planning Your Progressive Web App
Planning Your Progressive Web AppPlanning Your Progressive Web App
Planning Your Progressive Web App
 
Facebook iTunes app for Page Admin
Facebook iTunes app for Page AdminFacebook iTunes app for Page Admin
Facebook iTunes app for Page Admin
 
Checklist for Bulletproof Mobile User Onboarding
Checklist for Bulletproof Mobile User Onboarding Checklist for Bulletproof Mobile User Onboarding
Checklist for Bulletproof Mobile User Onboarding
 
Promotee
PromoteePromotee
Promotee
 
Web Forms The Right Way
Web Forms The Right WayWeb Forms The Right Way
Web Forms The Right Way
 
Responsive design bookmarklet
Responsive design bookmarkletResponsive design bookmarklet
Responsive design bookmarklet
 
Advice for Google Mobile Friendly Algorithm Change on April 21st
Advice for Google Mobile Friendly Algorithm Change on April 21stAdvice for Google Mobile Friendly Algorithm Change on April 21st
Advice for Google Mobile Friendly Algorithm Change on April 21st
 
February 2018: Sustainable UX Conference
February 2018: Sustainable UX ConferenceFebruary 2018: Sustainable UX Conference
February 2018: Sustainable UX Conference
 
[Srijan Wednesday Webinars] Rethinking Mobile Strategy for 2015
[Srijan Wednesday Webinars] Rethinking Mobile Strategy for 2015[Srijan Wednesday Webinars] Rethinking Mobile Strategy for 2015
[Srijan Wednesday Webinars] Rethinking Mobile Strategy for 2015
 
Nodevember 2017: AMP Primer
Nodevember 2017: AMP PrimerNodevember 2017: AMP Primer
Nodevember 2017: AMP Primer
 

Ähnlich wie Progressive Web Apps: Opera's perspective

Ähnlich wie Progressive Web Apps: Opera's perspective (20)

Basic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web AppsBasic Understanding of Progressive Web Apps
Basic Understanding of Progressive Web Apps
 
Progressive Web App Challenges
Progressive Web App ChallengesProgressive Web App Challenges
Progressive Web App Challenges
 
Go for Progressive Web Apps. Get a Better, Low Cost, Mobile Presence
Go for Progressive Web Apps. Get a Better, Low Cost, Mobile PresenceGo for Progressive Web Apps. Get a Better, Low Cost, Mobile Presence
Go for Progressive Web Apps. Get a Better, Low Cost, Mobile Presence
 
Progressive Web Apps - Porque nativo no es significa mejor
Progressive Web Apps - Porque nativo no es significa mejorProgressive Web Apps - Porque nativo no es significa mejor
Progressive Web Apps - Porque nativo no es significa mejor
 
progressive web app
 progressive web app progressive web app
progressive web app
 
Introduction of Progressive Web App
Introduction of Progressive Web AppIntroduction of Progressive Web App
Introduction of Progressive Web App
 
Progressive web app
Progressive web appProgressive web app
Progressive web app
 
The Future of Web Apps
The Future of Web AppsThe Future of Web Apps
The Future of Web Apps
 
From AMP to PWA
From AMP to PWAFrom AMP to PWA
From AMP to PWA
 
Checklist for progressive web app development
Checklist for progressive web app developmentChecklist for progressive web app development
Checklist for progressive web app development
 
The Web Platform - State of the Union '17
The Web Platform - State of the Union '17The Web Platform - State of the Union '17
The Web Platform - State of the Union '17
 
Progressive web apps for e commerce
Progressive web apps for e commerceProgressive web apps for e commerce
Progressive web apps for e commerce
 
Progressive Web App
Progressive Web AppProgressive Web App
Progressive Web App
 
20181023 progressive web_apps_are_here_sfcampua
20181023 progressive web_apps_are_here_sfcampua20181023 progressive web_apps_are_here_sfcampua
20181023 progressive web_apps_are_here_sfcampua
 
Progressive Web Apps are here!
Progressive Web Apps are here!Progressive Web Apps are here!
Progressive Web Apps are here!
 
The web - What it has, what it lacks and where it must go - keynote at Riga D...
The web - What it has, what it lacks and where it must go - keynote at Riga D...The web - What it has, what it lacks and where it must go - keynote at Riga D...
The web - What it has, what it lacks and where it must go - keynote at Riga D...
 
New trends on web platform
New trends on web platformNew trends on web platform
New trends on web platform
 
State of the WEB ‘18
State of the WEB ‘18State of the WEB ‘18
State of the WEB ‘18
 
Progressive Web Apps - Intro & Learnings
Progressive Web Apps - Intro & LearningsProgressive Web Apps - Intro & Learnings
Progressive Web Apps - Intro & Learnings
 
Progressive web application
Progressive web applicationProgressive web application
Progressive web application
 

Mehr von Andreas Bovens

Mehr von Andreas Bovens (9)

Intro to @viewport & other new Responsive Web Design CSS features
Intro to @viewport & other new Responsive Web Design CSS featuresIntro to @viewport & other new Responsive Web Design CSS features
Intro to @viewport & other new Responsive Web Design CSS features
 
Responsive design: techniques and tricks to prepare your websites for the mul...
Responsive design: techniques and tricks to prepare your websites for the mul...Responsive design: techniques and tricks to prepare your websites for the mul...
Responsive design: techniques and tricks to prepare your websites for the mul...
 
Fast & Furious: Speed in the Opera browser
Fast & Furious: Speed in the Opera browserFast & Furious: Speed in the Opera browser
Fast & Furious: Speed in the Opera browser
 
SVG in Opera’s desktop, mobile & TV browsers — edition 2011
SVG in Opera’s desktop, mobile & TV browsers  — edition 2011SVG in Opera’s desktop, mobile & TV browsers  — edition 2011
SVG in Opera’s desktop, mobile & TV browsers — edition 2011
 
Building rich apps with HTML5 and friends
Building rich apps with HTML5 and friendsBuilding rich apps with HTML5 and friends
Building rich apps with HTML5 and friends
 
SVG in the Opera browser
SVG in the Opera browserSVG in the Opera browser
SVG in the Opera browser
 
Mobile web development techniques (and Opera's developer tools)
Mobile web development techniques (and Opera's developer tools)Mobile web development techniques (and Opera's developer tools)
Mobile web development techniques (and Opera's developer tools)
 
Opera and the Open Web platform
Opera and the Open Web platformOpera and the Open Web platform
Opera and the Open Web platform
 
Opera Widgets for Desktop and Opera Dragonfly
Opera Widgets for Desktop and Opera DragonflyOpera Widgets for Desktop and Opera Dragonfly
Opera Widgets for Desktop and Opera Dragonfly
 

Kürzlich hochgeladen

Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
Enterprise Knowledge
 

Kürzlich hochgeladen (20)

Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 

Progressive Web Apps: Opera's perspective