SlideShare a Scribd company logo
Real progressive
enhancement




                            Chris&an Heilmann
                   FOWA, London, October 2010
HTML5
Beware of truisms!
HTML5 does not
mean building apps
for iPad, iPhone and
Android.
Staying in the
comfort zone.
Building for the web
means open
development.
Fowa2010 progressive-enhancement
http://icant.co.uk/articles/seven-rules-of-
unobtrusive-javascript/
http://www.zhuoqun.net/html/y2008/1103.html
Easy YouTube




 http://www.youtube.com/watch?v=CwsDKaalgq8&
 http://www.youtube.com/watch?v=QiuT0y0KR6I
“   You can leave now - I don’t
    need you any longer to watch
    my videos!
                                   “
Fowa2010 progressive-enhancement
Fowa2010 progressive-enhancement
Fowa2010 progressive-enhancement
Fowa2010 progressive-enhancement
HTML5 means
moving from hacks
to web applications.
The web is a scary
place.
A constantly
upgrading web?
IE6+Large Organisations=BFF




http://www.hmg.gov.uk/epetition-responses/petition-view.aspx?epref=ie6upgrade
Complex software will always have
vulnerabilities and motivated
adversaries will always work to
discover and take advantage of
them.  There is no evidence that
upgrading away from the latest
fully patched versions of Internet
Explorer to other browsers will
make users more secure.
It is not straightforward for HMG
departments to upgrade IE versions
on their systems.  Upgrading these
systems to IE8 can be a very large
operation, taking weeks to test and
roll out to all users.
To test all the web applications
currently used by HMG departments
can take months at significant
potential cost to the taxpayer. It is
therefore more cost effective in
many cases to continue to use IE6
and rely on other measures, such as
firewalls and malware scanning
software, to further protect public
sector internet users.
Fowa2010 progressive-enhancement
And this is why we
need progressive
enhancement.
Which is not
“making it work for
IE6”.
Instead it is “test for
support before you
apply”
http://www.modernizr.com/

http://github.com/phiggins42/has.js
[geomaker]


  http://icant.co.uk/geomaker/index.php
http://uk-house-prices.com/
For a lot of new
developers, this
looks like extra
effort.
Instead we produce low
quality fallbacks.
New technologies
can be safely
applied with a few
lines of code.
Take local storage
for example. 15MB
cookies!
http://github.com/codepo8/firehose-research/
Fowa2010 progressive-enhancement
We built all these
cool widgets...
Fowa2010 progressive-enhancement
Wouldn’t it be great
to just be able to
use them?
Fowa2010 progressive-enhancement
http://express.davglass.com/
node.js + express.js
+ YUI3 = Progressive
Enhancement win!
http://www.yuiblog.com/blog/2010/09/29/video-glass-node/
Even more
interesting - today’s
widgets are already
tomorrow’s native
controls.
<datalist>

               type=”color”


type=”range”




                type=”file”

 type=”date”
Re-use of learnings.
CSS3
  Animation
     and
      Transition
Fowa2010 progressive-enhancement
On-demand loading
allows for enhanced
support without
overhead.
YUI’s intrinsic Loader now supports 
capability‐based loading. 
We’re leveraging this new feature to 
avoid shipping IE‐specific code in the 
Dom module to non‐IE browsers, a 
performance/k‐weight boost that will 
benefit all users of modern browsers 
with no code change required.
      http://www.yuiblog.com/blog/2010/07/26/3-2-0pr1/
Last but not least, it
is time to think
about our
development stack.
http://revdancatt.com/2010/09/27/a-users-guide-to-
websites-part-1-if-it-wasnt-broken-why-fix-it-2/
http://yuiblog.com/crockford/   “Loopage”
The future of web
apps is being
forged right now.
Be part of the
movement for a
better web for all.
Come and talk to
us, to Google, to
Apple, to Mozilla, to
Opera, to
Microsoft...
Your input matters!
Christian Heilmann
http://wait-till-i.com        Thanks!
http://developer-evangelism.com
http://twitter.com/codepo8

More Related Content

Fowa2010 progressive-enhancement