Стан JavaScript 2018

Ми опитали понад 20 000 розробників JavaScript. Ось що вони нам сказали.

Я пишу ці рядки десь високо над Росією, бо виявляється, є люди, які бажають перелетіти мене півсвіту на конференцію, аби вони могли почути, як я розповідаю про тенденції JavaScript.

Якщо ви запитаєте мене, це досить хороший показник того, наскільки популярним стало опитування про стан JavaScript, а отже, як швидко екосистема JavaScript постійно зростає.

Цього року ми знову опитали понад 20 000 розробників JavaScript, щоб з’ясувати, чим вони користуються, чим задоволені та чому хочуть навчитися. І результат - унікальна колекція статистичних даних та статистичних даних, які, сподіваємось, допоможуть вам пробитися самостійно через екосистему JavaScript.

? Перевірте результати

... або читайте далі, щоб дізнатись більше про проект.

Що нового цього року

Темний режим

Якщо ви вже бачили опитування, перше, що ви помітите, це, мабуть, нова, темніша колірна гамма. Ми вважаємо, що це трохи змінює ситуацію, робить чарти частіше і просто виглядає досить круто!

Окремі сторінки

На додаток до групування бібліотек за широкими розділами, такими як інтерфейс, інтерфейс тощо, ми також вирішили надати кожній бібліотеці власну сторінку. Це полегшує ігнорування даних, які не мають значення для вас, одночасно детальніше вивчаючи інструменти, якими ви користуєтесь.

Історичні дані

Оскільки це третє видання опитування, тепер ми можемо показати вам історичні дані за останні два роки! Це дуже корисно, щоб побачити довгострокові тенденції, а не просто заморожений знімок у часі.

Сподобалось та не сподобалось

Цього року ми вирішили представити менше бібліотек, але, у свою чергу, задати більше подальших питань щодо кожної з них. Тож ми не лише запитали вас, чим ви користуєтесь, але й чому ви це використовуєте.

Немає CSS

На жаль, цього року не буде розділу CSS . CSS - це така обширна тема, що майже заслуговує власного опитування, тому замість того, щоб робити щось на півдорозі, ми вирішили зосередитись лише на JavaScript цього разу.

Більше обміну

Ми зробили додатковий крок для створення попереднього перегляду зображень для кожної діаграми в опитуванні, щоб полегшити обмін ними в соціальних мережах або електронною поштою.

Основні тенденції

Ми радимо вам перевірити повні результати, але, можливо, ви поспішаєте і хочете лише суть цього?

TL; DR: цього року все не так змінилося.

JavaScript «Смаки»

Ми називаємо «смаками» різні синтаксиси та мови, які можуть компілюватися в JavaScript, такі як TypeScript.

Якщо говорити про TypeScript, то це явний лідер у цій категорії. У більшості місць понад 40% розробників заявили, що користувались ним і з радістю використовуватимуть його знову, а в деяких країнах цей коефіцієнт навіть перевищив 50%.

Front-End Frameworks

Ось діаграма, яка відображає, наскільки розробники задоволені інтерфейсними бібліотеками, і кількість користувачів:

Як бачите, лише React має як високий коефіцієнт задоволення, так і велику базу користувачів, хоча Vue точно потрапляє туди. З іншого боку, Angular дійсно може похвалитися великою базою користувачів, але його користувачі здаються не надто задоволеними.

Шар даних

Рівень даних групує всі технології, що використовуються для передачі та управління даними. І хоча Redux є домінуючим з точки зору необроблених чисел, ми вважаємо, що ця тенденція віддає перевагу GraphQL та суміжним технологіям, таким як Apollo:

Звичайно, теоретично ви можете використовувати Redux і GraphQL разом, але на практиці ця комбінація може в підсумку бути замінена специфічним інструментом GraphQL, таким як вбудоване управління Apollo.

Щоб дізнатись, що відбувається з тестуванням, внутрішніми фреймворками та багатьма іншими, прочитайте повні результати!

Стек

Може здатися дивним говорити про технологічний стек для того, що по суті є простим статичним сайтом. Але це зрештою мова про JavaScript! Таким чином , ви знаєте , речі ніколи не буде , що просто!

  • Ми збирали дані за допомогою Typeform. Ми створили власний інструмент командного рядка для створення опитувань за контурами YAML за допомогою їх API, що було величезною допомогою для швидкої ітерації.
  • Потім ми обробили та нормалізували дані за допомогою Elasticsearch.
  • Ми підключили отримані файли JSON до Гетсбі, щоб створити сайт. Для завантаження даних ми використовували комбінацію функцій запиту даних GraphQL від Gatsby та простих старих imports.
  • Нарешті, ми створили всі діаграми, використовуючи дивовижну бібліотеку візуалізації даних Nivo.js для React.

Якщо вам цікаво, весь проект доступний на GitHub для навчальних цілей.

Про команду

Якщо вам цікаво, хто бере участь в опитуванні:

Саша Грейф (я!)

Я створив опитування в 2016 році, щоб відповісти на власні запитання про найкращі технології для навчання. Через два роки я все ще навчаюсь, а також намагаюся реінвестирувати всі ці нещодавно набуті знання у свій власний фреймворк JavaScript, Vulcan.js.

Рафаель Беніт

Рафаель - творець Nivo, і всебічний експерт з візуалізації даних, і поганий дурник. Він також опікується всіма завданнями аналізу даних для опитування.

Майкл Рамбо

Майкл є творцем BestOfJS, агрегатора даних та тенденцій про екосистему JavaScript. Він ідеальна людина, щоб запитати, коли вам потрібні дані про якусь незрозумілу бібліотеку JavaScript!

Що далі

Запуск цьогорічного веб-сайту став результатом більш ніж двох місяців наполегливої ​​роботи зі збору, аналізу та представлення даних. Але ми можемо зробити ще багато іншого.

Наприклад, ми хотіли б зробити сайт результатів доступним на більшій кількості мов. Це вимагатиме невеликого реінжинірингу з нашого боку, оскільки зараз багато рядків жорстко закодовані, але це повинно бути можливим.

Якщо ви хочете допомогти перекласти сайт вашою мовою, перегляньте цю тему GitHub.

І з усією виконаною нами роботою ми починаємо думати, що, можливо, було б непогано використовувати наше налаштування для інших опитувань. Як щодо штату ... Турбо Паскаль? Ну, можливо, ні. Але повідомте нам у коментарях, якщо у вас є якісь пропозиції!