Hello NLHTML5!
The Web or Bust
About me
- Szmozsanszky Istvan “Flaki”
- JS dev, HW hacker, Inline Skater
- Mozilla, Tessel Project, Skylark.ee
- @slsoftworks
Mobile is eating the world
It really is
Why?
Stuff is becoming fast
"The iPhone 7 scores better on both single- and multi-core than any MacBook Airs ever made, and performs comparably to a 2013 MacBook Pro.
…and small. Cheap, too.
PINE64 PADI IoT StampCortex M3, 83MHz - $1.99
BUT the web is losing to native on mobile
Why… how?
JavaScript is on it’s way to world domination
and it’s even conquering wearables
Pebble Time
and IoT in general
The ESP8266 microcontroller is capable of running an "Espruino" JavaScript-enabled MCU firmware – and is a wifi-accessible device that costs less than $5.
Okay, so it’s not JavaScript, BUT THEN WHY?
UX
Especially end-user user experience.
Native’s perks
Native is traditionally better at
- Hardware, sensor access
- performance
- offline capabilities
The Crisis of the web platform
The web platform is facing a huge crisis. Peter Gasston’s reflections are a nice read here.
Let’s zoom out a bit
Speaking of Peter Gasston, he’s not new to the woes of “web versus native apps”.
Surveying the Landscape – Slides / Blogpost
Okay, I’m Team Native anyway, why should I care?
Platform lock-in
Walled gardens
Privacy
Privacy
Exposure of a plethora of personally-identifiable datapoints
Stealing other “nice” ideas from the web
You know who did that first?
The cookie did that…
Okay, so now you are saying we need to take back the web on mobile? How?
Freaking out
Canvas-rendered mobile web apps
Uber
Battery API
Too hard fix for dubious returns
The Battery API has proven too hard to fix, and having dubious returns in terms of usefulness.
Lukasz Olejnik has a security review.
The spectre of fingerprinting on the web (as well)
Access
(a.k.a.) Gatekeepers
Content Gatekeepers
It’s not just giving up your revenue, Pebble folks learned the perils of developing for owned platforms first-hand, upon the release of their Pebble Time smartwatch.
Dash
…as did the creator of Dash.
It’s a risk
Surrendering that control to the platform owner is a risk, and it pops up every step of the way - such as with React Native’s flavor of code exectution, which is still a “grey area”.
On the web?
A platform – not owned:
Uber goes mobile Web
No wonder, the web is much easier accessed.
..so is the web all dandy?
AMP - some webby gatekeeping
I’m trying really hard here, okay?!
PWA?
Installing
Installing
Comedy gold - but sometimes reality trumps comedy
- Streaming apps on Android
- Deep linking …are all great example of native platforms borrowing perks the web already has.
So hey! You don’t really need Dash!
devdocs.io is a very capable browser-based documentation service that takes its content from open-source/free sources and packages them in an easy-to-use, offline-capable web application.
A “Progressive Web App”?
Fully offline capable
So PWA – what are they?
- A set of technologies & new web APIs
- Offline-capable web applications
- Native-like user experience
Unleash the API
Access to user data - good or evil?
- Google Analytics
- Facebook Like Button
We have tried this before… why now?
- Original iPhone
- Firefox OS
- WebOS …all failed. Alex Russell has an even longer list. What makes this time different then?
It’s just the web
Soledad Penades refers to them in a blogpost as "proper webapps" This is how the web should have been done from the get-go.
…the Web on Steroids
The web has some pretty cool properties:
- The web is Universal – for devices of various shape and form.
- The web is Accessible – for Users and developers.
And because PWA is “just the web”, it respects all that. It’s basically just a “Website on Steroids” (as put by Alex Russell).
Captain America of the web
Progressive Web Apps should be regarded as “the perfect embodiment of what the web is capable of”
Keepin' It Real (webby)
As “Progressive Web App”-s become more and more app-like, they start facing issues similar to those one already needs to consider while building native apps.
- download size
- trade-offs of performance & webbiness
Human-to-computer interaction
- Punchcards
- Keyboards
- Mice
- Touch
What’s Next?
Interactions between things
- Physical web advantage
- Websites are “things”, too! Just “Virtual Things”!
- Links
Controversies
any effort to address the mobile gap must be welcomed, even if it falls short of perfection. We should be careful, however, not to sacrifice the best parts of the web in the process.
To link or not to link?
In (Web)VR
Safari
There’s no Malicious Apple, no Evil Microsoft
I wish I could send a Screenshot of this Event back in time. People would not believe me :)
But…
- Vendor lock-in, walled gardens
- Using market power to unfair advantage
- Privacy misconducts are very real.
It’s our choice what we do about them.
Native apps are currently the best way to interact with a platform
but that doesn’t mean they’ll always be the best way of interacting
with a platform.
- Multiple accounts
- Multiple tabs
- Search for a tweet