Skip to main content
Conventional
UI
Conventional
UI

UI from conventions

Conventional UI is a learning resource and reference for people who want to make interfaces that communicate to the users and their expectations. It’s for people who want to build the web on concrete foundations instead of cliches and abstract subjective concepts such as contemporary style, branding and delightfulness.

Comprehension over clicks

Knowing the conventions of the interface elements means we can make decisions with verifiable arguments about how users comprehend the interface.

Our job is not to shepherd users to clicks but to get them to understand. The meaning of an interface, like words, is rooted in conventions. Both rarely have one immutable meaning. Context and delivery matter. We communicate better when we know both the standalone and combined meanings.

Intuitive doesn’t mean there’s no need for explanation or learning; it means that every site and service doesn’t reinvent a language.

Element facets

Knowing an interface element means knowing its facets: tag, attributes, usage, behaviour and defining visual properties. The more we work with them simultaneously, the better the interfaces get.

Splitting visuals and code reduces our ability to communicate sufficiently with the users. Properties that don’t fall into either, or require combined knowledge, fall to the wayside. Some refer to this as “the gap”, but it’s more of a dumping space for responsibility, knowledge and ownership.

Knowing and working with conventions is a way out of split workflows. Who gains from us not using our knowledge actively?

The coloured rectangle

Handoff-based workflows and UI libraries reduce elements to organisation-coloured rectangles.

They take freely available elements, repackage them in a bloated JavaScript framework and sell them back to oblivious organisations while locking them into code that is incompatible ten years in both directions. These cake mixes feature graphic assets so developers can keep coding as little frontend as possible while everyone else doesn’t code anything.

The output seems to be made by people who have only heard stories of interfaces and are trying to recreate them. Every element is made as part of a perverted branding system.