Рейтинг языков программирования 2021: доля Python уменьшается, а TypeScript обошел С ++

5551
Посмотрим на «индекс предпочтения»
Посмотрим на «индекс предпочтения»

Рейтинг языков программирования 2021: доля Python уменьшается, а TypeScript обошел С ++

Так, впервые с 2014 года в Python отрицательная динамика. Еще наблюдаем тенденцию перехода с JavaScript на TypeScript, наиболее довольны пользователи Elixir, и наконец на карте появился Rust.

Подписывайтесь на Telegram-канал «Программирование {BookFlow}», чтобы не пропустить технические статьи.

Представляем результаты ежегодного опроса о языках программирования. На этот раз собрали 7211 анкет, 92% респондентов находятся в Украине. Поехали.

Коммерческое использование

Что изменилось? Прежде всего привлекает внимание рост TypeScipt: похоже, он со временем станет основным языком в экосистеме JavaScript. В этом году он впервые обошел С ++ по популярности.

Еще из интересного: впервые за несколько лет снижение доли Python: возможно, использование Data Science дошло до точки насыщения.

Впервые с 2012 года выросла доля C #. Использование Java продолжает уменьшаться, хотя и не так активно, как раньше. В общем видно уменьшение доли JVM: доля Kotlin стабильна (хотя он и уступил место Ruby), использование Scala возобновилось после значительного снижения в 2019-м и сегодня, если сравнивать с 2018-м, даже немного возросло. Еще стоит отметить незначительный рост Dart.

На каком языке пишете для работы сейчас

Рейтинг языков программирования 2021
На каком языке пишете для работы сейчас

Ниже диаграмма с динамикой по актуальным языков программирования по годам. Статистически значимыми являются изменения для C ++, TypeScript, Ruby, 1C, Scala, Pascal / Delphi, T-SQL. Напомним, что изменения статистически значимы, если с вероятностью 95% мы не можем получить результаты с изменениями и без, если будем равномерно выбирать две группы респондентов с одной популяции.

На каком языке пишете для работы сейчас (2012-2021 гг.)

Рейтинг языков программирования 2021
На каком языке пишете для работы сейчас (2012-2021 гг.)

Сферы использования

В этом году мы впервые попросили респондентов указать сферу, в которой они работают. Результаты довольно интересны.

Видим, что примерно половина разработчиков — это бэкенд (52%), далее сегменты вебфронтенду (19%) и мобильной разработки (ее еще меньше, чем интернету — 8%), обработка массивов данных (туда относятся и Big Data и машинное обучение) — 6%. Desktop-программирования еще существует и занимает 4% объема, системное программирование — 3% (сейчас небольшая доля) и Full-Stack разработка — примерно 1%.

В какой сфере в основном работаете

Рейтинг языков программирования 2021
В какой сфере в основном работаете

Посмотрим, какие языки используют в зависимости от сферы.

Языки программирования с разбивкой по сферам использования

Рейтинг языков программирования 2021

Рейтинг языков программирования 2021
Рейтинг языков программирования 2021
Рейтинг языков программирования 2021
Рейтинг языков программирования 2021
Рейтинг языков программирования 2021
Рейтинг языков программирования 2021
Рейтинг языков программирования 2021
Рейтинг языков программирования 2021
Рейтинг языков программирования 2021

Мы видим, что основные языки бэкенд — это Java, C # и PHP. Доля JavaScript и TypeScript есть, но не такая большая и сравнима с долей Ruby и Go. В десятку главных языков бэкенд также входят Scala и С ++.

Фактически весь фронтенд пишут на JavaScript и TypeScript. Использование других языков сугубо маргинальное. TypeScriptьу сравнительно меньше. Интересно будет посмотреть на это соотношение в год.

В мобильной разработке основные языки — Kotlin и Swift. А доля кросплатформових фреймворков меньше, чем кажется. Кроме того, заметно, что Dart / Flutter сразу заняли большую нишу. А после React Native и Flutter есть еще место для C # Xamarin.

Среди обработки данных безоговорочным лидером является Python, далее — языка манипуляции данными T-SQL и PL-SQL. Особое место занимают Scala (здесь она более распространена, чем Java) и R.

Личные предпочтения

Как мы уже указывали, результаты выбора программистов нельзя использовать для прогнозирования, но здесь интересно, что наконец на карте появился Rust. Опять видим некоторый спад интереса к Python и тенденцию перехода с JavaScript на TypeScript.

Если бы вы сейчас начинали коммерческий проект и у вас была свобода выбора

Если бы вы сейчас начинали коммерческий проект и у вас была свобода выбора
Если бы вы сейчас начинали коммерческий проект и у вас была свобода выбора

Посмотрим на «индекс предпочтения» — это относительное количество разработчиков на языке X, которые для последующего проекту в своей сфере тоже выберут X.

Посмотрим на «индекс предпочтения»
Посмотрим на «индекс предпочтения»

Интересно, что здесь данные отличаются от опроса Stack Overflow и нашего предыдущего опроса: Rust расположен заметно ниже. Наиболее довольны пользователи Elixir (возможно, это миграция Erlang-комьюнити), также обращает на себя внимание место Clojure.

Если посчитать отдельно индекс удовлетворения по сферам применения, то результаты почти совпадают.

Изучение новых языков


Фаворитом, как и в предыдущие годы, стал Python. Его собираются изучать почти 18% из тех, кто будет осваивать новый язык. Но все-таки доля меньше, чем год назад. Ну а наибольший рост в TypeScript и Rust.

Какие языки вы собираетесь изучать в следующем году

Какие языки вы собираетесь изучать в следующем году
Какие языки вы собираетесь изучать в следующем году

Как и в предыдущие годы, большинство респондентов (83%) хочет изучать новый язык самостоятельно, с помощью книг и документации, 4% будут обращаться к коллегам (впечатляющая интровертность), а 12% будут использовать традиционный подход — с помощью профессиональных преподавателей (курсов или индивидуальных занятий). Рейтинг языков программирования 2021.

Дополнительные языки


Тенденции те же: видим, что больше всего JavaScript, ну и впервые стало заметным реальное использование Rust.

Какие языки вы используете в качестве дополнительных

Какие языки вы используете в качестве дополнительных
Какие языки вы используете в качестве дополнительных

Относительно собственных проектов, то предыдущие тенденции повторяются. Можно обратить внимание на то, что уменьшилось количество проектов на Rust.

Какие языки вы используете в своих проектах

Какие языки вы используете в своих проектах
Какие языки вы используете в своих проектах

Финальная таблица

 
Язык Доля рынка Изменения Основная Дополнительная Свои проекты Индекс предпочтения
1 JavaScript 18   1201 3168 1537 0.55
2 Java 14.7   978 737 771 0.75
3 C# 14.3   949 479 615 0.83
4 Python 12.1 -1 804 1141 783 0.72
5 PHP 10.1   672 490 469 0.7
6 TypeScript 6.92 2.5 459 1421 593 0.8
7 C++ 4.6 -1.3 305 392 373 0.63
8 Swift 3.1   204 155 153 0.85
9 Ruby 3.0 0.6 198 145 154 0.72
10 Kotlin 2.6   174 236 175 0.88
11 Go 2.0   132 313 210 0.87
12 Scala 1.75 0.65 116 133 75 0.80
13 C 1.1   79 292 175 0.37
14 1C 1 -0.7 63 37 38 0.47
15 T-SQL     60 793 65 0.28
16 Dart     55 120 69 0.72
17 PL-SQL     34 355 26 0.32
18 Pascal/Delphi     23 42 27 0.56
19 R     22 84 33 0.5
20 Apex     18 6 4  

 

Рейтинг языков программирования 2021, дополнительные данные


Несмотря на языки программирования, имеет смысл рассмотреть структуру распределения опыта в динамике.

Опыт работы программистом с динамикой (2012-2021 гг.)

Опыт работы программистом с динамикой (2012-2021 гг.)
Опыт работы программистом с динамикой (2012-2021 гг.)

Tут можно сделать вывод, что, поскольку доля разработчиков с опытом в 1 год уменьшилась => в IT пришло меньше новичков, чем в прошлом году.

Но все равно в большинстве специалистов менее 5 лет опыта в ИТ.

Опыт работы программистом

Опыт работы программистом
Опыт работы программистом

Посмотрим корреляцию между возрастом и языком программирования.

Возраст разработчика зависимости от языка

Возраст разработчика зависимости от языка
Возраст разработчика зависимости от языка

Здесь мы видим, что молодая аудитория в Kotlin и JavaScript, а старшая — ожидаемо в PL-SQL и Pascal / Delphi.

Похожие данные показывает опыт разработчика в зависимости от языка:

Опыт разработчика зависимости от языка

Опыт разработчика зависимости от языка
Опыт разработчика зависимости от языка

Большинство разработчиков начинало на Pascal и С ++, но вскоре первыми языках разработчиков станут JavaScript и Python. Интересно, как это повлияет на культуру программирования …

Первая речь новичков

Первая речь новичков
Первая речь новичков

 

Рейтинг языков программирования- декабрь 2017

Рейтинги популярности языков программирования и СУБД в 2019 году

 

Данные и скрипты обработки можно найти на GitHub
Инфографика: Игорь Яновский