albenik: (Default)
Давно хотел начать писать про юзабилити, в мире интерфейсов, как нигде хорошо, видно отсутствие желания думать головой помноженное на карго-культ правил юзабилити.

С одной стороны разработчики будучи оставлены наедине с интерфейсом выдают, какие-то совершенно мостообразные поделки привидевшиеся им на пятую ночь непрерывного кодинга, с другой стороны толпа людей называющих себя дизайнерами, а то еще и юзабелистами насмерть бьется за гайдлайны, pixel-prefect, оптимизации и прочие радости жизни, напрочь забывая (хорошо если просто забывая, а то большинство, ведь и узнать-то неудосужились), что люди разные, и деятельность у них разная, и, что удобство интерфейса по каталогизированию графических файлов, и удобство просмоторщика фотографий из каталога не одно и тоже.

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

Итак, встречайте: Skype for Linux:
Вообще про скайп у меня много "добрых" слов, начиная с того, каждая версия скайпа Win, OSX, Linux, iOS, Android обладает, каждая, своей собсвенной логикой вазаимодействия максимально сильно отличающеся от других версий. Хотя казалось бы, чего там можно было навертеть.

Но приступим:

Начнем с того, что у скайпа под линукс в отличии от версии под win и macos многооконный режим, мне он не нравиться, но самое главное, что работая одновременно и под macos и под win и под ubuntu мне приходется минимум раз в пару дней привыкать к поведению скайпа под каждой из систем. Я конечно уже выработал у себя рефлекс в зависимости от системы. Вопрос в другом, в данном случае вообще не было необходимости ничего изобретать или оптимизировать достаточно было просто сделать единообразно на всех системах. Нахрена мне на ровном месте чего-то запоминать, когда в этом нет ровно никакой необходимости.

Дальше больше.

Окно чата:
Skype2

Все удобно, слева выбор недавних бесед, никакой экзотики, вопрос как его открыть:

Skype1c

Если вы думаете, что достаточно кликнуть по иконке скайпа в трее и, затем, кликнуть "Recent Chats", то вы глубоко ошибаетесь! Для того чтобы открыть окно чата, я должен дополнительно открыть подменю со списком недавних пользователей с которыми я разговаривал, решить для себя какого пользователя я хочу открыть (даже если я решил просто залезть в окно чата, пощелкать по недавним пользователям посмотреть, я все равно должен сразу решить какого пользователя я открываю первым), и аккуратно, подчеркиваю аккуратно перевести курсор на пункт меню с этим пользователем и только потом кликнуть по нему, ведь если я неаккуратно поведу мышкой, подменю может внезапно закрыться.

Skype1b

Давайте теперь разберем "подарки" от скайпа по пунктам:

Для того, чтобы открыть недавний чат конкретного пользователя мне нужно четыре действия, одно их которых сложное:
- кликнуть по иконке в трее
- выбрать пункт меню "Recent chats"
- аккуратно выбрать мышью кокретного пользователя в подменю (я считаю это отдельным действием, т.к. не могу гарантированно кликнуть по пользователю просто дернув мышью на него, а вынужден либо очень аккурано вести курсор, либо повторять действие если курсор повел неудачно). При этом необходимость выбирать пользователя когда я просто хочу открыть окно чата, пусть даже я потом и выберу в нем пользователя, вводит меня в тупор раз за разом.
- кликнуть по пользователю.

Если бы окно чата открывалась просто по пункту меню "Recent chats", то это было бы всего три простейших действия:
- кликнуть по иконке в трее
- кликнуть по меню Recent chats"
- кликнуть по пользователю в окне чата. (в лучшем случае этого пункта может и не быть, если окно откроется сразу на нужном пользовтаеле).

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

Все, что я могу сказать ребятам из Скайпа это "ма-лад-цы, блин!"

PS
В качестве бонуса, если подумать еще чуть-чуть, то получается, что в рамках одной программы в Скайпе умудрились реализовать аж три абсолютно разных интерфейса со списком контактов.
1й - собсвенно спискоконтактов в отдельно окне (обычно располоджен справа)
2й - подменю пункта "Recent chats" в трее
3й - список контактов в окне чата (слева)
albenik: (Default)
Есть в мире людей много, делающих вещи нужные и полезные. Только делют эти вещи, люди, почему-то, через жопу! В результате получается вещь полезная, мол, бери да пользуйся, только, вот, то взять не получается, то попользоваться.
Сильно расстраивала неправильность сия людей умных, придумали они термин специальный юзабилити называется, и решили они, что нужно эту юзабилити улучшать всячески, чтобы вещами нужными и полезными, пользоваться люди могли без проблем разных.
Долго ли коротко, проникся люд простой идеями юзабилити... и начал лепить кто во что горазд!

Тут сказка заканчивается, и начинается суровая правда жизни...

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

На практике же, наилучший результат дает, тестирование на обычных пользователях (спасибо кэп! :)) или, на крайний случай, "выключение" мозга, и попытка выполнить типовую операцию в продукте, при минимуме внимания и анализа ситуации, с последующим "включением" мозга обратно для анализа полученного опыта. Если проблемы найденый в процессе тестирования получается обосновать с точки зрения знаний о юзабилити, значит мы действительно нашли проблемное место и, даже, уже почти получили ответ, что делать.

Выключение мозга


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

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

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

Включение мозга и анализ информации


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

Во-первых, может оказаться, что это и не проблема вовсе, а неудачно выбранный субъект для тестирования. Пример из реальной жизни: моя двухгодовалая дочь, прекрасно освоилась с тач-интерфейсом iPhone и Андроида, и после этого, долгое время никак не могла понять, что движение курсора мышки на экране ноутбука и движение её пальца по тачпаду взаимосвязаны и не надо тыкать пальцем в экран. Но это же не означает, что тачпад или мышка неудобны сами по себе.
Во-вторых, сразу не всегда понятно почему данное конкретное действие неудобно. Так например, значок нового сообщение в трее можно не заметить/воспринять из-за нестандарного внешнего вида, а можно из-за того, что привычная сигнализация о новых сообщениях в данной ОС, это дополнительный значок на иконке программы, а не в трее. Или пункт меню может быть предельно логично расположенным, но за счет этого находиться в неудобном месте экрана.

Безусловно, перебор всех возможных вариантов "почему неудобно" — тяжелый и бесполезный труд. И тут нам на помошь приходят те самые метрики юзабилити. Будучи примененные с умом и юмором (важно! :)), они позволяют не только определить основные параметры проблемы, но и сразу теоретически проверить, что будет если поменять один или несколько проблемынх параметров. Например насколько сильно перемещение кнопки в другую область для улучшения доступности, ухудшает логичность её расположения.
Так же, метрики юзабилити, позволяют нам аргументированном отставивать свою точку зрения, ведь мы же живем в реально мире, где на одной чаше весов лежит удобсво использования продукта, а на другой стоимость его разработки/доработки, и ничем не обосновнанное заявление, "я вижу что тут неудобно", в то время как остальным участникам обсуждения "все удобно", вряд-ли, будет удачным способом начать диалог и сделать проект лучше.

Поэтому тестируйте еще раз тестируйте, обязательно анализируйте, обосновывайте, но, самое главное, не забывайте думать головой! Иногда отсутствие оптимизации является лучшей оптимизацией!

Profile

albenik: (Default)
albenik

September 2012

S M T W T F S
      1
2345678
9101112131415
1617181920 2122
23242526272829
30      

Syndicate

RSS Atom

Style Credit

Expand Cut Tags

No cut tags
Page generated Sep. 26th, 2017 03:51 am
Powered by Dreamwidth Studios