SlideShare ist ein Scribd-Unternehmen logo
1 von 84
Downloaden Sie, um offline zu lesen
Progressive Web Apps – the return of the web?
Chris Heilmann @codepo8, Devternity Riga, December 2016
Chris Heilmann
@codepo8
https://www.christianheilmann.com/2016/11/22/interviewing-a-depressed-internet-at-the-internet-days/
The web is not doing too well…
➡ Censorship
➡ Bullying
➡ Trolling
➡ Malware
➡ Surveillance
➡ Security Issues
➡ Obesity
There is a very cool thing
happening right now…
https://www.christianheilmann.com/2015/04/08/keeping-it-simple-coding-a-carousel/
Obesity…
🖥→💻→📱
Considering our users…
…this is worrying.
💔 The web wasn’t ready for
the mobile form factor.
😠
🌧 Mobile was a throwback to the
web of old
🌧 Small screens, bad connectivity,
unreliable browser support
🌧 Constantly changing conditions
🌧 Hardwired browser and hardware
with unpredictable upgrades
🏁 It started well, if you
remember…
You’ve got everything you need if you
know how to write apps using the
most modern web standards to write
amazing apps for the iPhone today.
“
– Steve Jobs, 2007
But now…
App Store At 6: How Steve Jobs'
Biggest Blunder Became One Of
Apple's Greatest Strengths
http://www.forbes.com/sites/markrogowsky/2014/07/11/app-store-at-6-how-steve-jobs-biggest-
blunder-became-one-of-apples-greatest-strengths/#615411fe4874
“ – Forbes, 2014
😕 902 words article
😕 9.1 MB data
😕 522 requests
😕 52.48 seconds load time
🤔
💸 On the web, users are in control.
💸 Users are conditioned to not pay for
things but find ways around
💸 Somehow, you have to pay the bills…
💸 Let’s try to turn users into products to
sell to others…
The publisher’s dilemma…
Out of choice or
necessity, people
fight this…
😍 Control over the look and feel
😍 Revenue resource (apps cost money)
😍 Control over the distribution (remove
them from the market or only offer in
certain regions)
😍 In-built obsolescence (new versions cost
more)
😍 Control the environment (iOS first,
Android maybe…)
Apps for publishers…
= 💰💸🤑
😕 Pricing race to the bottom (99 cents)
😕 Lock-in into the marketplace with its own
rules and restrictions
😕 Revenue share with marketplace/OS
provider
😕 Updates are hard and may be delayed
by the marketplace rules
😕 Turns out, people don’t want to be
locked in…
Reality check for
publishers…
94% of app revenue comes from
1% of publishers
https://sensortower.com/blog/app-store-one-percent
“
80% of users who download an
app fail to become active users.
http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/
“
In app purchases are where the
money is at - and these are
regulated by the platform or cost
a percentage.
marketingland.com/app-purchases-dominate-ads-app-store-lifetime-revenue-hits-71-billion-183953
“
60% of apps in the Google Play
app store have never been
downloaded.
https://www.youtube.com/watch?v=EUthgV-U05w&feature=youtu.be&t=1m56s
“
The average user downloads less
than 3 apps per month. Half of
US smartphone users download
zero apps per month.
http://www.recode.net/2016/9/16/12933780/average-app-downloads-per-month-comscore
“
Users try out a lot of apps but
decide which ones they want to
‘stop using’ within the first 3-7
days.
http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/
“
The average app mostly loses its
entire userbase within a few
months…
http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/
“
…of the >1.5 million apps in the
Google Play store, only a few
thousand sustain meaningful
traffic.
http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/
“
http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/
Users spend 80% of their time
using just 5 apps.
http://marketingland.com/report-mobile-users-spend-80-percent-time-just-five-apps-116858
“
http://www.howtogeek.com/281849/dont-be-fooled-the-mac-app-store-is-full-of-scams/
Scams, spam and senseless cruft…
http://blog.checkpoint.com/2016/11/30/1-million-google-accounts-breached-gooligan/
Lock-in and promise of lockout = malware
Perfect Cleaner, Demo, WiFi Enhancer, Snake, gla.pev.zvh,
Html5 Games, Demm, memory booster, แข่งรถสุดโหด,
StopWatch, Clear, ballSmove_004, Flashlight Free, memory
booste, Touch Beauty, Demoad, Small Blue Point, Battery
Monitor, , UC Mini, Shadow Crush, Sex Photo,
, tub.ajy.ics, Hip Good, Memory Booster, phone booster,
SettingService, Wifi Master, Fruit Slots, System Booster,
Dircet Browser, FUNNY DROPS, Puzzle Bubble-Pet
Paradise, GPS, Light Browser, Clean Master, YouTube
Downloader, KXService, Best Wallpapers, Smart Touch,
Light Advanced, SmartFolder, youtubeplayer, Beautiful
Alarm, PronClub, Detecting instrument, Calculator, GPS
Speed, Fast Cleaner, Blue Point, CakeSweety, Pedometer,
Compass Lite, Fingerprint unlock, PornClub,
com.browser.provider, Assistive Touch, Sex Cademy,
OneKeyLock, Wifi Speed Pro, Minibooster, com.so.itouch,
com.fabullacop.loudcallernameringtone, Kiss Browser,
Weather, Chrono Marker, Slots Mania, Multifunction
Flashlight, So Hot, Google, HotH5Games, Swamm Browser,
Billiards, TcashDemo, Sexy hot wallpaper, Wifi Accelerate,
Simple Calculator, Daily Racing, Talking Tom 3,
com.example.ddeo, Test, Hot Photo, QPlay, Virtual, Music
Cloud
💔
How can we fix this? We
want happy users and
ethical, good publishers
who get paid…
Native app install friction blocks
74% of your potential customers
before they ever see your app.
“
https://medium.com/javascript-scene/why-native-apps-really-are-doomed-native-apps-are-doomed-pt-2-e035b43170e9#.axf46f08l
=
🌍 So, back to the web?
🛠 Yes, but with a twist…
⚠ We weren’t ready to go all
out on web with mobile.
💾
🌧 Instead of creating web sites that
work well on mobile, we packaged
them up and submitted them to
market places.
🌧 In a 1:1 comparison with native
apps, they looked rubbish.
🌧 That’s because they weren’t web
products, but native apps built in
web technologies.
https://www.theguardian.com/technology/2016/nov/02/mobile-web-browsing-desktop-smartphones-tablets
https://remysharp.com/2016/05/28/state-of-the-gap
These days, we’re
looking much better…
Let’s tackle the mobile
form factor…
🤔
✏ Small initial payload
✏ Form factor supporting content
✏ Form factor supporting interfaces
✏ Offline/Flaky connection support
✏ Taking advantage of the power of
the end user device
✏ Avoiding interaction latency
❤📲
The best way to bend the retention
curve is to target the first few days of
usage, and in particular the first visit.
That way, users set up themselves up
for success.
http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/
“
http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/
Progressive Web Apps
🦄
The first step:
App Manifest
https://developer.mozilla.org/en-US/docs/Web/Manifest
📓
https://developer.mozilla.org/en-US/docs/Web/Manifest
✏ Describes document as an app
✏ Defines look and feel (fullscreen,
colours, screen orientation)
✏ Access to platform-specific
functionality
✏ Standardised version of older,
similar approaches
The first step:
App Manifest
The first step:
App Manifest
https://developer.mozilla.org/en-US/docs/Web/Manifest
The first step:
App Manifest
https://webmanife.st/
The big breakthrough:
Service Worker
https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API
🔧
✅ Intercept fetch events, respond
with cache
✅ Intercept push events
✅ Intercept sync/periodic events
The big breakthrough: Service Worker
https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API
🔧
✏ Offline
✏ Push notifications
✏ Background Sync
The big breakthrough: Service Worker
https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API
🔧
✅
🔧 Must be HTTPS
🔧 Have a valid manifest with all required properties
🔧 Must have a Service Worker
🔧 start_url defined in the manifest must always
load, including in an offline state
🔧 Must supply an own navigation (independent of
browser UI)
🔧 Responsive to different sizes and form factors.
A progressive web app…
😍
🔧 https://serviceworke.rs/
🔧 https://www.udacity.com/course/offline-
web-applications--ud899
🔧 https://events.withgoogle.com/progressive-
web-app-dev-summit/agenda/
🔧 https://developers.google.com/web/
progressive-web-apps/checklist
Lots of great resources…
9First success stories…
Alibaba is the global leader in B2B trade.
Recently, they upgraded to a PWA:
✅ 76% more web conversions
✅ 30% more monthly active users on Android,
14% more on iOS
✅ 4X higher interaction rate from Add to
Homescreen
https://developers.google.com/web/showcase/2016/alibaba
Housing.com is one of the leading real
estate platforms in India. After
implementing their PWA:
✅ 38% more conversions
✅ 40% lower bounce rate
✅ 10% longer average session
✅ 30% faster page load
https://developers.google.com/web/showcase/2016/housing
Great, but what about
support?
🤔
What we’re talking about
here is progressive
enhancement
Using this, we can support the past…
And we can support
current edge cases…
And after some checking, all the current
browsers and what they support…
Let’s talk about iOS…
🍏
There is no official
timeline when or if
ServiceWorker will be in
iOS…
💔
iOS has 45% of the US smartphone
market, and iOS users spend $1.08
per user per app per user vs $.43 on
Android.
https://medium.com/javascript-scene/why-native-apps-really-are-doomed-native-apps-are-doomed-pt-2-e035b43170e9#.axf46f08l
“
Android has 86% global market share.
“
https://medium.com/javascript-scene/why-native-apps-really-are-doomed-native-apps-are-doomed-pt-2-e035b43170e9#.axf46f08l
<meta name="apple-mobile-web-
app-capable" content=“yes">
https://github.com/
MobileChromeApps/cordova-
plugin-service-worker
🍎
What about desktop or
other form factors?🖥
The existing PWA implementations still
leave web apps as second-class to
native apps in many ways. We want to
fix that.
“
https://blogs.windows.com/msedgedev/2016/07/08/the-progress-of-web-apps/
– "The Progress of Web Apps", Jacob Rossi (2016)
🔧 Runs as a Windows service
🔧 Can wake up the browser even
when the browser is closed
🔧 May spawn multiple Service
Workers at once for performance
(under debate)
Edge plans…
🔧 Bing crawls web sites
🔧 Sites with a manifest go into the
Windows Store
🔧 These webapps are real apps:
Windows Desktop, Windows
Phone, XBox, Hololens,
SurfaceHub…
Windows plans…
“Websites that
have taken all the
right vitamins”
– Alex Russel?
https://webmasters.googleblog.com/2016/11/building-indexable-progressive-web-apps.html
🆙
🔧 Any web product can become a
Progressive Web App, not all have
to be.
🔧 You’ll reap the rewards of simple
maintenance and upgrade paths
in the form factor mobile users
expect.
🔧 Apps can hibernate and wake up
on demand - no need to have the
browser open.
🔗
🙂 The great thing here is that
progressive web apps bring
back the power of the link
🙂 You don’t need to play by the
rules of a closed marketplace
🙂 You can send people a link and
by the time they looked at the
app it is ready to use - it is real
try before you buy.
In app purchases are where the
money is at, and you can do that in
your own app without splitting costs
with Apple or Google.
http://marketingland.com/app-purchases-dominate-ads-app-store-lifetime-revenue-hits-71-billion-183953
“
For all intents and
purposes, PWAs are a
good opportunity to slim
down the web.
?
To find a good middle
ground of control and
user convenience…🎛
…without reinventing the
great distribution model
that is the web.🌍💝
CHRIS HEILMANN
@CODEPO8
CHRISTIANHEILMANN.COM
THANKS!

Weitere ähnliche Inhalte

Was ist angesagt?

The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)
Christian Heilmann
 

Was ist angesagt? (20)

The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)The Soul in The Machine - Developing for Humans (FrankenJS edition)
The Soul in The Machine - Developing for Humans (FrankenJS edition)
 
JavaScript is a buffet - Scriptconf 2017 keynote
JavaScript is a buffet - Scriptconf 2017 keynoteJavaScript is a buffet - Scriptconf 2017 keynote
JavaScript is a buffet - Scriptconf 2017 keynote
 
The Soul in The Machine - Developing for Humans
The Soul in The Machine - Developing for HumansThe Soul in The Machine - Developing for Humans
The Soul in The Machine - Developing for Humans
 
Automating all the wrong things - You Gotta Love Frontend Keynote
Automating all the wrong things - You Gotta Love Frontend KeynoteAutomating all the wrong things - You Gotta Love Frontend Keynote
Automating all the wrong things - You Gotta Love Frontend Keynote
 
JavaScript isn't evil.
JavaScript isn't evil.JavaScript isn't evil.
JavaScript isn't evil.
 
Stapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San FranciscoStapling and patching the web of now - ForwardJS3, San Francisco
Stapling and patching the web of now - ForwardJS3, San Francisco
 
2021 Chrome Dev Summit: Web Performance 101
2021 Chrome Dev Summit: Web Performance 1012021 Chrome Dev Summit: Web Performance 101
2021 Chrome Dev Summit: Web Performance 101
 
Upgrading JavaScript to ES6 and using TypeScript as a shortcut
Upgrading JavaScript to ES6 and using TypeScript as a shortcutUpgrading JavaScript to ES6 and using TypeScript as a shortcut
Upgrading JavaScript to ES6 and using TypeScript as a shortcut
 
Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center Progressive Web Apps - Bringing the web front and center
Progressive Web Apps - Bringing the web front and center
 
Progressive Web App Challenges
Progressive Web App ChallengesProgressive Web App Challenges
Progressive Web App Challenges
 
Looking for a place to hang my helmet
Looking for a place to hang my helmetLooking for a place to hang my helmet
Looking for a place to hang my helmet
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise
Doing Modern Web, aka JavaScript and HTML5 in the EnterpriseDoing Modern Web, aka JavaScript and HTML5 in the Enterprise
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise
 
Introduction to Responsive Design v.2
Introduction to Responsive Design v.2Introduction to Responsive Design v.2
Introduction to Responsive Design v.2
 
Nodevember 2017: AMP Primer
Nodevember 2017: AMP PrimerNodevember 2017: AMP Primer
Nodevember 2017: AMP Primer
 
Real solutions, no tricks
Real solutions, no tricksReal solutions, no tricks
Real solutions, no tricks
 
Turning a community into evangelism helpers - Devrelconf 2016
Turning a community into evangelism helpers - Devrelconf 2016Turning a community into evangelism helpers - Devrelconf 2016
Turning a community into evangelism helpers - Devrelconf 2016
 
Make mobile web apps rock
Make mobile web apps rockMake mobile web apps rock
Make mobile web apps rock
 
How To Be an HTML5 Mobile Cloud Champion
How To Be an HTML5 Mobile Cloud ChampionHow To Be an HTML5 Mobile Cloud Champion
How To Be an HTML5 Mobile Cloud Champion
 
A Period of Transition
A Period of TransitionA Period of Transition
A Period of Transition
 
Progressive Web Apps for Education
Progressive Web Apps for EducationProgressive Web Apps for Education
Progressive Web Apps for Education
 

Andere mochten auch

Progressive web and the problem of JavaScript
Progressive web and the problem of JavaScriptProgressive web and the problem of JavaScript
Progressive web and the problem of JavaScript
Christian Heilmann
 
A Project Report on Management Information Systems of Hindustan Petroleum Cor...
A Project Report on Management Information Systems of Hindustan Petroleum Cor...A Project Report on Management Information Systems of Hindustan Petroleum Cor...
A Project Report on Management Information Systems of Hindustan Petroleum Cor...
Chandan Pahelwani
 

Andere mochten auch (20)

Microsoft und die Open Source Community - Leaving the death star behind
Microsoft und die Open Source Community - Leaving the death star behindMicrosoft und die Open Source Community - Leaving the death star behind
Microsoft und die Open Source Community - Leaving the death star behind
 
Suit up, bring extra oxygen Internet space explorers needed.
Suit up, bring extra oxygen Internet space explorers needed.Suit up, bring extra oxygen Internet space explorers needed.
Suit up, bring extra oxygen Internet space explorers needed.
 
Internet Days - The Depressed Internet
Internet Days - The Depressed Internet Internet Days - The Depressed Internet
Internet Days - The Depressed Internet
 
Supercharging Public Speaking
Supercharging Public SpeakingSupercharging Public Speaking
Supercharging Public Speaking
 
Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016Progressive Web Apps – the return of the web? Goto Berlin 2016
Progressive Web Apps – the return of the web? Goto Berlin 2016
 
Barrierefreiheit inklusive - Abschlusskeynote A-Tag 2016
Barrierefreiheit inklusive - Abschlusskeynote A-Tag 2016Barrierefreiheit inklusive - Abschlusskeynote A-Tag 2016
Barrierefreiheit inklusive - Abschlusskeynote A-Tag 2016
 
Javascript isn't hard
Javascript isn't hardJavascript isn't hard
Javascript isn't hard
 
Sharing our Coder Privilege
Sharing our Coder PrivilegeSharing our Coder Privilege
Sharing our Coder Privilege
 
capital market
capital marketcapital market
capital market
 
Progressive web and the problem of JavaScript
Progressive web and the problem of JavaScriptProgressive web and the problem of JavaScript
Progressive web and the problem of JavaScript
 
Zwischen Terminator und Star Trek: Digitalisierung und Künstliche Intelligenz
Zwischen Terminator und Star Trek: Digitalisierung und Künstliche IntelligenzZwischen Terminator und Star Trek: Digitalisierung und Künstliche Intelligenz
Zwischen Terminator und Star Trek: Digitalisierung und Künstliche Intelligenz
 
Real World Progressive Web Apps (Building Flipkart Lite)
Real World Progressive Web Apps (Building Flipkart Lite)Real World Progressive Web Apps (Building Flipkart Lite)
Real World Progressive Web Apps (Building Flipkart Lite)
 
Progressive Web Apps
Progressive Web AppsProgressive Web Apps
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
 
A Project Report on Management Information Systems of Hindustan Petroleum Cor...
A Project Report on Management Information Systems of Hindustan Petroleum Cor...A Project Report on Management Information Systems of Hindustan Petroleum Cor...
A Project Report on Management Information Systems of Hindustan Petroleum Cor...
 
Final project on Capital Market
Final project on Capital MarketFinal project on Capital Market
Final project on Capital Market
 
Building a Progressive Web App
Building a  Progressive Web AppBuilding a  Progressive Web App
Building a Progressive Web App
 
Project Report on Financial Statement Analysis
Project Report on Financial Statement AnalysisProject Report on Financial Statement Analysis
Project Report on Financial Statement Analysis
 
Progressive web apps
Progressive web appsProgressive web apps
Progressive web apps
 
Web Components: The future of Web Application Development
Web Components: The future of Web Application DevelopmentWeb Components: The future of Web Application Development
Web Components: The future of Web Application Development
 

Ähnlich wie Progressive Web Apps – the return of the web?

Conversionista : Conversion manager course - Stockholm 20 march 2013
Conversionista : Conversion manager course  - Stockholm 20 march 2013Conversionista : Conversion manager course  - Stockholm 20 march 2013
Conversionista : Conversion manager course - Stockholm 20 march 2013
Craig Sullivan
 

Ähnlich wie Progressive Web Apps – the return of the web? (20)

Planning Your Progressive Web App
Planning Your Progressive Web AppPlanning Your Progressive Web App
Planning Your Progressive Web App
 
From AMP to PWA
From AMP to PWAFrom AMP to PWA
From AMP to PWA
 
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
 
The Case for Progressive Web Apps
The Case for Progressive Web AppsThe Case for Progressive Web Apps
The Case for Progressive Web Apps
 
Trends in front end engineering_handouts
Trends in front end engineering_handoutsTrends in front end engineering_handouts
Trends in front end engineering_handouts
 
The Future of Web Apps
The Future of Web AppsThe Future of Web Apps
The Future of Web Apps
 
Online testconf event rwd and pwa 2018
Online testconf event rwd and pwa 2018Online testconf event rwd and pwa 2018
Online testconf event rwd and pwa 2018
 
Decide if PhoneGap is for you as your mobile platform selection
Decide if PhoneGap is for you as your mobile platform selectionDecide if PhoneGap is for you as your mobile platform selection
Decide if PhoneGap is for you as your mobile platform selection
 
Are you there Page Experience? It's Me, DevTools.
Are you there Page Experience? It's Me, DevTools.Are you there Page Experience? It's Me, DevTools.
Are you there Page Experience? It's Me, DevTools.
 
Are you there Page Experience? It's me, DevTools
Are you there Page Experience? It's me, DevToolsAre you there Page Experience? It's me, DevTools
Are you there Page Experience? It's me, DevTools
 
Mobile first - one key important aspect in digitalisation
Mobile first - one key important aspect in digitalisationMobile first - one key important aspect in digitalisation
Mobile first - one key important aspect in digitalisation
 
State of the WEB ‘18
State of the WEB ‘18State of the WEB ‘18
State of the WEB ‘18
 
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!
 
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
 
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 app
 progressive web app progressive web app
progressive web app
 
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
 
Conversionista : Conversion manager course - Stockholm 20 march 2013
Conversionista : Conversion manager course  - Stockholm 20 march 2013Conversionista : Conversion manager course  - Stockholm 20 march 2013
Conversionista : Conversion manager course - Stockholm 20 march 2013
 
Mastering Mobile Web with 8 Key Rules
Mastering Mobile Web with 8 Key RulesMastering Mobile Web with 8 Key Rules
Mastering Mobile Web with 8 Key Rules
 

Mehr von Christian Heilmann

Mehr von Christian Heilmann (16)

Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019Develop, Debug, Learn? - Dotjs2019
Develop, Debug, Learn? - Dotjs2019
 
Hinting at a better web
Hinting at a better webHinting at a better web
Hinting at a better web
 
Taking the "vile" out of privilege
Taking the "vile" out of privilegeTaking the "vile" out of privilege
Taking the "vile" out of privilege
 
Seven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC OsloSeven ways to be a happier JavaScript developer - NDC Oslo
Seven ways to be a happier JavaScript developer - NDC Oslo
 
Artificial intelligence for humans… #AIDC2018 keynote
Artificial intelligence for humans… #AIDC2018 keynoteArtificial intelligence for humans… #AIDC2018 keynote
Artificial intelligence for humans… #AIDC2018 keynote
 
Killing the golden calf of coding - We are Developers keynote
Killing the golden calf of coding - We are Developers keynoteKilling the golden calf of coding - We are Developers keynote
Killing the golden calf of coding - We are Developers keynote
 
Progressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays FinlandProgressive Web Apps - Techdays Finland
Progressive Web Apps - Techdays Finland
 
Taking the "vile" out of privilege
Taking the "vile" out of privilegeTaking the "vile" out of privilege
Taking the "vile" out of privilege
 
Five ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developerFive ways to be a happier JavaScript developer
Five ways to be a happier JavaScript developer
 
Taking the P out of PWA
Taking the P out of PWATaking the P out of PWA
Taking the P out of PWA
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"
 
You learned JavaScript - now what?
You learned JavaScript - now what?You learned JavaScript - now what?
You learned JavaScript - now what?
 
Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"Sacrificing the golden calf of "coding"
Sacrificing the golden calf of "coding"
 
Progressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReachProgressive Web Apps - Covering the best of both worlds - DevReach
Progressive Web Apps - Covering the best of both worlds - DevReach
 
Progressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worldsProgressive Web Apps - Covering the best of both worlds
Progressive Web Apps - Covering the best of both worlds
 
Non-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humansNon-trivial pursuits: Learning machines and forgetful humans
Non-trivial pursuits: Learning machines and forgetful humans
 

Kürzlich hochgeladen

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
heathfieldcps1
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
SanaAli374401
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
PECB
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
MateoGardella
 

Kürzlich hochgeladen (20)

The basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptxThe basics of sentences session 2pptx copy.pptx
The basics of sentences session 2pptx copy.pptx
 
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
Presentation by Andreas Schleicher Tackling the School Absenteeism Crisis 30 ...
 
Measures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SDMeasures of Dispersion and Variability: Range, QD, AD and SD
Measures of Dispersion and Variability: Range, QD, AD and SD
 
An Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdfAn Overview of Mutual Funds Bcom Project.pdf
An Overview of Mutual Funds Bcom Project.pdf
 
Paris 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activityParis 2024 Olympic Geographies - an activity
Paris 2024 Olympic Geographies - an activity
 
ICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptxICT Role in 21st Century Education & its Challenges.pptx
ICT Role in 21st Century Education & its Challenges.pptx
 
Z Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot GraphZ Score,T Score, Percential Rank and Box Plot Graph
Z Score,T Score, Percential Rank and Box Plot Graph
 
microwave assisted reaction. General introduction
microwave assisted reaction. General introductionmicrowave assisted reaction. General introduction
microwave assisted reaction. General introduction
 
Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104Nutritional Needs Presentation - HLTH 104
Nutritional Needs Presentation - HLTH 104
 
How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17How to Give a Domain for a Field in Odoo 17
How to Give a Domain for a Field in Odoo 17
 
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptxBasic Civil Engineering first year Notes- Chapter 4 Building.pptx
Basic Civil Engineering first year Notes- Chapter 4 Building.pptx
 
This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.This PowerPoint helps students to consider the concept of infinity.
This PowerPoint helps students to consider the concept of infinity.
 
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptxINDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
INDIA QUIZ 2024 RLAC DELHI UNIVERSITY.pptx
 
Beyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global ImpactBeyond the EU: DORA and NIS 2 Directive's Global Impact
Beyond the EU: DORA and NIS 2 Directive's Global Impact
 
Key note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdfKey note speaker Neum_Admir Softic_ENG.pdf
Key note speaker Neum_Admir Softic_ENG.pdf
 
Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1Código Creativo y Arte de Software | Unidad 1
Código Creativo y Arte de Software | Unidad 1
 
Grant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy ConsultingGrant Readiness 101 TechSoup and Remy Consulting
Grant Readiness 101 TechSoup and Remy Consulting
 
Gardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch LetterGardella_PRCampaignConclusion Pitch Letter
Gardella_PRCampaignConclusion Pitch Letter
 
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17  How to Extend Models Using Mixin ClassesMixin Classes in Odoo 17  How to Extend Models Using Mixin Classes
Mixin Classes in Odoo 17 How to Extend Models Using Mixin Classes
 
Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..Sports & Fitness Value Added Course FY..
Sports & Fitness Value Added Course FY..
 

Progressive Web Apps – the return of the web?

  • 1. Progressive Web Apps – the return of the web? Chris Heilmann @codepo8, Devternity Riga, December 2016
  • 3. https://www.christianheilmann.com/2016/11/22/interviewing-a-depressed-internet-at-the-internet-days/ The web is not doing too well… ➡ Censorship ➡ Bullying ➡ Trolling ➡ Malware ➡ Surveillance ➡ Security Issues ➡ Obesity
  • 4. There is a very cool thing happening right now… https://www.christianheilmann.com/2015/04/08/keeping-it-simple-coding-a-carousel/ Obesity…
  • 6. 💔 The web wasn’t ready for the mobile form factor.
  • 7. 😠 🌧 Mobile was a throwback to the web of old 🌧 Small screens, bad connectivity, unreliable browser support 🌧 Constantly changing conditions 🌧 Hardwired browser and hardware with unpredictable upgrades
  • 8. 🏁 It started well, if you remember…
  • 9. You’ve got everything you need if you know how to write apps using the most modern web standards to write amazing apps for the iPhone today. “ – Steve Jobs, 2007
  • 11. App Store At 6: How Steve Jobs' Biggest Blunder Became One Of Apple's Greatest Strengths http://www.forbes.com/sites/markrogowsky/2014/07/11/app-store-at-6-how-steve-jobs-biggest- blunder-became-one-of-apples-greatest-strengths/#615411fe4874 “ – Forbes, 2014
  • 12.
  • 13. 😕 902 words article 😕 9.1 MB data 😕 522 requests 😕 52.48 seconds load time
  • 14.
  • 15.
  • 16.
  • 17. 🤔 💸 On the web, users are in control. 💸 Users are conditioned to not pay for things but find ways around 💸 Somehow, you have to pay the bills… 💸 Let’s try to turn users into products to sell to others… The publisher’s dilemma…
  • 18. Out of choice or necessity, people fight this…
  • 19.
  • 20. 😍 Control over the look and feel 😍 Revenue resource (apps cost money) 😍 Control over the distribution (remove them from the market or only offer in certain regions) 😍 In-built obsolescence (new versions cost more) 😍 Control the environment (iOS first, Android maybe…) Apps for publishers…
  • 22. 😕 Pricing race to the bottom (99 cents) 😕 Lock-in into the marketplace with its own rules and restrictions 😕 Revenue share with marketplace/OS provider 😕 Updates are hard and may be delayed by the marketplace rules 😕 Turns out, people don’t want to be locked in… Reality check for publishers…
  • 23. 94% of app revenue comes from 1% of publishers https://sensortower.com/blog/app-store-one-percent “
  • 24. 80% of users who download an app fail to become active users. http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/ “
  • 25. In app purchases are where the money is at - and these are regulated by the platform or cost a percentage. marketingland.com/app-purchases-dominate-ads-app-store-lifetime-revenue-hits-71-billion-183953 “
  • 26. 60% of apps in the Google Play app store have never been downloaded. https://www.youtube.com/watch?v=EUthgV-U05w&feature=youtu.be&t=1m56s “
  • 27. The average user downloads less than 3 apps per month. Half of US smartphone users download zero apps per month. http://www.recode.net/2016/9/16/12933780/average-app-downloads-per-month-comscore “
  • 28. Users try out a lot of apps but decide which ones they want to ‘stop using’ within the first 3-7 days. http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/ “
  • 29. The average app mostly loses its entire userbase within a few months… http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/ “
  • 30. …of the >1.5 million apps in the Google Play store, only a few thousand sustain meaningful traffic. http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/ “
  • 32. Users spend 80% of their time using just 5 apps. http://marketingland.com/report-mobile-users-spend-80-percent-time-just-five-apps-116858 “
  • 34. http://blog.checkpoint.com/2016/11/30/1-million-google-accounts-breached-gooligan/ Lock-in and promise of lockout = malware Perfect Cleaner, Demo, WiFi Enhancer, Snake, gla.pev.zvh, Html5 Games, Demm, memory booster, แข่งรถสุดโหด, StopWatch, Clear, ballSmove_004, Flashlight Free, memory booste, Touch Beauty, Demoad, Small Blue Point, Battery Monitor, , UC Mini, Shadow Crush, Sex Photo, , tub.ajy.ics, Hip Good, Memory Booster, phone booster, SettingService, Wifi Master, Fruit Slots, System Booster, Dircet Browser, FUNNY DROPS, Puzzle Bubble-Pet Paradise, GPS, Light Browser, Clean Master, YouTube Downloader, KXService, Best Wallpapers, Smart Touch, Light Advanced, SmartFolder, youtubeplayer, Beautiful Alarm, PronClub, Detecting instrument, Calculator, GPS Speed, Fast Cleaner, Blue Point, CakeSweety, Pedometer, Compass Lite, Fingerprint unlock, PornClub, com.browser.provider, Assistive Touch, Sex Cademy, OneKeyLock, Wifi Speed Pro, Minibooster, com.so.itouch, com.fabullacop.loudcallernameringtone, Kiss Browser, Weather, Chrono Marker, Slots Mania, Multifunction Flashlight, So Hot, Google, HotH5Games, Swamm Browser, Billiards, TcashDemo, Sexy hot wallpaper, Wifi Accelerate, Simple Calculator, Daily Racing, Talking Tom 3, com.example.ddeo, Test, Hot Photo, QPlay, Virtual, Music Cloud
  • 35. 💔 How can we fix this? We want happy users and ethical, good publishers who get paid…
  • 36. Native app install friction blocks 74% of your potential customers before they ever see your app. “ https://medium.com/javascript-scene/why-native-apps-really-are-doomed-native-apps-are-doomed-pt-2-e035b43170e9#.axf46f08l
  • 37.
  • 38. =
  • 39.
  • 40. 🌍 So, back to the web?
  • 41. 🛠 Yes, but with a twist…
  • 42. ⚠ We weren’t ready to go all out on web with mobile.
  • 43. 💾 🌧 Instead of creating web sites that work well on mobile, we packaged them up and submitted them to market places. 🌧 In a 1:1 comparison with native apps, they looked rubbish. 🌧 That’s because they weren’t web products, but native apps built in web technologies.
  • 46. Let’s tackle the mobile form factor… 🤔
  • 47. ✏ Small initial payload ✏ Form factor supporting content ✏ Form factor supporting interfaces ✏ Offline/Flaky connection support ✏ Taking advantage of the power of the end user device ✏ Avoiding interaction latency ❤📲
  • 48. The best way to bend the retention curve is to target the first few days of usage, and in particular the first visit. That way, users set up themselves up for success. http://andrewchen.co/new-data-shows-why-losing-80-of-your-mobile-users-is-normal-and-that-the-best-apps-do-much-better/ “
  • 51. The first step: App Manifest https://developer.mozilla.org/en-US/docs/Web/Manifest 📓
  • 52. https://developer.mozilla.org/en-US/docs/Web/Manifest ✏ Describes document as an app ✏ Defines look and feel (fullscreen, colours, screen orientation) ✏ Access to platform-specific functionality ✏ Standardised version of older, similar approaches The first step: App Manifest
  • 53. The first step: App Manifest https://developer.mozilla.org/en-US/docs/Web/Manifest
  • 54. The first step: App Manifest https://webmanife.st/
  • 55. The big breakthrough: Service Worker https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API 🔧
  • 56. ✅ Intercept fetch events, respond with cache ✅ Intercept push events ✅ Intercept sync/periodic events The big breakthrough: Service Worker https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API 🔧
  • 57. ✏ Offline ✏ Push notifications ✏ Background Sync The big breakthrough: Service Worker https://developer.mozilla.org/en-US/docs/Web/API/Service_Worker_API 🔧
  • 58. ✅ 🔧 Must be HTTPS 🔧 Have a valid manifest with all required properties 🔧 Must have a Service Worker 🔧 start_url defined in the manifest must always load, including in an offline state 🔧 Must supply an own navigation (independent of browser UI) 🔧 Responsive to different sizes and form factors. A progressive web app…
  • 59. 😍 🔧 https://serviceworke.rs/ 🔧 https://www.udacity.com/course/offline- web-applications--ud899 🔧 https://events.withgoogle.com/progressive- web-app-dev-summit/agenda/ 🔧 https://developers.google.com/web/ progressive-web-apps/checklist Lots of great resources…
  • 61. Alibaba is the global leader in B2B trade. Recently, they upgraded to a PWA: ✅ 76% more web conversions ✅ 30% more monthly active users on Android, 14% more on iOS ✅ 4X higher interaction rate from Add to Homescreen https://developers.google.com/web/showcase/2016/alibaba
  • 62. Housing.com is one of the leading real estate platforms in India. After implementing their PWA: ✅ 38% more conversions ✅ 40% lower bounce rate ✅ 10% longer average session ✅ 30% faster page load https://developers.google.com/web/showcase/2016/housing
  • 63. Great, but what about support? 🤔
  • 64. What we’re talking about here is progressive enhancement
  • 65. Using this, we can support the past…
  • 66. And we can support current edge cases…
  • 67. And after some checking, all the current browsers and what they support…
  • 68. Let’s talk about iOS… 🍏
  • 69. There is no official timeline when or if ServiceWorker will be in iOS… 💔
  • 70. iOS has 45% of the US smartphone market, and iOS users spend $1.08 per user per app per user vs $.43 on Android. https://medium.com/javascript-scene/why-native-apps-really-are-doomed-native-apps-are-doomed-pt-2-e035b43170e9#.axf46f08l “
  • 71. Android has 86% global market share. “ https://medium.com/javascript-scene/why-native-apps-really-are-doomed-native-apps-are-doomed-pt-2-e035b43170e9#.axf46f08l
  • 73. What about desktop or other form factors?🖥
  • 74. The existing PWA implementations still leave web apps as second-class to native apps in many ways. We want to fix that. “ https://blogs.windows.com/msedgedev/2016/07/08/the-progress-of-web-apps/ – "The Progress of Web Apps", Jacob Rossi (2016)
  • 75. 🔧 Runs as a Windows service 🔧 Can wake up the browser even when the browser is closed 🔧 May spawn multiple Service Workers at once for performance (under debate) Edge plans…
  • 76. 🔧 Bing crawls web sites 🔧 Sites with a manifest go into the Windows Store 🔧 These webapps are real apps: Windows Desktop, Windows Phone, XBox, Hololens, SurfaceHub… Windows plans…
  • 77. “Websites that have taken all the right vitamins” – Alex Russel? https://webmasters.googleblog.com/2016/11/building-indexable-progressive-web-apps.html
  • 78. 🆙 🔧 Any web product can become a Progressive Web App, not all have to be. 🔧 You’ll reap the rewards of simple maintenance and upgrade paths in the form factor mobile users expect. 🔧 Apps can hibernate and wake up on demand - no need to have the browser open.
  • 79. 🔗 🙂 The great thing here is that progressive web apps bring back the power of the link 🙂 You don’t need to play by the rules of a closed marketplace 🙂 You can send people a link and by the time they looked at the app it is ready to use - it is real try before you buy.
  • 80. In app purchases are where the money is at, and you can do that in your own app without splitting costs with Apple or Google. http://marketingland.com/app-purchases-dominate-ads-app-store-lifetime-revenue-hits-71-billion-183953 “
  • 81. For all intents and purposes, PWAs are a good opportunity to slim down the web. ?
  • 82. To find a good middle ground of control and user convenience…🎛
  • 83. …without reinventing the great distribution model that is the web.🌍💝