Как стать автором
Обновить

Рейтинг языков программирования 2023. JavaScript/TypeScript завоевывают мир, Python вошел в топ-3

Время на прочтение4 мин
Количество просмотров177K

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

Представляем результаты ежегодного опроса, данные и скрипты обработки можно найти на GitHub.

В конце статьи будет локальный опрос пользователей Хабр.

Релевантные материалы:

Поехали!

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

В этом году самым популярным языком остается JavaScript — 19% разработчиков пишут на нем коммерческие проекты. Далее — Java (14%) и Python (13%). Последний впервые среди самых популярных. С минимальным отрывом за Python идут C# и TypeScript.

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

Первое что бросается в глаза — стремительный рост популярности TypeScript. При этом это не только миграция JavaScript проектов, так как JavaScript тоже стали использовать чаще. Экосистема занимает новые ниши. Как мы увидим позже, TypeScript все больше становится языком выбора для новых проектов как на Back-end, так и в Full Stack разработке. Кроме того, резко выросла популярность Python, который занял третье место после трехлетнего спада. Возможно, это связано со второй волной интереса к анализу данных.

Какой язык используете в работе? (2012–2023 гг.)

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

Интересно, что на бэкенде выросла доля как TypeScript, так и JavaScript (хотя основным языком все еще остается Java), TypeScript уже используют чаще, чем JavaScript. Доля PHP сокращается, но язык все еще входит в тройку самых популярных, вероятно, Python заменит его в следующем году.

Во фронтенде все довольно ожидаемо, однако становится заметной доля фронтендов на C# (Blazor) и Dart (Flutter Web). Видно, что переход с JavaScript на TypeScript все-таки происходит.

Основной сегмент фуллстек-разработки еще на C# с ASP.NET, но сектор JavaScript/TypeScript суммарно уже больше. Распределение далее в целом показывает те же тенденции, что и в бэкенде.

В сфере анализа данных Python остается вне конкуренции. Удивляет рост доли R и отсутствие заметной доли языка Julia.

Сфера мобильной разработки приносит нам некоторые неожиданности, такие как одновременный рост доли Kotlin и сокращение доли Swift, что отражает соотношение разработки на Android и iOS. Еще интересно, что Flutter теперь используют чаще, чем React Native, в сегменте мультиплатформенных мобильных приложений.

В области DevOps основным языком, как и раньше, является Python. Ну и Embedded-разработка довольно консервативна. Как и раньше, большинство проектов написаны на C и C++, но видно, что с ростом мощности встроенных систем появилось место и для Python. Еще небольшой сегмент Embedded-разработки на Java — микрокарты — сейчас почти исчез.

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

Back-end

Back-end
Back-end

Front-end

Front-end
Front-end

Full Stack

Full Stack
Full Stack

Data processing

Data processing
Data processing

Mobile

Mobile
Mobile

DevOps

DevOps
DevOps

Embedded

Embedded
Embedded

Примечательно, что изменилось распределение между специализациями: стало больше фронтенда, анализа данных и поддержки операций за счет сокращения бэкенда и фуллстек-разработки.

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

Распределение по сферам
Распределение по сферам

Рейтинги личных предпочтений

Среди предпочтений разработчиков видим те же тенденции, что и в основном блоке. Разве что переход от JavaScript к TypeScript является более заметным.

Интересная ситуация в Embedded-специализации: там большинство людей думает, что новый проект лучше начинать на C++, также третьим наиболее подходящим языком является Rust.

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

Для новых коммерческих проектов
Для новых коммерческих проектов

Ниже индекс предпочтения. Напомним, это доля людей, которые пишут на этом языке и для следующего проекта выбрали бы его также.

Индекс предпочтения

Индекс предпочтения
Индекс предпочтения

На этот раз самым любимым языком оказался Swift. В зоне риска ожидаемо находятся языки программирования прошлого века. Время, когда о расцвете Pascal будут вспоминать как о "золотые времена", еще не наступило.

Какой следующий язык выберут те, кто сейчас пишет на Erlang? Из трех заявок - две на Go и одна на Elixir. Для языков программирования баз данных наиболее частой альтернативой является Python.

Самым парадоксальным кажется выбор следующего языка пользователями PHP - это Go, хотя ниша разработки на Go заметно другая.

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

Back-end

Back-end
Back-end

Front-end

Front-end
Front-end

Full Stack

Full Stack
Full Stack

Mobile

Mobile
Mobile

Embedded

Embedded
Embedded

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

Около трети респондентов планирует изучить еще один язык программирования в этом году. Как и ранее, рекордсменом является Go, затем - Python и Rust.

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

В планах изучать
В планах изучать

Большинство планирует изучить следующий язык самостоятельно или с помощью коллег. Обратиться к профессиональным преподавателям в дополнение к самостоятельному изучению есть в планах примерно у 24% респондентов, а 6% в первую очередь будут искать курсы и профессиональных преподавателей.

Какие языки вы собираетесь изучать в следующем году (2018-2023 гг.)?

В планах изучать (тенденция)
В планах изучать (тенденция)

Сейчас у большинства новичков первым языком программирования является JavaScript, но также заметно растет роль Python. С одной стороны, возможно, это отражение того, что Python больше подходит для обучения, чем JavaScript, с другой стороны - данные показывают, что большинство из тех, для кого JavaScript был первым языком программирования, сейчас работает в экосистеме JavaScript/TypeScript, а для кого Python - на Python. Так что, возможно, это просто разделение траекторий обучения.

Первый язык новичков

Первый язык новичков
Первый язык новичков

Дополнительные языки программирования

Конечно, все работают с базами данных. Картина ниже немного отличается от прошлогодней из-за изменения методологии - теперь мы объединили все языки БД в DB.

Все остальное отражает общие тенденции.

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

Дополнительные языки программирования
Дополнительные языки программирования

В опенсорс-проектах участвуют примерно 30% участников опроса (это меньше, чем в прошлом году).

Какие языки программирования используете в open source проектах

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

Интересно выделить те языки, доля которых в опенсорс-проектах больше, чем в коммерческих. Если мы отсортируем языки по такому критерию, то увидим последовательность: Haskell, Objective-C, Rust, R, C и Closure.

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

Язык | Используете в работе, % | Изменения | Используете в работе | Используете как дополнительные | Используете в своих проектах | Индекс предпочтения

Финальный рейтинг языков программирования
Финальный рейтинг языков программирования

Оригинал статьи.

Полезные статьи:

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

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
На каком языке вы программируете? (Back-End)
15.8% Java244
21.37% C#330
16.77% PHP259
23.96% Python370
15.28% TypeScript236
12.76% Go197
15.54% JavaScript240
1.88% Ruby29
9.13% C++141
1.94% Scala30
4.27% Kotlin66
3.37% DB52
4.73% Rust73
0.58% Elixir9
3.56% C55
0.39% Erlang6
2.33% 1C36
0.06% Apex1
0.32% Groovy5
0.45% Clojure7
4.47% Другой69
Проголосовали 1544 пользователя. Воздержались 123 пользователя.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
На каком языке вы программируете? (Front-End)
58.58% JavaScript553
49.58% TypeScript468
10.59% C#100
5.08% Dart48
9.22% Другой87
Проголосовали 944 пользователя. Воздержались 269 пользователей.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
На каком языке вы программируете? (Full Stack)
25.54% C#235
32.07% JavaScript295
30.54% TypeScript281
17.5% PHP161
8.37% Java77
16.52% Python152
0.11% Apex1
1.41% Ruby13
7.72% C++71
3.37% 1C31
5.98% Go55
3.59% DB33
3.26% Kotlin30
3.48% C32
3.26% Pascal/Delphi30
0.33% Groovy3
0.87% Elixir8
4.78% Rust44
3.59% Dart33
0.54% Scala5
2.83% Другой26
Проголосовали 920 пользователей. Воздержались 256 пользователей.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
На каком языке вы программируете? (Data processing)
52.48% Python318
21.45% DB130
5.28% Scala32
6.77% Java41
7.59% JavaScript46
10.23% C++62
2.64% R16
12.38% C#75
3.47% 1C21
7.26% PHP44
9.74% Другой59
Проголосовали 606 пользователей. Воздержались 348 пользователей.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
На каком языке вы программируете? (Mobile)
29.83% Kotlin142
14.08% Swift67
17.86% Dart85
16.81% C#80
12.61% Java60
12.61% TypeScript60
13.03% JavaScript62
3.36% Objective-C16
7.56% C++36
3.78% Python18
6.3% Другой30
Проголосовали 476 пользователей. Воздержались 435 пользователей.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
На каком языке вы программируете? (DevOps)
50.75% Python203
5% Groovy20
17.5% Go70
10.75% C#43
6% TypeScript24
6.5% C++26
7.75% JavaScript31
1.75% DB7
4.25% Java17
2.5% Ruby10
24.25% Другой97
Проголосовали 400 пользователей. Воздержались 434 пользователя.
Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.
На каком языке вы программируете? (Embedded)
45.57% C144
36.71% C++116
20.25% Python64
22.15% Другой70
Проголосовали 316 пользователей. Воздержались 480 пользователей.
Теги:
Хабы:
Всего голосов 42: ↑40 и ↓2+54
Комментарии116

Публикации

Истории

Работа

Ближайшие события

Конференция HR API 2024
Дата14 – 15 июня
Время10:00 – 18:00
Место
Санкт-ПетербургОнлайн
Конференция «IT IS CONF 2024»
Дата20 июня
Время09:00 – 19:00
Место
Екатеринбург
Summer Merge
Дата28 – 30 июня
Время11:00
Место
Ульяновская область