Understand intent.
Start with the person’s goals and context. Remember preferences they choose to share, and make them easy to correct.
Help people get started.
Offer useful next steps grounded in the work at hand. Make it easy to begin without having to craft the perfect prompt.
Let people shape the outcome.
Keep results editable. Give people previews, comparisons and precise controls so their judgment stays part of the work.
Keep people oriented.
Show meaningful progress, what changed and what still needs a decision. Make the next step clear.
Respect attention.
Carry routine work forward. Interrupt when a decision needs someone’s judgment, and make clear why it matters.
Make recovery easy.
Preserve work, support changes in direction and make actions reversible wherever possible. Help people move forward when something goes wrong.
Be honest.
Make clear what’s proposed, what’s been attempted and what’s verified. Show uncertainty and limits where they affect someone’s decision.
Show information in context.
Present information in relation to the person’s context. Make its meaning clear, and preserve precision where it matters.
Shape how people feel.
Software should make people feel something. Be intentional about that feeling, and shape the details, interactions and feedback to support it.
Design for delight.
Bring care and character to everyday interactions. Use thoughtful details, satisfying feedback and useful surprises to make the experience a pleasure.
Deeply care and give a shit.