Решил пописать на тему, в которой не являюсь никаким гуру (в
остальных, то есть, как бы являюсь :-) ), но которая меня сильно
интересует, и в которой я успел нахвататься там и здесь всяких полезных
вещей. Это я о юзабилити. Хочу делиться своими соображениями и очень расчитываю на комментарии настоящих юзабилистов!
Сегодня -- мои мысли про ценность стандартных контролов в формах на веб-страницах.
Стилизовать стандартные контролы очень любят многие дизайнеры,
потому что считается, что стандартные контролы выглядят уродливо.
Однако при этом забывают о том, что любая их стилизация автоматически
уменьшает удобство пользования. Намного ли -- отдельный вопрос, но то,
что уменьшает -- это практически обязательно. Сами дизайнеры любят с
этим спорить, говоря, что их новый контрол на самом деле даже более
удобен, потому что вот он теперь умеет так и эдак, а стандартный не
умел. Или выглядит теперь более заметно и привлекательно.
Но проблема в том, что изменение того, как контрол выглядит, а
иногда и того, как работает, означает, что пользователь не может без
оглядки использоваться навыки работы, которые он выработал для
стандартных контролов. Вместо этого он сталкивается с каким-то новым
поведением, которое требует от него прерывать то, что он хотел делать и
напрячься, чтобы выучить новый контрол, который может вести
себя в разной степени непредсказуемо. Вот это несоответствие поведения
системы ожиданиям пользователя и есть один из главных факторов,
влияющих на ее юзабельность (в минус влияющих).
Все это, видимо, выглядит крайне теоретично и, возможно, не очень
убедительно :-). Поэтому я приведу пару примеров, которые, собствено, и
натолкнули меня на написание этой статейки.
Текстовый контрол на toodoo.ru
Вчера я зарегистрировался на toodoo.ru.
Не помню уже, зачем именно, тем более, что откровенно считаю, что для
создания блогерского сообщества не надо ничего, кроме блогроллов,
пинг-беков и комментариев. Но сервис этот, в целом хороший, я просто
хочу использоваться как иллюстрацию, не более того.
Есть там страничка, где добавляются в блогролл блоги, которые я
читаю. Адрес блога вписывается в стандартный текстовый контрол,
нажимается Enter -- все. Удобно. Если бы не одно "но". Этот контрол
изменен: в нем сделано значение, вписанное по умолчанию -- "http://".
Видимо, это сделано для удобства: если кликнуть туда мышкой, то не надо вводить "http://" вручную. Но по сути ввод адреса вручную
-- это чуть ли не самый редкий вариант использования этой функции. Чаще
адрес будет переноситься из clipboard'а, и там "http://" уже будет. В
этом случае, правда, можно обойтись таким мудреным движением: не просто
кликать в поле, а кликать и, не отпуская кнопки, уводить курсор влево.
Тогда предзаполненный текст будет выделяться и полностью заменяться
новым вставленным.
Но мне это не помогло, потому что я пытался использовать этот
контрол совсем по-другому. Поскольку весь блогролл, который я хотел
перетащить в toodoo.ru, находится у меня на странице блога, я решил
сделать так:
- расположить два окна браузера рядом, в одном -- toodoo.ru, в другом -- мой блог
- хватать ссылки из своего блогролла мышкой и перетаскивать их прямо в текстовый контрол
- второй рукой нажимать Enter
Естественно, так не вышло, потому что текст ссылки со своим "http://" добавлялся справа от предзаполненного.
А теперь, пока вы еще не успели придумать всех синонимов к слову
"извращение" для описания моего способа, я перейду к сути этого примера
:-).
Что я хочу показать, так это то, что эти самые простые и уродливые
стандартные контролы на самом деле не такие простые, какими кажутся.
Они вылизывались во всех графических средах не самыми глупыми
инженерами многие годы и умеют уйму всяких мелочей для того, чтобы
удовлетворять запросы самых разных пользователей. Я согласен, что
перетаскивание ссылок из окна в окно -- не самый естественный способ
для очень большого числа людей, но он очень естественнен для меня. Не
потому, что мозги набекрень, а потому что я никогда, работая в оконных
средах, не раскрываю окна на весь экран. Поэтому я привык к очень
частому использованию drag-n-drop'а и мне не надо задумываться и
полусекунды, чтобы подвинуть окошки. Только и всего :-). Хотя надо
отметить, что люди с мозгами набекрень имеют то же право пользоваться
компьютерами, что и остальные.
К авторам toodoo.ru. Не возьмусь судить, как там
все внутри устроено, но если есть возможность, почему бы не разрешить
юзерам вводить URL'ы и с "http://" и без, а добавлять его уже на
сервере.
Некрасивый скроллер
На главной странице моего блога в текущем дизайне в шапке есть блок последних комментариев, у которого есть скроллер.
Чаще всего этот скроллер вызывают реакцию в духе, что это, мол, некрасиво.
Особенно в самом верху. Но отказываться от него я пока не собираюсь.
Потому что именно его стандартный вид однозначно опознается людьми, как
скролл-бар. А это значит, что:
- юзер тут же знает, что внизу в блоке есть еще текст, и до него можно доскроллиться
- что важнее, юзер, которого не интересуют комментарии, точно знает,
что в этом блоке никакого другого смысла нет, и на него можно не
обращать дальше внимание
Можно было бы сделать скроллер в стиле дизайна шапки, но тогда он
отнимал бы слишком большое внимание на выяснение того, что это такое,
означает ли для пользователя что-то нужное, и если да, то как им
пользоваться. Мне кажется, что это излишне.
Резюме
Стандартные контролы удобны. Во-первых, потому что привычны. Но
также и потому, что воплощают в своей реализации достаточно сложные
инженерные компромиссы между разными способами их использования.
Попытки любого отдельно взятого дизайнера улучшить их, опираясь только
на свой собственный опыт и привычки, почти всегда обречены на то, что
это удобство вылезет чем-то неприятным для людей, которые привыкли к
чему-то другому. Поэтому на сайтах, которые я делаю, я с большой
неохотой заменяю стандартные контролы на что-то другое. Обязательно
нужна какая-то веская причина, чтобы компенсировать неудобство от
изучения нового интерфейса его большей эффективностью.
softwaremaniacs.org/blog/2006/08/03/standard-controls/