Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Best viewed with...

Best viewed with...

Are we doomed to see history repeat itself? Is our fascination with new tools going to break the inherent robustness of the web we know? Or, can these new tools help us progressively enhance the web even further than we are able to now?

My aim is to take a look at the current state of the web and whether progressive enhancement is still plausible. Looking beyond whether a website works with JavaScript turned off or not. Instead looking at what new tools can offer and especially what game changing software is coming in the near future.

Adam Onishi

May 21, 2015
Tweet

More Decks by Adam Onishi

Other Decks in Technology

Transcript

  1. @onishiweb Chrome Firefox IE Safari Opera UC Browser Safari (iOS)

    Opera Mini Android Browser Amazon Silk YaBrowser Maxthon Iron Nokia Browser Sea Monkey Avant Camino Epiphany OmniWeb Konqueror Galeon Swiftfox
  2. @onishiweb Chrome (v42) • Fetch API • Push API •

    ES6 Classes IE (v11) • CSS Pointer events • WebGL • ES6 Classes Firefox (v38) • Web sockets/web workers • <picture> and srcset Safari (v8) • Navigation Timing API • SPDY Protocol • Animated PNG
  3. @onishiweb “JavaScript is part of the web platform; you don’t

    get to take it away and expect the web to work.” - Tom Dale http://bit.ly/tom-dale-web-platform
  4. @onishiweb “Be conservative in what you do, be liberal in

    what you accept from others” - Robustness principle http://en.wikipedia.org/wiki/Robustness_principle
  5. @onishiweb Chrome Firefox IE Safari Opera UC Browser Safari (iOS)

    Opera Mini Android Browser Amazon Silk YaBrowser Maxthon Iron Nokia Browser Sea Monkey Avant Camino Epiphany OmniWeb Konqueror Galeon Swiftfox
  6. @onishiweb “Think of it like a pair of glasses for

    your aging browser.” - FT Labs Polyfill service
  7. @onishiweb “The love we give [old browsers] is really bordering

    on necrophilia at times.” - Christian Heilmann
  8. @onishiweb “Brilliant easter egg in the newly- redesigned nasa.gov —

    if JavaScript fails, you are immersed in the experience of deep space” - Jeremy Keith
  9. @onishiweb “The more you take over from the browser, the

    more complex yet expected browser behaviour you have to reimplement in JavaScript” - Jake Archibald http://jakearchibald.com/2013/progressive-enhancement-still-important/
  10. @onishiweb “The bottom line is that a client-side architecture leads

    to slower performance because most of the code is being executed on our users’ machines rather than our own” - Twitter https://blog.twitter.com/2012/improving-performance-on-twittercom
  11. @onishiweb “Put the new gocardless.com live today. It's the same

    site but run from static files generated from a server running React.” - Jack Franklin, Go Cardless
  12. @onishiweb “If you visit it in a "good" browser with

    JS on, you get an incredibly snappy React app, if not, you hit the server on every click.” - Jack Franklin, Go Cardless
  13. @onishiweb “A service worker is a script that is run

    by your browser in the background, separate from a web page, opening the door to features which don't need a web page or user interaction.” - Matt Gaunt http://www.html5rocks.com/en/tutorials/service-worker/introduction/
  14. @onishiweb Go to network Subsequent visits Service worker intercepts Check

    cache Request Page load Usable website Get content
  15. @onishiweb “I'll be more interested in JS rendering once it

    can be streamed from a [Service Worker] …” - Jake Archibald
  16. @onishiweb “Growing divide between what the web is capable of

    & its power (universal access) makes progressive enhancement more important than ever—not less” - Tim Kadlec