Блог разработчиков

Сказание о том, как пришел Аякс и работы добавил

Yaroslav Fedevych
Опубликовано 19.04.2007 в Разработка, Статьи

Что ни говорите, а я люблю новые технологии.

Вот например, Gmail. Пусть грузится долго, но красиво. И удобно. И интересно, а главное-то ведь — модно.

Если у всех пацанов с двора на сайте AJAX так и прет со всех щелей, то и у нас он должен быть. И требование “сайт должен использовать технологию AJAX” кочует в техническое задание проекта.

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

В суровой реальности у многих посетителей нету Flash, у многих скрипты отключены по причинам безопасности, у некоторых просто так отключены, у некоторых браузеры неспособны выполнять скрипты.

Поэтому у сайта должны быть две версии: с AJAX и без. И работы у исполнителей прибавляется. Правильный же сайт не должен делать предположений о том, что там на клиентской стороне. Посему, если не хочется барахтаться с зоопарком версий сайта, решением будет — отдать клиенту обычную страницу и подгрузить скрипт, который привнесет активности в элементы. Естественно, если речь идет о сервисе, который без AJAX невозможен, то предупредить пользователя надо, но при этом ни в коем случае нельзя создавать у него впечатление, что он ущербен только из-за того, что у него скрипты заблокированы. Или из-за того, что он пользуется (E)Links или Lynx, читая текст с терминала Брайля. Или из-за того, что ему хочется купить рекламируемые на сайте чугунные радиаторы, они ему безумно нравятся, но ему не нравится используемый на сайте AJAX.

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

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

Теги:

1 звезда2 звезды3 звезды4 звезды5 звезд (Еще не оценили)
Загрузка ... Загрузка ...

Понравилась статья? Подпишись на обновления по RSS/E-mail

Подписаться, не оставляя комментарий

Все комментарии (22) к “Сказание о том, как пришел Аякс и работы добавил” RSS

  1. Алексей говорит:

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

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

  2. Yaroslav Fedevych говорит:

    Я не отношусь к Аяксу с иронией.

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

    Лично я считаю, что Аякс — очень полезная штуковина, если это не единственный способ нормально работать с сайтом.

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

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

    Аякс добавляет еще удобства в пользование сайтом. Но он не должен — для публичных сайтов — переходить в разряд необходимого требования к поддержке со стороны клиента.

  3. CB говорит:

    По моєму, в аякса (хоча говорити про аякс взагалі важко) при уже схожій функціональності є перевага перед flash, WPF/E, java як мінімум не потрібні додаткові плагіни.

    У яакса (знову ж таки не в сенсі асинхронного обміну з сервером), а більше у сенсі rich інтерфейсів, крім тієї недоступності, що він не працюватиме в частині браузерів, нерідко є і інша недоступність, трохи менш виражена - це те, що завдяки великій кількості JavaScript може сильно зрости розмір сторінок (за рахунок невиправданого використання великих бібліотек), хоча це стає все менш і менш актуальним. Інша проблема - це коли аякс програми працюють дещо некоректно і повільно (memory leaks), наприклад якщо довго не вимикати firefox і подорожувати по інтернету, відкриваючи багато rich сайтів, то нерідко з’їдається не одна сотня мегабайт оперативної пам’яті.

    А взагалі мені здається, що accessibility аякса - не більш важлива ніж будь-яка інша accessibility в http://www. А про те використовувати чи не використовувати аякс у кожному окремому випадку можна уже і почитати хороші статті з досвіду інших розробників, який зараз немало.

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

  4. Yaroslav Fedevych говорит:

    А взагалі мені здається, що accessibility аякса - не більш важлива ніж будь-яка інша accessibility в http://www.

    Таки, як кажуть, да.

    Є ще один фактор. Часто в вимоги записують використання яких-там-поточних-наймодніших-технологій (на кшталт «я знаю кунґ-фу, дзю-до й багато інших страшних слів»), але мають на увазі скоріш «зробіть мені такий ґламурний сайт, щоб на нього ходили як анонімуси на ЛОР/ґіки на слешдот/мухи на лайно». Але зробити це — задача «творця», дизайнера. А на аяксі можна зреалізувати радше фішку, котра поставить доступність і зручність сайту (для тих 85%, що можуть використати технологію) на голову вище за найближчих конкурентів. Ось це й буде виправданим використанням технології.

    Чесно, від нового яхумейлу — верне. Ну нафіга повторювати аутлук? Ґмейл сприймається нормально.

  5. Скакунов Александр говорит:

    Согласен и не согласен.

    Да, надо - обязательно указываю в ТЗ, что нужно иметь две версии.

    Нет, не надо - когда сам поднимаешь стартап, и никто за него тебе (пока) не платит, то делать сто тыщ разных версий из расшаркиваний перед пользователем просто не хватает сил, времени и мотивации. “Лишь бы в одном варианте заработало, а там посмотрим”. Да, жаль ребят с терминалом Брайля и людей с броузером-где-отключено-все, но они составляют те 10% пользователей, на которых придется потратить 90% сил. Я на это пока не созрел.

  6. CB говорит:

    А мені найбільше не подобається використання штук типу цієї:
    http://www.snap.com/about/shots.php
    Сама по собі ідея і реалізація розробниками непогана, проте її застосування часто я бачу відверто зайвим (коли ці скріншотики випливають в меню навігації etc).
    Проте плюс цих Snap Shots, те що в налаштуваннях їх можна вимкнути.

  7. roddyb говорит:

    Верно, задумываться о грамотной информационной архитектуре, юзабилили-акцессибилити, целевой аудитории и (о ужас) о качестве и актуальности контента - вот главное для сайта, а не разные bangs-and-whistles. Менеджерам эти слова непонятны и пугающи, кодеры любят кодить красивые финтифлюшки, но над сайтом должны работать не только кодеры и менеджеры, хотя вероятно этот бум2.0 как раз и родился от содружества кодеров с менеджерами :)

  8. Артур Ракицкий говорит:

    “Пусть грузится долго, но красиво.”
    Это на мобилку он долго грузится? :)
    Не хочу сказать ничего обидного, но нармальный канал в Интернет - это норма для развитых стран. Увы, Украина всего лишь развивающаяся :) Но лично мне хватает канала за 100грн/месяц (от Воли).

  9. Артур Ракицкий говорит:

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

    У сайтов, как и у реальных магазинов, офисов, и… киосков :) есть своя фокус-группа. Те реальные люди, которые используют этот сайт не случайно, а для постоянной потребности. Например, заказывают на нем дорогие домашние кинотетры и фенечки к ним. И нужно прежде всего удовлетворить эту фокус-группу (20% посетителей, приносящих 80% дохода). Современные реалии таковы, что тематические сайты ОТДЕЛЬНЫХ компаний активно используют люди, у которых практически нет никаких ограничений в Интернет (читай, скрипты не отключены). Зачем отключать скрипты на ноутбуке, который стоит 1/5 часть месячного дохода? Правильно, незачем :)
    Я конечно же утрирую (как и автор статьи), но в свете развития технологий и улучшения качества жизни - пусть подстраиваются под AJAX :) Быстрее купят более современную технику (чем создадут лучшие условия для технологий), заработают больше денег и не будут трястись за каждую копейку. Тогда и сайт будут использовать с большей прибылью для его владельца.

  10. Yaroslav Fedevych говорит:

    У сайтов, как и у реальных магазинов, офисов, и… киосков :) есть своя фокус-группа.

    У всех сайтов есть еще одна фокус-группа. Это поисковые роботы; о них мы справедливо забываем, потому что 1) сайт никому нафиг не уперся, 2) мы позвоним потенциальным клиентам и сообщим им урл, да?

    А что, дайошь роботы, которые яваскрипт выполняют, да.

  11. devil говорит:

    А что, дайошь роботы, которые яваскрипт выполняют, да.

    А, вот, кстати, правильно подмечено.
    Аякс должен быть хорошим дополнением к сайту. Подгружаться с сервера с помощью яваскрипта должен лишь тот контент, который явно не нужен для поисковой оптимизации сайта, либо доступен поисковикам в традиционном виде.
    Конечно, это не относится к АяксВрайту http://ajaxwrite.com , который с помощью Аякса подгружает свой Яваскриптовый код.
    Не в коем случае не нужно делать сайты «на Аяксе» сайты нужно делать на (X)HTML :)

  12. roddyb говорит:

    2Артур:

    Патриций: “… будем ли мы строить дворец за дворцом для богатых или наконец построим достойное жилье для бедных ?”
    Сенат: “В JОПУ БЕДНЫХ!!!”

    из фильма Всемирная История

    :)

  13. 4matic говорит:

    А по-моему Аякс уже давно перешагнул рубеж “Новая технология”. Я за грамотное использование технологии, но против “зоопарка” версий сайта. Статическое содержимое сайта - это одно, динамически подгружаемая информация - это другое. Не могу навскидку сказать, какой динамический подгружаемый материал может понадобиться роботам (не берем в расчет сайт в котором с помощбю Аякс все грузится на одну страницу).
    По поводу того, что отключен JS - таких пользователей 6-10%. Если обращать на них внимание, то давайте обращать внимание на тех у кого вообще нет доступа к сети и ломать голову над тем, как эффективно коммуницирвать с такими клиентами.
    Да, есть минус в больших скриптах, которые весят больше, чем полезная информация на странице. Но опять же разработчик должен здраво мыслить, где и как позаботиться о клиенте (когда пожалеть траффик, а когда функционал страницы), стоит ли ожидания клиента при загрузке страницы со скриптами полученному результату на странице.

  14. CB говорит:

    В будь-якому випадку “відкидати” певні категорії користувачів слід дуже обережно. Тому що відкидаючи з тих чи інших причин користувачів з IE

  15. CB говорит:

    [хм, попередній мій коментар якось дивно обрізався (видимо через "<" символ)]

    В будь-якому випадку “відкидати” певні категорії користувачів слід дуже обережно. Тому що відкидаючи з тих чи інших причин користувачів з IE<6, з роздільною здатністю екрана<1024×768, з відсутністю певних плагінів браузера, з відключеним JS чи Cookies, можна втратити досить значну кількість користувачів, при тому що кожна з груп малочисельна, об’єднання кількох груп може бути значним.

  16. Yaroslav Fedevych говорит:

    20% посетителей, приносящих 80% дохода

    Если я намерен срубить с сайта что-то около миллиона, мне важны все 100% :)

    можна втратити досить значну кількість користувачів, при тому що кожна з груп малочисельна, об’єднання кількох груп може бути значним.

    Є три групи користувачів.
    1) Мають гроші, хочуть ваш товар/послугу й цілеспрямовані. Для таких особливо старатись не треба, вони спеціально вас шукають. Оті самі 20 відсотків з 80 відсотків доходу, хоча насправді їх ще менше.
    2) Мають гроші, хочуть ваш товар/послугу, але не такі цілеспрямовані. От із ними набагато більше мороки, довго пояснюєш, чому в тебе найкраще. Їх завжди в кілька разів більше, ніж отих перших.
    3) Не мають стільки грошей, їм ваш товар може бути цікавим, а може й не бути. Їх більшість, під них не підлаштуєшся, шукаєш серединку, щоб найперше ублажити перші дві групи. Але саме серед них можуть бути ті, хто зробить цінну підказку членам другої групи. А Ґуґл, по-вашому, як став тим, чим він став? Рекламувався багато?

    Я за грамотное использование технологии, но против “зоопарка” версий сайта.

    А они, кстати, нафиг не нужны. Можно обойтись и одной, но до порядочной статьи я не собрался еще с мыслями и с пивом. :)

  17. CB говорит:

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

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

  18. Роман Чепляка говорит:

    В суровой реальности у многих посетителей нету Flash, у многих скрипты отключены по причинам безопасности, у некоторых просто так отключены, у некоторых браузеры неспособны выполнять скрипты.

    Приятно, что хоть кто-то из веб-разработчиков еще об этом помнит.

  19. Tikhon говорит:

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

    Как не смешно это звучит, но в данное время мегапопулярные сайты диктуют даже браузерам, как им реализовывать java script. :D
    Пример тому features list оперы 9.20, подчинили хоткеи в Gmail и наладили работу в Flickr. :))
    Мир меняется, так что, уважаемые вебразработчики, не подгоняйте ваш проект ко всем браузерам,
    а лучше занимайтесь маркетингом :D

  20. pavel-kudinov.ЖЖ говорит:

    >но при этом ни в коем случае нельзя создавать у него впечатление, что он ущербен только из-за того, что у него скрипты заблокированы

    для чего такая чопорность? он действительно ущербен, так пусть знает это и борется с этим!

  21. Yaroslav Fedevych говорит:

    для чего такая чопорность? он действительно ущербен, так пусть знает это и борется с этим!

    Ага. Напрягайся сам и приноси мне доход?

  22. CB говорит:

    Вийшла свіжа стаття про usability and accessibility:
    Why usability is worth caring about,
    в кінці список лінків по темі, наприклад:
    AJAX Accessibility Overview

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

Указать свой сайт могут только зарегистрированные пользователи. Регистрация или вход.

Архив

Комментарии

Последние комментарии