Lately, I have been hearing the internets buzzing about Responsive Web Design (RWD) as being the be-all and end-all of modern web design practice. There are both positive and negative blog posts about RWD – this one in particular is not intended to be either.
For the most part, I think RWD is a great implementation solution for displaying content for the mobile context. But so are native applications, and sometimes as well as single-layout desktop-based websites. Most modern mobile devices provide adequate support for all the types I just described. The problem I see is the lack of discussion happening before a particular implementation solution is decided on.
I will admit that when the concept of RWD was first introduced, I was excited at the possibilities it proposed and quickly jumped on board to implement it on the mobilization of our Yarn project, a home-built IRC clone. Without first going through a good User-Centered Design (UCD) process to understand the user requirements, Yarn’s mobile component, as it turned out, was far from a success (think long loading times!). In hindsight, I should have asked more questions and done more research to help inform my decisions better.
My fear now is that other mobile projects may see similar results if the focus prior to starting the project is centered around specific implementation solutions, rather than choosing the proper implementation solution based on what the user requirements dictate.
In hopes to make up for my previous failure as a UCD practitioner, I decided to compile a list of questions in hopes of helping others get a better understanding of their current or future mobile projects as well as share some important lessons our team has learned throughout our mobile journey.
What are you trying to do with mobile? Do you have a mobile strategy?
What is the major driving force behind your desire to develop for mobile? Were you told to make it mobile accessible OR are your users asking for mobile support? Both? How many mobile devices are accessing your content?
Lesson: Look for evidence to help shape and develop your mobile strategy. Server logs are a great way of determining what users are trying to do with mobile. You can get a picture of specific pages they are accessing as well as what mobile devices they are using. I will admit that I didn’t look at our server logs before deciding on the implementation. Supporting a single code-base through CSS made a lot of sense at the time. However, the ease of implementation was great for us designers and developers, but the end users’ experience wasn’t.
Supporting a single code-base through CSS made a lot of sense at the time. However, the ease of implementation was great for us designers and developers, but the end users’ experience wasn’t.
What are your users really asking for?
Does it make sense to support their requests in a mobile workflow? One user may ask for something that the majority of your users simply are not asking for. How do you handle and prioritize such requests?
Lesson: Try to get a real understanding of what your users are trying to do. They may be asking for a specific piece of functionality or they can be asking for all. I didn’t ask enough questions to understand what sort of workflows made sense to support. The lack of knowledge and understanding led to trying to support all the workflows I was aware of for our desktop application. I was simply trying to make the design fit within a smaller screen. This approach would ultimately provide mobile Yarn with many performance challenges after launch.
What is the best user experience? Do you need to support mobile?
What does your website or application do? What type of information does it provide? When it comes down to it… not all use cases can be handled in a mobile context. Yes, your users are spending more and more time on mobile devices. Some mobile experts argue that users want to do everything they can on a mobile device. Does it make sense for YOUR users to be using your website/application on mobile? Ultimately, it is up to you to do the research to find out what your users want.
Lesson: Decide on what the best user experience possible means to your website or application. Be aware of what the experts are saying and preaching, but plan your mobile strategy around what makes the best sense based on what you know about your users. Avoid being dogmatic about particular implementation details and use good judgement based on solid understanding of your users and what they are trying to accomplish in the mobile context.
What development expertise does your team have? Are you aware of technology limitations of your current infrastructure? Does it limit the mobile solution you can provide?
Lesson: We went with a mobile web (responsive) approach since we were aiming for something quick. Our developer at the time did not have any experience with developing native applications. We are web development experts so focusing on a web approach was the natural fit. Once everything was built, we quickly realized some of the technology limitations.
We now have a goal of becoming native development experts in addition to learning more about mobile web development and RWD. The main lesson to learn is to not let the lack of understanding dictate how to provide the best user experience possible. Native works for some cases as does mobile web for others and maybe desktop as well. Sometimes, it has to be all of the above! Understanding your user requirements will help guide what to build and how.
So, before you jump straight into implementing your responsive design or redesign, you will be good UCD practitioners and stop to think about your users and their requirements. We’re onto a new mobile projects now, and along the way, we’ve learned to ask some valuable questions and continue to learn many lessons that apply to mobile.