Объявления сайта

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

 
Picture of Петро Дементьєв
Рейтинг языков программирования
by Петро Дементьєв - Thursday, 15 February 2018, 6:23 PM
 

Основные результаты

pl-1.png

Самым распространенным языком по-прежнему остается Java (23% рынка), JavaScript вышел на второе место (16%), незначительно опередив C# по популярности. На 4-ом месте, как и прежде, — PHP (13%) с большим отрывом от Python (7%). Программирование на C++ занимает 5% рынка, далее идут Ruby (4.5%), Swift и Objective-C. Замыкает десятку наиболее популярных языков — Scala (1.5 %), опередив C и 1C.

Cо стороны «длинного хвоста» — стало заметным использование TypeScript и Kotlin.

Посмотрим на динамику последних лет:

pl-2.png

Видим уменьшение использования Java, несмотря на то, что язык по-прежнему остается самым распространенным. JavaScript продолжает набирать популярность теми же темпами, что и раньше. В секторе iOS разработки Swift продолжает вытеснять Objective-C (сейчас соотношение Swift к Objective C — 55/45, в прошлом году это было 20/80). Также из статистически значимых изменений по сравнению с началом 2016 — увеличение популярности Scala и Go. Снижение популярности PHP прекратилось.

Предпочитаемые технологии

pl-3.png

Тут ситуация похожа. Из новостей рост перспективы Go, стал виден Kotlin и TypeScript, а вот Java выбрало бы для следующего проекта заметно меньше людей, чем в прошлом году. Можно предположить, что Kotlin рассматривается как предпочитаемый язык теми разработчиками, которых Java уже ограничивает, а Scala кажется либо слишком сложной, либо не очень подходящей к области. Также можно связать падение темпов роста JavaScript и появление TypeScript: его можно использовать как JavaScript со статической типизацией.

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

pl-4.png

Видим, что самый «любимый» язык — Swift, далее в следующей группе идут C#, Go и Scala, а затем — Java, Kotlin и Clojure.

Самый «нелюбимый» — Apex, за ним идут SQL-подобные и устаревающие языки.

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

В этом году мы впервые включили в опрос блок вопросов об изучении новых языков: большинство разработчиков (65%) хотят в следующем году выучить какой-то новый язык.

Какой именно:

pl-5.png

То есть 31% еще не знают какой. Наиболее притягателен для обучения — JavaScript (12%), затем Python, Java, Go, Scala и Swift.

Как именно люди собираются изучать новый язык программирования: преимущественно на основе книг и документации (61%); 27% будут проходить онлайн курсы, а офлайн курсы останутся основным методом обучения для 7% респондентов, ответивших на данный вопрос.

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

pl-6.png

Видим, что в целом картина повторяет ситуацию с основными языками разработки, за исключением появления Unix Shell на втором месте и более высокой позиции расширений SQL.

Свои проекты:

pl-7.png

Здесь тенденции те же, изменений по сравнению с годом раньше — меньше. Может быть это связано с тем, что понятие «свои проекты» консервативно: если у меня есть проект на C++, значит, он у меня и останется.

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

ЯзыкДоля рынкаИзменение по сравнению с 2016РабочийДополнительныйВ своих проектахИндекс удовлетворенности
1Java23.4-2.911892112919650.76
2JavaScript16.22.361316420626060.69
3C#14.9 121074413540.82
4PHP13.25 107385212530.63
5Python8.710.74706117011570.71
6C++5.5-0.954456817250.62
7Ruby3.5 2872793300.68
7Ruby3.5 2872793300.68
8Swift2.21.361812362760.87
9Objective-C1.05-1.341502832120.33
10Scala1.520.471232072150.81
111C1.27 10357850.27
12C1.1-0.2904732400.37
13PL-SQL1 855831020.24
14T-SQL  689592370.28
15Go 0.55662352510.82
16Pascal/Delphi  661092050.47
17Perl  35140650.28
18R  35122730.46
19ActionScript  3053480.26
20TypeScript  21112440.47
21Kotlin  1653570.75
22Clojure  1238680.75
23Erlang  1243440.50

Дополнительные данные

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

pl-8.png

Что мы тут видим — модно, стильно, молодежно — это Kotlin (медианный возраст разработчика: 24 года). Для Java, JavaScript, Python, Ruby, Swift это значение составляет 27 лет. С другой стороны у нас PL/SQL, Perl, Pascal и 1C, как и следовало ожидать. А вот пользователь R помолодел: молодежь бросилась изучать Data Science.

pl-9.png

Тут интересны аномалии: с R наблюдается то же, что и в предыдущем опросе (в программирование на R приходят люди извне); Scala и Gо, наверное, можно назвать языками для сеньоров; Perl, Pascal/Delphi и 1С очевидно не испытывают кадрового обновления.

Еще посмотрим на распределение опыта работы программистом по сравнению данными прошлых лет:

pl-10.png

Cудя по графику, приток людей в отрасль замедлился, в то же время растет доля разработчиков с опытом старше 10-тилет. Вероятно, это связано с тем, что условия работы «в IT-пузыре» делают переход в другие отрасли или на управленческие позиции экономически невыгодным.

pl-11.png

Посмотрим еще на распределение возраста разработчиков в зависимости от страны:

pl-12.png

Различие в формах распределения может нам сказать о масштабах эмиграции прошлых лет.

Различие местного и зарубежного рынков разработки также можно увидеть, сравнив данные об основном рабочем языке от людей, живущих в Украине и от диаспоры:

pl-13.png

Видим, что за рубежом гораздо больше используют C, Scala и Go. До нас эти тенденции приходят с некоторым опозданием.

Образование:

pl-14.png

Доля «мертвых языков» снижается, также виден рост количества людей, написавших свою первую программу