Upload
icidigital
View
197
Download
0
Embed Size (px)
Citation preview
The Future of Web Appsor
Why mobile apps should die a slow and painful death (but probably won’t)
Speaker: Paul Goodrich
But I like mobile apps!
How about
Did you know...Facebook keeps running in the background?
Even if it’s not doing anything.
Even if you specifically close it.
Even if you specifically tell it not to run in the background.
Users who uninstall Facebook from their device see a 15% increase in battery
life on iOS and 20% on Android. It also runs about 15% faster.
...Except on most Android devices if you’re not rooted you can’t uninstall it.
Fun fact about that app downloadLose 20% of users every time you make them go an extra step.
● Get App -> 100 users
● Download App from app store -> 80 users
● App permissions -> 64 users
● Run App -> 51 users
Getting users excited to install a native app costs $1-2 in ads,
loyal users $4 each ($2 a year ago).
What business thinks it cares about...As of 2015, 87% of users’ time is spent on mobile apps vs 13%
mobile web.
80%of mobile app time is spent
in a user’s top 3 apps.
Exception being mobile games.
What business actually cares about...
Users spend more money every year on mobile web (66%)
instead of native apps
Also...
Why’d we stop using web apps again?Slower - Loading resources every time, loading desktop resources, Javascript, Slow
internet/Latency
No use offline
Not easily available from phone home-screen
No notifications
Not full-screen
Web Apps TODAYFaster
Bigger phone cache and local storage.
Various improvements for only loading what you need.
Better mobile internet speed
Better mobile site design
How? Service WorkersSupported by Chrome 46. Most other browsers require a polyfill.
Register Service Worker
Choose what you want to make available offline
Fetch cached resources offline - Demo
Other useful info:
Tutorial
chrome://inspect/#service-workers to see what service workers are registered
Coming soon: Caching queries and url parameters
Adding to HomescreenWe actually reduce install steps due to no app
store.
● Get App -> 100 users
● (Optionally) Run App from home
screen/app list -> 80 users
But my apps have icons...
DEMO
You might have noticed... "display": "standalone",
Full-screen ahead!
Shows up as a separate app
from Chrome
Phone DEMO
You probably already know this one...
Using...
Push notifications Service Workers!
Why should business care?Push notifications change user behavior
50% repeat visits within 3 months
20% increase in money spent per user on average
How?Fairly involved
DEMO
TUTORIAL
● Register Service worker
● Setup Google Cloud Messaging
● Create Push Event listener in service
worker to show notification
● User subscribe to push notifications
● cURL or xHR to client subscription ID
Web Apps SOON
EVEN
FASTER
WebAssembly (WASM)
What is it?Time to write a client-side web app…
What should I use?
Still Javascript...
WASM incomingWHAT IS IT
Binary representation of abstract syntax trees for low-level browser code
FLEXIBILITY
Can act as a compiler target. C/C++ focus for now.
BUT IF IT’S BINARY…DEBUGGING SOUNDS HARD!
You’ll be able to debug using source code
WASM deuxHOW FAST?
No parsing. Compresses smaller than Javascript.
BACKWARDS-COMPATIBLE
No versioning necessary.
SECURE
Security handled same as in Javascript
Workin’ on it
WASM someday (soon hopefully)Garbage collection
Just in time compiling
Thus support for more modern and dynamic languages like Java and C#
Does this kill JavaScript?Short answer:
No.
More on WASMInterview with Brandon Eich on
why we need WebAssembly
Questions and Ramblings
Thank you for your attention!Now go make something great.