Сказание о том, как пришел Аякс и работы добавил
Yaroslav FedevychОпубликовано 19.04.2007 в Разработка, Статьи
Что ни говорите, а я люблю новые технологии.
Вот например, Gmail. Пусть грузится долго, но красиво. И удобно. И интересно, а главное-то ведь — модно.
Если у всех пацанов с двора на сайте AJAX так и прет со всех щелей, то и у нас он должен быть. И требование “сайт должен использовать технологию AJAX” кочует в техническое задание проекта.
С другой стороны, есть разработчики, которые, если им сказать “сади капусту корешками вверх”, то и посадят, ведь за то им деньги плачены, а есть такие, что читают между строк и вполне себе дают отчет в том, что заказчик хочет воспользоваться модным трендом, дабы собрать хороший урожай капусты. Поэтому они, конечно, понимают, что деньги сайту делают его посетители, а не технологии, и что для заказчика каждый посетитель ценен.
В суровой реальности у многих посетителей нету Flash, у многих скрипты отключены по причинам безопасности, у некоторых просто так отключены, у некоторых браузеры неспособны выполнять скрипты.
Поэтому у сайта должны быть две версии: с AJAX и без. И работы у исполнителей прибавляется. Правильный же сайт не должен делать предположений о том, что там на клиентской стороне. Посему, если не хочется барахтаться с зоопарком версий сайта, решением будет — отдать клиенту обычную страницу и подгрузить скрипт, который привнесет активности в элементы. Естественно, если речь идет о сервисе, который без AJAX невозможен, то предупредить пользователя надо, но при этом ни в коем случае нельзя создавать у него впечатление, что он ущербен только из-за того, что у него скрипты заблокированы. Или из-за того, что он пользуется (E)Links или Lynx, читая текст с терминала Брайля. Или из-за того, что ему хочется купить рекламируемые на сайте чугунные радиаторы, они ему безумно нравятся, но ему не нравится используемый на сайте AJAX.
Таким образом, как и в случае с клиентской валидацией вводимых данных, когда на сервере она должна проводиться в любом случае, работы опять стает в полтора-два раза больше. Не-AJAX-вариант должен быть в любом случае, и работать всегда и у всех.
Ведь мы знаем, что для сайта каждый посетитель ценен.
Но, хотя у меня теперь больше работы, я все люблю новые технологии. С нетерпением жду, когда работы станет еще вдвое больше.
Понравилась статья? Подпишись на обновления по RSS/E-mail


Если я правильно понял, то Вы, Ярослав, с иронией относитесь к Аяксу, и к новым технологиям вцелом. Не могу понять почему? Работы действительно прибавляет, но Вам же работу платят. Новые технологии всегда подразумевают плавные отказ от старых, что, в свою очередь, создает некоторые неудобства. Но это мало кого остонавливает в наше время.
На мой взгляд, аякс поситителю сайта не может не нравиться, если сайт правильно создан. Все нужно использоват с умом и вмеру. Невозможно создать сайт удобный для всех, даже на аяксе.
Я не отношусь к Аяксу с иронией.
Дело в том, что многие не понимают, к сожалению, что такое graceful degradation. То есть, если я не могу или не хочу использовать аякс-версию, то мне должна быть предоставлена традиционная. И правильный подход заключается в том, что сайт не диктует пользователю, какой браузер он должен использовать и что он должен разрешать в настройках безопасности.
Лично я считаю, что Аякс — очень полезная штуковина, если это не единственный способ нормально работать с сайтом.
Вся информационная часть сайта должна быть доступна пользователю вне зависимости от того, на чем и как он смотрит сайт. Это правило хорошего тона.
Кроме того, не зря я привел пример с двойной валидацией. Раньше была только валидация на сервере и ее было достаточно для работы сайта, но недостаточно для удобства. Клиентская валидация предоставляет дополнительное удобство (ждать не надо), но использовать только ее будет разве полный идиот.
Аякс добавляет еще удобства в пользование сайтом. Но он не должен — для публичных сайтов — переходить в разряд необходимого требования к поддержке со стороны клиента.
По моєму, в аякса (хоча говорити про аякс взагалі важко) при уже схожій функціональності є перевага перед flash, WPF/E, java як мінімум не потрібні додаткові плагіни.
У яакса (знову ж таки не в сенсі асинхронного обміну з сервером), а більше у сенсі rich інтерфейсів, крім тієї недоступності, що він не працюватиме в частині браузерів, нерідко є і інша недоступність, трохи менш виражена - це те, що завдяки великій кількості JavaScript може сильно зрости розмір сторінок (за рахунок невиправданого використання великих бібліотек), хоча це стає все менш і менш актуальним. Інша проблема - це коли аякс програми працюють дещо некоректно і повільно (memory leaks), наприклад якщо довго не вимикати firefox і подорожувати по інтернету, відкриваючи багато rich сайтів, то нерідко з’їдається не одна сотня мегабайт оперативної пам’яті.
А взагалі мені здається, що accessibility аякса - не більш важлива ніж будь-яка інша accessibility в http://www. А про те використовувати чи не використовувати аякс у кожному окремому випадку можна уже і почитати хороші статті з досвіду інших розробників, який зараз немало.
Розробникам потрібно мати певну статистику щодо відвідувачів, в тому числі потенційних і на її основі забезпечувати прийнятну функціональність і якомога ширшу доступність.
Таки, як кажуть, да.
Є ще один фактор. Часто в вимоги записують використання яких-там-поточних-наймодніших-технологій (на кшталт «я знаю кунґ-фу, дзю-до й багато інших страшних слів»), але мають на увазі скоріш «зробіть мені такий ґламурний сайт, щоб на нього ходили як анонімуси на ЛОР/ґіки на слешдот/мухи на лайно». Але зробити це — задача «творця», дизайнера. А на аяксі можна зреалізувати радше фішку, котра поставить доступність і зручність сайту (для тих 85%, що можуть використати технологію) на голову вище за найближчих конкурентів. Ось це й буде виправданим використанням технології.
Чесно, від нового яхумейлу — верне. Ну нафіга повторювати аутлук? Ґмейл сприймається нормально.
Согласен и не согласен.
Да, надо - обязательно указываю в ТЗ, что нужно иметь две версии.
Нет, не надо - когда сам поднимаешь стартап, и никто за него тебе (пока) не платит, то делать сто тыщ разных версий из расшаркиваний перед пользователем просто не хватает сил, времени и мотивации. “Лишь бы в одном варианте заработало, а там посмотрим”. Да, жаль ребят с терминалом Брайля и людей с броузером-где-отключено-все, но они составляют те 10% пользователей, на которых придется потратить 90% сил. Я на это пока не созрел.
А мені найбільше не подобається використання штук типу цієї:
http://www.snap.com/about/shots.php
Сама по собі ідея і реалізація розробниками непогана, проте її застосування часто я бачу відверто зайвим (коли ці скріншотики випливають в меню навігації etc).
Проте плюс цих Snap Shots, те що в налаштуваннях їх можна вимкнути.
Верно, задумываться о грамотной информационной архитектуре, юзабилили-акцессибилити, целевой аудитории и (о ужас) о качестве и актуальности контента - вот главное для сайта, а не разные bangs-and-whistles. Менеджерам эти слова непонятны и пугающи, кодеры любят кодить красивые финтифлюшки, но над сайтом должны работать не только кодеры и менеджеры, хотя вероятно этот бум2.0 как раз и родился от содружества кодеров с менеджерами
“Пусть грузится долго, но красиво.”
Но лично мне хватает канала за 100грн/месяц (от Воли).
Это на мобилку он долго грузится?
Не хочу сказать ничего обидного, но нармальный канал в Интернет - это норма для развитых стран. Увы, Украина всего лишь развивающаяся
“Вся информационная часть сайта должна быть доступна пользователю вне зависимости от того, на чем и как он смотрит сайт. Это правило хорошего тона.”
Глупость.
У сайтов, как и у реальных магазинов, офисов, и… киосков
есть своя фокус-группа. Те реальные люди, которые используют этот сайт не случайно, а для постоянной потребности. Например, заказывают на нем дорогие домашние кинотетры и фенечки к ним. И нужно прежде всего удовлетворить эту фокус-группу (20% посетителей, приносящих 80% дохода). Современные реалии таковы, что тематические сайты ОТДЕЛЬНЫХ компаний активно используют люди, у которых практически нет никаких ограничений в Интернет (читай, скрипты не отключены). Зачем отключать скрипты на ноутбуке, который стоит 1/5 часть месячного дохода? Правильно, незачем 
Быстрее купят более современную технику (чем создадут лучшие условия для технологий), заработают больше денег и не будут трястись за каждую копейку. Тогда и сайт будут использовать с большей прибылью для его владельца.
Я конечно же утрирую (как и автор статьи), но в свете развития технологий и улучшения качества жизни - пусть подстраиваются под AJAX
У всех сайтов есть еще одна фокус-группа. Это поисковые роботы; о них мы справедливо забываем, потому что 1) сайт никому нафиг не уперся, 2) мы позвоним потенциальным клиентам и сообщим им урл, да?
А что, дайошь роботы, которые яваскрипт выполняют, да.
А, вот, кстати, правильно подмечено.
Аякс должен быть хорошим дополнением к сайту. Подгружаться с сервера с помощью яваскрипта должен лишь тот контент, который явно не нужен для поисковой оптимизации сайта, либо доступен поисковикам в традиционном виде.
Конечно, это не относится к АяксВрайту http://ajaxwrite.com , который с помощью Аякса подгружает свой Яваскриптовый код.
Не в коем случае не нужно делать сайты «на Аяксе» сайты нужно делать на (X)HTML
2Артур:
Патриций: “… будем ли мы строить дворец за дворцом для богатых или наконец построим достойное жилье для бедных ?”
Сенат: “В JОПУ БЕДНЫХ!!!”
из фильма Всемирная История
А по-моему Аякс уже давно перешагнул рубеж “Новая технология”. Я за грамотное использование технологии, но против “зоопарка” версий сайта. Статическое содержимое сайта - это одно, динамически подгружаемая информация - это другое. Не могу навскидку сказать, какой динамический подгружаемый материал может понадобиться роботам (не берем в расчет сайт в котором с помощбю Аякс все грузится на одну страницу).
По поводу того, что отключен JS - таких пользователей 6-10%. Если обращать на них внимание, то давайте обращать внимание на тех у кого вообще нет доступа к сети и ломать голову над тем, как эффективно коммуницирвать с такими клиентами.
Да, есть минус в больших скриптах, которые весят больше, чем полезная информация на странице. Но опять же разработчик должен здраво мыслить, где и как позаботиться о клиенте (когда пожалеть траффик, а когда функционал страницы), стоит ли ожидания клиента при загрузке страницы со скриптами полученному результату на странице.
В будь-якому випадку “відкидати” певні категорії користувачів слід дуже обережно. Тому що відкидаючи з тих чи інших причин користувачів з IE
[хм, попередній мій коментар якось дивно обрізався (видимо через "<" символ)]
В будь-якому випадку “відкидати” певні категорії користувачів слід дуже обережно. Тому що відкидаючи з тих чи інших причин користувачів з IE<6, з роздільною здатністю екрана<1024×768, з відсутністю певних плагінів браузера, з відключеним JS чи Cookies, можна втратити досить значну кількість користувачів, при тому що кожна з груп малочисельна, об’єднання кількох груп може бути значним.
Если я намерен срубить с сайта что-то около миллиона, мне важны все 100%
Є три групи користувачів.
1) Мають гроші, хочуть ваш товар/послугу й цілеспрямовані. Для таких особливо старатись не треба, вони спеціально вас шукають. Оті самі 20 відсотків з 80 відсотків доходу, хоча насправді їх ще менше.
2) Мають гроші, хочуть ваш товар/послугу, але не такі цілеспрямовані. От із ними набагато більше мороки, довго пояснюєш, чому в тебе найкраще. Їх завжди в кілька разів більше, ніж отих перших.
3) Не мають стільки грошей, їм ваш товар може бути цікавим, а може й не бути. Їх більшість, під них не підлаштуєшся, шукаєш серединку, щоб найперше ублажити перші дві групи. Але саме серед них можуть бути ті, хто зробить цінну підказку членам другої групи. А Ґуґл, по-вашому, як став тим, чим він став? Рекламувався багато?
А они, кстати, нафиг не нужны. Можно обойтись и одной, но до порядочной статьи я не собрался еще с мыслями и с пивом.
А ще мені здається, важливішу роль відіграють негативні враження користувачів (наприклад коли щось не працює, чи вискакують повідомлення про помилки, можна згадати хоча б випадки сайтів, які кажуть що під цим браузером сайт не працює, приходьте під іншим браузером) ніж позитивні, одного негативного, прикрого враження про сайт часто достатньо, щоб в подальшому цей сайт ніколи не відвідувати, особливо коли інформація чи послуги сайту не є дуже унікальними. Але знову ж таки це вилізає з рамок аяксу.
В цілому, думаю розробник повинен просто спокійно, дохідливо і обгрунтувати менеджеру технічні деталі, як мені здається, найпростіше це йому можна показати на успішних прикладах.
Приятно, что хоть кто-то из веб-разработчиков еще об этом помнит.
Как не смешно это звучит, но в данное время мегапопулярные сайты диктуют даже браузерам, как им реализовывать java script.
Пример тому features list оперы 9.20, подчинили хоткеи в Gmail и наладили работу в Flickr. :))
Мир меняется, так что, уважаемые вебразработчики, не подгоняйте ваш проект ко всем браузерам,
а лучше занимайтесь маркетингом
>но при этом ни в коем случае нельзя создавать у него впечатление, что он ущербен только из-за того, что у него скрипты заблокированы
для чего такая чопорность? он действительно ущербен, так пусть знает это и борется с этим!
Ага. Напрягайся сам и приноси мне доход?
Вийшла свіжа стаття про usability and accessibility:
Why usability is worth caring about,
в кінці список лінків по темі, наприклад:
AJAX Accessibility Overview