Год назад обсуждали дизайн таблицы почтового клиента Микрософт Аутлук. Сегодня поговорим о таблицах в Тандерберде.

При эксплуатации почтового клиента Мозила Тандерберд, у меня часто возникает такой сценарий. Я открываю папку «Исходящие», и визуально просматриваю список отправленных писем, начиная с последних и дальше вниз (в прошлое). Например, помню что письмо отправил несколько дней назад, но в какой именно день — не помню. Нужно посмотреть какие вообще были дни, чтобы вспомнить.

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

Такое представление явно избыточно. На рисунке справа предлагается улучшенный вариант. Здесь дата указывается только один раз для одного дня. Теперь поиск по дням происходит намного быстрее. Чтобы перейти к следующему дню достаточно лишь перенести взгляд к следующей дате. Попробуйте посчитать количество разных дней еще раз. Чувствуете разницу?

image

А то, что часы и минуты не выставлены по весам разрядов — это вообще детский сад, который объясняется ленью программистов. Обычно структура типа DateTime сериализуется в формат dd.MM.yyyy HH:mm в виде одной строки, и никто уже не хочет заморачиваться, что в часах может быть как две цифры, так и одна. Тем не менее, это не является оправданием.

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