Код
#статьи

Веб-стандарты: зачем и как их изучать

Зачем нужны веб-стандарты, что почитать новичку и как устроено одноимённое русскоязычное сообщество? Рассказывает веб-разработчик Никита Дубко.

Иллюстрация: Apple / Colowgee для Skillbox Media

Никита Дубко


об эксперте

Senior Frontend Developer, Google Developer Expert по Web. Новостной редактор в сообществе «Веб-стандарты» и автор @dev_tip.


ссылки


До 2010 года, в эпоху Internet Explorer и его конкурентов, которые не дожили до нашего времени, заставить браузеры одинаково отрисовывать веб-страницы было очень сложно. Разработчикам приходилось писать костыли под API каждого браузера, но страницы всё равно то и дело ломались. Поэтому инженеры обратили внимание на веб-стандарты.

Зачем веб-разработчику знать стандарты

Стандарты пишут и принимают в W3C — это некоммерческая организация, которую основал Тим Бернерс-Ли. Она состоит из множества рабочих групп: в них входят представители компаний — создателей браузеров, крупных университетов, исследовательских институтов и других организаций. Участники обсуждают с разработчиками браузеров дизайн и реализацию API, а затем разрабатывают единые стандарты.

Так выглядит описание группы разработчиков стандартов на W3C
Скриншот: Skillbox Media

Вот какая польза от веб-стандартов и почему их надо изучать:

  • Не нужно писать костыли. Если вы придумали новую фичу для своего сайта, её не нужно писать отдельно под каждый браузер и учитывать все особенности программного интерфейса. Гораздо проще использовать методы jQuery, которые будут вести себя одинаково и в Chrome, и в Firefox. Но правильнее — использовать одинаковые методы во всех браузерах, которые работают предсказуемо.
  • Не обязательно изучать новые спецификации. Разработчики не боятся, что у браузера выйдет спека, которая поломает старые функции их веб-приложения. Если вы не знаете о существовании фичи, то можете просто не использовать её и жить спокойно.
  • Можно узнать, как будут развиваться технологии. Например, в некоторых стандартах написано, что через какое-то время появятся новые цветовые пространства. А значит, мы сможем заранее обсудить с дизайнером, как их реализовывать.

Как изучать стандарты и что читать

Я начинал изучать веб-разработку по книгам и CHM-файлам. Скачивал их в школе на уроках информатики, сохранял на флешку, читал дома справку и повторял примеры — так и научился верстать. А со стандартами я познакомился, когда набрался опыта и захотел поглубже разобраться, как браузер работает с веб-страницами.

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

Блоги деврелов и IT-евангелистов. Читайте тех, кто непосредственно разрабатывает и принимает веб-стандарты. Например, деврелы Google часто рассказывают в своих статьях о возможностях и особенностях движка Chrome. Там всегда много подробных примеров и иллюстраций, поэтому их приятно и легко читать.

Среди евангелистов о CSS пишут ребята из Google: Адам Аргайл (@argyleink), Юна Кравец (@Una) и Джейк Арчибальд (@jaffathecake). Много полезных и актуальных материалов можно найти в блоге Александра Сурмы (Surma).

Видео про гриды в CSS
Выступление Юны Кравец на европейской CSS Conf

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

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

Рома Дворнов (@rdvornov) иногда пишет о стандартах в своём Telegram-канале «Горшочек варит». С его разрешения мы адаптировали материалы про CSS-нестинг для нашего сайта.

София Валитова (@ariarzer) выступает на конференциях с докладами с глубоким погружением в спецификации от CSS Working Group и переводит материалы. Вот её выступление на FrontendConf 2019:

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

Сайт «Веб-стандартов». У нашего сообщества есть сайт, который так и называется — «Веб-стандарты». Мы периодически публикуем на нём статьи и туториалы на русском языке, даём советы и каждую неделю выкладываем новые выпуски подкаста.

Как устроено сообщество «Веб-стандарты»

В работе сообщества «Веб-стандарты» можно выделить четыре направления:

Соцсети. В Twitter, Facebook*, Telegram и VK каждый будний день публикуем по две-три ссылки на статьи о фронтенд-разработке. Это новости, туториалы, записи конференций и описания стандартов. Вокруг соцсетей собирается комьюнити. У нас есть паблик в VK с 33 тысячами подписчиков, чат в Telegram и канал на 16 тысяч подписчиков, а ещё аккаунт в Twitter — там приблизительно столько же читателей.

Контрибьюторы. Участники комьюнити вносят большой вклад в его развитие. Они публикуют у нас свои статьи, присылают переводы зарубежных материалов, делятся фидбэком в соцсетях и приносят пул-реквесты в наши репозитории на GitHub.

Подкаст. Каждую неделю выходит новый выпуск нашего подкаста. Мы уже записали более 300 выпусков, в которых обсуждаем новости и самые яркие события в мире фронтенда. Кроме того, мы делимся своим взглядом на эти новости, технологии и стандарты, приглашаем интересных людей из мира фронтенда обсуждать новости с нами.

Мероприятия. Это направление сейчас не очень актуально, но раньше оно было одним из основных. Речь о конференции Web Standards Days. С 2009 по 2019 год прошли 42 конференции, последняя из них — в Минске. Лидер и создатель комьюнити Вадим Макеев (@pepelsbey) участвовал в их организации все годы.

Доклад Вадима Макеева «Семантика для циников» на Web Standards Days

Мы хотели, чтобы веб-разработчики могли бесплатно общаться и обмениваться знаниями с коллегами. Поэтому за вход на Web Standards Days никогда не брали денег, а в форме регистрации даже не спрашивали email. Регистрация была нужна только из-за ограничения по количеству мест на самой площадке. По возможности мы организовывали онлайн-трансляции или записывали и публиковали доклады. Самое классное — что крутые спикеры сами подавали заявки на конференцию и читали интересные доклады.

Чем занимаются в комьюнити

Среди активных участников сообщества можно выделить несколько групп. Вот чем они обычно занимаются:

Ведут подкасты. Среди них Вадим Макеев (@pepelsbey), Алексей Симоненко (@simonenko), Оля Алексашенко (Olga Aleksashenko), Маша Просвирнина (@prosvirnina12), Андрей Мелихов (@amel_true), Юля Миоцен (@julia_miocene) и я — Никита Дубко (@dark_mefody).

Пишут статьи и переводы. На сайте «Веб-стандарты» мы публикуем статьи, переводы для новичков, новости и так далее. Любой желающий может поделиться материалом. Мы с радостью поможем подобрать информативные картинки, улучшить структуру и поправить стиль, а затем опубликуем статью на сайте.

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

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

Скрин со страницы проекта «Веб-стандарты» на GitHub
Скриншот: Skillbox Media

Какая атмосфера царит в сообществе

Иногда в сообществе разгораются дискуссии на технические (и не только) темы. Мы можем спорить о чём угодно: какая технология лучше, нужна или нет определённая фича в языке программирования или как правильно перевести какой-нибудь термин в «Словаре веб-стандартов».

Но в целом большая часть обсуждений у нас проходит спокойно и без конфликтов. Конечно, иногда мы расходимся во мнениях — но разве это не замечательно? Например, я люблю гит-хуки (git-hooks), а Вадим Макеев не любит. И вот мы как-то поспорили прямо во время записи подкаста: нужны они или нет. Я тогда ещё недостаточно хорошо разбирался в теме, но после записи вник и теперь ещё больше уверен, что они нужны.

Тот самый выпуск. Обсуждаем хуки с 55-й минуты

В подкасте у нас нет задачи транслировать «правильное» мнение. Мы хотим, чтобы слушатели думали и сами выбирали, что правильно, а что нет — это важный навык. Не верьте на слово Вадиму Макееву, Никите Дубко, любому другому ведущему или гостю. Анализируйте всё, что вам говорят ведущие и так называемые лидеры мнений — тогда вы сформируете собственную независимую позицию.

* Решением суда запрещена «деятельность компании Meta Platforms Inc. по реализации продуктов — социальных сетей Facebook* и Instagram* на территории Российской Федерации по основаниям осуществления экстремистской деятельности».

Изучайте IT на практике — бесплатно

Курсы за 2990 0 р.

Я не знаю, с чего начать
Освойте топовые нейросети за три дня. Бесплатно
Знакомимся с ChatGPT-4, DALLE-3, Midjourney, Stable Diffusion, Gen-2 и нейросетями для создания музыки. Практика в реальном времени. Подробности — по клику.
Узнать больше
Понравилась статья?
Да

Пользуясь нашим сайтом, вы соглашаетесь с тем, что мы используем cookies 🍪

Ссылка скопирована