Рейтинг мов програмування 2019: JavaScript майже зрівнялася з Java, популярність Go знижується

[Дані та скрипти обробки можна знайти на GitHub]

В опитуванні взяли участь 9167 респондентів, 90% із них живуть в Україні.

Комерційне використання

Основні гравці не змінилися — частка JavaScript та Java майже однакова. З іншого боку, до рейтингу знову увійшла Erlang, що «зникла з радару» в 2017-му, — цього року більш ніж 20 розробників вказали цю мову як основну. І серед відносно нових мов — Apex, що вже з’являлася у нашому опитуванні в 2012 році.

Якою мовою пишете для роботи зараз

Якщо дивитися на динаміку останніх років, то Kotlin, з огляду на свій вибуховий ріст, витисне Java у розробці під Android. Також продожує зростати TypeScript.

JavaScript-екосистема поступово переймає першість у JVM. Частка C# лишається майже незмінною.

Прогнозовано росте використання Python.

Якою мовою пишете для роботи зараз (2012-2019 рр.)

Сірим виділені ті мови, частка яких не змінилася в порівнянні з 2018 роком


Несподіванки:

  • Збільшилася частка проектів на C++ та C — це можна пов’язати з подальшим поширенням інтернету речей.
  • Почала скорочуватися частка Go проектів, тут мені важко щось сказати про можливі причини.
  • Почала знижуватися частка Swift (що статистично незначно) — звідси ми можемо зробити висновок, що можливо, розробка на iOS скорочується загалом. Чи є це флуктуацією в рамках похибки або довготривалою тенденцією — подивимося наступного року.

Частка Scala залишилася приблизно такою ж (трохи збільшилася).

Ще можна помітити «ренесанс» використання Groovy та Erlang — видно, що мови, на яких є якась критична кількість проектів, можуть існувати десятиріччями.

Особисті вподобання

Тут ми бачимо в принципі таку ж ситуацію, як і з розподілом мов. Порівняно з останніми роками можна відзначити зростання інтересу до Rust, а також подальше зниження зацікавленності в Scala. Якщо подивитися на список нових фіч Java 10 та Java 11, то можна зрозуміти, що у Java вводять аналоги Scala-конструкцій.

Якби ви зараз починали комерційний проект і у вас була свобода вибору

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

Як ми бачимо, найвищий рівень вподобання у Swift (це підтверджує нашу гіпотезу про зменшення обсягу iOS розробки), далі — Go та Kotlin. Наступна сходинка — теж Scala та C#. Досить несподівана поява Erlang. Ще слід зазначити, що незважаючи на вибуховий зріст, індекс вподобання TypeScript та JavaScript не найвищий. Це означає, що в принципі можлива поява наступної мови в екосистемі фронтенду.

Вивчення нових мов

Більша частина респондентів (64%) точно планує вивчити якусь нову мову програмування наступного року. Погляньмо на рейтинг найцікавіших мов для вивчення в динаміці за 3 роки:

Які мови ви збираєтеся вивчати наступного року

Python уже третій рік є найпопулярнішим для вивчення, далі — JavaScript та Go. Ще ми бачимо різкий сплеск інтересу до Dart: Google позиціонує його як мову, оптимізовану для розробки клієнтів на Android та Web.

Як і в попередні роки, більшість респондентів (55%) збираються вивчати нову мову самостійно, за допомогою книг та документації. На онлайн-курси орієнтуються близько 31%, а 7% збираються використовувати офлайн-підхід з локальними викладачами.

Додаткові мови

Тут особливих новин немає: як і раніше, JavaScript є основною додатковою мовою. Едине — Python як другу мову почали використовувати частіше, ніж Shell.

Які мови ви використовуєте як додаткові

Свої проекти

Тенденції в цілому більш-менш ті ж самі, що і в інших блоках. Привертає увагу підвищення рівня C++ та C.

Які мови ви використовуєте в своїх проектах

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

МоваЧастка ринкуЗміниОсновнаДодатковаСвої проектиІндекс вподобання
1Java17.82-2.81497116116720.71
2JavaScript17.68 1485439627480.64
3C#13.97 117371213670.80
4PHP11.94-1,1100383111590.61
5Python10.88+1.1914150714900.73
6C++6.53+1.65497618660.63
7TypeScript2.9+0.924513267080.67
8Swift2.89 2431763010.91
9Ruby2.87 2411932350.67
10Kotlin2.38+1.452003023520.88
11Go1.82 1533804430.90
12C1.56 1314723200.36
13Scala1.55 1301521540.815
131C0.9 7655610.34
14Pascal/Delphi 541591680.35
15T-SQL 538982160.26
16PL-SQL 42490730.19
17Objective-C-0.4 342861010.11
18Groovy 27103450.11
19Erlang 233190.7
20Apex 222110.45
21R 20135690.3
22Perl 1478330.21
23Clojure 1016340.7
24Rust 8661160.75
25ActionScript 81250.12

Зміни частки ринку вказані тільки в тому випадку, коли вони є статистично значимими (тобто з імовірністю 95% неможливо отримати таку різницю всередині однієї гаусовської популяції).

Додаткові дані

Зараз медіанний вік JavaScript, C++ та Kotlin розробника — 26 років (бачимо, що C++ розробка сильно помолодшала). Для Java, C#, Python, Go — 27 років, Scala — 29, а Pascal/Delphi та PL/SQL — 36 та 37 відповідно.

Вік розробника залежно від мови

Щодо залежності досвіду і мов, то масові мови, як правило, використовують люди з медіанним трирічним досвідом (видно, це результат росту галузі). Виділяються Scala розробники, для яких Scala — це, як правило, не перша мова. Ситуація з Pascal/Delphi та PL/SQL досить очевидна.

Досвід розробника залежно від мови

Розробники з досвідом 1 рік — найбільша група (що зрозуміло, беручи до уваги швидкий ріст галузі).

Досвід роботи програмістом

Нижче мозаїка, де за однією координатою — досвід роботи з мовою, а за іншою — досвід роботи програмістом.

Як і минулого року, видно, що через 4 роки половина розробників змінюють мову програмування. Близько чверті розробників працюють на тій самій мові протягом 10-ти років.

Чи є різниця у використанні мов програмування у нас та в діаспорі?

В діаспорі більше Java, а Scala більше в чотири рази. Тобто або Scala проекти не йдуть в Україну, або Scala розробники частіше переїжджають в інші країни. До речі, наочною є ситуація з конференцією ScalaUA, де я є одним з організаторів. Як правило, доповіді надсилають з діаспори та Scala community інших країн, а в Києві бігати за потенціальними доповідачами набагато важче, хоча здавалося би має бути навпаки :(

Цікава ситуація з C та JavaScript, які набагато більше використовують українські розробники.

Розподіл за віком

Нижче перша мова програмування для розробників з досвідом менше року, протягом останніх 5-ти років.


Тут ми бачимо, що скоро найбільш поширеною першою мовою стане С++.


До речі, результати цього опитування публікуємо українською, тому що так захотіло трохи більше 50% читачів рейтингу мов 2018.


Результати попередніх опитувань: 2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018.

Інфографіка: Ігор Яновський

Похожие статьи:
Через війну в Україні з’явилося багато людей, які втратили руки та ноги та потребують протезування. Сучасні технології можуть суттєво...
У свіжому випуску новинного дайджесту DOU News розповідаємо про Defence Tech кластер і що він пропонує компаніям уже сьогодні, говоримо про те,...
В мае на DOU был проведен опрос о вузах, в которых учатся или учились ИТ-специалисты. Основная цель опроса — создать рейтинг вузов для...
Цього року через карантин офлайн-корпоративи були радше рідкістю. Зате зібрання в зумі, онлайн майстер-класи та надсилання подарунків...
.NET C# Design Notes: object initializers, with-expressions, positional deconstruction. Портирование MSBuild на .NET Core ASP.NET Построение multi-tenant приложения (кто подскажет, как...
Яндекс.Метрика