Pull to refresh

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

Reading time4 min
Views184K

Рейтинг языков программирования показал, что 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.

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

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

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

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

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

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

Only registered users can participate in poll. Log in, please.
На каком языке вы программируете? (Back-End)
15.72% Java244
21.33% C#331
16.82% PHP261
24.03% Python373
15.34% TypeScript238
12.82% Go199
15.66% JavaScript243
1.87% Ruby29
9.21% C++143
1.93% Scala30
4.25% Kotlin66
3.35% DB52
4.7% Rust73
0.58% Elixir9
3.61% C56
0.39% Erlang6
2.32% 1C36
0.06% Apex1
0.32% Groovy5
0.45% Clojure7
4.45% Другой69
1552 users voted. 125 users abstained.
Only registered users can participate in poll. Log in, please.
На каком языке вы программируете? (Front-End)
58.61% JavaScript558
49.47% TypeScript471
10.61% C#101
5.04% Dart48
9.14% Другой87
952 users voted. 270 users abstained.
Only registered users can participate in poll. Log in, please.
На каком языке вы программируете? (Full Stack)
25.54% C#236
32.14% JavaScript297
30.52% TypeScript282
17.53% PHP162
8.33% Java77
16.45% Python152
0.11% Apex1
1.41% Ruby13
7.68% C++71
3.35% 1C31
5.95% Go55
3.57% DB33
3.25% Kotlin30
3.46% C32
3.25% Pascal/Delphi30
0.32% Groovy3
0.87% Elixir8
4.76% Rust44
3.57% Dart33
0.54% Scala5
2.81% Другой26
924 users voted. 258 users abstained.
Only registered users can participate in poll. Log in, please.
На каком языке вы программируете? (Data processing)
52.38% Python319
21.35% DB130
5.25% Scala32
6.73% Java41
7.55% JavaScript46
10.18% C++62
2.63% R16
12.48% C#76
3.45% 1C21
7.39% PHP45
9.69% Другой59
609 users voted. 350 users abstained.
Only registered users can participate in poll. Log in, please.
На каком языке вы программируете? (Mobile)
29.92% Kotlin143
14.02% Swift67
17.78% Dart85
16.74% C#80
12.76% Java61
12.55% TypeScript60
12.97% JavaScript62
3.35% Objective-C16
7.53% C++36
3.77% Python18
6.49% Другой31
478 users voted. 437 users abstained.
Only registered users can participate in poll. Log in, please.
На каком языке вы программируете? (DevOps)
50.75% Python204
4.98% Groovy20
17.66% Go71
10.7% C#43
5.97% TypeScript24
6.72% C++27
7.71% JavaScript31
1.74% DB7
4.48% Java18
2.49% Ruby10
24.13% Другой97
402 users voted. 435 users abstained.
Only registered users can participate in poll. Log in, please.
На каком языке вы программируете? (Embedded)
45.6% C145
36.79% C++117
20.13% Python64
22.33% Другой71
318 users voted. 481 users abstained.
Tags:
Hubs:
Total votes 42: ↑40 and ↓2+54
Comments116

Articles