UX Design for Mobile Developers is a free/paid course created by Google to help developers become UX designers.
In this course they teach developers how to start becoming UX designers. According to the authors, when starting a new application or redesigning an existing one, it is important for developers to restrain themselves from immediately typing code in and start thinking in terms of user experience: what are they trying to achieve, who is the target user of the application, what would the user like, what is the user’s list of desired features, what application use cases should be considered?
One of the first steps in UX design is to determine a persona, a type of user the application is targeted at, establishing the use cases and selecting a feature set that would make them happy. According to the authors of the course, developers need to be careful not to create a feature list that would satisfy themselves but one for the persona they are targeting with their application. It’s not about what the developer likes but rather what the user likes.
Another step in UX design is talking to actual users and finding out what they would like, what is working for them and what is not, what improvements they would like to get, etc..
Another lesson to be learned is that developers need to get their heads out of the code and see the overall picture, a technique they call “Low-Res Wireframing”. One should consider carefully how the user is going to use the application, what is necessary and what is not, what are the steps the user has to make to use it, etc. based on the task the application is trying to accomplish. A developer does not need to consider low level code implementation at this point because that might affect how the UX is designed.
UX design for mobile applications is different from desktop ones. Developers need to understand and design within the limits set by several mobile constraints: limited data, limited battery, divided attention, handedness (how devices are held in hand), small screen and network intermittence. The course offers tips on how to design an application taking the constraints into consideration.
The last lesson of the course provides guidance on how to make the best of Android to provide a great mobile user experience. While mobile devices come with some limitations compared to the desktop, they do come with a number of sensors that help build the user context which can enrich an applications:
- What is the user doing? Is it night, is he moving, running, travelling?
- Where is the user? Information collected from the GPS sensor or the network connection.
- Who or what is she/he near to? Correlating the user’s position with that of other users or landmarks.
- Who is the user? Information collected from a social network like Google+.
The user context can be obtain through Google Services which provides APIs for getting the whereabouts of an user.
The lessons of the course come as short videos presented by two authors, and they are free. The course also includes assignments. An example is choosing an application you don’t like and suggesting how it could be improved. Another is starting from scratch and outlining the ideas for an application. This part is of the course is free. The paid subscription includes assignment advice and feedback, access to a a coach which answers related questions and reviews the code, a review of the final project and a certificate.
UX Design for Mobile Developers is a course for beginners, but Google has a few other intermediate or advanced courses, such as: Developing Android Apps, Developing Scalable Apps, Mobile Web Development, Website Performance Optimization, or HTML5 Game Development.