<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
    xmlns:content="http://purl.org/rss/1.0/modules/content/"
    xmlns:wfw="http://wellformedweb.org/CommentAPI/"
    xmlns:dc="http://purl.org/dc/elements/1.1/"
    xmlns:atom="http://www.w3.org/2005/Atom"
    xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    >

<channel>
    <title>Webmonkey &#187; Responsive Design</title>
    <atom:link href="http://www.webmonkey.com/category/responsive-design-2/feed/" rel="self" type="application/rss+xml" />
    <link>http://www.webmonkey.com</link>
    <description>The Web Developer&#039;s Resource</description>
    <lastBuildDate>Mon, 06 May 2013 17:29:19 +0000</lastBuildDate>
    <language>en-US</language>
    <sy:updatePeriod>hourly</sy:updatePeriod>
    <sy:updateFrequency>1</sy:updateFrequency>
    <generator>http://wordpress.org/?v=3.4.2</generator>
    
    <item>
        <title>The Two Flavors of a &#8216;One Web&#8217; Approach: Responsive vs. Adaptive</title>
        <link>http://www.webmonkey.com/2013/05/the-two-flavors-of-a-one-web-approach-responsive-vs-adaptive/</link>
        <comments>http://www.webmonkey.com/2013/05/the-two-flavors-of-a-one-web-approach-responsive-vs-adaptive/#comments</comments>
        <pubDate>Mon, 06 May 2013 13:28:00 +0000</pubDate>

                <dc:creator>Igor Faletski</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=61793</guid>
        		<category><![CDATA[Responsive Design]]></category>
		<category><![CDATA[Visual Design]]></category>
        <description><![CDATA[﻿[Editor's note: The following is a guest post from Igor Faletski, CEO of Mobify, which provides tools for adapting web sites for smartphones and tablets.] You&#8217;ve probably heard people say we&#8217;re living in a &#8220;post-PC world.&#8221; What does that mean for web developers? It means that 30% to 50% of your website’s traffic now comes [...]]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_53661" class="wp-caption alignleft" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2012/01/tablets.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2012/01/tablets.jpg" alt="" title="tablets" width="580" height="434" class="size-full wp-image-53661" /></a><p class="wp-caption-text">A handful of the many screens your website must handle. <em>Photo: Ariel Zambelich/Wired.com</em></p></div>﻿[<strong><em>Editor's note: The following is a guest post from Igor Faletski, CEO of <a href="http://www.mobify.com/">Mobify</a>, which provides tools for adapting web sites for smartphones and tablets.</em></strong>]</p>
<p>You&#8217;ve probably heard people say we&#8217;re living in a &#8220;post-PC world.&#8221; What does that mean for web developers? It means that 30% to 50% of your website’s traffic now comes from mobile devices. It means that soon, desktop and laptop users will be in a minority on the web. </p>
<p>How do we deal with this tectonic shift in user behavior? We’ve moved beyond the era of m-dot or t-dot hacks, into one where responsive and adaptive design techniques rule the day &#8212; what the W3C calls a <a href="http://www.w3.org/TR/mobile-bp/#OneWeb">One Web approach</a>. The key part of the W3C&#8217;s recommendation is that &#8220;One Web means making, as far as is reasonable, the same information and services available to users irrespective of the device they are using.&#8221;</p>
<p>For developers that means that taking a One Web approach ensures that not only does your site work on the smartphones and tablets of today, but it can be future-proofed for the unimagined screens of tomorrow.</p>
<p>There are currently three popular approaches to developing a One Web site: using a <a href="http://www.webmonkey.com/2013/01/take-responsive-design-beyond-media-queries/">responsive design</a>; client-side adaptive designs; and server-side adaptive designs. </p>
<p>One is not better or worse than the other; each has its own strengths and weaknesses and the wise web developer will consider the benefits and drawbacks of each before picking the one that works for their next project.</p>
<h3>Responsive Web Design</h3>
<p>Responsive web design is the most common One Web approach. The approach uses <a href="http://www.webmonkey.com/2012/01/building-a-responsive-future-friendly-web-for-everyone/">CSS media queries</a> to modify the presentation of a website based on the size of the device display. The number of responsive sites is rapidly increasing, from the <a href="http://www.webmonkey.com/2011/09/the-boston-globe-embraces-responsive-design/">Boston Globe</a> to Disney to Indochino. </p>
<p>A key advantage of this approach is that designers can use a single template for all devices, and just use CSS to determine how content is rendered on different screen sizes. Plus, those designers can still work in HTML and CSS, technologies they’re already familiar with. Additionally, there’s a growing number of responsive-friendly, open-source toolkits like <a href="http://twitter.github.com/bootstrap/">Bootstrap</a> or <a href="http://foundation.zurb.com/">Foundation</a> which help simplify the process of building responsive sites. </p>
<p>On the other hand, there are few shortcuts to a sound responsive design. To go responsive, organizations often have to undertake a complete site rebuild. </p>
<p>The design and testing phase can be quite fussy, as it can be difficult to customize the user experience for every possible device or context. We&#8217;ve all seen responsive site layouts that look like a bunch of puzzle pieces that don&#8217;t quite fit together. Responsive web design works best in combination with a mobile-first approach, where the mobile use case is prioritized during development. <a href="http://www.webmonkey.com/2012/03/video-progressive-enhancement-2-0/">Progressive enhancement</a> is then used to address tablet and desktop use cases.</p>
<p>Performance can also be a bugbear for responsive sites. At Mobify, we recently completed an analysis of 15 popular responsive e-commerce sites. Among these sites, the home pages loaded an average of 87 resources and 1.9 MB of data. Some responsive pages were as <a href="https://www.evernote.com/shard/s25/sh/c9f91915-af74-42b2-8771-ecfd37768225/3cd545176d8acff830daf5b1a3d1d3d6/res/3329c9b6-a9da-468c-8ffe-80c5bd1138ab/skitch.png">big as 15MB</a>.</p>
<p>The numbers are that high because a responsive approach covers all devices. Your user is only using one device, but they have to wait for all of the page elements and resources to load before they can use it. Put simply, performance affects your bottom line. On smartphones, the conversion rate <a href="http://www.webperformancetoday.com/2011/11/23/case-study-slow-page-load-mobile-business-metrics/">drops by an extra 3.5 percent</a> when users have to wait just one second. By the three second mark, <a href="http://www.strangeloopnetworks.com/resources/infographics/web-performance-and-user-expectations/website-abandonment-happens-after-3-seconds/">57 percent of users will have left your site completely</a>.</p>
<p>While responsive design is fast becoming the de facto standard, it also creates new challenges for online businesses, including how to handle images, how to optimize mobile performance and often means sites need to be rebuilt from the ground up with a mobile first approach.</p>
<h3>Client-Side Adaptive</h3>
<p>Adaptive design builds on the principles of responsive design to deliver user experiences that are targeted at specific devices and contexts. It uses JavaScript to enrich websites with advanced functionality and customization. For example, adaptive websites deliver Retina-quality images only to Retina displays (such as the new iPad) while standard-definition displays receive lower-quality images. </p>
<p>There are two approaches to adaptive design &#8212; one where the adaptations occur on the client side, in the user’s browser, and another where the web server does the heavy lifting of detecting various devices and loading the correct template. Examples of client-side adaptive sites include Threadless and ideeli. One of the strengths of the adaptive templating approach is the ability to reuse one set of HTML and JavaScript across devices, simplifying change management and testing.</p>
<p>A client-side adaptive approach means you don&#8217;t have to rebuild your site from the ground up. Instead you can build on existing content while still delivering a mobile-responsive layout. For expert developers, this approach also enables you to specifically target particular devices or screen resolutions. For example, for many of Mobify’s online fashion retail clients, 95% of their mobile traffic comes from iPhones. Client-side adaptive means they can optimize specifically for Apple smartphones. </p>
<p>Unlike responsive design, adaptive templates ensure that only the required resources are loaded by the client’s device. Because device and feature detection is shifted to the mobile device itself, CDN networks like Akamai and Edgecast can use most of their caching functionality without disrupting the user experience.</p>
<p>The client-side adaptive approach has a higher barrier to entry than responsive design. Developers need to have a solid grasp of JavaScript to use this technique. It also depends on a site’s existing templates as the foundation. Finally, because the client-side adaptations are a kind of layer on top of your existing code base, you need to maintain them as your site as a whole evolves. </p>
<h3>Server-Side Adaptive</h3>
<p>We can achieve the server-side adaptive approach in a variety of ways, through server-side plugins and custom user agent detection. Sites that use server-side adaptive include Etsy, One Kings Lane and OnlineShoes.com.</p>
<p>Why choose server-side adaptive? It typically offers distinct templates for each devices, enabling more customization, and it keeps device-detection logic on the server, enabling smaller mobile pages that load faster. Additionally, there are numerous server-side plugins available for common CMSs and eCommerce systems such as Magneto.</p>
<p>This approach isn&#8217;t for the faint of heart&#8211;it typically requires significant changes to your back-end systems, which can result in a lengthy (and costly) implementation. The requirement to manage multiple templates raises ongoing maintenance costs. Finally, this approach can encounter performance issues when servers are under heavy load. When mobile user agent detection is performed on the server, a lot of common caching mechanisms deployed by CDNs like Akamai need to be turned off. This can result in a slower user experience for mobile and desktop visitors.</p>
<p>Of course, many companies are still wrestling with the basics of responsive, and they’re not ready to confront the more sophisticated flavors of adaptive. Increasingly competition and mobile traffic, however, will drive more and more organizations to kick the tires on all three approaches, and pick the one that works best for their users.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/05/the-two-flavors-of-a-one-web-approach-responsive-vs-adaptive/feed/</wfw:commentRss>
        <slash:comments>28</slash:comments>

        
    </item>
    
    <item>
        <title>What the Tablet-Laptop Hybrid Means for Web Developers</title>
        <link>http://www.webmonkey.com/2013/04/what-the-tablet-laptop-hybrid-means-for-web-developers/</link>
        <comments>http://www.webmonkey.com/2013/04/what-the-tablet-laptop-hybrid-means-for-web-developers/#comments</comments>
        <pubDate>Fri, 12 Apr 2013 18:31:21 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=61598</guid>
        		<category><![CDATA[Responsive Design]]></category>
		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[touch]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/04/hybrids-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/04/hybrids.jpg" alt="What the Tablet-Laptop Hybrid Means for Web Developers" /></div>Whether its the Windows 8 "laplets" -- one part laptop, one part tablet -- or just an Android tablet with a dock and mouse, these hybrid devices mean you never really know how visitors are interacting with your site. The W3C is hard at work changing that, but for now web developers will need to cater to all possibilities.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_61600" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2013/04/hybrids.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2013/04/hybrids.jpg" alt="" title="hybrids" width="580" height="387" class="size-full wp-image-61600" /></a><p class="wp-caption-text">Hybrids. <em>Image: Screenshot/Webmonkey</em>.</p></div>The advent of hybrid laptops that <a href="http://www.wired.com/gadgetlab/2012/10/windows8-laplet-hybrid/">double as tablets</a> or offer some sort of touch input has greatly complicated the life of web developers.</p>
<p>A big part of developing for today&#8217;s myriad screens is knowing when to adjust the interface, based not just on screen size, but other details like input device. Fingers are far less precise than a mouse, which means bigger buttons, form fields and other input areas.</p>
<p>But with hybrid devices like touch screen Windows 8 laptops or dockable Android tablets with keyboards, how do you know whether the user is browsing with a mouse or a finger?</p>
<p>Over on the Mozilla Hacks blog Patrick Lauke tackles that question in an article on <a href="https://hacks.mozilla.org/2013/04/detecting-touch-its-the-why-not-the-how/">detecting touch-capable devices</a>. Lauke covers the relatively simple case of touch-only, like iOS devices, before diving into the far more complex problem of hybrid devices.</p>
<p>Lauke&#8217;s answer? If developing for the web hasn&#8217;t already taught you this lesson, perhaps hybrid devices will &#8212; learn to live with uncertainty and accept that you can&#8217;t control everything.</p>
<blockquote>
<p>What&#8217;s the solution to this new conundrum of touch-capable devices that may also have other input methods? While some developers have started to look at complementing a touch feature detection with additional user agent sniffing, I believe that the answer – as in so many other cases in web development – is to <strong>accept that we can&#8217;t fully detect or control how our users will interact with our web sites and applications</strong>, and to be input-agnostic. Instead of making assumptions, our code should cater for all eventualities. </p>
</blockquote>
<p>While learning to live with uncertainty and providing interfaces that work with any input sounds nice in theory, developers are bound to want something a bit more concrete. There&#8217;s some hope on the horizon. Microsoft has <a href="http://www.webmonkey.com/2013/02/microsofts-pointer-events/">proposed the Pointer Events spec</a> (and created a build of Webkit that supports it). And the <a href="http://dev.w3.org/csswg/mediaqueries4/">CSS Media Queries Level 4</a> spec will <a href="http://www.webmonkey.com/2012/07/w3c-looking-to-improve-responsive-design-with-new-media-queries/">offer a pointer query to see what sort of input device is being used</a> (mouse, finger, stylus etc). </p>
<p>Unfortunately, neither Pointer Events nor Media Queries Level 4 are supported in today&#8217;s browsers. Eventually there probably will be some way to easily detect and know for certain which input device is being used, but for the time being you&#8217;re going to have to live with some level of uncertainty. Be sure to read through Lauke&#8217;s post for more details and some sample code.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/04/what-the-tablet-laptop-hybrid-means-for-web-developers/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Resizing Responsive Designs with CSS REMs</title>
        <link>http://www.webmonkey.com/2013/03/resizing-responsive-designs-with-css-rems/</link>
        <comments>http://www.webmonkey.com/2013/03/resizing-responsive-designs-with-css-rems/#comments</comments>
        <pubDate>Wed, 27 Mar 2013 19:27:27 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=61418</guid>
        		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Responsive Design]]></category>
		<category><![CDATA[responsive design]]></category>
        <description><![CDATA[Responsive, flexible designs can make for complicated resizing -- after all there are a lot of elements on a page and scaling them all for different screen sizes isn't easy. But there's another way to achieve flexibility that doesn't involve keeping track of ems or percentages -- the new CSS REM unit.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_54241" class="wp-caption alignleft" style="width: 310px"><img src="http://www.webmonkey.com/wp-content/uploads/2012/02/tablets.jpg" alt="" title="tablets" width="300" height="224" class="size-full wp-image-54241" /><p class="wp-caption-text">Photo: Ariel Zambelich/Wired.com</p></div>Building responsive websites means that your design has to adapt to different screen sizes. We&#8217;ve covered a number of ways to do that in the past, including working with percentage widths, em-based type and other flexible techniques of responsive design. </p>
<p>There&#8217;s another way to achieve flexibility that doesn&#8217;t involve keeping track of ems or percentages &#8212; the new CSS REM unit. REMs are just like ems &#8212; REM stands for <em>Root Em</em> &#8212; but instead of being relative to the parent element like Ems, REMs are relative to the document root&#8217;s font size. Most of the time that means the html element. </p>
<p>We&#8217;ve previously looked at REMs as a way to <a href="http://www.webmonkey.com/2012/02/responsive-design-tricks-fluid-typography-with-css-3/">achieve fluid typography</a>, but REMs can help with more than just type sizing. </p>
<p>Mobify&#8217;s Roman Rudenko has an <a href="http://css-tricks.com/theres-more-to-the-css-rem-unit-than-font-sizing/">article on CSS-Tricks</a> that shows how to use REM units to scale specific page elements while leaving others unaffected. Rudenko even shows how you can use REM units as a replacement for the very powerful, but not very well supported, <a href="http://dev.w3.org/csswg/css3-values/#viewport-relative-lengths">viewport width unit</a>.</p>
<p>For those wondering why you might want to resize some elements and not others, here&#8217;s Rudenko&#8217;s use case:</p>
<blockquote>
<p>This style of sizing can be useful for user-driven customization, or to adapt layouts for cases that require secondary elements to be more touchable (tablet) or visible (TV). Without REM, every adjustable element would have to be resized separately.</p>
</blockquote>
<p>This technique can be applied to whole pages as well. For example, if your type is all sized in REMs and you want it to be a bit larger as screen sizes get bigger, all you need to do is adjust the font size on the html element with each media query and all your REM-sized type will get bigger based on that single line of code.</p>
<p>For more on REMs and what you can do with them be sure to check out <a href="http://css-tricks.com/theres-more-to-the-css-rem-unit-than-font-sizing/">Rudenko&#8217;s post</a> and our <a href="http://www.webmonkey.com/2012/02/responsive-design-tricks-fluid-typography-with-css-3/">earlier write up</a>.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/03/resizing-responsive-designs-with-css-rems/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Mobile Browsers Help Users Avoid Bloated Webpages</title>
        <link>http://www.webmonkey.com/2013/03/mobile-browsers-help-users-avoid-bloated-webpages/</link>
        <comments>http://www.webmonkey.com/2013/03/mobile-browsers-help-users-avoid-bloated-webpages/#comments</comments>
        <pubDate>Fri, 08 Mar 2013 16:30:23 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=61206</guid>
        		<category><![CDATA[Mobile]]></category>
		<category><![CDATA[Responsive Design]]></category>
		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[Web Basics]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[Opera Mobile]]></category>
		<category><![CDATA[performance]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/03/donuts-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/03/donuts.jpg" alt="Mobile Browsers Help Users Avoid Bloated Webpages" /></div>The internet sees your bloated webpages as damage and it's taking steps to route around them. Both Chrome and Opera have recently added an option for mobile users to connect to proxy servers, which slim down webpages before sending them over constrained mobile connections. The rise of proxy servers will likely mean that, in the future, developers will have even less control over how users access their sites.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_61207" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2013/03/donuts.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2013/03/donuts.jpg" alt="" title="donuts" width="580" height="374" class="size-full wp-image-61207" /></a><p class="wp-caption-text">Stop feeding your website donuts. <em>Image: <a href="https://secure.flickr.com/photos/pinksherbet/1354739463/">D. Sharon Pruitt/Flickr</a></em>.</p></div>Websites are getting fatter, dramatically fatter, with the average page size of sites tracked by the HTTPArchive now <a href="http://httparchive.org/trends.php">nearly 1.3 MB</a>. If the current rate of page size increase continues, that number will <a href="http://www.webperformancetoday.com/2012/11/15/average-web-page-grows-20-percent/">reach 2MB sometime early next year</a>. </p>
<p>That&#8217;s bad for pretty much everyone, but doubly so for mobile users with constrained bandwidth.</p>
<p>Fortunately for mobile users, the network increasingly seems to see large page sizes as damage to route around. </p>
<p>Services like Instapaper, Pocket or Safari&#8217;s Reader have long offered an easy way to strip out extraneous content. Now mobile web browsers are increasingly taking it upon themselves to speed up the bloated web.</p>
<p>The recently unveiled <a href="http://www.webmonkey.com/2013/03/reborn-opera-mobile-sings-on-android/">WebKit-based Opera Mobile</a> borrows Opera Mini&#8217;s proxy-based Turbo Mode, or &#8220;Off Road&#8221; mode as it&#8217;s known now. Once only deemed necessary for feature phones (Opera Mini&#8217;s primary market) proxy-based browsing will soon be available in all Opera browsers.</p>
<p>Google&#8217;s Chrome for Android browser is getting ready to follow suit. </p>
<p>The beta channel release of Chrome for Android recently <a href="http://blog.chromium.org/2013/03/data-compression-in-chrome-beta-for.html">introduced an experimental data compression feature</a> which Google says will &#8220;yield substantial bandwidth savings.&#8221; Chrome&#8217;s compression is nowhere near the level of Opera&#8217;s, but it does roughly the same thing &#8212; puts a proxy server between the user and the bloated site in question and then applies various speed improvements like using the <a href="http://www.webmonkey.com/2009/11/say__hello_world__to_spdy__a_successor_to_http-2/">SPDY protocol</a> and compressing images with WebP.</p>
<p>To turn on the compression head to <code>chrome:flags</code> and look for the &#8220;enable experimental data compression&#8221; option. </p>
<p>Here&#8217;s Google&#8217;s description of the various optimizations:</p>
<blockquote>
<p>For an average web page, over 60% of the transferred bytes are images. The proxy optimizes and transcodes all images to the WebP format, which requires fewer bytes than other popular formats, such as JPEG and PNG. The proxy also performs intelligent compression and minification of HTML, JavaScript and CSS resources, which removes unnecessary whitespace, comments, and other metadata which are not essential to render the page. These optimizations, combined with mandatory gzip compression for all resources, can result in substantial bandwidth savings.</p>
</blockquote>
<p>In other words, Google and Opera are doing what web developers ought to be doing but aren&#8217;t. Just like <a href="http://www.webmonkey.com/2010/06/design-for-readability-first/">developers should have been making reader-friendly pages</a>, but weren&#8217;t, so &#8220;reader&#8221; modes were born.</p>
<p>It works too. In the video embedded below Google&#8217;s Pete Le Page shows how Chrome&#8217;s new proxy options take a page from The Verge and reduce it from a husky 1.9MB to a still fat, but somewhat better 1.2MB. </p>
<p><iframe width="580" height="326" src="http://www.youtube.com/embed/TAxy4q3RP_s" frameborder="0" allowfullscreen></iframe></p>
<p>Want to make sure the internet doesn&#8217;t see your site as damage it needs to route around? Check out developer Brad Frost&#8217;s article <em><a href="http://bradfrostweb.com/blog/post/prioritizing-performance-in-responsive-design/">Prioritizing Performance in Responsive Design</a></em>, which has a ton of great advice and links, including what I think is the most important thing developers can do: <em><a href="http://bradfrostweb.com/blog/post/performance-as-design/">Treat Performance As Design</a></em>. In other words, if your site isn&#8217;t svelte and fast, it&#8217;s not well designed no matter how pretty it might look.</p>
<p>[Note: <a href="http://www.zeldman.com/2011/11/18/it-is-not-ironic/">It is not ironic</a> to post about web page bloat on a page that is, arguably, pretty bloated.]</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/03/mobile-browsers-help-users-avoid-bloated-webpages/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Stop Squinting at Your Screen Thanks to This Responsive Type Experiment</title>
        <link>http://www.webmonkey.com/2013/02/responsive-type-experiment-helps-you-stop-squinting-at-your-screen/</link>
        <comments>http://www.webmonkey.com/2013/02/responsive-type-experiment-helps-you-stop-squinting-at-your-screen/#comments</comments>
        <pubDate>Mon, 18 Feb 2013 15:38:05 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60966</guid>
        		<category><![CDATA[Multimedia]]></category>
		<category><![CDATA[Responsive Design]]></category>
		<category><![CDATA[WebRTC]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/02/facetracking-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/02/facetracking.jpg" alt="Stop Squinting at Your Screen Thanks to This Responsive Type Experiment" /></div>Using a JavaScript Library to track faces in a webcam, developer Marko Dugonjić built an app that calculates how close you are to the screen and then adjusts the font size accordingly to make text more legible.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_60971" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2013/02/facetracking.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2013/02/facetracking.jpg" alt="" title="facetracking" width="580" height="247" class="size-full wp-image-60971" /></a><p class="wp-caption-text">Tracking Webmonkey. <em>Image: Screenshot/Webmonkey</em>.</p></div>Responsive design typically focuses on screen sizes, but that&#8217;s just the practical application of the larger goal &#8212; making a website function well no matter how or where <em>you</em> are viewing it. The emphasis ultimately is on you, not your device. </p>
<p>Developer Marko Dugonjić takes responsive design&#8217;s emphasis on you to new levels of interactivity with his <a href="http://webdesign.maratz.com/lab/responsivetypography/onload/">experiment in typesetting by face detection</a>. </p>
<p>Using a very cool <a href="https://github.com/auduno/headtrackr/">JavaScript headtracking library</a> &#8212; which taps <a href="http://www.webmonkey.com/tag/webrtc/">WebRTC</a> and getUserMedia to access your webcam &#8212; Dugonjić&#8217;s app calculates how close you are to the screen and adjusts the font size to make text more readable.</p>
<p>To see it in action, head on over to the <a href="http://webdesign.maratz.com/lab/responsivetypography/onload/">demo page</a> and grant it permission to use your webcam. For the most useful example, check out the <code>onload</code>-based implementation, but for a better sense of how it works be sure to try the &#8220;Realtime&#8221; version.</p>
<p>It may not be the most practical experiment and how well it works depends on plenty of factors well beyond the control of the site (how good your eyes are, whether or not you&#8217;re wearing your glasses and so on), but it&#8217;s not hard to imagine how this could be very useful in some situations &#8212; for example, bumping up font-size when your site is displayed on a television.</p>
<p>When you&#8217;re done playing with the resizing demo be sure to check out Dugonjić&#8217;s more practical and more immediately useful <a href="http://www.typetester.org/">Typetester</a>. </p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/02/responsive-type-experiment-helps-you-stop-squinting-at-your-screen/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Turning Off Responsive Design</title>
        <link>http://www.webmonkey.com/2013/01/turning-off-responsive-design/</link>
        <comments>http://www.webmonkey.com/2013/01/turning-off-responsive-design/#comments</comments>
        <pubDate>Tue, 15 Jan 2013 19:05:24 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60587</guid>
        		<category><![CDATA[Responsive Design]]></category>
		<category><![CDATA[UI/UX]]></category>
		<category><![CDATA[Visual Design]]></category>
		<category><![CDATA[Web Basics]]></category>
		<category><![CDATA[responsive design]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/01/responsive-design-w.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/01/responsive-design-w.jpg" alt="Turning Off Responsive Design" /></div>Should you offer users a way to opt-out of responsive designs? Provided your responsive designs are well done the answer is generally no, but as always there are edge cases worth considering.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><div id="attachment_53661" class="wp-caption alignnone" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2012/01/tablets.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2012/01/tablets.jpg" alt="" title="tablets" width="580" height="434" class="size-full wp-image-53661" /></a><p class="wp-caption-text">A handful of the many canvases your site will adorn. <em>Photo: Ariel Zambelich/Wired.com</em></p></div>
<p>In the bad old days of just four years ago it was pretty common for mobile users to get shunted off to some half-baked, feature-deprived &#8220;mobile&#8221; version of the website they were trying to visit. This misguided practice was common (and annoying) enough that even today Chrome for Android and other mobile web browsers ship with a feature that allows users to &#8220;request desktop site.&#8221; </p>
<p>To make that feature work Chrome for Android changes its user agent string. Any site that uses user agent strings to redirect mobile users will no longer because to redirect them and the desktop version is displayed. </p>
<p><a href="http://www.webmonkey.com/2013/01/take-responsive-design-beyond-media-queries/">Responsive websites</a> don&#8217;t rely on user agent strings though. Instead they adapt to screen size based on CSS media queries so even if a user has the option for desktop sites checked in Chrome they still won&#8217;t get the &#8220;desktop&#8221; site (of course with responsive sites there really is no desktop site, just a desktop <em>layout</em>). </p>
<p>Provided your <a href="http://www.webmonkey.com/2013/01/simplify-responsive-design-by-embracing-the-flexible-nature-of-the-web/">responsive designs are good</a>, this isn&#8217;t a problem (and if they aren&#8217;t then you have bigger problems). However, Opera web standards evangelist Bruce Lawson raises an interesting edge case: what about users that have never seen the mobile layout and are disoriented when they do? If you were expecting, say, the desktop layout of the <a href="http://bostonglobe.com/">BostonGlobe.com</a> and instead saw the mobile layout for the first time you might be understandably confused. Here&#8217;s what Lawson has to say:</p>
<blockquote>
<p>My reason for wondering [about turning off responsive design] is watching my dad use his Xmas Android phone and seeing his puzzlement that some sites look completely different on that device. Non-RWD sites loaded the layout he was familiar with &#8212; the desktop layout &#8212; which meant he could verify he was on the right site, he knew where in the layout the content he wanted was, and then scroll and zoom to it. When a site looked radically different, he&#8217;d check the URL bar to ensure that he&#8217;d typed in the right address. In short, he found RWD to be confusing and it meant he didn&#8217;t trust the site – no way would he buy anything from these sites. </p>
</blockquote>
<p>The first thing to note is that this isn&#8217;t a problem unique to responsive sites. The same thing would crop up with a separate mobile experience. The difference is the inability to opt out of the responsive layout. An edge case? Sure, but Lawson isn&#8217;t alone in wondering about turning off responsive designs. CSS guru Chris Coyier <a href="http://css-tricks.com/user-opt-out-responsive-design/">tackled that very question</a> last year, writing:</p>
<blockquote>
<p>Why don&#8217;t we see opt-out responsive design? My guess is two-fold:</p>
<ol>
<li>It&#8217;s a bit technically challenging to implement and there aren&#8217;t a lot of precedents.</li>
<li>It&#8217;s admitting you didn&#8217;t do a very good job on the responsive design.</li>
</ol>
<p>The latter likely being the bigger factor. Like: why are we creating this responsive design at all if we aren&#8217;t sure it&#8217;s a better experience?</p>
</blockquote>
<p>I would agree with both points, but clearly there are at least a few edge cases where offering an option to turn off responsive design might be a good idea. Of course it may not be worth worrying about the edge case of unfamiliar visitors &#8212; that&#8217;s the sort of decision you can only really make by looking at your own visitors and doing your own testing. </p>
<p>If you actually want to try it, Coyier has some <a href="http://css-tricks.com/user-opt-out-responsive-design/">ideas on how to go about creating an option to opt out of a responsive design</a>.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/01/turning-off-responsive-design/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Take Responsive Design Beyond Media Queries</title>
        <link>http://www.webmonkey.com/2013/01/take-responsive-design-beyond-media-queries/</link>
        <comments>http://www.webmonkey.com/2013/01/take-responsive-design-beyond-media-queries/#comments</comments>
        <pubDate>Thu, 10 Jan 2013 17:24:49 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60513</guid>
        		<category><![CDATA[Responsive Design]]></category>
		<category><![CDATA[responsive design]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/01/responsive-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/01/responsive.jpg" alt="Take Responsive Design Beyond Media Queries" /></div>Fluid Grids, flexible media and CSS media queries are the foundations of responsive design, but that's not the end of the story. In fact, developer Brad Frost argues that going beyond the basics will give responsive design the power to "reshape what the web is, what it can do, where it can go and who it can reach."]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><iframe src="http://player.vimeo.com/video/55076713?title=0&amp;byline=0&amp;portrait=0&amp;color=EB6933" width="580" height="326" frameborder="0" webkitAllowFullScreen mozallowfullscreen allowFullScreen></iframe> </p>
<p>The basic elements of responsive design &#8212; fluid grids, flexible media and CSS media queries &#8212; are key to building successful websites that work across platforms and devices, but these three components are <a href="http://www.webmonkey.com/2011/06/good-responsive-design-goes-beyond-fluid-grids/">not the end of the responsive design story</a>. In fact, as developer Brad Frost argues in the talk embedded above, there is, or should be, much more to it than that.</p>
<p>While many would call the broader approach &#8220;adaptive&#8221; design, Frost wants the phrase &#8220;responsive web design&#8221; to go the way of Corn Flakes, as he puts it. That is, to become a more general term that can &#8220;encompass all the things that go into creating a great multi-device web experience.&#8221; That means things that go beyond fluid grids, flexible media and media queries &#8212; things like performance, device support, device optimization and future-friendly designs.</p>
<p>In Frost&#8217;s analogy responsive design is the tip of the adaptive design iceberg, where all the good stuff is under the water. &#8220;Below the waterline, that&#8217;s where the true opportunity is,&#8221; says Frost, &#8220;that is where we actually have the potential to basically reshape what the web is, what it can do, where it can go and who it can reach. And that is powerful.&#8221;</p>
<p>Just what&#8217;s below the waterline and how do you roll these broader ideas into an actual website? Well, be sure to watch the video &#8212; Frost walks through an example of a mobile-first responsive design, which you can also <a href="http://bradfrostweb.com/blog/mobile/anatomy-of-a-mobile-first-responsive-web-design/">read about on his site</a>. If you prefer a tutorial sans video, Frost&#8217;s write-up from last year is <a href="http://www.html5rocks.com/en/mobile/responsivedesign/">available on HTML5Rocks</a>.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/01/take-responsive-design-beyond-media-queries/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>The Return of the Progressive JPEG</title>
        <link>http://www.webmonkey.com/2013/01/the-return-of-the-progressive-jpeg/</link>
        <comments>http://www.webmonkey.com/2013/01/the-return-of-the-progressive-jpeg/#comments</comments>
        <pubDate>Fri, 04 Jan 2013 19:01:12 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60436</guid>
        		<category><![CDATA[Multimedia]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Responsive Design]]></category>
		<category><![CDATA[Web Basics]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2013/01/rickastley-200x100.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2013/01/rickastley.jpg" alt="The Return of the Progressive JPEG" /></div>Thanks to the return of limited bandwidth on mobile devices another artifact from the early web is making a comeback -- the progressive JPEG. Progressive JPEGs offer some advantages over their more common "baseline" counterparts, including potentially smaller file sizes and faster perceived load times. But there are trade offs to bear in mind before you start converting your back catalog of images.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><div id="attachment_60438" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2013/01/rickastley.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2013/01/rickastley.jpg" alt="" title="rickastley" width="580" height="187" class="size-full wp-image-60438" /></a><p class="wp-caption-text">Unlike progressive JPEGs, you just never know what a baseline image is going to be until it loads. <em>Image: <a href="http://www.rickastley.co.uk/discography/singles/never-gonna-give-you-up/">rickastley.co.uk</a></em></p></div>
<p>Everything old eventually becomes new again and lately that&#8217;s meant a revival of interest in something most web developers probably abandoned long ago &#8212; progressive JPEG images.</p>
<p>Progressive JPEGs offer some advantages over their more common &#8220;baseline&#8221; counterparts, including potentially smaller file sizes and faster perceived load times. But there are trade offs to bear in mind before you start converting your back catalog of images.</p>
<p>If you happened to have missed the pixelated image loads of the circa 1999 web, here&#8217;s a brief refresher: There are two primary types of JPEG images, baseline and progressive. These days the vast majority of photos you encounter are baseline JPEGs, which means they start loading with the fully rendered top of the image and then continue to draw in the rest of the image as the data is received. </p>
<p>Progressive JPGs on the other hand load the full photo right off the bat, but with only some of the pixel data. That means the image briefly looks pixelated and then appears to sharpen focus as the rest of the data loads. This was the generally recommended way to optimize images back in the days when 56K dial up was considered smoking fast. </p>
<p>Lately, with mobile devices bringing bandwidth limitations back to the web, there&#8217;s been something of a resurgence of interest in progressive JPEGs. The Web Performance Advent Calendar even ran a piece entitled &#8220;<a href="http://calendar.perfplanet.com/2012/progressive-jpegs-a-new-best-practice/">Progressive JPEGs: a new best practice</a>.&#8221; Here&#8217;s developer Ann Robson&#8217;s take on why you should use progressive JPEGs instead of baseline:</p>
<blockquote>
<p>Progressive JPEGs are better because they are faster. Appearing faster is being faster, and <strong>perceived speed is more important that actual speed</strong>. Even if we are being greedy about what we are trying to deliver, progressive JPEGs give us as much as possible as soon as possible. </p>
</blockquote>
<p>If you&#8217;re building responsive websites, progressive JPEGs are also appealing because you can avoid the content reflow that happens when baseline images are loaded after text content. With progressive JPEGs, because some data is loaded right off the bat, text doesn&#8217;t jump around (you can avoid this for non-responsive images by specifying the image dimensions). </p>
<p>Be sure to read Robson&#8217;s full article for some important caveats regarding progressive JPEGs, including the fact that browser support is less than ideal. All browsers will render progressive JPEGs just fine, but many of them &#8212; Safari, Mobile Safari, Opera and IE 8 &#8212; render progressive images just like baseline JPEGs, meaning there is no speed difference. </p>
<p>Another strike against progressive JPEGs is that they must be rendered multiple times as more data arrives. So while they may be marginally faster and possibly make users feel like the page has loaded faster, they hit the CPU pretty hard. That makes them potentially slower than baseline JPEGs in one of the use cases they&#8217;re supposed to be ideal for &#8212; underpowered mobile devices.</p>
<p>But perhaps the most questionable aspect of progressive JPEGs is whether or not users actually perceive a fully loaded, but blurry image that eventually comes into focus as faster than an image that takes longer, but renders all at once. Unfortunately I haven&#8217;t been able to find any actual usability studies addressing that question. I suspect that how you feel about progressive JPEGs is probably, among other things, a good indicator of how long you&#8217;ve been using the web, which is to say that if you&#8217;re all-too-familiar with progressive JPEGs from watching them slowly sharpen into focus over painfully slow dialup it&#8217;s hard to see them as anything but an annoying anachronism.</p>
<p>So, should you switch to progressive JPEGs? As with most things in web design there is no right answer. First you should look at your site&#8217;s stats, see which browser and devices your visitors are using and whether or not those browsers even render progressive JPEGs progressively. Assuming they do and you want to test progressive JPEGs, check out this old, but still very relevant, <a href="http://www.yuiblog.com/blog/2008/12/05/imageopt-4/">post</a> from Yahoo YSlow developer Stoyan Stefanov, who has some data on when, where and how to use progressive JPEGs. </p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/01/the-return-of-the-progressive-jpeg/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Five Ways to Simplify Responsive Design</title>
        <link>http://www.webmonkey.com/2013/01/five-ways-to-simplify-responsive-design/</link>
        <comments>http://www.webmonkey.com/2013/01/five-ways-to-simplify-responsive-design/#comments</comments>
        <pubDate>Thu, 03 Jan 2013 19:50:51 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60431</guid>
        		<category><![CDATA[CSS]]></category>
		<category><![CDATA[Responsive Design]]></category>
		<category><![CDATA[Web Basics]]></category>
		<category><![CDATA[responsive design]]></category>
        <description><![CDATA[Building responsive websites requires a different approach than building a desktop-only site. Developer David Bushell has five suggestions for anyone who's about to or already has embarked on a responsive project.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled -->
<p><div id="attachment_53661" class="wp-caption alignleft" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2012/01/tablets.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2012/01/tablets.jpg" alt="" title="tablets" width="580" height="434" class="size-full wp-image-53661" /></a><p class="wp-caption-text">A handful of the many screens your responsive designs must handle. <em>Photo: Ariel Zambelich/Wired.com</em></p></div>Building <a href="http://www.webmonkey.com/2012/10/embracing-the-flexibility-of-the-web-with-responsive-enhancement/">responsive websites</a> can be daunting. After all, instead of just one desktop layout you&#8217;re creating at least two, probably three or even four layouts to handle different breakpoints and screen sizes. That means considerably more work, which can feel overwhelming if you don&#8217;t have a good plan of attack.</p>
<p>One of the better plans I&#8217;ve seen recently comes from developer David Bushell, who recently outlines <a href="http://dbushell.com/2013/01/01/five-tips-for-responsive-builds/">5 Tips for Responsive Builds</a>. Among his suggestions there are two standouts, the first being &#8220;utilize breakpoint zero.&#8221; For Bushell &#8220;breakpoint zero&#8221; just means &#8220;start by writing HTML in a semantic and hierarchical order. Start simple, with no CSS at all and then &#8220;apply the basic styles but don&#8217;t go beyond the default vertical flow.&#8221; </p>
<p>In other words, keep your layout slate blank as long as you can so that when you do start adding layout rules you can spot problems with different breakpoints early and fix them before changing things becomes a major headache.</p>
<p>The other highlight of Bushell&#8217;s post is the suggestion that you maintain a CSS pattern library  &#8212; reusable snippets of CSS you can drop in for quick styling. There are a ton of ways you can do this, whether it&#8217;s something formal like <a href="http://smacss.com/">SMACSS</a> (pronounced &#8220;smacks&#8221;), <a href="https://github.com/stubbornella/oocss/wiki">OOCSS</a>, or just taking the time to <a href="http://www.webmonkey.com/2011/12/write-better-css-with-knyle-style-sheets/">write a style guide</a> with some sample code. The point isn&#8217;t how you do it or which method you use, but <em>that</em> you do it.</p>
<p>Be sure to check out Bushell&#8217;s post for more details on these two suggestions as well as the other three ways you can help make your responsive design process a bit smoother.</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2013/01/five-ways-to-simplify-responsive-design/feed/</wfw:commentRss>
        <slash:comments>0</slash:comments>

        
    </item>
    
    <item>
        <title>Forget JavaScript, It&#8217;s Time for Browsers to Speed Up Images</title>
        <link>http://www.webmonkey.com/2012/12/forget-javascript-its-time-for-browsers-to-speed-up-images/</link>
        <comments>http://www.webmonkey.com/2012/12/forget-javascript-its-time-for-browsers-to-speed-up-images/#comments</comments>
        <pubDate>Wed, 19 Dec 2012 20:48:01 +0000</pubDate>

                <dc:creator>Scott Gilbertson</dc:creator>

        <guid isPermaLink="false">http://www.webmonkey.com/?p=60411</guid>
        		<category><![CDATA[Responsive Design]]></category>
		<category><![CDATA[Web Basics]]></category>
		<category><![CDATA[responsive images]]></category>
            <enclosure url="http://www.webmonkey.com/wp-content/uploads/2012/12/faster_w.jpg" type="image/jpeg" length="48000" />
                    <description><![CDATA[<div class="rss_thumbnail"><img src="http://www.webmonkey.com/wp-content/uploads/2012/12/faster_w.jpg" alt="Forget JavaScript, It&#8217;s Time for Browsers to Speed Up Images" /></div>Images make up roughly 60 percent of the data downloaded with the average webpage. It's great that browser makers have been focused on improving JavaScript, but if we really want to speed up the web it's time to tackle images as well.]]></description>

            <content:encoded><![CDATA[<p><!-- wpautop enabled --><div id="attachment_56148" class="wp-caption aligncenter" style="width: 590px"><a href="http://www.webmonkey.com/wp-content/uploads/2012/04/Photo_AdobeShadow2012-03-011.jpg"><img src="http://www.webmonkey.com/wp-content/uploads/2012/04/Photo_AdobeShadow2012-03-011.jpg" alt="" title="Photo_AdobeShadow2012-03-01" width="580" height="328" class="size-full wp-image-56148" /></a><p class="wp-caption-text">So many screens, so many images (testing responsive sites with <a href='http://www.webmonkey.com/2012/03/adobe-shadow-simplifies-mobile-web-testing/'>Adobe Shadow</a>). <em>Photo: Adobe</em></p></div></p>
<p>The average webpage is now 1.2 megabytes and around <a href="http://httparchive.org/interesting.php#bytesperpage">60 percent</a> of that rather large payload comes from images. That&#8217;s a lot of data, whether you&#8217;re <a href="http://www.webmonkey.com/2012/08/w3c-proposes-responsive-image-solution/">handling images responsively</a> or just trying to speed up a desktop site.</p>
<p>You might think, if images are the bulk of what your browser is downloading, that browsers would be working hard to speed up the image downloads, perhaps trying alternate, space-saving image formats, but you&#8217;d be wrong.</p>
<p>You might also think that, as Google&#8217;s Ilya Grigorik <a href="http://www.igvita.com/2012/12/18/deploying-new-image-formats-on-the-web/">writes</a>, &#8220;innovating on better image formats would be a top agenda item&#8221; for the web. But again you&#8217;d be wrong. The web is still using the same image formats it&#8217;s been using virtually since the first images appeared online. </p>
<p>Grigorik thinks it&#8217;s high time that changed and we agree.</p>
<p>In a recent post looking at what it would take to <a href="http://www.igvita.com/2012/12/18/deploying-new-image-formats-on-the-web/">deploy new image formats on the web</a>, he writes, &#8220;if we really want to make an impact on web performance, then image formats is the place to do it&#8230; there is absolutely no reason why we shouldn&#8217;t have dozens of specialized formats, each tailored for a specific case and type of image.&#8221;</p>
<p>Of course no web developer wants to deal with dozens of specialized image formats. Nor should they need to &#8212; that&#8217;s a job for servers. &#8220;In a world with dozens of image formats,&#8221; continues Grigorik, &#8220;the human solution does not scale &#8212; read, markup does not scale&#8230; whereas computers are fantastic at doing exactly the kind of optimization work required to solve the problem.&#8221;</p>
<p>Grigorik isn&#8217;t alone in calling for new image formats, nor is he the first to suggest handing these tasks off to the server. Developer and responsive images proponent Matt Wilcox has <a href="http://2002-2012.mattwilcox.net/archive/entry/id/1079/">argued</a> for a similar solution, as have others.</p>
<p>The basic premise of these arguments is that deciding which image to serve up to which device and browser should be a server-side problem. And in fact there&#8217;s already a way to solve this problem with HTTP headers, namely the <code>Accepts</code> header, which tells the server which image formats the browser supports. Based on that information the server could then &#8220;re-encode, recompress, resize, strip unnecessary metadata and deliver the optimal format.&#8221;</p>
<p>The problem is that web browsers (with the exception of Opera) don&#8217;t actually send useful information in the <code>Accepts</code> header. </p>
<p>Thus, the first step in creating a server-side solution for smaller images is to get other browsers to send useful <code>Accepts</code> headers. </p>
<p>The <code>Accepts</code> header isn&#8217;t a magic bullet by any means, but it&#8217;s a problem that&#8217;s not hard to solve provided browser makers prioritize it. But to really get server side image solutions working the web would also need new server tools (fortunately, <a href="https://developers.google.com/speed/docs/mod_pagespeed/filter-image-optimize">several</a> already <a href="https://github.com/pagespeed/ngx_pagespeed">exist</a>). There are other stumbling blocks as well. Grigorik addresses half a dozen potential problems and objections that you can read through in his post.</p>
<p>Even if browser makers come around to the idea and do start improving <code>Accepts</code> headers, bringing better image formats to the web is going to be an uphill battle. But Grigorik is determined to chase the idea. &#8220;Some uphill battles are worth fighting,&#8221; he writes in a comment, &#8220;I think this a good one. Wish me luck.&#8221;</p>
<div id='linker_widget' class='contextly-widget'></div>]]></content:encoded>
            <wfw:commentRss>http://www.webmonkey.com/2012/12/forget-javascript-its-time-for-browsers-to-speed-up-images/feed/</wfw:commentRss>
        <slash:comments>7</slash:comments>

        
    </item>
    </channel>
</rss>
