26 января 2014

Алан Купер."Об интерфейсе. Основы проектирования взаимодействия". Feedback

Приветствую в очередной раз читателей моего уютненького бложика!
Сегодня я представляю вам свой отзыв на книгу Алана Купера "Об интерфейсе. Основы проектирования взаимодействия".

"С чего вдруг сурового Java программиста понесло в область проектирования интерфейсов?" - спросите вы.
"Это крайне важная область разработки ПО, т.к. конечный пользователь видит и оценивает ваш продукт прежде всего по ней, а не по вашим "замкам из слоновой кости" в виде back-end'ов" - отвечу я вам.

Подробности под катом.

Вся эта история про интерес к данной области началась внезапно после случайно попавших на глаза докладов Константина Горского из Яндекса про дизайн интерфейсов. Эти доклады не были наполнены стандартными словами и приёмами, которые мы слышим в каждой статье или докладе, но товарищ очень хорошо донёс идею, что хороший дизайн (будем его отождествлять с проектированием взаимодействия) должен начинаться задолго до появления первых макетов или прототипов. Мы должны хорошо узнать и представить пользователя нашего проекта, его привычки и предпочтения, должны дать ему удобный способ достижения его целей. И только тогда у нас есть шанс дать пользователю именно то, что он хочет.
Этот  подготовительный этап можно сравнить с этапом построения архитектуры в software engineering - накосячив тут, мы уже никакими "котятками и CSS3" на экране не удержим аудиторию в нашем продукте. Особенно если задачи продукта весьма серьёзны и аудитория весьма требовательна (то же банковское ПО).
Вот именно эту идею и постулировал докладчик, которая намертво вцепилась мне в сознание.

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

В конце одного из докладов был список литературы, с которым рекомендовалось ознакомиться для "дальнейшего погружения в тему". Одной из них и была книга Алана Купера.

Эта книга - настоящее открытие для проектировщика взаимодействия. Многие говорят о ней, как о Библии в области UI (User Interface). И ,честно говоря, я даже не думал, что кто-то может настолько глубоко и детально (в книге более 600 страниц!) расписать такой объём работы, который нужно проделывать специалистам по UI. Все этапы весьма чётко расписаны.
Как в последствии оказалось - данная книга была написана для стандартизации такого непростого процесса (создания UI) в одной из контор, где работал автор.

Достаточно посмотреть оглавление и вы увидите, что непосредственное детальное проектирование UI начинается только примерно в середине книги!
Только представьте сейчас - сколько важных вещей вы (как, возможно, разработчик UI) скорее всего, пропускаете в своей повседневной работе!
Цель этой книги - открыть вам глаза на полную картину всего происходящего.

Русскоязычное издание оригинала, к счастью, весьма приличного качества. Вы увидите много примеров UI и приёмов, которые стали успешными, из интерфейсов Apple, Microsoft, Adobe.
Но вы в этой книге не увидите почти ничего конкретно о web UI. Но это и не суть важно, ведь книга в первую очередь о том - как надо подходить к проектированию UI, а примеры - это всего лишь практические реализации данных подходов и общий опыт может быть с лёгкостью перенесён на любую платформу.

Но, как можно ожидать при таком скрупулёзном подходе - некоторые предложения автора весьма сложно технически реализуемы. Автор учит нас отходить от модели реализации интерфейса в область ментальных моделей пользователя. Простыми словами - проектировать UI должны те, кто заботится о пользователе, а не кто пишет код. И это может быть весьма технически нетривиально.

В общем, книга очень интересная и заставляет задуматься о многих вещах, благодаря которым именно ваш продукт может стать привлекательным для пользователя. Подходит не только специалистам по дизайну и UI, но и менеджерам, программистам, т.к. позволяет "взглянуть под другим углом" на устоявшиеся подходы в создании user-friendly software.

Спасибо за внимание!

Комментариев нет:

Отправить комментарий