A polite rant on mobile UX

As an Android developer, I’ve learned a few lessons about mobile User Experience that are worth talking about, because, as it seems, many people are unfamiliar with the basic concept of User Experience (UX) and difference between platforms. We’ve all seen mobile apps that are looking great at first glance, but after using them for about 5 minutes, we just gave up because of the horrible UX.

First, let me give you a few hints on how to improve this aspect of mobile apps, then I will point out a few more things that are more specific to Android, as a platform.

General aspects

The “ow” zone

In his 2011 book “Designing Mobile Interfaces”, Steven Hoober defined the term “thumb zone”. This refers to a specific zone on the mobile device’s screen, which is comfortably reachable for the user by using their thumb. The reason behind this term is that in many cases Mobile Users hold their device with one hand, and perform actions using their thumbs.

The so-called “ow zone” is a zone that is hard to reach with your thumb, like corners of the screen.

Image from http://ezmarkup.com

So as a conclusion, always remember to position your interactive UI elements in such a way that they are easily reachable with your thumb.

Update

dr4g0n pointed out on hackernews that this image (and usually UX) tends to forget about left-handed users, which is a very valid point.

The screens are usually small

Designers tend to forget that the Mobile User is not a Web App User. This usually results in frustrating aspects of an app, like congested screens, buttons that are hard to reach/tap on, etc.

Regarding the elements’ sizes, based on my experiences, the most common mistake that designers make is that they forget that a user’s finger’s size is not 1x1 pixels. In addition, using a finger is not precise either, meaning that users can’t aim perfectly for a given element on a mobile user interface.

Baseline is: always fit your content to the screen size so that it is easily readable, elements are not congested (hence they reduce the ambiguity) and the interaction is flawless.

Network traffic and battery life is always a concern

When working in a team, the discussions between the frontend and backend guys are always entertaining. For example, when designing an API, all members of the team should keep in mind that a mobile device runs on a battery that has limited lifetime, and the network data connection is not a resource that developers should waste (because mobile data is slow and in addition, network data access costs a lot of money in some countries).

So, always remember to limit the consumption of resources as much as you can when implementing a feature.

Picture belongs to http://www.oneclickroot.com

Keeping these aspects in mind while designing & developing apps will increase your app’s UX and will boost the app’s performance also, which results in happy users / customers.

Now, let me point out a few common mistakes that designers make when designing an Android app.

Moving to Android UX

First and foremost: Android is Android. Do NOT force extraneous functionality, navigation, UI elements, etc.

Now this is an issue I meet a lot. People tend to think that a mobile application should LOOK & FEEL the same on all platforms. In my honest and humble opinion, the only thing that should be the same across platforms is the idea and features, but NOT how the app looks / behaves. The implementation should blend into the platform.

Every platform has it’s guidelines and best practices on building user interfaces, and designers / developers should respect these.

Lots of times a web application is ported to only one mobile platform. Then, at some point in the future, a decision is made to port to other platforms also, but they want to keep the existing designs and navigation (causes here may include lack of time, lack of money, lack of other resources, but the most dangerous is: lack of knowledge from the person who makes the requirements).

DON’T DO THIS. Don’t apply the already existing design to a new platform. Instead, create a whole new design around the concept. The Mobile User is familiar with the platform he/she uses — including the navigation between screens, functionality, widgets, positioning of elements. People feel more comfortable if they know how to use your app’s components — don’t take this feeling away from your users. Always remember that a user chose his / her phone’s platform for a reason — don’t force behavior or look & feel that is odd for the platform.

Here’s a great link to the official Android Developer site 
 on Pure Android design.

Design your app for specific users

Depending on your target audience, strive for accessibility, create layouts that can be used while e.g. driving, try to make your application adapt to the environment (for example mind the time of the day) if it makes sense, try to cover your user’s languages (and also reading directions — right to left, if needed, check out the i18n checklist for Android), and so on. Users will be pleased to see that you support them.

Keep the UI flawless

Don’t do work that you don’t need to do. Don’t allocate memory if you can avoid it. This will boost the performance of the app. Also, try to provide partial results, or offline data (in case there is some data exchange between your app and a remote server) if possible.

Small things make a huge difference

Minor things like nice and smooth animations, interactive loading indicators, personalized messages could make many of your users smile.

General aspects

  • Place your UI elements on the screen so they area easily reachable even with one finger
  • Keep in mind that screens are relatively small
  • Don’t waste resources: it improves the UX
  • Always design for Android, make your app blend into the platform
  • Support your users: design for accessibility, offer language support, make your app adaptive to the environment
  • Eliminate as much jank as you can, keep the UI flawless
  • Add small things that can delight your users

This list is far from being complete, it contains some of the most common aspects of Mobile User Experience. Next time I will dig deeper into Android design & UX by using a case study. Also, feel free to add your thoughts in the comments section below.


Originally published at blog.hipwerk.com on February 18, 2015.

A single golf clap? Or a long standing ovation?

By clapping more or less, you can signal to us which stories really stand out.