Our principles

Every program has an internal concept of what it’s doing. A good design makes sure the user’s mental model (how they think it works) aligns with the system model (how it actually works).
Great UX strikes a balance: new users can succeed quickly without training, while experienced users can work efficiently without being slowed down.
Affordances are visual or physical cues that suggest how something can be used. A button looks “clickable.” A slider looks “draggable.” Good design makes functionality obvious at first glance.
Consistency means that similar things look and behave the same way, both within a product and across platforms.
Feedback is the system’s way of communicating what’s happening to the user.
Good UX design anticipates mistakes and allows users to recover easily.
Cognitive load refers to the mental effort required to use a system.
Every option or action presented to the user should serve a clear purpose.
Small design details — from spacing and alignment to wording and micro-interactions — significantly affect user experience.
Software should behave according to user expectations, not the developer’s assumptions.