Once the product's task is known, design the interface first; then implement to the interface design.
Jef Raskin Famously Quoted