Неінклюзивний веб або чому я проти сучасних тенденцій
На сьогодні Інтернет розвивається винятково швидко, нові технології захоплюють як фронтент – так і серверне середовище. Та в дечому ми занадто швидко “просунулись”.
Сьогодні маю намір розказати про своє невдоволення щодо відношення до статичного Фронта, а якщо більш конкретно – семантики, яка, чомусь, мало кому цікава і перформансу, що, хоч і є досі на порядку денному, та не завжди в “трендах”.
Чому ми відійшли від “просто і стабільно”?
На разі вимоги до дизайну змінились, при чому кардинально. В тренді – розумний мінімалізм, “ненав’язливі” ефекти, море крутих та нестандартних анімацій.. При чому цей тренд лежить усюди: від лендингів до новорочених SPA.
Уявімо ситуацію: приходить в команду джун, якого нерідко в аутсорсі продають за мідла/синьйора, разом з ним садять молодого дизайнера, що прям горить від бажання намалювати щось таке.. естетично-каверзне, або, як там кажуть, нетипове, що “зачепить”.
І тут почнеться холівар на тему “як впихнути невпихуємоє”! Молодий фронт подивиться, почеше голову, і, подумавши, зрозуміє, що тут щось не так.. гугл йому питання не вирішує, знайомих особливо немає, а вступати в дискусію з UX-гіком-колегою якось не комельфо.
Так і народжується його величність “костиль”, що висить на курячих лапках із дівів та підпирається тисячами рядків дивного джаваскрипта.
Ну що.. проект наче працюєє.. ну як, в Хромі, на Full hd роздільності майже ідеально, і без лагів. Чудово! Покажімо замовнику з цього ж екрана, а баги якось потім пофіксимо.
Баги фіксяться, код стає обширним, дев-склад уже разів 5 змінився, код зарефакторили, все стало так класно і .. немовби ідеально. Але є одне “але”. І це та сама недоступність, або, неінклюзивність.
Ми не думаємо про доступність
Бізнес жорстокий, особливо коли час “піджимає”. І нерідко, коли немає особливих вимог до якості виконаної роботи, а вся мета – готовий продукт і тільки – ми, як розробники, особливо не думаємо про такий “пустяк”.
А жаль, так як західний світ, а особливо серйозний продук, на кшталт Google, Amazon тощо прискіпливо ставиться до цього. Хоча… більше аудиторії = грошей = ймовірності зловити позов в “інклюзивній” державі = збитки для бізнесу.
Навіщо придумувати велосипеди?
Більш практична частина, яка стосуватиметься верстки. Так ось, як на мене, ми нерідко займаємось зайвою роботою. Розгляньмо банальні приклади, що нерідко зустрічаються в продакшині.
<select><option>…</select> = ідіотський компонент-костиль а-ля фіча
Одне питання: а навіщо? навіщо ламати відтестовану логіку компонента? Можливо, для бізнеса куди доцільніше акцентувати увагу на функціонал, відтестовану логіку та перформанс? нєа, ібо ми так любим виділятись..
Кастомний скролл
Ще одне знущання над перформансом та зручністю. В моїй практиці така приблуда як додатковий скролл добавляла лише проблеми, особливо коли питання підтримки браузерів а-ля IE10+ було передумовою. Ну як перед.. пост-фактум, скоріш) От і все “встало”.
Здоровий research
Ще одна, не менш важлива проблема. Як і умедицині, без якісної діагностики результат може не лише не виправдати себе, а і зашкодити, при чому серйозно. В девелопменті, як на мене, ситуація схожа.
Слід приділяти увагу продумуванню кожного кроку, а також враховувати вимоги бізнесу, і по можливості не народжувати костиль, який нерідко з’являється спонтанно.
Висновок
Як ви уже, мабуть, зрозуміли, я достатньо скептично відношусь до новомодних трендів у світі фронтенду, або, скоріше, верстки. Як на мене, на разі ми знову переходимо в етап “флешу та палаючого від реклами сайту”. І це не ок. ..Або я надто люблю простоту. Якось так)
герантофил