Slide 1

Slide 1 text

Does Progressive Enhancement Still Matter? Saturday, April 6, 13

Slide 2

Slide 2 text

Progressive Enhancement Progressive Enhancement refers to a methodology of building web sites and applications that allows for the maximum possible usability for users across all browsers, while rewarding users of more modern browsers with enhanced features. Features that may not be supported on older browsers, but do not break the experience when missing - just "enhance" the experience when present. Saturday, April 6, 13

Slide 3

Slide 3 text

.somediv { ! width: 90%; height: auto; ! border-radius: 8px; ! box-shadow: 0px 1px 2px rgba(0,0,0,.4); ! background-image: linear-gradient(left top, white, #dddddd); } IE8: Ruh Roh... Saturday, April 6, 13

Slide 4

Slide 4 text

.somediv { ! width: 90%; height: auto; ! border-radius: 8px; ! box-shadow: 0px 1px 2px rgba(0,0,0,.4); background-color: rgb(237,237,237); background-color: rgba(255,255,255,.75); ! background-image: linear-gradient(left top, white, #dddddd); } With basic fallbacks. Saturday, April 6, 13

Slide 5

Slide 5 text

.somediv { ! width: 90%; height: auto; ! border-radius: 8px; ! box-shadow: 0px 1px 2px rgba(0,0,0,.4); background-color: rgb(237,237,237); background-color: rgba(255,255,255,.75); ! background-image: linear-gradient(left top, white, #dddddd); } With basic fallbacks, and conditional classes. .lte8 .somediv { ! box-sizing: border-box; ! border: 1px solid #bbbbbb; Saturday, April 6, 13

Slide 6

Slide 6 text

:-) Saturday, April 6, 13

Slide 7

Slide 7 text

The Problem Saturday, April 6, 13

Slide 8

Slide 8 text

1. The “New & Shiny” 2. User Assumptions Saturday, April 6, 13

Slide 9

Slide 9 text

The New & Shiny Saturday, April 6, 13

Slide 10

Slide 10 text

The New & Shiny The temptation is to get so caught up in all the new developments of the web that are going on around us and being touted on Twitter all the time, that we start to get bored with the standard development best practices and want to push the envelope a little…or a lot. Characterized by: Over-reliance on vendor prefixes, HTML5 APIs, unfinished specs. Saturday, April 6, 13

Slide 11

Slide 11 text

User Assumptions “Nobody uses Internet Explorer anymore.” ಠ_ಠ Saturday, April 6, 13

Slide 12

Slide 12 text

User Assumptions As developers, we tend to like data-driven decision. But we don't live in a vacuum, and most of us are part of companies or teams that are made up of more than just developers. What happens in these situations is often when we have the data, it doesn't get to inform decisions as much as it should. Characterized by: Not taking time to actually research user attributes. Saturday, April 6, 13

Slide 13

Slide 13 text

So What? Saturday, April 6, 13

Slide 14

Slide 14 text

You Can Do It! Saturday, April 6, 13

Slide 15

Slide 15 text

Best Practices Saturday, April 6, 13

Slide 16

Slide 16 text

1. Basic content and functionality should be available in some form to all users. - Semantic, content based markup Best Practices Saturday, April 6, 13

Slide 17

Slide 17 text

1. Basic content and functionality should be available in some form to all users. - Semantic, content based markup 2. Enhancements to visual user experience (layout, design, interface4) implemented through external stylesheets - Providing fallbacks for browsers lacking support for advanced CSS techniques methods, or with javascript disabled Best Practices Saturday, April 6, 13

Slide 18

Slide 18 text

1. Basic content and functionality should be available in some form to all users. - Semantic, content based markup 2. Enhancements to visual user experience (layout, design, interface4) implemented through external stylesheets - Providing fallbacks for browsers lacking support for advanced CSS techniques methods, or with javascript disabled 3. Enhancements to functional user experience (behavior) implemented through external, unobtrusive JavaScript - Providing fallbacks for browsers with JavaScript disabled Best Practices Saturday, April 6, 13

Slide 19

Slide 19 text

1. Basic content and functionality should be available in some form to all users. - Semantic, content based markup 2. Enhancements to visual user experience (layout, design, interface4) implemented through external stylesheets - Providing fallbacks for browsers lacking support for advanced CSS techniques methods, or with javascript disabled 3. Enhancements to functional user experience (behavior) implemented through external, unobtrusive JavaScript - Providing fallbacks for browsers with JavaScript disabled 4. End user browser preferences are respected. Best Practices Saturday, April 6, 13

Slide 20

Slide 20 text

Thanks! @jglovier Saturday, April 6, 13