На мой взгляд, в проектировании интерфейсов важна как общие концепция и подход, так и мелочи. Именно их часто упускают. Но недавно я встретил два положительных примера, которыми хочу поделиться.

Сегодня редактировал заметку в календаре на телефоне. В заметке есть время начала и конца мероприятия — ну это такой тип заметки. Время стояло 13:30—15:05, я поменял время начала на 11:45, а время конца автоматически поменялось на 13:20. Мелочь, а приятно.

Второй пример из моей практики проектирования. Последней лабораторной по программированию у меня было создать для имеющегося калькулятора векторов графический интерфейс (и немного структурировать работу программы). При создании вектора нужно в спиннере выбрать его размерность. При создании второго — тоже. Но операции скалярного умножения и сложения (а это всё, что может наш калькулятор) не определены для векторов разной размерности, поэтому при создании второго вектора значение его спиннера автоматически устанавливается на значение первого (это оправдано почти всегда). А как это сэкономило время при тестировании!