Рейтинг языков программирования 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.
На каком языке пишете для работы сейчас
Ниже диаграмма с динамикой по актуальным языков программирования по годам. Статистически значимыми являются изменения для C ++, TypeScript, Ruby, 1C, Scala, Pascal / Delphi, T-SQL. Напомним, что изменения статистически значимы, если с вероятностью 95% мы не можем получить результаты с изменениями и без, если будем равномерно выбирать две группы респондентов с одной популяции.
На каком языке пишете для работы сейчас (2012-2021 гг.)
Сферы использования
В этом году мы впервые попросили респондентов указать сферу, в которой они работают. Результаты довольно интересны.
Видим, что примерно половина разработчиков — это бэкенд (52%), далее сегменты вебфронтенду (19%) и мобильной разработки (ее еще меньше, чем интернету — 8%), обработка массивов данных (туда относятся и Big Data и машинное обучение) — 6%. Desktop-программирования еще существует и занимает 4% объема, системное программирование — 3% (сейчас небольшая доля) и Full-Stack разработка — примерно 1%.
В какой сфере в основном работаете
Посмотрим, какие языки используют в зависимости от сферы.
Языки программирования с разбивкой по сферам использования
Мы видим, что основные языки бэкенд — это 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 гг.)
Tут можно сделать вывод, что, поскольку доля разработчиков с опытом в 1 год уменьшилась => в IT пришло меньше новичков, чем в прошлом году.
Но все равно в большинстве специалистов менее 5 лет опыта в ИТ.
Опыт работы программистом
Посмотрим корреляцию между возрастом и языком программирования.
Возраст разработчика зависимости от языка
Здесь мы видим, что молодая аудитория в Kotlin и JavaScript, а старшая — ожидаемо в PL-SQL и Pascal / Delphi.
Похожие данные показывает опыт разработчика в зависимости от языка:
Опыт разработчика зависимости от языка
Большинство разработчиков начинало на Pascal и С ++, но вскоре первыми языках разработчиков станут JavaScript и Python. Интересно, как это повлияет на культуру программирования …
Первая речь новичков
Рейтинг языков программирования- декабрь 2017
Рейтинги популярности языков программирования и СУБД в 2019 году
Данные и скрипты обработки можно найти на GitHub
Инфографика: Игорь Яновский