Видео

Андрей Сикорский. Экспертная оценка интерфейсов

Стандартный
Видео

Дмитрий Сатин на WUD-Минск’2011

Из описания на Youtube:

Философский взгляд на нашу профессию. Как выглядит мир глазами юзабилиста? Что представляют собой Ад и Рай для юзабилиста? От чего он переживает уныние? А от чего приходит в восторг?

Стандартный
Статьи

Превентивный AJAX

Заработался, блин.
Залез на порно-сайт…..
Забыл, зачем залез, и начал выкачивать исходники их страниц, дабы посмотреть как у них реализован Ajax на сайте =(

— bash.org.ru/quote/393929

Про технологию AJAX широко заговорили в далеком 2005 году после запуска сервиса Google Maps и Google Search Suggestions. Тогда же с легкой руки Adaptive Path и Джесси Гаррета (JESSE JAMES GARRET) появился и сам термин «Асинхронный JavaScript и XML». Сокращенно — AJAX.

Главной фишкой, которая покорила веб-разработчиков в реализации Google Maps, была автоматическая подгрузка кусочков изображений (тайтлов) вокруг той части карты, которое отображается посетителю. Таким образом сайт в фоновом режиме заблаговременно подготавливал информацию, которую с большой вероятность посетитель запросит в скором времени.

Эта была чистой воды контекстная адаптация к изменяющимся целям пользователей и превентивная реакция на их действия.

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

И дальше началось. Все кинулись делать свои сайты быстрее, современнее, мощнее.

В сети появилось множество статей, раскрывающих всю «сложность» кроссбраузерной реализации «новой» технологии (96 года). Полки магазинов быстро заполонили книги типа «AJAX и PHP», которые несомненно покупались и окупались. Этот информационный бум в свою очередь породил толпы «программистов на АЯКСЕ», которых по убогости можно сравнить разве что только с «программистами на jQuery».

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

Браузеры, получив такой своеобразный пинок под зад, бросились наращивать мощности движков. С неистовой силой завертелось колесо веб-стандартов и инициировало большой взрыв новых технологий типа HTML5 и CSS3.

Апогеем AJAX-эпопеи можно назвать дыры растерянности в головах обычных людей, оставшиеся после hash-bang-модификаций и без этого не всегда понятных URL-ов. Парадигму полностью скриптовых сайтов подхватили мастодонты интернет-пространства типа Twitter’а и сервисов Google, задав курс и темпы развития для игроков поменьше.

Дело дошло до того, что поисковикам даже пришлось договариваться с разработчиками об индексации AJAX-сайтов.

Технология переросла в моду.

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

Хочется спросить, а где же реальная польза от AJAX?

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

Но ведь это все не видно нашим клиентам, не так ли?

Мне кажется, что пришло время развернуть технологические оглобли AJAX в сторону интересов посетителей наших сайтов. Время вернуться к истокам и заставить AJAX работать в пользу конечных потребителей. Время вспомнить, для чего на самом деле Google Maps незаметно подгружает кусочки карт.

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

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

В борьбе за клиента побеждает тот, кто обеспечивает более качественный сервис, а не тот, кто просто подгружает кирпичи текста по клику на псевдо-ссылку.

Мне кажется, что это хорошее бизнес-обоснование для использования известных технологий по-другому и на все 100% их потенциала. И это отличный повод каждому веб-разработчику взять на вооружение превентивный AJAX.

Стандартный