Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)

Nicholas Zakas
Nicholas ZakasFront End Guy at Box
Progressive Enhancement 2.0
             Because the Web isn't Print




Nicholas C. Zakas
April 16, 2011
Who's this guy?




         Presentation       Contributor,
           Architect     Creator of YUI Test




Author     Lead Author   Contributor           Lead Author
@slicknet



(Complaints: @reybango)
Used with permission. Copyright 2010 Xtress
http://www.flickr.com/photos/noelboss/4549392694/
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
@paul_irish




              @slicknetsmom
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
A Brief History of
Web Development
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
http://www.flickr.com/photos/marc_smith/447183492/
1993
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
1994
1995
1996
Now
  in
color!
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
1995
Also
         in
       color!
1996
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
"Anyone who slaps a 'this page is best
viewed with Browser X' label on a Web
page appears to be yearning for the bad
old days, before the Web, when you had
very little chance of reading a document
written on another computer, another
word processor, or another network."

                 Tim Berners-Lee, 1996
Graceful Degradation
http://www.digital-web.com/articles/fluid_thinking/
<noscript>
<noscript>Your browser doesn't
support JavaScript. Sucks to be you.
          Bye.</noscript>
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement
http://www.alistapart.com/articles/understandingprogressiveenhancement/
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
http://www.alistapart.com/articles/understandingprogressiveenhancement/
"An escalator can never break;
  it can only become stairs."
       Mitch Hedberg, Comedian




                          http://www.flickr.com/photos/midiman/336647596/
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Behavior
Presentation
  Content
JavaScript
   CSS
  HTML
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
A-Grade




JavaScript
   CSS
  HTML
C-Grade




 HTML
Progressive Enhancement 1.0
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
We're having some problems
Development takes too long



              http://www.flickr.com/photos/athomeinscottsdale/4507847940/
Too many bugs




           http://www.flickr.com/photos/kaibara/4632384645/
http://www.flickr.com/photos/drb62/4990651560/




                                     Our pages are slow
Why?
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
We got confused
Web page : ?
Web sites look like print
Web page : Printed page
1) WEB PAGE : PRINTED PAGE ::

 (a) dairy : diary
 (b) spider : author
 (c) web browser : book
 (d) digital photo : print photo
 (e) cell phone: text message
http://www.flickr.com/photos/chrisschroeder/4096627359/




              Every printed book is exactly the same
We became obsessed with identical experiences
            across all browsers

                          http://www.flickr.com/photos/joanna8555/5554285729/
http://www.flickr.com/photos/denisdervisevic/5327974794/




      People got angry if you suggested otherwise
Quality?
Professional?
Consistency?
Unity of messaging combined
with brand identification while
  setting user expectations
        appropriately?
http://xark.typepad.com/my_weblog/2008/01/bullshit-still.html
1) WEB PAGE : PRINTED PAGE ::

 (a) dairy : diary
 (b) spider : author
                      N
 (c) web browser : book G
          R O
 (d) digital photo : print photo
 (e) cell phone: text message
         W
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
http://www.flickr.com/photos/ramdac/377087239/
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
We started the analogy in the
         wrong spot
Web page : ?
N G
Web page : Printed page

    R O
   W
Web browser : Web page
1) WEB BROWSER : WEB PAGE ::

 (a) telephone : call
 (b) computer : email
 (c) printed book : printed page
 (d) television : television show
 (e) mailbox : letter
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Old browsers are like black & white TVs

                      http://www.flickr.com/photos/stevestein1982/4047834684/
New browsers are like HD TVs
                    http://www.flickr.com/photos/lge/3988988400/
TV already solved this problem
http://www.flickr.com/photos/navdeepraj/504596529/
This would be silly
                       Yet this is what web developers have been doing
http://www.flickr.com/photos/navdeepraj/504596529/
Do web sites need to look exactly
  the same in every browser?
http://dowebsitesneedtolookexactlythesameineverybrowser.com/
Your site SHOULD look different
     in different browsers
Give users an incentive to
        upgrade
Progressive Enhancement 1.0




         JavaScript
            CSS
           HTML
Progressive Enhancement 2.0


    OMG CSS       OMG JS
    Nice CSS      Nice JS
    Base CSS      Base JS
           HTML
Chrome


OMG CSS       Base JS
              OMG
Nice CSS      Base JS
              Nice
Base CSS      Base JS
       HTML
Firefox


              OMG JS
Nice CSS      Base JS
              Nice
Base CSS      Base JS
       HTML
Internet Explorer 9




Nice CSS      Base JS
              Nice
Base CSS      Base JS
       HTML
Internet Explorer 6




Base CSS      Base JS
       HTML
Netscape 4




  HTML
New Browser Capabilities


Rounded Corners              Drag and Drop
Drop Shadows                 Geolocation
Gradients                    Cross-Domain Ajax
Transitions                  Cross-Domain Messaging
Transforms                   Client-Side Data Storage
Multiple Background Images   Canvas/WebGL
The best possible experience
given the device capabilities
Awesome!   OK




                 OK   Bad!
Value




        Effort
Browser Marketshare
     11


 8


                                                       IE6
                                                       IE7
                                                       Others




                           81




          Source: http://marketshare.hitslink.com/browser-market-share.aspx?qprid=2
Development Time Spent



 40
                    IE6 & IE7
                    Others


               60




                                Source: Me
Used with permission. Copyright 2008 BoyShapedBox.
http://www.flickr.com/photos/boyshapedbox/2282655473/
http://www.flickr.com/photos/myphotoshopbrushes/3242490894/
Rounded Corners
Drop Shadows
Gradients

                  Only with CSS
Advanced scripting and
                   behavior


Only with native
     APIs
Long development time

Trying to make
older browsers
do things they were
never meant to do
                         Too many bugs




                           Slow pages
Older browsers often need
           *a lot*
more code to do the same thing
Before                              1467 bytes

<div class="y-pa-app pa-app-view" id="{$id}-app-view">
    <div class="pa-app-chrome-topshadow pa-app-chrome-border-color y-pa-ln-open-dk">
        <div class="pa-app-chrome-leftcorner y-fp-pg-controls"></div>
        <div class="pa-app-chrome-rightcorner y-fp-pg-controls"></div>
    </div>
    <div class="pa-app-chrome-rightshadow">
        <div class="pa-app-chrome-content pa-app-chrome-border-color y-pa-bg-open y-pa-ln-open-dk">
            <div class="pa-app-chrome-hd">
                <ul class="pa-nav">
                    <li>
                         <a role="button" class="pa-close y-fp-pg-controls-nt hide-textindent"
    href="#close" {$closeBeacon2}><!!>STR.PA.EXPANDED.CLOSE</!!></a>
                    </li>
                </ul>
            </div>
            <div class="pa-app-chrome-bd">
                <div class="pa-mod-ctr" id="{$id}-mod-ctr" style="visibility: visible;"></div>
                <div id="{$id}-module-loading-msg" class="y-pa-ln-open-dk pa-module-loading-msg"></div>
                <a role="button" class="pa-close hide-offscreen" href="#close"
    {$closeBeacon2}><!!>STR.PA.EXPANDED.CLOSE</!!></a>
            </div>
        </div>
    </div>
    <div class="pa-app-chrome-bottomshadow y-fp-pg-grad pa-app-chrome-border-color y-pa-ln-open-dk">
        <div class="pa-app-chrome-leftcorner y-fp-pg-controls"></div>
        <div class="pa-app-chrome-rightcorner y-fp-pg-controls"></div>
    </div>
</div>
After                                 566 bytes



<div class="pa-app" id="{$id}-app">
    <button class="do-app-close y-fp-pg-controls-nt hide-textindent"
    {$closeBeacon2}><!!>STR.PA.EXPANDED.CLOSE</!!></button>
    <div class="pa-app-bd">
        <div id="{$id}-mod" class="pa-app-mod"></div>
        <div id="{$id}-module-loading-msg" class="y-pa-ln-open-dk pa-module-loading-msg"></div>
    </div>
    <div class="pa-app-cort"></div>
    <div class="pa-app-corb"></div>
    <button class="do-app-close y-fp-pg-controls-nt hide-textindent"
    {$closeBeacon2}><!!>STR.PA.EXPANDED.CLOSE</!!></button>
</div>
Less code
    =
 Faster
Won't people notice?
Crying baby! Oh nos!




               http://www.flickr.com/photos/tudor/318123668/
What did you see?
Crying baby! Oh nos!




               http://www.flickr.com/photos/tudor/318123668/
Crying baby! Oh nos!




               http://www.flickr.com/photos/tudor/318123668/
Your users only use one browser
You are not alone
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)
Summary
1) WEB BROWSER : WEB PAGE ::

 (a) telephone : call
 (b) computer : email
 (c) printed book : printed page
 (d) television : television show
 (e) mailbox : letter
Progressive Enhancement 1.0




         JavaScript
            CSS
           HTML
Progressive Enhancement 2.0


    OMG CSS       OMG JS
    Nice CSS      Nice JS
    Base CSS      Base JS
           HTML
http://www.flickr.com/photos/navdeepraj/504596529/
@paul_irish




              @slicknetsmom
The End
Etcetera
• My blog:   www.nczonline.net
• Twitter:   @slicknet
• Rate me:   http://spkr8.com/t/7213
1 of 124

Recommended

Keypoints html5 by
Keypoints html5Keypoints html5
Keypoints html5dynamis
29.7K views243 slides
Real World Web Standards by
Real World Web StandardsReal World Web Standards
Real World Web Standardsgleddy
18K views111 slides
Game Development Using HTML 5 by
Game Development Using HTML 5Game Development Using HTML 5
Game Development Using HTML 5osa_ora
2.3K views129 slides
Realize mais com HTML 5 e CSS 3 - 16 EDTED - RJ by
Realize mais com HTML 5 e CSS 3 - 16 EDTED - RJRealize mais com HTML 5 e CSS 3 - 16 EDTED - RJ
Realize mais com HTML 5 e CSS 3 - 16 EDTED - RJLeonardo Balter
1.1K views83 slides
Building an HTML5 Video Player by
Building an HTML5 Video PlayerBuilding an HTML5 Video Player
Building an HTML5 Video PlayerJim Jeffers
84.6K views33 slides
jQuery UI and Plugins by
jQuery UI and PluginsjQuery UI and Plugins
jQuery UI and PluginsMarc Grabanski
6.7K views94 slides

More Related Content

What's hot

High Performance Ajax Applications by
High Performance Ajax ApplicationsHigh Performance Ajax Applications
High Performance Ajax ApplicationsJulien Lecomte
56.7K views42 slides
How to make Ajax work for you by
How to make Ajax work for youHow to make Ajax work for you
How to make Ajax work for youSimon Willison
44.2K views134 slides
HTML5 JS APIs by
HTML5 JS APIsHTML5 JS APIs
HTML5 JS APIsRemy Sharp
47K views76 slides
WordPress and Ajax by
WordPress and AjaxWordPress and Ajax
WordPress and AjaxRonald Huereca
40.5K views67 slides
HTML5 and the dawn of rich mobile web applications pt 1 by
HTML5 and the dawn of rich mobile web applications pt 1HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1James Pearce
7.4K views91 slides
Browser Wars Episode 1: The Phantom Menace by
Browser Wars Episode 1: The Phantom MenaceBrowser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom MenaceNicholas Zakas
77.4K views168 slides

What's hot(20)

High Performance Ajax Applications by Julien Lecomte
High Performance Ajax ApplicationsHigh Performance Ajax Applications
High Performance Ajax Applications
Julien Lecomte56.7K views
How to make Ajax work for you by Simon Willison
How to make Ajax work for youHow to make Ajax work for you
How to make Ajax work for you
Simon Willison44.2K views
HTML5 JS APIs by Remy Sharp
HTML5 JS APIsHTML5 JS APIs
HTML5 JS APIs
Remy Sharp47K views
HTML5 and the dawn of rich mobile web applications pt 1 by James Pearce
HTML5 and the dawn of rich mobile web applications pt 1HTML5 and the dawn of rich mobile web applications pt 1
HTML5 and the dawn of rich mobile web applications pt 1
James Pearce7.4K views
Browser Wars Episode 1: The Phantom Menace by Nicholas Zakas
Browser Wars Episode 1: The Phantom MenaceBrowser Wars Episode 1: The Phantom Menace
Browser Wars Episode 1: The Phantom Menace
Nicholas Zakas77.4K views
State of jQuery '09 by jeresig
State of jQuery '09State of jQuery '09
State of jQuery '09
jeresig18.2K views
Ajax Security by Joe Walker
Ajax SecurityAjax Security
Ajax Security
Joe Walker42.6K views
Taiwan Web Standards Talk 2011 by Zi Bin Cheah
Taiwan Web Standards Talk 2011Taiwan Web Standards Talk 2011
Taiwan Web Standards Talk 2011
Zi Bin Cheah1.4K views
jQuery For Beginners - jQuery Conference 2009 by Ralph Whitbeck
jQuery For Beginners - jQuery Conference 2009jQuery For Beginners - jQuery Conference 2009
jQuery For Beginners - jQuery Conference 2009
Ralph Whitbeck35.6K views
iPhone Web Applications: HTML5, CSS3 & dev tips for iPhone development by Estelle Weyl
iPhone Web Applications: HTML5, CSS3 & dev tips for iPhone developmentiPhone Web Applications: HTML5, CSS3 & dev tips for iPhone development
iPhone Web Applications: HTML5, CSS3 & dev tips for iPhone development
Estelle Weyl31.6K views
Brave new world of HTML5 - Interlink Conference Vancouver 04.06.2011 by Patrick Lauke
Brave new world of HTML5 - Interlink Conference Vancouver 04.06.2011Brave new world of HTML5 - Interlink Conference Vancouver 04.06.2011
Brave new world of HTML5 - Interlink Conference Vancouver 04.06.2011
Patrick Lauke31.1K views
Don't make me wait! or Building High-Performance Web Applications by Stoyan Stefanov
Don't make me wait! or Building High-Performance Web ApplicationsDon't make me wait! or Building High-Performance Web Applications
Don't make me wait! or Building High-Performance Web Applications
Stoyan Stefanov20.6K views

Viewers also liked

Nicholas' Performance Talk at Google by
Nicholas' Performance Talk at GoogleNicholas' Performance Talk at Google
Nicholas' Performance Talk at GoogleNicholas Zakas
4.6K views122 slides
JavaScript Variable Performance by
JavaScript Variable PerformanceJavaScript Variable Performance
JavaScript Variable PerformanceNicholas Zakas
5.2K views13 slides
High Performance JavaScript (Amazon DevCon 2011) by
High Performance JavaScript (Amazon DevCon 2011)High Performance JavaScript (Amazon DevCon 2011)
High Performance JavaScript (Amazon DevCon 2011)Nicholas Zakas
4.6K views155 slides
Responsive interfaces by
Responsive interfacesResponsive interfaces
Responsive interfacesNicholas Zakas
18.2K views36 slides
Test Driven Development With YUI Test (Ajax Experience 2008) by
Test Driven Development With YUI Test (Ajax Experience 2008)Test Driven Development With YUI Test (Ajax Experience 2008)
Test Driven Development With YUI Test (Ajax Experience 2008)Nicholas Zakas
31.1K views73 slides
Mobile Web Speed Bumps by
Mobile Web Speed BumpsMobile Web Speed Bumps
Mobile Web Speed BumpsNicholas Zakas
13.4K views101 slides

Viewers also liked(12)

Nicholas' Performance Talk at Google by Nicholas Zakas
Nicholas' Performance Talk at GoogleNicholas' Performance Talk at Google
Nicholas' Performance Talk at Google
Nicholas Zakas4.6K views
JavaScript Variable Performance by Nicholas Zakas
JavaScript Variable PerformanceJavaScript Variable Performance
JavaScript Variable Performance
Nicholas Zakas5.2K views
High Performance JavaScript (Amazon DevCon 2011) by Nicholas Zakas
High Performance JavaScript (Amazon DevCon 2011)High Performance JavaScript (Amazon DevCon 2011)
High Performance JavaScript (Amazon DevCon 2011)
Nicholas Zakas4.6K views
Test Driven Development With YUI Test (Ajax Experience 2008) by Nicholas Zakas
Test Driven Development With YUI Test (Ajax Experience 2008)Test Driven Development With YUI Test (Ajax Experience 2008)
Test Driven Development With YUI Test (Ajax Experience 2008)
Nicholas Zakas31.1K views
Mobile Web Speed Bumps by Nicholas Zakas
Mobile Web Speed BumpsMobile Web Speed Bumps
Mobile Web Speed Bumps
Nicholas Zakas13.4K views
Progressive Enhancement 2.0 (Conference Agnostic) by Nicholas Zakas
Progressive Enhancement 2.0 (Conference Agnostic)Progressive Enhancement 2.0 (Conference Agnostic)
Progressive Enhancement 2.0 (Conference Agnostic)
Nicholas Zakas42.5K views
Enterprise JavaScript Error Handling (Ajax Experience 2008) by Nicholas Zakas
Enterprise JavaScript Error Handling (Ajax Experience 2008)Enterprise JavaScript Error Handling (Ajax Experience 2008)
Enterprise JavaScript Error Handling (Ajax Experience 2008)
Nicholas Zakas72.5K views
High Performance JavaScript 2011 by Nicholas Zakas
High Performance JavaScript 2011High Performance JavaScript 2011
High Performance JavaScript 2011
Nicholas Zakas10.1K views
Speed Up Your JavaScript by Nicholas Zakas
Speed Up Your JavaScriptSpeed Up Your JavaScript
Speed Up Your JavaScript
Nicholas Zakas17.6K views
Maintainable JavaScript 2012 by Nicholas Zakas
Maintainable JavaScript 2012Maintainable JavaScript 2012
Maintainable JavaScript 2012
Nicholas Zakas90.8K views
Writing Efficient JavaScript by Nicholas Zakas
Writing Efficient JavaScriptWriting Efficient JavaScript
Writing Efficient JavaScript
Nicholas Zakas88.3K views

Similar to Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)

Mobile First Responsive Design by
Mobile First Responsive DesignMobile First Responsive Design
Mobile First Responsive DesignJason Grigsby
6.4K views101 slides
Faster Frontends by
Faster FrontendsFaster Frontends
Faster FrontendsAndy Davies
1.2K views28 slides
Now you see me... Adaptive Web Design and Development by
Now you see me... Adaptive Web Design and DevelopmentNow you see me... Adaptive Web Design and Development
Now you see me... Adaptive Web Design and DevelopmentJonas Päckos
2.8K views117 slides
Stefan Judis "Did we(b development) lose the right direction?" by
Stefan Judis "Did we(b development) lose the right direction?"Stefan Judis "Did we(b development) lose the right direction?"
Stefan Judis "Did we(b development) lose the right direction?"Fwdays
200 views150 slides
Responsive websites. Toolbox by
Responsive websites. ToolboxResponsive websites. Toolbox
Responsive websites. ToolboxWojtek Zając
5.2K views72 slides
Moving from Web 1.0 to Web 2.0 by
Moving from Web 1.0 to Web 2.0Moving from Web 1.0 to Web 2.0
Moving from Web 1.0 to Web 2.0Estelle Weyl
1.7K views42 slides

Similar to Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)(20)

Mobile First Responsive Design by Jason Grigsby
Mobile First Responsive DesignMobile First Responsive Design
Mobile First Responsive Design
Jason Grigsby6.4K views
Faster Frontends by Andy Davies
Faster FrontendsFaster Frontends
Faster Frontends
Andy Davies1.2K views
Now you see me... Adaptive Web Design and Development by Jonas Päckos
Now you see me... Adaptive Web Design and DevelopmentNow you see me... Adaptive Web Design and Development
Now you see me... Adaptive Web Design and Development
Jonas Päckos2.8K views
Stefan Judis "Did we(b development) lose the right direction?" by Fwdays
Stefan Judis "Did we(b development) lose the right direction?"Stefan Judis "Did we(b development) lose the right direction?"
Stefan Judis "Did we(b development) lose the right direction?"
Fwdays200 views
Responsive websites. Toolbox by Wojtek Zając
Responsive websites. ToolboxResponsive websites. Toolbox
Responsive websites. Toolbox
Wojtek Zając5.2K views
Moving from Web 1.0 to Web 2.0 by Estelle Weyl
Moving from Web 1.0 to Web 2.0Moving from Web 1.0 to Web 2.0
Moving from Web 1.0 to Web 2.0
Estelle Weyl1.7K views
Google I/O 2012 - Protecting your user experience while integrating 3rd party... by Patrick Meenan
Google I/O 2012 - Protecting your user experience while integrating 3rd party...Google I/O 2012 - Protecting your user experience while integrating 3rd party...
Google I/O 2012 - Protecting your user experience while integrating 3rd party...
Patrick Meenan3K views
Developing web applications in 2010 by Ignacio Coloma
Developing web applications in 2010Developing web applications in 2010
Developing web applications in 2010
Ignacio Coloma595 views
Adobe & HTML5 by Terry Ryan
Adobe & HTML5Adobe & HTML5
Adobe & HTML5
Terry Ryan1.1K views
Smart Browsers and HTML5 Web Apps for the Chrome Web Store by Seth Ladd
Smart Browsers and HTML5 Web Apps for the Chrome Web StoreSmart Browsers and HTML5 Web Apps for the Chrome Web Store
Smart Browsers and HTML5 Web Apps for the Chrome Web Store
Seth Ladd576 views
Does This Theme Make My Website Look Fat? (Wordcamp SLC 2013) by Adam Dunford
Does This Theme Make My Website Look Fat? (Wordcamp SLC 2013)Does This Theme Make My Website Look Fat? (Wordcamp SLC 2013)
Does This Theme Make My Website Look Fat? (Wordcamp SLC 2013)
Adam Dunford1.6K views
Effective and Efficient Design with CSS3 by Zoe Gillenwater
Effective and Efficient Design with CSS3Effective and Efficient Design with CSS3
Effective and Efficient Design with CSS3
Zoe Gillenwater1.9K views
Responsive Design by David Hudson
Responsive DesignResponsive Design
Responsive Design
David Hudson1.9K views
Web Development for UX Designers by Ashlimarie
Web Development for UX DesignersWeb Development for UX Designers
Web Development for UX Designers
Ashlimarie 38.9K views
Web app and more by faming su
Web app and moreWeb app and more
Web app and more
faming su406 views
Web Apps and more by Yan Shi
Web Apps and moreWeb Apps and more
Web Apps and more
Yan Shi1K views
It's Business Time: Givin' User Experience Love with CSS3 by Denise Jacobs
It's Business Time: Givin' User Experience Love with CSS3It's Business Time: Givin' User Experience Love with CSS3
It's Business Time: Givin' User Experience Love with CSS3
Denise Jacobs11.6K views
CSS3: Are you experienced? by Denise Jacobs
CSS3: Are you experienced?CSS3: Are you experienced?
CSS3: Are you experienced?
Denise Jacobs18.4K views

More from Nicholas Zakas

Enough with the JavaScript already! by
Enough with the JavaScript already!Enough with the JavaScript already!
Enough with the JavaScript already!Nicholas Zakas
260K views84 slides
The Pointerless Web by
The Pointerless WebThe Pointerless Web
The Pointerless WebNicholas Zakas
7K views64 slides
JavaScript APIs you’ve never heard of (and some you have) by
JavaScript APIs you’ve never heard of (and some you have)JavaScript APIs you’ve never heard of (and some you have)
JavaScript APIs you’ve never heard of (and some you have)Nicholas Zakas
51.4K views67 slides
JavaScript Timers, Power Consumption, and Performance by
JavaScript Timers, Power Consumption, and PerformanceJavaScript Timers, Power Consumption, and Performance
JavaScript Timers, Power Consumption, and PerformanceNicholas Zakas
54.4K views128 slides
Scalable JavaScript Application Architecture 2012 by
Scalable JavaScript Application Architecture 2012Scalable JavaScript Application Architecture 2012
Scalable JavaScript Application Architecture 2012Nicholas Zakas
94K views114 slides
High Performance JavaScript (CapitolJS 2011) by
High Performance JavaScript (CapitolJS 2011)High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)Nicholas Zakas
57.5K views125 slides

More from Nicholas Zakas(17)

Enough with the JavaScript already! by Nicholas Zakas
Enough with the JavaScript already!Enough with the JavaScript already!
Enough with the JavaScript already!
Nicholas Zakas260K views
JavaScript APIs you’ve never heard of (and some you have) by Nicholas Zakas
JavaScript APIs you’ve never heard of (and some you have)JavaScript APIs you’ve never heard of (and some you have)
JavaScript APIs you’ve never heard of (and some you have)
Nicholas Zakas51.4K views
JavaScript Timers, Power Consumption, and Performance by Nicholas Zakas
JavaScript Timers, Power Consumption, and PerformanceJavaScript Timers, Power Consumption, and Performance
JavaScript Timers, Power Consumption, and Performance
Nicholas Zakas54.4K views
Scalable JavaScript Application Architecture 2012 by Nicholas Zakas
Scalable JavaScript Application Architecture 2012Scalable JavaScript Application Architecture 2012
Scalable JavaScript Application Architecture 2012
Nicholas Zakas94K views
High Performance JavaScript (CapitolJS 2011) by Nicholas Zakas
High Performance JavaScript (CapitolJS 2011)High Performance JavaScript (CapitolJS 2011)
High Performance JavaScript (CapitolJS 2011)
Nicholas Zakas57.5K views
Maintainable JavaScript 2011 by Nicholas Zakas
Maintainable JavaScript 2011Maintainable JavaScript 2011
Maintainable JavaScript 2011
Nicholas Zakas12.1K views
YUI Test The Next Generation (YUIConf 2010) by Nicholas Zakas
YUI Test The Next Generation (YUIConf 2010)YUI Test The Next Generation (YUIConf 2010)
YUI Test The Next Generation (YUIConf 2010)
Nicholas Zakas3.7K views
High Performance JavaScript (YUIConf 2010) by Nicholas Zakas
High Performance JavaScript (YUIConf 2010)High Performance JavaScript (YUIConf 2010)
High Performance JavaScript (YUIConf 2010)
Nicholas Zakas61.8K views
High Performance JavaScript - Fronteers 2010 by Nicholas Zakas
High Performance JavaScript - Fronteers 2010High Performance JavaScript - Fronteers 2010
High Performance JavaScript - Fronteers 2010
Nicholas Zakas4.2K views
High Performance JavaScript - WebDirections USA 2010 by Nicholas Zakas
High Performance JavaScript - WebDirections USA 2010High Performance JavaScript - WebDirections USA 2010
High Performance JavaScript - WebDirections USA 2010
Nicholas Zakas59.7K views
Performance on the Yahoo! Homepage by Nicholas Zakas
Performance on the Yahoo! HomepagePerformance on the Yahoo! Homepage
Performance on the Yahoo! Homepage
Nicholas Zakas7.9K views
High Performance JavaScript - jQuery Conference SF Bay Area 2010 by Nicholas Zakas
High Performance JavaScript - jQuery Conference SF Bay Area 2010High Performance JavaScript - jQuery Conference SF Bay Area 2010
High Performance JavaScript - jQuery Conference SF Bay Area 2010
Nicholas Zakas47.7K views
Scalable JavaScript Application Architecture by Nicholas Zakas
Scalable JavaScript Application ArchitectureScalable JavaScript Application Architecture
Scalable JavaScript Application Architecture
Nicholas Zakas176.2K views
Extreme JavaScript Compression With YUI Compressor by Nicholas Zakas
Extreme JavaScript Compression With YUI CompressorExtreme JavaScript Compression With YUI Compressor
Extreme JavaScript Compression With YUI Compressor
Nicholas Zakas43.4K views
Maintainable JavaScript by Nicholas Zakas
Maintainable JavaScriptMaintainable JavaScript
Maintainable JavaScript
Nicholas Zakas10.2K views
The New Yahoo! Homepage and YUI 3 by Nicholas Zakas
The New Yahoo! Homepage and YUI 3The New Yahoo! Homepage and YUI 3
The New Yahoo! Homepage and YUI 3
Nicholas Zakas4.7K views

Recently uploaded

Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdf by
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdfAdopting Karpenter for Cost and Simplicity at Grafana Labs.pdf
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdfMichaelOLeary82
13 views74 slides
Generative AI: Shifting the AI Landscape by
Generative AI: Shifting the AI LandscapeGenerative AI: Shifting the AI Landscape
Generative AI: Shifting the AI LandscapeDeakin University
78 views55 slides
Deep Tech and the Amplified Organisation: Core Concepts by
Deep Tech and the Amplified Organisation: Core ConceptsDeep Tech and the Amplified Organisation: Core Concepts
Deep Tech and the Amplified Organisation: Core ConceptsHolonomics
17 views21 slides
"Surviving highload with Node.js", Andrii Shumada by
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada Fwdays
59 views29 slides
Qualifying SaaS, IaaS.pptx by
Qualifying SaaS, IaaS.pptxQualifying SaaS, IaaS.pptx
Qualifying SaaS, IaaS.pptxSachin Bhandari
1.1K views8 slides
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De... by
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...Moses Kemibaro
38 views38 slides

Recently uploaded(20)

Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdf by MichaelOLeary82
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdfAdopting Karpenter for Cost and Simplicity at Grafana Labs.pdf
Adopting Karpenter for Cost and Simplicity at Grafana Labs.pdf
MichaelOLeary8213 views
Deep Tech and the Amplified Organisation: Core Concepts by Holonomics
Deep Tech and the Amplified Organisation: Core ConceptsDeep Tech and the Amplified Organisation: Core Concepts
Deep Tech and the Amplified Organisation: Core Concepts
Holonomics17 views
"Surviving highload with Node.js", Andrii Shumada by Fwdays
"Surviving highload with Node.js", Andrii Shumada "Surviving highload with Node.js", Andrii Shumada
"Surviving highload with Node.js", Andrii Shumada
Fwdays59 views
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De... by Moses Kemibaro
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Don’t Make A Human Do A Robot’s Job! : 6 Reasons Why AI Will Save Us & Not De...
Moses Kemibaro38 views
The Role of Patterns in the Era of Large Language Models by Yunyao Li
The Role of Patterns in the Era of Large Language ModelsThe Role of Patterns in the Era of Large Language Models
The Role of Patterns in the Era of Large Language Models
Yunyao Li104 views
Future of AR - Facebook Presentation by Rob McCarty
Future of AR - Facebook PresentationFuture of AR - Facebook Presentation
Future of AR - Facebook Presentation
Rob McCarty66 views
AIM102-S_Cognizant_CognizantCognitive by PhilipBasford
AIM102-S_Cognizant_CognizantCognitiveAIM102-S_Cognizant_CognizantCognitive
AIM102-S_Cognizant_CognizantCognitive
PhilipBasford23 views
"Node.js Development in 2024: trends and tools", Nikita Galkin by Fwdays
"Node.js Development in 2024: trends and tools", Nikita Galkin "Node.js Development in 2024: trends and tools", Nikita Galkin
"Node.js Development in 2024: trends and tools", Nikita Galkin
Fwdays37 views
The Coming AI Tsunami.pptx by johnhandby
The Coming AI Tsunami.pptxThe Coming AI Tsunami.pptx
The Coming AI Tsunami.pptx
johnhandby14 views
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023 by BookNet Canada
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
Redefining the book supply chain: A glimpse into the future - Tech Forum 2023
BookNet Canada46 views
NTGapps NTG LowCode Platform by Mustafa Kuğu
NTGapps NTG LowCode Platform NTGapps NTG LowCode Platform
NTGapps NTG LowCode Platform
Mustafa Kuğu474 views
AI + Memoori = AIM by Memoori
AI + Memoori = AIMAI + Memoori = AIM
AI + Memoori = AIM
Memoori15 views
Business Analyst Series 2023 - Week 4 Session 7 by DianaGray10
Business Analyst Series 2023 -  Week 4 Session 7Business Analyst Series 2023 -  Week 4 Session 7
Business Analyst Series 2023 - Week 4 Session 7
DianaGray10152 views
Measurecamp Brussels - Synthetic data.pdf by Human37
Measurecamp Brussels - Synthetic data.pdfMeasurecamp Brussels - Synthetic data.pdf
Measurecamp Brussels - Synthetic data.pdf
Human37 27 views
PCCC23:日本AMD株式会社 テーマ2「AMD EPYC™ プロセッサーを用いたAIソリューション」 by PC Cluster Consortium
PCCC23:日本AMD株式会社 テーマ2「AMD EPYC™ プロセッサーを用いたAIソリューション」PCCC23:日本AMD株式会社 テーマ2「AMD EPYC™ プロセッサーを用いたAIソリューション」
PCCC23:日本AMD株式会社 テーマ2「AMD EPYC™ プロセッサーを用いたAIソリューション」

Progressive Enhancement 2.0 (jQuery Conference SF Bay Area 2011)