Practical UX & UI for Developers


Frameworks and Guidelines for delivering Exceptional User Interfaces

KyleMit @KyleMitBTV

Survey - Let me know how I did!

Overview O

  • Terms ... shared terminology
  • Frameworks ... conceptual models
  • Processes ... how to fish
  • Components ... improve elements
  • Resources ... learn more

Terms

UX ≠ UI

UX =

User + Experience

+

User Experience Facets

  • Surface
    • Graphic Design
    • Visual Design
  • Skeleton
    • Interface Design
    • Navigation Design
  • Structure
    • Interaction Design
    • Information Architecture
  • Scope
    • Content Requirements
  • Strategy
    • User Needs
    • Business Objectives
  • Support
    • Marketing
    • Help Desk
The Elements of User Experience by Jesse James Garrett

Interface

Shared boundary between two layers
  • API - Application Programming Interface
  • UI - User Interface
  • GUI - Graphical User Interface

Fundamental Principles of Interaction

  • Discoverability
    • Affordances ... what actions are possible
    • Signifiers ... where the action should occur
  • Understanding
    • Conceptual Models ... universe of actions
    • Mapping ... layout of actions
    • Feedback ... results of an action
The Design of Everyday Things by Don Norman

Usability vs. Learnability

Kiosk vs. Cockpit
Kiosk
Cockpit

Increased Repeated Exposure

Usability vs. Learnability by Jeff Atwood

Frameworks

  • Navigation
  • Proximity
  • Emphasis
  • Philosophies

User Flows & Navigation

  • Path - Set of Steps needed to complete a task
  • Step - Effort to complete sub-task
    • Length - Amount of Time to complete
    • Width - Amount of Difficulty to complete
    • Mental difficulty
    • Physical difficulty
The Science of Great Design by Mark Miller

Path Example IRL

ex. Walking a tightrope
tightrope
  • Climb stairs to top of building
  • Put on harness, helmet, equipment
  • Walk across buildings on tightrope

How to Make a Path Easier:

  • Shorten Steps
  • Widen Steps
  • Reduce # of Steps
  • Alternative Steps
Note: To introduce Friction, do the opposite

Conceptual Relationship & Proximity

  • Conceptual Relationship
    How related two elements are to one another
    e.g. [Equivalant ... Opposed]
  • Proximity
    The physical space between one element to another
    e.g. [Contained ... Distant]

Conceptual Relationship & Proximity

The Science of Great Design by Mark Miller

Proximity Example

ex. Elevator Buttons
7 8 9
4 5 6
1 2 3

Proximity Example #2

Can we improve this?
Are you sure you want to continue?
No
Yes
Together, we can end "Yes No" Buttons by 2020

Emphasis

Every pixel on a screen conveys information that your brain must process
  • Emphasize with thickness
  • Emphasize with contrast
  • Emphasize with color
  • Emphasize with size
  • Emphasize with spacing

Informational Relevance & Emphasis

  • Information Relevance
    How important a piece of information is to the users goals
  • Emphasis
    The ability to draw attention to some pieces of information over others

Informational Relevance & Emphasis

The Science of Great Design by Mark Miller

Design Philosophies


  • Human Centered Design
  • Conversational Design
  • Universal Design

Process


Software Development Design Life Cycle (SDLC)

Jakob's Law

Users spend most of their time on a site that's not yours

Jakob's Law of Internet User Experience by Jakob Nielsen

When adding components...

Check if a similar UI Metaphor already exists:
  1. Somewhere else in your project
  2. In whatever framework you're using
  3. In any commercial products
  4. Otherwise, do lots of research and design

Prototyping

Balsamiq
...with Balsamiq

Hallway Usability Testing

Grab a random person from the hallway and watch them use your product

Do's & Dont's
  • Watch
  • Listen
  • Justify
  • Ego
Why You Only Need to Test with 5 Users by Jakob Nielsen

Project Paper Cuts


  • Every Month
  • For One Hour
  • One on One
  • Review minor issues
  • And fix immediately

Fix Everything Two Ways


  1. Help Desk
  2. Code Base
Seven steps to remarkable customer service by Joel Spolsky

Components

Buttons

  1. Use Good, Descriptive Verbs [1]
  2. Use Signifiers for discoverability & feedback
  3. Bigger Easier (Fitts' Law)

Example

Create Here

User Selection

# Options Component
<5 Radio Button
<20 Dropdown
<50 Filterable Dropdown
50+ Filterable Dropdown
With Template

Tables

Rows Style
<10 Display
>10 Sort
>25 Sort + Filter
>50 Sort + Filter + (client) pagination
>500 Sort + Filter + (server) pagination
>1000 Sort + Filter + (db) pagination

Resources

Design Languages


Online Learning

Books

Video

Podcasts

Thank You

Yes, You!

Like, sincerely, I'm really excited to be able to talk about design with y'all

Questions ¿

Fork me on GitHub Download as PDF Printable Version Presentation View