При предоставлении выписки из домовой книги с московской регистрацией получите скидку 20%

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

Воробьева Вероника Михайловна,
учитель информатики и программирования

По данным различных авторитетных источников, общее количество языков программирования, существующих в мире, варьируется в пределах 9 000.

Фигурально выражаясь, можно было бы сказать, что каждый день появляется новый язык программирования. Можно было бы сказать, что и каждый день исчезает устаревший язык, но согласно известному технологическому явлению в современном информационном мире данные не пропадают.

В данной статье попробуем разобраться, как устроены и по каким принципам работают некоторые рейтинги.

А в заключении приведем рекомендации по выбору языка программирования на 2023 год на основе самых популярных рейтингов.

  1. Индекс TIOBE

Индекс TIOBE оценивает популярность языков программирования на основе сравнения количества поисковых запросов с упоминанием названия языка. При формировании результатов используются наиболее популярные поисковые машины, сервисы и порталы: не только Google и Yandex, например, но и Wikipedia, YouTube, сервисы для ведения блогов, платформы электронной коммерции и другие. Каждый месяц индекс TIOBE бесплатно предоставляет рейтинг языков программирования. Консолидированные данные за несколько лет предоставляются платно.

Методика расчета рейтинга очень часто подвергается критике, так как она, методика, чувствительна к внутренней политике поисковых сервисов, являющихся основным источником данных для построения индекса. Приведем пример: международный поисковик Google в 2004 году провел модернизацию алгоритмов порядка выдачи результатов поиска, тем самым очистив его от нелегитимных способов продвижения веб-страниц, так называемой «накрутки», в результате чего произошло овальное падение значение индекса у языков программирования C++ и Java. Так как на политику поисковых сервисов индекс TIOBE повлиять не может, во избежание подобных ситуаций TIOBE стал использовать больше различных поисковиков.

Корректность индекса часто подвергается критике в среде технических специалистов.

Какие языки попадают в Индекс TIOBE? Неужели все 9 000?

Для попадания в рейтинг необходимо выполнение двух условий:

Индекс TIOBE считается именно популярным рейтингом языков, строго научным подход TIOBE назвать нельзя. Подтверждением этому может стать, например, собственно отношение разработчиков, назвавших свой сервис TIOBE, что можно расшифровать как «The Importance Of Being Earnest» — «Важность быть серьезным» (название комедийной пьесы Оскара Уайльда).

Сервис отображает данные в виде таблицы с указанием текущего места каждого языка для первой двадцатки из списка, его места в рейтинге за предыдущий месяц, изменения места (зеленые стрелки для роста и красные для падения), числовых значений индекса и процентного изменения. Для следующих тридцати языков данные представлены лаконичней. Еще 50 языков, участвующих в аналитике, перечислены в алфавитном порядке, так как различия в их индексах невелики.

На портале представлен интерактивный график, демонстрирующий динамику популярности 10 самых востребованных на взгляд Tiobe языков.

На момент написания статьи индекс TIOBE представляет следующие 10 наиболее популярных языков программирования согласно своим алгоритмам:

  1. Python
  2. С
  3. С++
  4. Java
  5. C#
  6. JavaScript
  7. Visual Basic
  8. SQL
  9. Assembly Language
  10. PHP

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

Сервис GitHub как это ни странно на первый взгляд непосвященному человеку, строит рейтинг языков программирования, анализируя частоту их использования на собственном ресурсе. Но для понимания серьезности такого подхода следует знать, что на данный момент GitHub – это крупнейший в мире хостинг кода с более 100 миллионов пользователей по данным на январь 2023 года, и ежегодный прирост количества пользователей превышает 20 миллионов, количество репозиториев – более 400 миллионов, а ежегодный прирост количества репозиториев приближается к 90 миллионам.

Сервис предоставляет статистические данные за несколько лет, в интерактивной форме показывая динамику популярности языков:

Данные по годам начиная с 2014 года доступны в бесплатном режиме:

В отличие от сервиса TIOBE, высчитывающего индекс ежемесячно, GitHub предоставляет статистические данные ежеквартально.

На момент написания статьи первые 10 мест рейтинга согласно сервису GitHub занимают следующие языки:

  1. Python
  2. Java
  3. Go
  4. C++
  5. JavaScript
  6. TypeScript
  7. PHP
  8. C
  9. Ruby
  10. C#

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

Рейтинг языков программирования RedMonk неправильно называть рейтингом в строгом смысле. По сути RedMonk предоставляет некую аналитику популярности языков программирования, основанную на самостоятельно разработанных критерях, базируясь на данных, предоставленных сервисами GitHub и Stack Overflow. У аналитики RedMonk нет регулярности в публикации аналитики, в частности. Формат представления данных – статья, содержащая объединенный график популярности языков на двух платформах: GitHub и Stack Overflow и небольшой комментарий к результатам.

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

Согласно последним данным RedMonk на момент написания данной статьи топ-10 языков программирования выглядит следующим образом:

  1. JavaScript
  2. Python
  3. Java
  4. PHP
  5. C#
  6. CSS
  7. TypeScript
  8. C++
  9. Ruby
  10. C

Проведя сравнительную аналитику двух последних лет, можно сделать вывод о главной тенденции последнего времени: отсутствие движения, исключением может быть только перестановка 7 и 8 мест, что не имеет кардинального значения.

4. Рейтинг популярности языков программирования PYPL

Индекс PYPL (PopularitY of Programming Language Index) создается путем анализа того, как часто в Google ищут учебники по языку.

Чем чаще ищут учебник по языку, тем популярнее считается язык.  Необработанные данные поступают из Google Trends.

К недостаткам данной методики ранжирования можно отнести:

 

Вот как выглядит десятка наиболее популярных языков согласно рейтингу PYPL:

  1. Python
  2. Java
  3. JavaScript
  4. C#
  5. C/C++
  6. PHP
  7. R
  8. TypeScript
  9. Swift
  10. Objective-C

 

5. Аналитические данные сервиса Jetbrains

Рейтинг выстроен на основании добровольного анкетирования. В отчете за 2022 год использованы данные 38000 анкет, которые прошли процесс очистки данных. В частности, исключалась информация, полученная с одинаковых IP-адресов, в результате слишком быстро заполненных анкет, взаимоисключающая информация, например, опыт работы более 16 лет при возрасте 20 лет и подобное.

Было собрано большое количество ответов из 14 стран, репрезентативно представляющих сообщество разработчиков. Ниже список стран в алфавитном порядке:

Аргентина, Бразилия, Великобритания, Германия, Индия, Испания, Канада, Китай, Мексика, США, Турция, Франция, Южная Корея, Япония.

Остальные страны были распределены по шести категориям:

Хочется отметить, что разработчиками опроса была проведена работа по переводу вопросов на различные языки с целью избежать потенциальной предвзятости в пользу респондентов с родным английским языком. В итоге вопросы были представлены на восьми языках: испанском, китайском, корейском, немецком, бразильском португальском, турецком, французском и японском.

Кроме собственно рейтинга языков программирования сервис Jetbrains представляет данные , характеризующие профиль респондентов, например:

Можно отметить, что такой узко специализированный опрос включает в себя неожиданные вопросы, а некоторые вопросы сформулированы таким образом, что можно получить неожиданные выводы. Приведем несколько примеров:

Сервис представляет основные выводы:

И иллюстрированную в графике динамику востребованности основных языков:

Вот так выглядит верхняя часть ранжированного по популярности списка языков программирования согласно порталу JetBrains:

  1. JavaScript
  2. HTML/CSS
  3. Python
  4. SQL
  5. Java
  6. TypeScript
  7. Shell
  8. C++
  9. C#
  10. PHP

 

  1. Итоговый отчет по результатам исследования сервиса Stackoverflow

Результат рассчитан на основе опроса более 73 000 разработчиков из 180 стран.

В результате санкций, наложенных США, опрос был недоступен В Крыму, Северной Корее, В Иране, Сирии, на Кубе из-за блокировки трафика. Некоторые данные были исключены из анализа из-за очень краткого времени, потраченного на опрос.

Система вопросов была выстроена с учетов предыдущих ответов, например, вопросы о работе задавались только тем респондентам, кто ранее ответил, что он работает.

На необязательный вопрос о величине заработной платы ответило менее половины участников опроса.

Сервис дает срез данных по предоставленной респондентами информации, например:

Представительство стран в опросе (неполный перечень, например, такие страны как Бруней-Даруссалам, Буркина-Фасо, Джибути, Монако, Сент-Китс и Невис, Сан-Марино, Сейшелы, Соломоновы острова каждая были представлены одним респондентом)

Итоговый рейтинг языков программирования согласно Jetbrains (первая десятка):

  1. JavaScript
  2. HTML/CSS
  3. SQL
  4. Python
  5. TypeScript
  6. Java
  7. Bash/Shell
  8. C#
  9. C++
  10. PHP

Интересные выводы, которые можно сделать, сопоставив выше описанные рейтинги, сведенные в общую таблицу:

Stackoverflow Jetbrains Github Tiobe Redmonk Pypl
1 JavaScript JavaScript Python Python  JavaScript Python
2 HTML/CSS HTML/CSS Java C#  Python JavaScript
3 SQL Python Go JavaScript  Java C#
4 Python SQL C++ Visual Basic  PHP C/C++
5 TypeScript Java JavaScript C  C# PHP
6 Java TypeScript TypeScript C++  CSS R
7 Bash/Shell Shell PHP Java  TypeScript TypeScript
8 C# C++ C SQL  C++ Swift
9 C++ C# Ruby Assembly  Ruby Objective-C
10 PHP PHP C# PHP  C Rust
11 C C Shell Scratch  Swift Java
12 PowerShell Go Nix Go  Shell Go
13 Go Kotlin Rust MATLAB  R Kotlin
14 Rust Rust Scala Fortran  Go Matlab
15 Kotlin Swift Kotlin COBOL  Scala Ada
16 Dart Ruby Swift R  Objective-C Ruby
17 Ruby Objective-C Dart Ruby  Kotlin Powershell
18 Assembly Scala DM Swift  PowerShell Dart
19 Swift Lua Rust  Rust VBA
20 R Groovy Julia  Dart Scala
21 VBA Perl SAS Abap
22 MATLAB Objective-C Visual Basic Visual Basic
23 Lua SystemVerilog Delphi Lua
24 Groovy Elixir Ada Groovy
25 Delphi OCaml Prolog Julia
26 Scala Haskell FoxPro Cobol
27 Objective-C CodeQL Kotlin Perl
28 Perl Erlang Perl Haskell
29 Haskell PowerShell Objective-C Delphi/Pascal
30 Elixir Clojure Lisp
31 Julia Julia Scala
32 Clojure Verilog Haskell
33 Solidity Emacs Lisp D
34 LISP Lean Lua
35 F# CoffeeScript Dart
36 Fortran MLIR Logo
37 Erlang R GAMS
38 APL Assembly VBScript
39 COBOL ANTLR Scheme
40 SAS Smalltalk Transact-SQL
41 OCaml Bicep CFML
42 Crystal MATLAB PL/SQL
43 F# ABAP
44 WebAssembly Solidity
45 hoon TypeScript
46 Fortran F#
47 Vim Script PowerShell
48 Visual Basic .NET Forth
49 Puppet Bash
50 Haml X++

 

Обращаем внимание на выделенные цветом данные:

  1. Очень высокий индекс технологий HTML/CSS и SQL в первых двух рейтингах, оставшиеся три рейтинга эти технологии не относят к языкам программирования.
  2. Стабильно высокий и ожидаемый результат у JavaScript и Python.
  3. Неожиданно высокий индекс у Visual Basic в рейтинге от Tiobe.
  4. Очень высокое 11 место в рейтинге Tiobe у языка Scratch, который по сути является средой разработки игр и мультимедийных материалов для младших школьников. Например, в других рассмотренных аналитических отчетах на том же 11-м месте находятся такие «взрослые» и серьезные языки как С и Swift. Вот что значит – строить рейтинг на основе поисковых запросов.
  5. 45-е место в рейтинге Tiobe у TypeScript, в других опросниках этот язык занял 5, два 6=х и 7 места.
  6. 4-е высокое место у языка Go в рейтинге github. Этот язык обошел такие популярные языки как C++, JavaScript, TypeScript, PHP, C, C#.
  7. Чрезвычайно высокое 7-е место в рейтинге PYPL у языка R/
  8. Необъяснимо низкое место в рейтинге PYPL у языка Java, пропустившего вперед себя такие языки, как R, Swift, Objective-C и Rust.
  9. Объединение вместе языков С и С++ в рейтинге PYPL.

 

В качестве заключения представим краткий список, где самые популярные языки программирования разобраны по своему применению:

 

Начните учиться в КиберБит!
Оставьте заявку и забронируйте место в классе
Отправляя форму, вы соглашаетесь с политикой конфиденциальности.

Мы используем файлы cookies для улучшения работы сайта. Находясь на сайте, вы соглашаетесь с их использованием.