Staples, the office superstore, announced that they are abandoning Responsive Design and moving towards building different applications for mobile vs the web. See story here.
I think they made the right decision.
Responsive design is a concept that allows for the development of a web application in a such way that it can be rendered on multiple devices accounting for the screen sizes of those devices without having to build a special version for each device. The basic idea is to think of a regular website to be made up of a number of columns and rows like a grid. Content is then assigned to a multiple of these columns and rows. During the rendering of the page, CSS media queries are used to identify the device and knowing how many columns will fit on the screen, CSS is used to render the page appropriately by wrapping columns of content and stacking them one above the other. This makes it possible for the user to scroll through the entire page in a vertical arrangement on a smartphone for instance compared to seeing it arranged across on the desktop.
Historically, designers have approached the web first and mobile as secondary. The buzz word associated with this is Graceful Degradation. The content from the desktop browser is first gracefully degraded to fit the tablet and then further adjusted to fit the smartphone. Mobile first argues for the concept of Progressive Enhancement. Think smartphone first and then build up a full fledged desktop browser. Mobile first strategy to put it simply accounts for some of the constraints of a smart phone like avoiding adobe flash, smarter use of bandwidth e.g. avoiding big image files, avoiding triggers like hover to activate something, avoiding concepts like right-click, double-click and so on.
The key reason to adopt the Responsive web design methodology is speed to market. It is hard enough getting one product ready for public use through the software development lifecycle. Imagine getting three versions of the software done. The thinking is that the team can focus on the intent of the app while accounting for certain constraints of mobile device and allow technology to make that app consumable on a number of devices.
When combined with Mobile First, Responsive design is a reasonable way to develop moderns applications.
The need for speed exists for both startups and established companies. This was the approach we took after much deliberation in my previous company.
There are more people accessing application and sites on their mobile devices than desktops now. It is extremely important to provide the experience that is tailored for the device rather than just adapting the content to fit the device. How users typically use the device and what actions they are used to on the device must be factored into the design. This is especially true if you are selling something through your app. The responsive design may still be fine for content distribution.
It is time to develop specifically for the device and not employ build once use everywhere mindset. Whether you build Native applications or Web applications that run on the device is not that important as long as you are complying with user expectations and making the application easier to use on the device – living within the constraints but also making use of the richness of sensors and input capabilities (touch, camera, microphone for example) of modern devices.
The typical use of the Staples site is to buy something you are looking for. Making it easier to search, compare and buy on the smartphone is as important as making it easier to search and buy on the desktop via a browser. While the end goal is the same, the how you get there is very different on the two devices.
I think Staples has come to the right conclusion by putting customer first and making it easy for that customer rather than ease, time and cost of development.