Почему миру нужны CSS-разработчики

Почему миру нужны CSS-разработчики

От автора: за последние десять лет CSS значительно расширился, в него добавляются все новые и новые функции. Таким образом, он постепенно становится все более сложным. CSS наших дней очень отличается от CSS десятилетия 2001–2010.

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

История CSS

В предыдущем десятилетии, когда Интернет завоевывал мир, CSS застрял в своем развитии. Internet Explorer (версии 6–8) был ведущим браузером, и поскольку Microsoft в то время не уделяла много внимания спецификациям CSS и не интересовалась добавлением в него новых функций, CSS оставался на версии 2.1.

Даже в 2007 и более поздние годы, когда начали появляться современные браузеры, такие как Firefox и Chrome, нам все еще приходилось поддерживать Internet Explorer, и нас это сдерживало рост. Будучи главным браузером, который правил в то время, IE определял практически нулевую скорость развития CSS. В некотором смысле это был «темный век» Интернета.

Почему миру нужны CSS-разработчики

Переломные события новой эры CSS

Как человек, который в то время был веб-разработчиком, я вижу два основных события, изменивших мир CSS и Сеть в целом:

Начало эпохи смартфонов (29 июня 2007 г.) — эта новая эра началась с выпуска первого iPhone. Появилась необходимость поддерживать новые функции CSS, которые подойдут для новой категории веб-устройств.

Выпуск браузера Chrome (2 сентября 2008 г.) — Chrome был новым браузером, который начинался как приложение для настольного компьютера.

До этого Internet Explorer был основным правителем сети и определял ее развитие.

Почему миру нужны CSS-разработчики

Почему фронт-энд разработчики работают и с CSS, и с JavaScript

Идея о том, что фронт-энд разработчики должны распоряжаться всеми возможностями внешнего интерфейса, была довольно распространенной в то время. Эта идея могла бы работать в ранние времена, когда следовало применять только несколько правил CSS, но в настоящее время, когда CSS расширился, она больше не работает.

Новая эра CSS 3, HTML 5 и JavaScript

Трудно сказать точно, когда появился CSS 3, так как он был в разработке с 1999 года, но реальная поддержка в Интернете началась примерно в 2011 году. В то время Chrome и Firefox уже увеличивали свою долю рынка; смартфоны стали очень популярными, и, имея свои собственные браузеры, все они начали поддерживать первые новые функции CSS 3. Эти изменения привели к снижению популярности Internet Explorer, и хотя в то время это был еще важный браузер, в Microsoft поняли, что они должны начать уделять внимание спецификациям и разработке CSS, выпустив Internet Explorer 9.

Новый CSS

CSS 3 существует уже 10 лет, почему еще нет CSS 4?

CSS 3, в отличие от CSS 2.1, является открытым стандартом, что означает, что он постоянно обновляется. Следовательно, нет необходимости называть новую функцию «CSS 4», поскольку CSS 3 находится в стадии разработки.

Почему миру нужны CSS-разработчики

С 2011 года каждое обновление браузера включает в себя новые функции CSS. В последние несколько лет большинство браузеров — Chrome, Firefox, Opera, современный Edge — обновляются почти каждый месяц (Safari обновляется в основном раз в год). Эта частота означает, что мы получаем новые функции CSS почти сразу после их появления.

Что нового появилось в CSS за последние 10 лет

За последние десять лет в CSS было добавлено много новых спецификаций для различных типов модулей, например:

Макет — адаптивный дизайн, Flexbox, CSS Grid, многостолбцовый макет, режим записи и логические свойства.

Типографика — переменные шрифты, варианты шрифтов, свойства разрыва строки.

Формы и графика — фильтры, маски, blend-mode, clip-path, формы и многое другое.

Анимация и преобразования — CSS / SVG анимация, переходы, преобразования, will-change.

Единицы измерения – единицы окна просмотра (vw/vh/vmin/vmax), rem, calc(), ключевые слова (contain, fit-content, min-content, max-content).

Препроцессоры CSS — Sass, Less, Stylus, PostCSS.

SVG — векторные графические элементы.

Другое — @support, собственные переменные CSS и многое другое…

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

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

Большая ошибка веб-индустрии

Эта ситуация, в которой фронт-энд разработчикам не удалось справиться с новой сложностью в CSS, создала новое поле под названием «Как не изучать CSS».

Первые CSS-фреймворки

Все началось с фреймворков, таких как Bootstrap и Foundation, с первым выпуском их обоих в 2011 году. Эти конкретные даты не случайны — это были первые годы CSS3, адаптивного дизайна, мобильных веб-сайтов и кросс-браузерной поддержки.

Я никогда не пытался глубоко разобраться в Bootstrap, так как мне никогда не нравилось его несемантическое соглашение имен CSS. Но, помогая другим веб-разработчикам в сообществе, которым я управляю, я быстро понял, что CSS Bootstrap подходит только для случаев, когда вы используете его, как есть, не пытаясь настроить.

Почему миру нужны CSS-разработчики

Bootstrap HTML — большинство имен классов не являются семантическими

Angular 2 — первый согласованный JavaScript-фреймворк

Новый Angular был первым, кто представил инкапсулированные стили. Это был способ избавить неопытного веб-разработчика от необходимости понимать каскадирование CSS. Используя этот метод, вы можете создавать глобальные стили и при этом иметь локальные стили для каждого компонента.

Из всех различных идей разработки эта идея инкапсулированных стилей, с моей точки зрения, является наилучшей, поскольку вы все еще можете создавать как глобальные, так и инкапсулированные стили для компонентов. Кроме того, у нас все еще есть разделение задач для CSS / SASS, HTML и JavaScript, и мы можем легко загружать только требуемые стили.

Почему миру нужны CSS-разработчики

React — экзекуция семантики!

React развивает эту идею дальше — написание всего HTML и CSS внутри JS. Цель создания многоразовых стилей с React больше неактуальна. React генерирует имена классов CSS автоматически; таким образом, код становится нечитаемым и недоступным для понимания как из-за имен классов CSS, так и из-за несемантического HTML. С моей точки зрения, это похоже на то, как CSS и HTML писались в начале Сети, когда не имело значения, как выглядят CSS или HTML, пока они работают.

Почему миру нужны CSS-разработчики

React — нечитаемые имена классов CSS

И почему это так плохо? Потому что тогда, когда у вас есть реальная проблема в CSS, и обычный фронт-энд разработчик не может ее решить и нуждается в опытном CSS-разработчике, запутанный код React мешает. Да, оба веб-разработчика могут решить это вместе, но на это тратится время двух опытных веб-разработчиков.

Пора просыпаться!

Фронт-энд разработчики плохи в CSS! Кто-то должен сказать это вслух! Да, я знаю, что это грубое обобщение, и поэтому оно не на 100% правильно, но я не пытаюсь быть на 100% правым. Прежде чем я продолжу, вам нужно узнать немного больше обо мне.

Почему миру нужны CSS-разработчики

Пора просыпаться – фронт-энд разработчики плохи в CSS

Кто я

Я начинал как полноценный фронт-энд разработчик в начале 2007 года. В начале 2012 года я почти полностью прекратил писать JavaScript, основная причина в том, что я очень любил CSS, а JavaScript — гораздо меньше.

С 2012 года по настоящее время, поскольку я был сосредоточен только на CSS, у меня появилось преимущество в этой области. За эти годы я написал много статей по CSS, основал местное сообщество CSS (5000 членов) и провел бесчисленные выступления (на встречах, семинарах и конференциях).

Почему миру нужны CSS-разработчики

Я выступаю на ConFrontJS 2019, Варшава, Польша

Почему я говорю вам все это? Потому что я все еще своего рода единорог в своей стране и в интернет-индустрии. Да, я получаю много признательности, но есть большое Но! Хотя это работает для меня, потому что я хорошо известен в веб-индустрии моей страны, другим сложно стать такими же, потому что веб-индустрия все еще пытается сохранить «старую должность фронт-энд разработчика» (что означает, пытаться написать первоклассный JavaScript и CSS).

В моей стране я знаю самых лучших фронт-энд разработчиков, и, поскольку я очень заинтересован в понимании веб-индустрии, я всегда спрашиваю у этих лучших талантливых фронт-эндов, насколько они хороши в CSS. Их ответ продолжает поразительного меня — большинство из них определяют себя как «я плох в CSS», и это всегда удивляет таких разработчиков, как я, которые любят CSS.

Интернет-индустрия должна измениться!

Несмотря на то, что это работало до 2010 года, это не может продолжаться в 2020-ом. Интернет-индустрия изменилась, и для крупных компаний пришло время отказаться от прежних распределений задач в веб-индустрии, а также перейти на новые. Это будет соответствовать потребностям нашего времени.

Почему миру нужны CSS-разработчики

В интерес компаний?

В 2020 году CSS является важным навыком. И хотя компании пытаются сэкономить, они могут в конечном итоге тратить больше денег. За годы работы веб-разработчиком я видел, как разработчики тратят слишком много времени на то, что выделенный CSS-разработчик мог бы решить за 10 минут, и с более эффективным кодом. Какими могут быть новые должности?

За последние восемь лет я несколько раз менял свою должность. Я делал это, чтобы объяснить свои способности людям, которые видят мой профиль в LinkedIn.

Сначала я назвал себя Мастером CSS (следуя названию сообщества, которое я основал — CSS Masters Israel). Вскоре после этого было забавно видеть рекламу с этим названием. Это заставило меня понять, что есть компании, которым нужен CSS-разработчик, но они не знают, как его описать адекватно.

Почему миру нужны CSS-разработчики

Позже я несколько раз менял название должности (UI / CSS разработчик / Разработчик интерфейса / Инженер / Архитектор / Эксперт), пытаясь приспособить свои способности к названию должности.

Не придерживайтесь только названия «CSS-разработчик»!

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

CSS-разработчик — это название для специалистов среднего звена в CSS. Это разработчики, которые могут взять дизайн и легко преобразовать его в CSS.

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

Почему миру нужны CSS-разработчики

Разнообразие это хорошо!

Разработчик CSS-анимации — в наши дни мы можем почти без особых усилий улучшить пользовательский опыт, используя CSS-анимацию или SVG-анимацию, таким образом превращая хороший проект в фантастический. Это тот вид работ, который может подойти крупным компаниям.

Это наиболее распространенные потребности на 2020 год, но существует больше типов специализированных разработчиков, таких как:

Сара Суэйдан, которая является экспертом SVG.

Диана Смит, которую я считаю CSS-художником.

А может быть, есть и другие — возможности безграничны!

Подводя итоги

В этой статье я стремился повысить вашу осведомленность о теме, которая, как мне кажется, еще не достаточно понята. Моя цель — направить веб-индустрию в правильном направлении.

Почему миру нужны CSS-разработчики

Автор: Elad Shechter

Источник: https://medium.com

Редакция: Команда webformyself.