Состояние JavaScript в 2018 году: обзор Vue.js
Перевод статьи John Willoughby: The State of Javascript 2018: The View on Vue.
Результаты исследования State of JavaScript за 2018 год только что были опубликованы, и поскольку мы приблизились к концу года, то сейчас самое время взглянуть на Vue.js и посмотреть, как идут дела у этого фреймворка.
Ежегодный опрос State of JavaScript, проводимый Сашей Грейф (Sacha Greif), Рафаэлем Бенит (Raphael Benitte) и Майклом Рэмбю (Michael Rambeau), изучает мнение более 20 тысяч веб-разработчиков относительно тенденциях за прошедший год. Хотя опрос не охватывает целиком всю отрасль, он, тем не менее, даёт довольно хорошую выборку и отличную исходную точку для ознакомления с состоянием Vue. Итак, о чём там говорится?
Давайте сразу перейдём к интересному — как дела у Vue? Конечно, это не соревнование, но всё же… давайте добавим результаты по React и Angular. А затем, чтобы на самом деле ответить на этот вопрос, давайте также покажем данные за прошлый год, чтобы увидеть, как результаты менялись год от года. Да, в опросе перечислены несколько других фреймворков, однако их использование существенно ниже по сравнению с большой тройкой, поэтому я исключил их.
График выглядит очень колоритно! Так что на самом деле он нам говорит? Самое важное, что использование всех троих фреймворков увеличилось за последний год. Я не буду вдаваться в подробности данных касательно React или Angular, помимо сравнения их с Vue. Есть статьи по разбору данных опроса касательно React и Angular, в этих статьях вы найдёте всю подробную информацию.
Единственное, что выделяется — это почти уже все слышали о Vue в этом году. В 2017 году около 5% респондентов сообщили, что они никогда не слышали про Vue, тогда как в этом году этот показатель стал ниже 1%.
Положительное использование увеличилось с 20% до 29% за 2018 год. Таким образом, использование Vue.js немного выше, чем Angular, и примерно половина от React (не то, что мы сравниваем). Однако… как и со всеми данными, нам нужно поместить их в контекст и соотнести с другой информацией. Vue, пожалуй, проще всего взять и начать использовать, так что эти цифры могут включать больше людей, использующих его в небольших проектах или в целях обучения. Это подтверждается мнениями разработчиков, с которыми я общался в течение прошлого года. Это вовсе не означает, что Vue не используется в реальных проектах, просто 29% людей могут включать в себя большее количество «сомневающихся», нежели чем в других фреймворках. Тем не менее, есть много людей, использующих Vue, и их число растёт.
Обратите внимание, что голоса за «heard of it, not interested (слышал об этом, но не заинтересован)» и «heard of it, would like to learn (слышал об этом и хотел бы изучить)» держались примерно на одном уровне с небольшим уменьшением. Это соответствует продолжающемуся внедрению, и со временем мы ожидаем, что большее количество людей, выбравших вариант «heard of it, would like to learn», перейдёт группе «used it (использовали его)».
Последнее, на что следует обратить внимание: людей, отметивших вариант «used it, would not use it again (использовал его и не стал бы использовать снова)» довольно мало и теперь только немного увеличился. Этот показатель ниже, чем в React, и намного ниже, чем у Angular (опять же, мы не это сравниваем). Это очень хороший знак. Люди пытаются, они используют Vue, и им он нравится.
Кто эти люди?
Обратите внимание, что следующие данные и диаграммы предназначены только для Vue-разработчиков, они не включают информацию обо всех участниках опроса.
Для опроса также приведена демографическая информация. Первый график — информация о зарплате. Он разделён по фреймворкам, нам интересен Vue, где видно, что 17% респондентов зарабатывают 100–200 тысяч долларов, а 29% зарабатывают в 50–100 тысяч. Диапазон от 50 до 200 тысяч долларов охватывает обычную зарплату разработчиков в США. Что интересно, однако, так это то, что 19% указали свою зарплату как 30–50 тысяч долларов, а 17% — 10–30 тысяч. Они могут быть из других стран с более низкой шкалой заработной платы, или они могут указывать на количество студентов, подрядчиков, занятых неполный рабочий день, или людей на других должностях, которые только переходят в разработку. Эти категории могут указывать на группу людей, которые используют Vue, но не в продакшене.
Кроме того, если вы один из немногих, кто зарабатывает более 200 тысяч долларов в год на должности разработчика на Vue, немедленно свяжитесь со мной и расскажите, как вы это делаете 😃.
Мы также предоставляем данные о размере компании по фреймворку. Здесь мы видим, что по Vue 34% людей указали, что они работают в компании с более чем 100 сотрудниками, а 20% — в компаниях с 5 или менее сотрудниками, поэтому наблюдается довольно хороший разброс в размере компании. Обратите внимание, что сочетание категорий (например, между «1–5» и «1») не было опечаткой с моей стороны, именно так перечислены результаты.
Наконец, результаты опроса содержат многолетний опыт работы с каждым фреймворком, и здесь мы видим довольно хороший рост. 30% принявших участие в опросе имеют 2–5 лет опыта, и столько же, 30%, по 5–10 лет опыта, а у 23% — 10–20 лет опыта. Менее двух лет назад было 13%, поэтому мы видим некоторый интерес начального уровня, но не такой, как у более опытных разработчиков.
Более тщательное изучение
Анализ данных относительно Vue, позволяет нам лучше понять, кто и почему используют Vue.
Начнём с того, что больше всего понравившийся аспект Vue, причиной номер один стала «плавная кривая обучения (easy learning curve)», за которой следуют «элегантный стиль программирования (elegant programming style)» и «хорошая документация (good documentation)». Другими словами, с Vue легко работать. С другой стороны, пункт «высокая производительность (fast performance)» оказался в списке на пятом месте, поэтому тем, кто используют Vue в реальных приложениях, стоит уделить внимание производительности. Следует отметить, что так ответили те участники опроса, которые указали, что использовали Vue и будут использовать его снова.
Из числа тех, кто ответил, что «использовали его и НЕ будут использовать его снова», и имейте в виду, что это очень маленький процент людей, первой причиной с огромным отрывом стал «неуклюжий стиль программирования (clumsy programming style)». Это, похоже, противоречит тем же причинам, которые нравились другой группе, и предполагает, что Vue похож на пиво со вкусом тыквы. Некоторые люди просто любят его, а другие думают, что это противно. Это вопрос стиля и предпочтений. (Для справки, люди, которые считают, что тыквенное пиво противно, правы 🙂).
Следующий интересный набор данных — это место, где находятся счастливые пользователи Vue. Самый высокий процент отмечен в Китае, Франции, Индонезии, Таиланде, Вьетнаме, Нигерии, Мексике, Перу, Бразилии и некоторых других странах. К местам с меньшим степени удовлетворённости относятся США, Индия и Австралия.
В докладе вкратце (для раздела фреймворков) указывается, что React в настоящее время является самым популярным фреймворком, а Vue неуклонно растёт. В отчёте указывается, что Vue фактически обогнал React по общему количеству звёзд на GitHub. Angular поддерживает значительную пользовательскую базу, и, хотя не все довольны им, он, кажется, хорошо вписывается в определённые ситуации и не проявляет каких-либо признаков исчезновения с лица земли.
Но подождите, это ещё не всё!
Опрос State of JavaScript даёт нам полезную информацию от большого количества разработчиков, но это не весь рынок. Он также задаёт определённые вопросы, но не всем. Существуют и другие опросы, которые стоит посмотреть, один из которых является Developer Survey Results от Stack Overflow . Или, по крайней мере, он был бы интересен для рассмотрения, если бы включал Vue, которого пока нет. Vue может расти как на дрожжах, но это не везде (пока ещё!). Обратите внимание, что на Stack Overflow есть тонна вопросов про Vue.
Опрос от Stack Overflow 2018 года включал Angular и React, а также .NET и ряд других инструментов, но не Vue. Интересно отметить, что в этом опросе Angular превосходит React как наиболее часто используемый фреймворк с 37% против 28% у React. Казалось бы, это противоречит результатам опроса State of JavaScript, где React превосходит Angular. Хотя это не имеет никакого отношения к Vue, это подчёркивает важность детального изучения данных опроса — как именно задавались вопросы? У кого был доступ к опросу? Кто завершил опросы? Это также показывает, что нужно быть осторожнее, полагаясь на результаты только одного опроса.
Я добавлю две заметки про опрос Stack Overflow. Во-первых, он было проведён в начале 2018 года, так что ему почти год. Во-вторых, я не видел фактического опроса, поэтому я (разумно) предположил, что Vue просто исключён из списка вариантов, поскольку его вообще не было в списке результатов.
Кто нанимает
Существует ряд других способов посмотреть на рост Vue. Мы можем, например, отобрать вакансии, чтобы увидеть, сколько компаний указывают «Vue» в качестве необходимого навыка в описании вакансии. Поиск по популярному сайту вакансий Indeed.com по запросу «Vue» выдаёт 2 661 вакансию, включающее слово «Vue» в описание. Большинство из них для вакансии на должность разработчика. Если мы действительно хотим получить точное число, мы должны потратить дополнительное время на фильтрацию результатов вакансий по «Vue». Я вижу одну вакансию, относящуюся к «Pearson Vue», другую к «Campus Vue», и третью — «Playstation Vue», но большинство вакансий на поиск Vue-разработчиков, и я больше хочу понять общее ощущение рынка, а не идеальное число.
Что интересно, React даёт нам 58 433 рабочих места, а Angular — 17 219. Оба результата выглядят так, как будто найденные вакансии, как правило, на поиск соответствующих разработчиков, хотя число React кажется довольно высоким, и любой детальный анализ займёт некоторое время на поиск ключевых слов для фильтрации. Также обратите внимание, что в некоторых вакансиях можно встретить фразу типа «Требуется опыт таких технологий, как React, Angular и т.д.», поэтому работодатели не обязательно ищут разработчика на React.
Несмотря на все нестыковки, которые я перечисляю, это рисует довольно чёткую картину рынка, который глубоко погружён в React, все ещё силён для Angular, и только начинает работать с Vue в продакшене. При всем этом интересе, который мы видели в других источниках, мы должны ожидать, что вакансии по Vue увеличатся в течение следующих нескольких лет, поскольку интерес переходит в использование.
Кто ищет
Google всегда хорош для определённой аналитики, поэтому мы можем воспользоваться Google Trends для отслеживания популярности Vue с течением времени на основе поисковых запросов. Здесь также нужно обратить внимание на то, как мы структурируем запрос. Просмотр графика времени говорит нам о многом, например, мы знаем, когда Vue появился на сцене (в 2014 году), поэтому, если результаты не начинаются с нуля в 2014 году, а затем стабильно растут, мы, вероятно, используем неправильные условия поиска. Мы также можем просто погуглить «”Vue”» или другие варианты и посмотреть на ранжирование, и, возможно, нам может потребоваться ещё отфильтровать поисковую выдачу.
Поиск «Vue» по трендам даёт нам хорошие результаты, начиная с 2004 года, и это, конечно, не то, что нам нужно. Поиск по трендам «Vue.js» даёт нам кривую, которая начинается в 2014 году, а затем поднимается выше, и безусловно нет какого-либо другого «Vue.js», который мог бы привести к неожиданным результатам. С другой стороны, некоторые люди могут просто искать термин «Vue», потому что его чаще сокращают. Поиск только по «Vue.js» будет скучать по таким людям 😊.
В Google Trends также интересен отчёт «interest by region (интерес по регионам)», в котором Южная Корея заняла первое место. Остров Святой Елены на втором месте, и я приветствую любые объяснения, почему это так. Япония на третьем месте и т.д. Я был бы больше взволнован результатами «Остров Святой Елены» (неточные данные?), за исключением того, что анализ трендов только для США возвращает очень похожий график. Исходя из результатов, которые мы видим здесь, Vue явно продолжает расти (и нам не хватает декабрьских данных по итогам 2018 года, что сделает его ещё выше). Люди ищут информацию по нему. Рост в 2018 году вряд ли будет соответствовать росту в 2017 году, но помните, что опрос State of JavaScript показал Vue почти с нулевым числом людей, которые не были знакомы с ним в 2018 году. Я не буду показывать сравнения с React или Angular, поскольку трудно получить точные условия поиска яблок против яблок.
Вывод
Все эти источники данных полезны в создании картины принятия Vue и его использования в реальном мире. Однако я не могу предостеречь вас достаточно сильно, чтобы каждый источник был взят за одну точку данных. Как я упоминал выше, какие именно вопросы были заданы или использовались поисковые условия, как были собраны данные, кто имел доступ, чтобы внести свой вклад и т.д. — всё это может так или иначе искажать данные. Всю картинку в целом можно получить только путём анализа несколько источников данных. И такая общая картина состоит в том, что Vue может быть номером три, но он растёт, у него уже есть сильные последователи, и это не может не радовать.
И последнее, что я хочу добавить, — это мой личный опыт участия в ряде конференций по Vue за последний год. Для начала, в прошлом году было добавлено несколько новых конференций Vue, которые собрали большое число участников. Экосистема все ещё растёт, и по мере роста будут проводиться такие виды деятельности, как различные события, и инструменты поддержки, такие как Kendo UI для Vue. Я разговаривал с несколькими разработчиками на этих хорошо посещаемых конференциях Vue, и они полны энтузиазма, и многие из них используют Vue в реальных приложениях в продакшене. Vue здесь и никуда не денется. По крайней мере, на данный момент, потому что в мире веб-приложений единственная реальная константа — это изменения.
Слушайте наш подкаст в iTunes и SoundCloud, читайте нас на Medium, контрибьютьте на GitHub, общайтесь в группе Telegram, следите в Twitter и канале Telegram, рекомендуйте в VK и Facebook.
Если вам понравилась статья, внизу можно поддержать автора хлопками 👏🏻 Спасибо за прочтение!