SlideShare a Scribd company logo
RESS:
An Evolution of Responsive Web Design


Dave Olsen, @dmolsen
WVU University Relations - Web
Refresh Pittsburgh, May 15 2012
slideshare.net/dmolsenwvu
programmer
9 years at wvu
wvu has 30,000 students
What I’ll Talk About
 •The Responsive Age
 •What is RESS
 •Two Server-side Solutions
We’ve entered...
The Responsive Age
http://www.alistapart.com/articles/responsive-web-design/
http://flic.kr/p/9UmsCJ
TABLET WEB   DESKTOP WEB
                           It’s All One Web




MOBILE WEB
http://modernizr.com
http://flic.kr/p/9Qp3A
The client is now in charge
Why Be Responsive




One...


            http://flic.kr/p/5pGcyx
Why Be Responsive




One...
URL.
Why Be Responsive




    One...
Set of Mark-up.
Why Be Responsive




  One...
Deployment.
futurefriend.ly
Time to Party...




                   balloons




                              http://flic.kr/p/h6McT
“Not so fast, my friends...”




                               http://flic.kr/p/8x6b8X
RWD Challenges




  Media...
Images & Video
RWD Challenges




3rd Party Content...
  Ads & Social Widgets
RWD Challenges




One Set of Mark-up...
  Double-edged Sword
Learned the hard way...

                          http://happyholidays.wvu.edu
Standards Process




Standards Process is Evolving
                           http://www.w3.org/community/respimg/
Bridging the Gap




Mind the Gap




                     http://flic.kr/p/638wPy
Existing Solutions




adaptive images website




   http://adaptive-images.com/
Take a New Path




image of a path for showing RESS as a way forward




                                       http://flic.kr/p/7cGN8g
What is RESS?
Responsive Web Design +
  Server Side Components
(I have no idea what becomes of the W, D, or C)
“
In a nutshell, RESS combines adaptive
layouts with server side component
(not full page) optimization. So a
single set of page templates define an
entire Web site for all devices but key
components within that site have
device-class specific implementations
that are rendered server side.
                        - Luke Wroblewski
                          @lukew

      http://www.lukew.com/ff/entry.asp?1392
“
...browser-detection can be used
to help inform an overall responsive
design as opposed to being the be-all-
end-all for templating.
                       - Dave Olsen
                         @dmolsen



          http://bit.ly/wW91Ie
RESS is Good if...




“   •If you want layout adjustments
     across devices.
    •And optimization at the component
     level to increase performance or tune
     user experience.
    •You trust server-side device detection
     with sensible defaults.
                             - Luke Wroblewski
                               @lukew

          http://www.lukew.com/ff/entry.asp?1509
Simple Example:
Swapping a Header & Footer




 Mobile View                Desktop View

    http://www.lukew.com/ff/entry.asp?1392
Simple Example:
Swapping a Header & Footer



       <body>
            {{>header}}
                 [...document content...]
            {{>footer}}
       </body>




   http://www.lukew.com/ff/entry.asp?1392
Simple Example:
Swapping a Header & Footer



       <body>
            {{>header}}
                 [...document content...]
            {{>footer}}
       </body>




   http://www.lukew.com/ff/entry.asp?1392
Simple Example:
Swapping a Header & Footer



           index.html
           header.html
           mobile_header.html
           footer.html
           mobile_footer.html


   http://www.lukew.com/ff/entry.asp?1392
Simple Example:
Swapping a Header & Footer



           index.html
           header.html
           mobile_header.html
           footer.html
           mobile_footer.html


   http://www.lukew.com/ff/entry.asp?1392
M-ADVANCED     DESKTOP WEB
                             ress.dmolsen.com




MOBILE BASIC
RESS is in Its Infancy...




Infancy




                http://flic.kr/p/7B7uyp
Untested




                                   ...and untested.
http://flic.kr/p/nNZRV
U. of Notre Dame Example




ND data




    http://weedygarden.net/2012/05/a-case-for-ress/
Large Screen:
                             136 requests @ 2.7MB



                     ND data




Small Screen:
23 requests @ 291K
                         http://weedygarden.net/2012/05/a-case-for-ress/
bridge




                         We Still Need to Bridge the Gap
http://flic.kr/p/7FyCB2
Designers + Developers?




            developers and designers




                                       http://flic.kr/p/7Ma9n
How Do We Implement RESS?




So how would we implement?




                             http://flic.kr/p/5ATc7g
Skipping RWD




Responsive Web Design is “easy”




                                  http://flic.kr/p/4YM8
Two Possible Solutions



          Server-side
          Solutions
                         http://flic.kr/p/9jatna
#1 Browser Detection
Been Around a While




                         Old dog




http://flic.kr/p/bWQicm
Used Quite a Bit




“        82% of the Alexa 100 top sites use some
         form of server-side mobile device
         detection to serve content on their main
         website entry point.
                                                 - Ronan Cremin
                                                   @xbs



http://www.circleid.com/posts/20120111_analysis_of_server_side_mobile_web_detection/
Lots of Solutions




WURFL
  51Degrees.mobi
     OpenDDR
         DeviceAtlas
Personal Fav*: ua-parser

              node.js, Python, PHP, & Ruby libraries
                 built upon a standard YAML file




* - I help maintain the project ;)          https://github.com/tobie/ua-parser/
Arms Race?




             http://flic.kr/p/6RVLY2
Server-side Feature
#2 Detection
Also in Its Infancy...




Infancy




                     http://flic.kr/p/7B7uyp
Untested




                                   ...and untested.
http://flic.kr/p/nNZRV
Can be Simple or Complex




 Taking a Cue from Front-End Dev
Server-side Future Friendly?
Server-side Breakpoints




320px



        640px




                    960px
Server-side Breakpoints


Simple Example:
Setting a file path based
on window.innerWidth
<script type="text/javascript">

     function writeCookie(name, value) { //cookie code }

     // store the innerWidth of the window in a cookie
     writeCookie("RESS", window.innerWidth);

</script>




            http://www.netmagazine.com/tutorials/getting-started-ress
Simple Example:
Setting a file path based
on window.innerWidth
<?php

     // grab the cookie value
     $screenWidth = $_COOKIE[‘RESS’];

     // set the img path var
     if ($screenWidth <= 320) {
        $imgPath = “320”;
     } else if ($screenWidth < 960) {
        $imgPath = “640”;
     } else {
        $imgPath = “960”;
     }

     // print out our image link
     print “<img src=‘/rwd/images/”.$imgPath.”/car.jpg’ alt=‘Car’ />”;

?>


            http://www.netmagazine.com/tutorials/getting-started-ress
Robust Feature Detection




         http://detector.dmolsen.com
Robust Feature Detection

Simple Example:
Inserting a video link
<?php

     // require Detector to identify browser & populate $ua
     require("lib/Detector/Detector.php");

     $html5Embed = "<iframe {...} ></iframe>";
     $simpleLink = "Your browser doesn't appear to support HTML5. {...}";

     // use the $ua properties to switch
     if ($ua->video->h264 || $ua->video->webm) {
!       print $html5Embed;
     } else {
!       print $simpleLink;
!    }

?>


                   http://detector.dmolsen.com/demo/ytembed/
Robust Feature Detection

Complicated Example:
Templates Using Detector & Mustache




        http://ress.dmolsen.com & click “Learn more...”
RESS Challenges




RESS isn’t a silver bullet.
    (anymore than RWD is)
RESS Challenges




Server-side feature detection
      can be spoofed.
RESS Challenges




Requires server-side languages.
RESS Challenges




   Data needs to be
separated from layout.
RESS Challenges




“   It is not only the design of the web site
    and the layout of content that needs to
    be adapted or enhanced; the idea of
    being responsive, adaptive and
    enhancing, must be implemented in
    the whole value chain.
                             - Jon Arnes Sæterås
                               @jonarnes


    http://mpulp.mobi/2011/05/next-steps-of-responsive-web-design/
The


The evolution of web development continues...

                         of Web
                         Development
                         Continues
                                     http://flic.kr/p/3Q4To4
Questions or comments?
On Twitter @dmolsen...
Or at dmolsen.com...
Thank You

More Related Content

PDF
The Server Side of Responsive Web Design
PPT
Mobile Information Architecture
PDF
Mobile First Responsive Web Design — BD Conf Oct 2013
PDF
Dreamweaver CS6, jQuery, PhoneGap, mobile design
ODP
Responsive Web Design - but for real!
PDF
Responsive Design
PDF
10 Simple Rules for Making My Site Accessible
PDF
Introduction to Responsive Web Design
The Server Side of Responsive Web Design
Mobile Information Architecture
Mobile First Responsive Web Design — BD Conf Oct 2013
Dreamweaver CS6, jQuery, PhoneGap, mobile design
Responsive Web Design - but for real!
Responsive Design
10 Simple Rules for Making My Site Accessible
Introduction to Responsive Web Design

What's hot (20)

PDF
State of jQuery '09
PDF
Responsive Web Design: Clever Tips and Techniques
PPTX
Web Standards And Protocols
PDF
There Are No “Buts” in Progressive Enhancement [Øredev 2015]
PPT
Optimizing Sites for Mobile Devices
PDF
Beyond Responsive [18F 2015]
PDF
Planning Adaptive Interfaces [RWD Summit 2016]
PDF
Responsive Websites
PPTX
Web Development
PDF
Style Guides Are The New Photoshop (Fronteers 2012)
PDF
Now you see me... Adaptive Web Design and Development
ODP
Accessibility with WordPress
PDF
Responsive Design in the Real World
PPTX
Make JavaScript Faster
PDF
Responsive & Responsible Web Design in DNN
PPTX
ClassicPress / WordPress
PDF
Top 100 wordpress plugins
PDF
Stop reinventing the wheel: Build Responsive Websites Using Bootstrap
PDF
CSS Tricks for WordPress - WordCamp Phoenix
PPTX
Web Application Development Process presented by @Cygnismedia
State of jQuery '09
Responsive Web Design: Clever Tips and Techniques
Web Standards And Protocols
There Are No “Buts” in Progressive Enhancement [Øredev 2015]
Optimizing Sites for Mobile Devices
Beyond Responsive [18F 2015]
Planning Adaptive Interfaces [RWD Summit 2016]
Responsive Websites
Web Development
Style Guides Are The New Photoshop (Fronteers 2012)
Now you see me... Adaptive Web Design and Development
Accessibility with WordPress
Responsive Design in the Real World
Make JavaScript Faster
Responsive & Responsible Web Design in DNN
ClassicPress / WordPress
Top 100 wordpress plugins
Stop reinventing the wheel: Build Responsive Websites Using Bootstrap
CSS Tricks for WordPress - WordCamp Phoenix
Web Application Development Process presented by @Cygnismedia
Ad

Viewers also liked (20)

PDF
Beyond Responsive Web Design
PDF
Design Process in the Responsive Age
PDF
Character creator
PPTX
Service Design: Beyond Customer Journey Mapping
DOC
Sio 2009 Eq5 L13 Tra Gold Cap11 Int
PDF
Cloud and Grids
PDF
(Practical) Beyond Responsive Web Design (WordCamp Miami 2011)
PDF
Grids in Web Design
PDF
Deconstructing delight
PDF
40 web design trends in 2015
PDF
Grid system introduction
PDF
Structuring Content, Restructuring Organizations - CS Forum 2012
PDF
To Boldly Go… From Information to Understanding
PDF
Accessible Responsive Web Design
PDF
Web Design Trends for 2014
PDF
Managing the Content Process
PDF
Meet the grids - Web design using Grids
ODP
Grid Based Layout
PDF
Grid Systems: Building Blocks to a Better User Experience
KEY
Grids In Modern Web Design
Beyond Responsive Web Design
Design Process in the Responsive Age
Character creator
Service Design: Beyond Customer Journey Mapping
Sio 2009 Eq5 L13 Tra Gold Cap11 Int
Cloud and Grids
(Practical) Beyond Responsive Web Design (WordCamp Miami 2011)
Grids in Web Design
Deconstructing delight
40 web design trends in 2015
Grid system introduction
Structuring Content, Restructuring Organizations - CS Forum 2012
To Boldly Go… From Information to Understanding
Accessible Responsive Web Design
Web Design Trends for 2014
Managing the Content Process
Meet the grids - Web design using Grids
Grid Based Layout
Grid Systems: Building Blocks to a Better User Experience
Grids In Modern Web Design
Ad

Similar to RESS: An Evolution of Responsive Web Design (20)

PPTX
Responsivedesign 7-3-2012
PDF
Measuring Web Performance
PPTX
PPT
Testable client side_mvc_apps_in_javascript
PDF
Two approaches to RWD: Pure & Hybrid. Brendan Falkowski
PDF
Web Development for UX Designers
PDF
Measuring Web Performance - HighEdWeb Edition
PDF
Demystifying web performance tooling and metrics
PDF
Use Web Skills To Build Mobile Apps
ODP
DiUS Computing Lca Rails Final
PDF
Web app and more
PDF
Web Apps and more
PDF
resume_2016_low_rez
PDF
WordCamp Atlanta - April 15 2018 - dev team workflow and processes with word...
PDF
Optimizing web performance (Fronteers edition)
PDF
LA RubyConf 2009 Waves And Resource-Oriented Architecture
PPT
State of modern web technologies: an introduction
PPTX
Introduction to Client Side Dev in SharePoint Workshop
PDF
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
PDF
Put a little Backbone in your WordPress vs. 3
Responsivedesign 7-3-2012
Measuring Web Performance
Testable client side_mvc_apps_in_javascript
Two approaches to RWD: Pure & Hybrid. Brendan Falkowski
Web Development for UX Designers
Measuring Web Performance - HighEdWeb Edition
Demystifying web performance tooling and metrics
Use Web Skills To Build Mobile Apps
DiUS Computing Lca Rails Final
Web app and more
Web Apps and more
resume_2016_low_rez
WordCamp Atlanta - April 15 2018 - dev team workflow and processes with word...
Optimizing web performance (Fronteers edition)
LA RubyConf 2009 Waves And Resource-Oriented Architecture
State of modern web technologies: an introduction
Introduction to Client Side Dev in SharePoint Workshop
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
Put a little Backbone in your WordPress vs. 3

More from Dave Olsen (20)

PDF
Taking Your HTML Email Communications from "Ew" to "Wow"
PDF
The Google Marketing Workflow Workshop
PDF
Building an Academic Program Database and API with Contentful and Amazon Web ...
PDF
Reimagining Your Website: What are prospective students looking for and how a...
PDF
Progressive Mobile Strategy Redux: The Future Friendly Enterprise
PDF
Case Study: Rebuilding an Admissions Web Presence
PDF
Admissions Brain Dump
PDF
Implementing Brand Patterns
PDF
The Death of Lorem Ipsum and Pixel-Perfect Content (MinneWebCon version)
PDF
Case Study: Automating Outage Monitoring & Communication
PDF
The Death of Lorem Ipsum & Pixel Perfect Content
PDF
The Why and What of Pattern Lab
PDF
The Squishy Future of Content - HEEMAC Edition
PDF
The What & Why of Pattern Lab
PDF
The Squishy Future of Content - Key Communicators Edition
PDF
The Squishy Future of Content - Penn State Edition
PDF
The Squishy Future of Content
PDF
Web Performance & You - HighEdWeb Arkansas Version
PDF
Web Performance & You
PDF
Measuring Web Performance (HighEdWeb FL Edition)
Taking Your HTML Email Communications from "Ew" to "Wow"
The Google Marketing Workflow Workshop
Building an Academic Program Database and API with Contentful and Amazon Web ...
Reimagining Your Website: What are prospective students looking for and how a...
Progressive Mobile Strategy Redux: The Future Friendly Enterprise
Case Study: Rebuilding an Admissions Web Presence
Admissions Brain Dump
Implementing Brand Patterns
The Death of Lorem Ipsum and Pixel-Perfect Content (MinneWebCon version)
Case Study: Automating Outage Monitoring & Communication
The Death of Lorem Ipsum & Pixel Perfect Content
The Why and What of Pattern Lab
The Squishy Future of Content - HEEMAC Edition
The What & Why of Pattern Lab
The Squishy Future of Content - Key Communicators Edition
The Squishy Future of Content - Penn State Edition
The Squishy Future of Content
Web Performance & You - HighEdWeb Arkansas Version
Web Performance & You
Measuring Web Performance (HighEdWeb FL Edition)

Recently uploaded (20)

PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
DOCX
The AUB Centre for AI in Media Proposal.docx
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Network Security Unit 5.pdf for BCA BBA.
PDF
Spectral efficient network and resource selection model in 5G networks
PPTX
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
PDF
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
PDF
Empathic Computing: Creating Shared Understanding
PDF
CIFDAQ's Market Insight: SEC Turns Pro Crypto
PDF
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
PPTX
A Presentation on Artificial Intelligence
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
PPTX
Cloud computing and distributed systems.
PDF
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
PPTX
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
PDF
Approach and Philosophy of On baking technology
PDF
cuic standard and advanced reporting.pdf
PDF
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
The AUB Centre for AI in Media Proposal.docx
Unlocking AI with Model Context Protocol (MCP)
Network Security Unit 5.pdf for BCA BBA.
Spectral efficient network and resource selection model in 5G networks
KOM of Painting work and Equipment Insulation REV00 update 25-dec.pptx
Shreyas Phanse Resume: Experienced Backend Engineer | Java • Spring Boot • Ka...
Empathic Computing: Creating Shared Understanding
CIFDAQ's Market Insight: SEC Turns Pro Crypto
Bridging biosciences and deep learning for revolutionary discoveries: a compr...
A Presentation on Artificial Intelligence
Mobile App Security Testing_ A Comprehensive Guide.pdf
Detection-First SIEM: Rule Types, Dashboards, and Threat-Informed Strategy
Cloud computing and distributed systems.
How UI/UX Design Impacts User Retention in Mobile Apps.pdf
VMware vSphere Foundation How to Sell Presentation-Ver1.4-2-14-2024.pptx
Approach and Philosophy of On baking technology
cuic standard and advanced reporting.pdf
Architecting across the Boundaries of two Complex Domains - Healthcare & Tech...

RESS: An Evolution of Responsive Web Design