The goal of this course is to help you build better apps by helping you become a design-minded developer. In Lessons 1 and 2, you will learn widely applicable design principles and techniques like high-level UX planning and user-centered design.
In Lessons 3 and 4, you will focus on design ideas specific to mobile/Android development. Mobile platforms all come with a unique set of constraints and opportunities and this lesson will help you respect those constraints while taking advantage of the opportunities.
Lesson 1: What is User Experience?
In this lesson you will think about User Experience from the highest level. You will break down complex apps into a small number of simple steps and think about their big picture flow (including ones that you have worked on in the past or are currently working on).
- What is UX?
- UI vs. UX
- High-level planning
- Low-fi wireframing and prototyping
- Two concrete app improvements to implement now
Lesson 2: User-Centered Design
In this lesson you will learn how to design apps that your users will love. You will learn the importance of user-centered design, what happens when you design for everyone/no one (spoiler alert: it’s generally bad), and how to effectively use tools like personas and use cases to ensure a baseline level of quality for anything you build. You will also learn a bit about how to use cheap and easy user research techniques to make well-informed design decisions.
- The perils of ignoring your user
- How to create effective personas and use cases
- Low cost user research
- How to use personas and use cases to inform feature lists
Lesson 3: Designing for Mobile Constraints
Mobile design and development come with constraints and opportunities. This lesson is about the constraints. You will learn what constraints are inherent to mobile development and how to use design tools and techniques to ensure your app actually respects those constraints.
- The 5 big constraints: limited data, finite battery, hand-held usage, divided user attention, and small screens.
- The implications of these constraints and what happens when you get them wrong.
- Advanced wireframing
Lesson 4: Designing for Android Delight
At this point, you will already know how to make a solid mobile app that users like. But like isn’t enough! In order to be really successful, your app needs to be loved. In this lesson, you’ll learn how to leverage the power of Android by using device sensors and Google APIs to understand your user’s context.
- Android sensors
- The importance of contextual apps
- The "components" of context
- Android APIs (Google Play Services)
In your final project, you will create high/mid-level design specifications for your own incredible Android app. You'll begin work on this project in the Assignments for Lesson 2, and continue working on it until the end of the course.
When it's finished, you will have the blueprint for an app that will:
- Be designed for a specific target user.
- Have an almost-perfect high level flow.
- Avoid all major mobile pitfalls.
- Use Android sensors and APIs to understand your user's context and deliver context-aware moments of amazement that they will love.