Login

Рейтинг мов програмування 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.

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

Похожие статьи:
До вашої уваги дайджест навчальних програм для тих, хто починає свою кар’єру в ІТ. В цьому номері зібрані можливості, актуальні...
35-річний Роман Засуха із міста Миронівка на Київщині два роки тому перекваліфікувався з бухгалтера на QA, пройшовши курси для...
Наш третій матеріал про стан українського ІТ-ринку через рік повномасштабної війни — про те, як компанії діяли в нових...
У корпорації Yahoo повідомили про призначення Валерія Ліборського на посаду CTO. Він очолить глобальну команду інженерів,...
Шановні учасники, брифінг завершено. Інформація щодо конкурсу буде доступна для завантаження. Чекайте оновлення...
Switch to Desktop Version