Сборник идей по основным болевым точкам разработчиков, собранных в ходе нескольких индивидуальных бесед.
Несколько месяцев назад Пол Кинлан опубликовал пост о главных болевых точках разработчиков в 2021 году , поэтому кажется уместным начать эту статью с обновления за последние 2 квартала. Цифры немного изменились, но рейтинг не изменился.
Испытание | 1 квартал 2021 г. | 2 квартал 2021 г. | 3 квартал 2021 г. | 4 квартал 2021 г. |
---|---|---|---|---|
Отслеживание изменений веб-платформы или веб-стандартов. | 27% | 26% | 27% | 22% |
Отслеживание большого количества новых и существующих инструментов и фреймворков. | 26% | 26% | 25% | 21% |
Обеспечение одинаковой работы дизайна или опыта во всех браузерах. | 26% | 28% | 24% | 21% |
Тестирование в разных браузерах. | 23% | 24% | 20% | 20% |
Понимание и реализация мер безопасности. | 23% | 25% | 20% | 19% |
Как упоминалось в блоге Пола, нам нужно решить эти болевые точки. В рамках более масштабных усилий по этому вопросу мой коллега Кадир Топал и я опросили более 18 разработчиков. Наша цель — исследовать и начать понимать путь к исправлению болевых точек главных разработчиков.
Обсуждения разработчиков
Отказ от ответственности: эти идеи основаны на небольшом количестве разговоров с разработчиками. Когда используются слова «все» или «некоторые», это относится к разработчикам, с которыми проводились интервью, а не ко всему сообществу. Для более широкой экстраполяции этих идей необходимы дополнительные исследования.
Эти беседы стали отличным напоминанием о том, насколько удивительно и разнообразно сообщество веб-разработчиков, и я хотел бы поблагодарить всех разработчиков, которые общались с нами. У некоторых разработчиков более 25 лет опыта, в то время как другие начали свою карьеру совсем недавно, в 2020 году. Некоторые разработчики начали свою карьеру, получив официальную степень в области компьютерных наук, в то время как другие начали свою карьеру самостоятельно. Некоторые разработчики активно ищут что-то новое и следят за обновлениями, читая заметки о выпуске браузера, в то время как другие узнают о новых вещах от коллег и друзей. Некоторые считают, что сложность — это часть работы, и им нравится, когда им бросают вызов, в то время как другие просто хотят выполнить свою работу. Когда мы думаем о решении этих болевых точек, важно помнить об этом разнообразии!
Одной из общих черт всех разработчиков является то, что все они используют CMS или фреймворк для выполнения своей работы. Были упомянуты Wordpress, React, Bootstrap, Angular и Tailwind, никто из разработчиков не использовал ванильную веб-платформу в производстве. Выбор фреймворка при запуске проекта — это сложная задача, и разработчики часто учитывают нетехнические требования. Например, будет ли легко нанять разработчика для работы с этим фреймворком. Мы не сможем устранить болевые точки разработчиков, если фреймворки и CMS не включены в решение.
Говоря о веб-платформе, большинство разработчиков понимают платформу как то, что они разрабатывают поверх. Это включает в себя не только классическое определение веб-платформы, но и CMS, фреймворк, инструменты и полифиллы. Во многих случаях, быть в курсе всего этого — вот где самые большие трудности. Это изменило нашу интерпретацию этого вопроса, и теперь мы знаем, что нам нужно обновить наш опрос, чтобы разбить его на различные части, которые менее двусмысленны.
Еще одна область неоднозначности — определение веб-стандартов . Когда разработчиков спросили о примерах соответствия стандартам, многие указали на трудности с соответствием лучшим практикам. Это еще одна область, которую нам нужно прояснить в опросе.
Разработчики ищут лучшие практики при реализации конкретных вариантов использования и шаблонов. Сообщения в блогах и StackOverflow упоминаются как источники лучших практик, но разработчики часто задаются вопросом, действительно ли информация, которую они читают, является лучшей практикой и соответствует ли она последним функциям и API. Они хотели бы получить более официальный источник для их прочтения.
Меньшая проблема — это поддерживать функции и API, которые позволяют использовать новые варианты использования. Разработчики больше борются с функциями, API и изменениями в платформе, которые приводят к изменению передовых практик.
Большинство разработчиков согласны, что совместимость — одна из самых больших проблем. Ситуация улучшается благодаря таким усилиям, как Compat 2021 и Interop 2022 , но очевидно, что разработчики пока не считают это решенной проблемой.
Большинство разработчиков используют полифиллы тем или иным образом. Однако во многих случаях использование прозрачно для разработчиков, поскольку полифиллы могут быть автоматически добавлены таким инструментом, как Babel или фреймворком. Для тех, кто управляет своими полифиллами самостоятельно, может быть проблемой выяснить, является ли полифилл «хорошим». Разработчики упомянули использование количества установок на NPM и создателя полифилла в качестве сигналов. Несколько разработчиков упомянули о работе по удалению полифиллов, которые стали ненужными из-за прекращения поддержки IE 11.
Фреймворки вносят проблемы фрагментации. Мы слышали отчеты о том, что разработчики были «застряли» в старой версии фреймворка и из-за этого были ограничены в функциях, которые они могли использовать, но миграция на более новую версию того же фреймворка могла быть дорогостоящей и труднооправданной.
Заключение
Современная веб-разработка имеет много подвижных частей, включая стандарты, браузеры, библиотеки, полифиллы, CMS, фреймворки, лучшие практики и инструменты. Это разнообразие — одна из замечательных особенностей веба, но сейчас каждый разработчик должен сам разобраться в каждой части и в том, как они совместимы друг с другом.
Интересно, есть ли способ внести больше ясности разработчикам в то, как все связано вместе, и больше согласованности между всеми частями, не жертвуя разнообразием. Это большая, сложная проблема, и трудно сделать все сразу. Но с чего вообще начать?
Если у вас есть взгляды и мнения, которыми вы хотели бы поделиться. Я бы тоже с удовольствием пообщался с вами. Я найду способ бронирования бесед напрямую, но в то же время мои личные сообщения открыты в Twitter . Свяжитесь со мной, и мы сможем найти время для чата!