Популярные языки программирования: что учить?
Задавшись таким вопросом, новички гуглят рейтинги популярности языков. Кажется логичным, однако большинство исследований о популярности того или иного языка строятся на основе выдачи поисковиков, соцсетей, сайтов с вакансиями и крупных сообществ разработчиков. То есть туда попадает и Google Search, и Twitter, и Reddit — довольно «грязная» выборка.
Чтобы увидеть реальную картину, стоит подумать: почему тот или иной язык внезапно набирает популярность? Иногда причина частого упоминания в интернете не имеет отношения к востребованности языка. Так, например, в ежегодном рейтинге языков программирования Института инженеров электротехники и электроники (IEEE) за 2020 год язык COBOL неожиданно занял 7-е место по популярности в Twitter. А произошло это потому, что в апреле 2020 года в самый разгар пандемии COBOL часто мелькал в новостях Twitter, когда губернатор Нью-Джерси Фил Мёрфи объявил, что штат отчаянно нуждается в добровольцах, обладающих навыками работы с COBOL. Это объявление вызвало много удивления. Оказалось, что американская система страхования была перегружена из-за всплеска заявок на пособие по безработице, что привело к задержке в обработке дел, так как было недостаточно программистов, знакомых с языком из эпохи динозавров. Это и стало причиной частого упоминания, но сам язык не стал популярнее среди разработчиков.
Другой пример. В последнее время Python показывает заметный рост популярности. Вероятнее всего, дело именно в преимуществах самого языка. Но также есть мнение, что частое упоминание в сети названия языка связано с прекращением поддержки Python 2, перспективой вынужденной миграции множества проектов на Python 3 и связанными с этим вопросами пользователей. Поэтому есть люди, которые относятся к подобным рейтингам довольно скептически.

И всё же — нет дыма без огня, а рейтингов без тенденций. Давайте посмотрим, что же происходит с популярностью языков.
Тенденции среди топовых языков программирования
Уже упомянутый Институт инженеров электротехники и электроники снова напарсил в 2021 году показатели из восьми источников (CareerBuilder, GitHub, Google, Hacker News, IEEE, Reddit, Stack Overflow и Twitter) и собрал рейтинг из 55 языков. Тройка лидеров с прошлого года здесь не изменилась: это Python, Java и C. При этом С# опустился с 6-й строчки на 23-ю, а вот Ruby поднялся с 19-й на 11-ю.

Топ языков программирования 2021 по версии IEEE
В свою очередь Stack Overflow не парсил Google, а опросил разработчиков о том, какие языки они используют или/и хотят использовать. У них самый популярный — JavaScript. Что, в общем-то, тенденция уже лет десять.

Результаты опроса Stack Overflow о языках, используемых разработчиками в 2021 году
А вот компания Emsi Burning Glass собирает и анализирует только объявления о вакансиях. Результаты исследования, опубликованные в конце прошлого года, показали наиболее востребованные в 2021 году языки программирования с точки зрения работодателей США. Неожиданно обнаружилось доминирование языка SQL над сверхпопулярными и широко используемыми Python, Java и JavaScript. Исследователи объясняют, почему так много компаний требуют от айтишников знания SQL, тем, что он является основой работы с данными (SQL используют для управления реляционными базами данных и запросами к ним).
Примечательно, что калифорнийский университет Беркли опубликовал в конце 2020-го заметку «11 самых востребованных языков программирования в 2022 году», где спрогнозировал популярность языков, проанализировав тенденции 2020 и 2019 годов. В университете использовали особенный подход: «Мы обнаружили, что Rust, Python и Typescript возглавляли список самых популярных языков Stack Overflow в 2019 и 2020 годах с небольшими перестановками. Точно так же Python, JavaScript и Go оба года лидировали в тройке самых разыскиваемых списков Stack. Учитывая их распространённость в умах разработчиков, шансы на увеличение популярности этих пяти языков высоки, и поэтому их стоит включить в наш список. Однако место, которое мы определили для каждого языка, зависело от других факторов. Например, поскольку Python постоянно занимает пятёрку лучших в списках наиболее часто используемых, любимых и требуемых в Stack Overflow, мы решили поставить его выше, чем Rust, который, хотя и вышел на первую позицию в списке самых популярных в Stack Overflow, занимает 19-е место в списке общеупотребительных языков организации».
RedMonk, известная на ИТ-рынке аналитическая компания, анализирует языковые рейтинги из GitHub и Stack Overflow. В прошлом году она выложила отчёт, в котором показала, что вторым по популярности после JavaScript стал Python. Рост его популярности связывают с пластичностью применения: Python используется в огромном количестве областей и способен справляться с различными задачами, включая набирающее популярность машинное обучение (мы считаем, что причина возросшей популярности Python именно в его использовании в ML). Языки C# и C++ в 2020-м шли только после PHP, занявшего 4-е место рейтинга. Go и Kotlin попали во вторую десятку. В позапрошлом и прошлом годах заголовки Cnews пестрили Python, предрекая его безоговорочное лидерство. Пока, наконец, в октябре 2021 он не выдал эмоциональную заметку с заголовком «У языков программирования революция. Сменился самый популярный язык в мире».
Ежемесячный индекс Tiobe сообщил в январе 2022: «Python получил престижную награду TIOBE Programming Language of the Year. Поздравляем! Это уже второй раз подряд. Награда присуждается языку программирования, получившему наибольший прирост рейтингов за один год. C# был на пути к тому, чтобы впервые в истории получить титул, но Python превзошёл C# в прошлом месяце». Но ведь они тоже анализируют поисковую выдачу Google.

Индекс Tiobe январь 2022
Компания CodingNomads составила свой рейтинг на основе объявлений о вакансиях и заработной платы из LinkedIn в США и Европе. У неё тоже Python выбился вперёд.

Рейтинг CodingNomads
Так что же учить?
Получается, что радикальных изменений в топе языков в принципе нет. Да, Python сегодня лидирует, чего не было много лет, но революцией это назвать сложно — он ведь и был в топах, а не ворвался внезапно в чарты и сразу всех покорил. Давайте тогда посмотрим на самые популярные сегодня языки программирования чуть пристальней. Должны же мы знать, что советовать детям друзей, когда на вопрос при встрече «кем хочешь работать?» они отвечают «программистом». В каждом популярном языке мы укажем: его описание, назначение, особенности, порог вхождения (необходимое количество усилий для освоения языка до такого уровня, чтобы найти работу) и мнения программистов о его популярности. Это языки: Python, Java, JavaScript, C, C++, C#, SQL/NoSQL. Мы считаем, что желательно выучить основы программирования на большинстве из них, чтобы не остаться за бортом современных требований работодателей. А дальше то, какой язык будет изучаться углублённо, будет зависеть от практики в конкретных проектах. В конце статьи — бонус с информацией по зарплатам за владение популярными языками программирования.
Высокоуровневый интерпретируемый язык с динамической строгой типизацией. Это мультипарадигмальный язык, который поддерживает императивное, процедурное, структурное, объектно-ориентированное (прототипное), функциональное программирование и метапрограммирование. Причём считается, что реализация поддержки объектно-ориентированного программирования в Python — одна из самых понятных, благодаря чему (в том числе) Python довольно прост для начинающих программистов.
Назначение
Это язык программирования поистине общего назначения. Он работает с xml/html-файлами, http-запросами, изображениями, аудио- и видеофайлами, FTP. На нём можно создавать GUI (графический интерфейс), веб-сценарии бэкенд веб-сервисов, писать программы для робототехники и программировать математические и научные вычисления. Сегодня его активно используют в data science, машинном обучении, анализе данных.
Порог вхождения
Низкий благодаря понятной поддержке прототипного программирования. В целом язык универсален и прост, идеально подходит для начинающих программистов. Однако чтобы сделать карьеру, недостаточно знать только Python, поскольку в некоторых областях применения он сильно проигрывает C++ и другим языкам по эффективности.
Особенности
Главная особенность Python — это то, что разработка на нём идёт быстрее, чем на других языках. Собственно, он изначально задумывался как язык, помогающий повысить производительность разработчика, читаемость и качество кода. Его отличает лаконичный синтаксис, встроенная поддержка Unicode в строках, кроссплатформенность, поддержка модульности и выделение блоков кода пробельными отступами.
Мнения программистов о популярности
Популярность Python в последнее время объясняют широким изучением этого языка, распространённостью преподавания, а также тем, что студенты ищут ответы на одни и те же вопросы. Одной из причин называют тот факт, что на Python работают в области машинного обучения, которое показывает беспрецедентные темпы развития из-за прогресса ИИ. Также причинами называют рост доступности железа, на котором может работать Python, и то, что язык прекрасно вступает в контакт с мелкими утилитами.
Строго типизированный объектно-ориентированный язык прикладного программирования (со статической типизацией). Ядро языка — библиотеки и классы.
Назначение
Общего назначения. Чаще всего разработка приложений и веб-разработка в области электронной коммерции, финансов. Сегодня Java — стандарт в разработке под Android и в сфере корпоративных приложений, в основном back-end.
Порог вхождения
Умеренно низкий, во многом благодаря JavaRush — интерактивному обучающему курсу. Тем не менее надо обладать базовым пониманием классов, фреймворков, пакетов и объектов.
Особенности
Программы на Java транслируются в байт-код Java, выполняемый виртуальной машиной Java (JVM) — программой, обрабатывающей байт-код и передающей инструкции оборудованию как интерпретатор. Достоинством подобного способа выполнения программ является полная независимость байт-кода от операционной системы и оборудования, что позволяет выполнять Java-приложения на любом устройстве, для которого есть соответствующая виртуальная машина. Другая особенность — гибкая система безопасности. Язык относительно медленный во время выполнения. Довольно сложно читать код.
Мнения программистов о популярности
Причинами популярности считают универсальность, кроссплатформенность, простоту использования и способность обрабатывать огромные объёмы данных. Это делает его идеальным языком для финансового сектора, банковского дела, фондового рынка. Java может эффективно работать в любой ОС, независимо от того, какая использовалась для написания исходного кода. Таким образом, он идеально подходит для написания приложений не только для смартфонов и компьютеров, но и для удалённых процессоров, датчиков и множества потребительских товаров (аппаратная совместимость).
JS — мультипарадигменный язык, который поддерживает объектно-ориентированное (прототипное), обобщённое, функциональное, императивное, аспектно-ориентированное и событийно-ориентированное программирование. Основные архитектурные черты: динамическая типизация, слабая типизация, автоматическое управление памятью, функции как объекты первого класса.
Назначение
Уже долгие годы JavaScript — основной язык веб-разработки (frontend), для которой он и предназначен. Также его поле — это разработка игр, мобильных приложений и создание веб-серверов. Он часто применяется при разработке решений для blockchain, работе со смарт-контрактами в Ethereum. Чаще всего JavaScript используют как язык сценариев в браузерах для того, чтобы придать веб-страницам интерактивности, добавить интересные всплывающие эффекты, маленькие развлекательные игры.
Порог вхождения
Относительно высокий, поскольку для того, чтобы начать карьеру Frontend-разработчика, надо выучить не только JavaScript, но и его фреймворки — Angular JS, React, Node.js и другие. Кроме того, необходимо разобраться в HTML и CSS.
Особенности
Используется как встраиваемый язык для программного доступа к объектам приложений.
Мнения программистов о популярности
Именно JS делает сайты «живыми», нескучными, интерактивными. Можно начать писать в JavaScript прямо из браузера (любого), не настраивая среду разработки.
С — стандартизированный процедурный компилированный язык общего назначения со статической типизацией. Даёт программисту возможность осуществлять непосредственный доступ к ячейкам памяти и регистрам компьютера, требуя при этом знания особенностей функционирования ЭВМ. Лаконичный, с богатым набором операторов.
Назначение
Системное программирование: базы данных, драйверы, компиляторы, интерпретаторы, написание программ под микроконтроллеры.
Порог вхождения
Относительно высокий. Сам язык несложный, но нужно хорошо понимать, как работает железо.
Особенности
Язык программирования С, как и С++ — это хорошее решение для разработчиков виртуальных игр. На Си можно создавать приложения, используя 3D-движок Unity, но в современной веб-разработке этот язык не используется. Язык Си оказал существенное влияние на развитие индустрии программного обеспечения, а его синтаксис стал основой для других языков, с которыми работают современные разработчики (C++, C#, Java и Objective-C). Также он завоевал популярность у программистов благодаря сочетанию возможностей языков высокого и низкого уровней.
Мнения программистов о популярности
С и С++ носят репутацию языков, которые помогут разработчику «выжать все соки» из железа. На C можно написать программу любого уровня сложности.
Назначение
Широкая сфера применения: микроконтроллеры, IoT (интернет вещей), десктопные и мобильные приложения, кроссплатформенные приложения, веб, геймдев, системы прогнозирования, моделирования, обработки статистики.
Порог вхождения
Высокий, требования к Junior значительные. Язык сложен в изучении. Потребуется время, чтобы понять, чем различаются виртуальные, абстрактные, приватные и публичные методы.
Особенности
Синтаксис довольно сложный для восприятия. Разработка на нём занимает значительное время, но даёт большие возможности. C++ используют для требовательных к быстродействию программ. Например, на нём написаны продукты Adobe.
Мнения программистов о популярности
Это прародитель всех объектно-ориентированных языков программирования, на его основе написано много известных приложений. Такие мастодонты не уходят из лидеров веками. С++ считают самым мощным языком программирования универсального назначения.
С Sharp — объектно-ориентированный язык прикладного программирования со статической типизацией. Выпущен Microsoft и сегодня считается популярным усовершенствованием языка C++.
Назначение
Десктопные программы, бэкенд мобильных и веб-приложений, геймдев (игры на движке Unity), VR.
Порог вхождения
Средний. Умеренная сложность изучения. Гораздо проще освоить, зная синтаксис С/С++.
Особенности
Это главный язык платформы .NET.
Мнения программистов
Некоторые считают, что C# идеально подходит для создания мобильных приложений и игр. Другие уверены, что он будет использоваться и развиваться, пока есть пользователи Windows и существует сам Microsoft.
SQL (Structured query language) — это предметно-ориентированный язык структурированных запросов для управления реляционными БД, где данные хранятся в таблицах. Этот информационно-логический язык относится к декларативным языкам программирования. NoSQL или нереляционный SQL был создан для улучшения масштабируемости SQL. Базы данных NoSQL не используют таблицы.
Назначение
Управление базами данных, отчёты о продажах, управление бизнесом. SQL может находить и извлекать данные из реляционной БД, а также обновлять, добавлять или удалять записи. Базы данных NoSQL используются для хранения данных в иерархической сети или поддержки крупномасштабных облачных приложений.
Порог вхождения
Низкий. Изучение SQL идёт быстро, а синтаксис запросов прост и понятен.
Особенности
При всех своих изменениях SQL остаётся единственным механизмом связи между прикладным ПО и базой данных.
Мнения программистов о популярности
SQL считают стандартом обращения к базам данных. В последнее время популярность SQL/NoSQL возрастает из-за роста объёмов данных и, соответственно, необходимости быстро работать с базами данных.
Напоследок посмотрим годовые зарплаты по языкам программирования в США и Европе
На графике указаны средние зарплаты, а не те, что получают начинающие программисты. Но, согласно отчёту CodingNomads, успешные разработчики могут рассчитывать на достижение или превышение этих зарплат в течение пары лет.
Лучший язык программирования: рейтинг TIOBE 2022
На днях у нас прошёл батл языков программирования 2022, и настало время обратиться к рейтингам TIOBE.
Напомним, что индекс TIOBE оценивает популярность языков программирования, основываясь на поисковых запросах, которые содержат тот или иной язык. Для формирования индекса используются такие ресурсы, как Google, YouTube, Amazon, Wikipedia, Yahoo!, Bing и Baidu.
Python, C и C++ соревнуются за звание лучшего языка
Именно таковы результаты по состоянию на конец декабря — двадцать языков программирования с наибольшей рыночной долей по версии TIOBE:

Ещё в прошлом году Java уверенно держалась в тройке, но теперь уступила своё место «плюсам». Любопытно, что в последний раз C++ становился лидером рейтинга TIOBE в далёком 2003 году, и это впервые, когда данный язык программирования обошёл Java по поисковым запросам. При этом Java входила в топ-3 свыше двадцати лет, начиная с 2001.
Уже в следующем месяце мы узнаем имя победителя. Каждый из лидирующей тройки уже занимал первое место по итогам года:
- C++ — 1 раз (2003).
- C — 3 раза (2008, 2017, 2019).
- Python — 5 раз (2007, 2010, 2018, 2020, 2021).
Пара слов о других языках
Помимо прочего, мы видим, как Kotlin и Julia приближаются к топ-20, JavaScript держится в семёрке, а PHP вырывается в десятку, тогда как в прошлом году занял 12-е место.
Интересно, что Go поднялся аж на 7 позиций и теперь занял 12-е место рейтинга. Стоит отметить, что по версии GitHub за третий квартал 2022 Golang также находится на четвёртом месте по популярности, обогнав при этом PHP, C, C#, Ruby, TypeScript и JavaScript. Тенденция налицо:

На 18-е место рейтинга TIOBE вернулся Perl. Rust удерживает 20 позицию. Что касается Delphi, то он всю осень прыгал туда-сюда:
- сентябрь — 13 место (1.09%);
- октябрь — 18 место (0.85%);
- ноябрь — 14 место (1.08%).
В декабре же язык опустился на 16 место (0.85%), что соответствует результатам декабря прошлого года.
Выводы
Разумеется, рейтинг языков программирования 2022 TIOBE сложно назвать объективным, так как он рассматривает лишь один аспект — популярность ЯП в поисковых запросах пользователей. Он не отражает реальный рыночный спрос или количество написанного кода, как это делает GitHub в своих отчётах на основе проектов.
Тем не менее, индекс TIOBE можно использовать, чтобы проверить, актуальны ли ваши навыки, или принять решение о том, на какой язык программирования можно перейти или какой следует использовать при написании новой программы.
Рейтинг языков программирования в 2022 году
Для оценки перспективности своих усилий каждый программист должен регулярно смотреть рейтинги языков программирования. Часто бывает так, что появится некоторый модный язык, о котором все начинают писать, но потом этот язык тихо исчезает. Те программисты, которые бросились изучать этот язык, вдруг видят, что их усилия оказались напрасными.
Например, в середине в 80-х стал очень популярен язык Prolog, но потом его популярность резко снизилась. И сейчас на нем практически никто не пишет. А место популярного новичка занял Python.

Как же узнать рейтинг языков программирования? Общего рейтинга не существует, так как нет простого способа собрать подобную статистику. Но существуют разные способы оценки популярности языков программирования. Рассмотрим самые популярные рейтинги.
1. Рейтинг TIOBE Index
Рейтинг TIOBE Index построен на оценке результатов поисковых запросов, содержащих название языка. Логика этого индекса очень проста: «Если язык ищут в поисковых системах, то он популярен». Конечно же, это заявление спорное, потому что программисты-профессионалы крайне редко будут искать в поисковике именно название языка программирования. Они чаще ищут решение конкретной задачи. Но громадный плюс этого рейтинга в том, что он достаточно объективно показывает интерес к тому или иному языку.
Индекс TIOBE показывает самые популярные языки программирования, информации о которых искали на 25-ти самых популярных поисковых системах, то есть запросы вида: «+»<language> programming». Индекс обновляется раз в месяц.
Индекс TIOBE на май 2022 года выглядит так:

На первое место вышел Python.
На графике изменений индекса хорошо видны как менялась популярность языков программирования. До 2022 года первое-второе место постоянно делили два языка Java и C. Сейчас Python их обошел..
И еще интересно то, что C++ ни разу не смог превысить по популярности C.

2. Рейтинг Wappalyzer для веб-приложений
Сервис Wappalyzer использует различные методы для идентификации веб-технологий. Рейтинг языков программирования для разработки сайтов на май 2022 выглядит так.

В веб-программировании однозначно лидирует язык PHP, почти 68% сайтов написано на этом языке.
4. Рейтинг IEEE Spectrum
Ежегодный рейтинг IEEE Spectrum Top Programming Languages использует 11 метрик из 8-ми источников, включая поисковые запросы, упоминания в твиттере и даже упоминания в вакансиях на работу программиста. С одной стороны этот рейтинг использует больше данных, но с другой стороны во многих источниках данные имеют связанный характер. Чем больше публикуются вакансий на некоторый язык программирования, тем больше запросов будет в поисковых системах. То есть у новых языков больше шансов попасть на вершину рейтинга.
Рейтинг IEEE год выглядит так:

Важностью особенностью рейтинга IEEE является то, что рейтинг интерактивный и можно поиграть с параметрами. В этом рейтинге лидирует Python.
5. Рейтинг Stack Overflow
Сайт Stack Overflow — это площадка, на которой разработчики могут задавать и отвечать на вопросы по программированию. Этот сайт имеет около 40 миллионов посещений в месяц. Есть русскоязычная версия сайта: ru.stackoverflow.com
Этот рейтинг рассчитывается на основе опроса разработчиков. В этом рейтинге лидером стал JavaScript.

Такая популярность вполне объяснима, сейчас JavaScript бурно развивается и каждая новая возможность вызывает массу вопросов, поэтому программисты идут на сайт Stack Overflow, чтобы задать вопросы.
6. Вакансии на Head Hunter
Можно подойти к рейтингу языков программирования с другой стороны и посмотреть, какие языки указываются в вакансиях и сколько собираются платить. Одна из самых популярных площадок для поиска работы в IT-сфере — это сайт HeadHunter. Там есть отдельный раздел — вакансии для программистов.
Внизу страницы можно посмотреть список похожих запросов и убедиться, что у работодателей немного другие запросы.

Здесь видно, что программист, знающий Pascal (среда Delphi), все еще востребован.
7. Google Trends
И в конце рассмотрим чрезвычайно полезный сервис Гугл, на котором можно смотреть тренды поисковых запросов.
Сравним JavaScript, Python и Java.

Видно как JavaScript постепенно обгоняет Python и Java.
Похожие записи:
Комментарии 31
Совсем мелкая ошибка в предпоследнем предложении. Вы написали «В начале этой статьи приведены графики использования слов Prolog и Pascal», а там были Prolog и Phyton.
Не Phyton а Python. (Pascal мой первый язык программирования (Turbo, а далее Delphi))
«Для оценки перспективности своих усилий каждый программист должен регулярно смотреть рейтинг языков программирования.» — совет неоднозначный. Профессионал обычно хорошо знает 1-2 языка и специализируется на них довольно долго. Изучение другого языка происходит обычно по причине старта какого-нибудь проекта, или тупика в карьере с текущими знаниями.
Здравствуйте! Спасибо за статью!
Хотел бы узнать Ваше мнение насчет языка программирования Prolog. Дело в том, что язык программирования Prolog используется в разработке программ для искусственного интеллекта.Так как технологии искусственного интеллекта развиваются все интенсивнее, не станет ли язык программирования Prolog популярным, ну или востребованным?
Здравствуйте! Язык Prolog стал популярен в 1980-х годах в связи с японской программой создания программы искусственного интеллекта. Но эту программа кончилась грандиозным провалом. В результате все наработки были розданы бесплатно и никаких полезных программ так и не было создано. Поэтому сейчас Prolog полностью морально устарел и не используется. Даже если и будет новый прорыв в разработке искусственного интеллекта, то, скорее всего, он будет связан с другой технологией и другим языком программирования.
В девяностом году шеф мой взял аспиранта себе на написание САПР, типа Симулинк в Матлабе. Тогда ещё XT-шки были в диковинку. И был в то время бум создания «Искусственного интеллекта». Ходили шутки, что это нужно, когда своего интеллекта не хватает. Ну и аспирант этот решил создавать этот САПР на языке Пролог. Тогда ещё книг, типа Братко не было. В ДОСе работали. Ну и он разобрался в языке этом глубоко так. Ему понравилось в нём лазить по деревьям и делать откаты. В других языках это геморройно было, а в Прологе это вшито как аксиома (исходные кирпичики языка). То есть если программа заходит в тупик, то как-то самореализуется всё там, что она, делая откаты назад сама ищет выход из этого тупика. И аспиранту это нравилось в ней. Написал он в ней САПР свой, «Гаммой» назвал его, была куча публикаций. Но потом бросил заниматься этим и диссертации не защитил. Его пригласили в СберБанк программистом работать, а там зарплаты уже со стипендией аспиранта не сравнить. Так всё это и забросилось. Отчёт в семи томах кода сохранился с той поры и валяется где-то. У меня на даче очень много книг по Прологу на чердаке стопками лежит не тронутых, а Братко, по моему, аж десять экземпляров. В то время хлеб стоил сто рублей, а книги эти по рублю продавались. На растопку жалко их рвать…
у меня тоже лежит экземпляр книги по Прологу и не выбросил до сих пор в макулатуру. Да и другие книги по выч-технике и програм-ю 80-х и 90-х годов. В библиотеку их не возьмут. А ещё 3-х томник Ленина и т.п.
Интересный обзор! А что вы можете сказать про Rust в контексте перспективы дальнейшего развития?
Rust — это совсем новый язык. Каких-либо существенных преимуществ я у него не вижу. Не думаю, что перспективы хорошие.
Опытным программистам такая информация известна, а вот для чайников хорошо бы добавить для каких ОС и на какой технике эти языки реализованы: стационарные ПК, рабочие станции, планшеты, смартфоны, как эти языки дружат с ПО баз данных, какие группы задач проще, дешевле, выгоднее или удобнее программировать на тех или других языках и т.п.
А так что ж старикам эта информация ни к чему, а для моложежи самого главного квалифицированой оринтации нет.
Как видно из обзора функциональные языки программирования типа Lisp — практически не используются в настоящий момент? Это очень узкая сфера использования? Или есть другие причины?
5 самых популярных языков программирования
В век высоких технологий и искусственного интеллекта программист – одна из самых востребованных профессий. Но какой именно профиль выбрать для успешного старта? Спорить, какой язык лучше, бессмысленно. Каждый имеет свои особенности, сферы применения и решает свои задачи. Обозначим ТОП-5 с точки зрения перспективности изучения языков в России.
Сейчас в мире известно несколько сотен языков программирования, массово применяется 3-4 десятка. Есть несколько авторитетных международных рейтингов (индексов), отражающих динамику востребованности языков, интереса к ним:
- PYPL – рейтинг популярности по данным Google;
- TIOBE – индекс, основанный на данных поисковиков Bing, Google, Yahoo;
- Stack Overflow – рейтинг, базирующийся на количестве вопросов по языкам;
- GitHub отражает использование языков программирования в репозиториях (хранилищах);
- IEEE Spectrum – комплексный рейтинг, учитывающий 11 параметров из 8 источников, среди которых Google, Twitter, GitHub, Stack Overflow, Career Builder, Reddit, IEEE Job Site.
Вот как выглядит первая пятёрка рейтинга PYPL за 2019 год:
Безусловно, интерес к языку, обмен информацией, создание сообществ и баз данных – весомые показатели. Они являются зеркалом фактической активности профессиональных групп.
Не получается ли так, что изучая международные рейтинги, мы измеряем среднюю температуру по больнице? Другими словами: мир большой, каждая страна имеет свои особенности и традиции разработки, свой спрос на программистов. Нам с вами важно разобраться, какова ситуация здесь и сейчас. Что за работа предлагается, какие навыки в тренде, сколько зарабатывают специалисты? Интересны также перспективы ближайшего будущего.
Обучиться сейчас можно любому популярному языку программирования. Форматов множество: онлайн-курсы, бизнес-школы, колледжи, университеты. Плюс уроки, мастер-классы, вебинары… Постоянное обучение – особенность профессии. Сфера программирования динамична, инструменты и технологии всё время меняются. А конкуренция достаточно жёсткая.
Посмотрим вакансии и зарплаты на крупнейшем отечественном портале по трудоустройству – HeadHunter. Как выглядит первая пятёрка языков программирования по востребованности?
Объектно-ориентированный язык на платформе .NET, разработан компанией Microsoft. Используется для разработки ПО: программ для бизнеса, веб-сервисов, мобильных приложений, игр.
Перспективы развития C# связаны с расширением функционала платформы и переходом от Windows ориентированной .NET Framework к кроссплатформенной .NET.Core. Теперь язык интересен не только Windows-разработчикам, но и специалистам по Linux, Mac OS, Android, iOS.
C# считается сравнительно лёгким в изучении, понятным и подходящим для новичков. По синтаксису он похож на Java и С++. Начальный курс обучения (как правило, в онлайн-формате) длится от 1 до 6 месяцев.
Спрос на программистов С# стабильно высокий, язык применяется всё шире. Зарплата программиста стартует с 70000 рублей, в среднем составляет 100000 рублей в месяц.
Скриптовый универсальный язык. Имеет очень широкую сферу применения: программы для роботов, беспилотников, приложения для ПК и мобильных устройств, веб-разработка и аналитика. Python — лидер многих рейтингов популярности (в том числе PYPL, IEEE Spectrum). В России он пока не так популярен, как за рубежом.
Язык набирает обороты благодаря своей производительности, простоте освоения, доступности на разных ОС и большим объёмам имеющихся наработок. Его всё чаще включают в программы обучения профильные учебные заведения. Мощную поддержку развитию языка оказывает фонд Python Software Foundation.
Синтаксис довольно необычный, но очень рациональный, не усложнён громоздкими конструкциями.
Востребованность языка сегодня и в обозримом будущем сомнений не вызывает. Пусть он не лидер спроса, но работы для программистов Python достаточно. Уровень оплаты труда очень привлекательный: от 85000 рублей в месяц и выше. Можно устроиться работать на Западе (США, Европа) или в Азии, где вакансий гораздо больше.
Это скриптовый язык программирования. Применяется в сфере веб-разработки (backend). Большинство сайтов (до 80%) используют PHP для реализации своего функционала.
Язык хорош для разработки шаблонов и универсальных платформ, модулей. Поэтому самые популярные CMS (Joomla, WordPress) основаны именно на нём. Профессиональные сообщества, библиотеки, учебные материалы – всё это имеется в огромных количествах, если говорить о PHP.
Синтаксис особой сложностью не отличается. Обучиться программированию можно как в учебном заведении, так и самому. Благо, удобных, практичных материалов для этого более чем достаточно.
Спрос на программистов PHP в России стабилен, работу можно найти как в офисе, так и на фрилансе. В первом случае предлагается зарплата от 60000 в месяц. Фрилансеры, как правило, зарабатывают сдельно, но тоже весьма достойно.
Связку PHP + фриланс выбирают многие новички. Важный момент: веб-разработка немыслима без освоения HTML и CSS. Впрочем, изучить эти инструменты труда не представляет, это даже полезно.
Объектно-ориентированный язык со строгой типизацией. Может применяться на любых платформах с помощью виртуальной Java-машины. Достаточно универсален. С его помощью можно писать десктопные программы, игры, мобильные приложения.
Фреймворков на Java множество, но они громоздкие и недостаточно производительные, как и сам язык. Он мало подходит для облачных технологий. В своё время (в конце 90-х) Java вытеснил с рынка C++, а теперь и сам несколько уступил позиции молодым амбициозным собратьям. Однако он сохраняет актуальность, ведутся разработки по повышению производительности.
В изучении язык несложен. Наработки по нему весьма обширны. Обучающих материалов достаточно.
Сейчас Java пользуется спросом среди android-разработчиков, для создания бизнес-приложений. Вакансий для программистов в России множество, не каждый конкурент так популярен. Зарплата является одной из самых высоких: от 95000 рублей в месяц.
Лидер нашего рейтинга – скриптовой язык, поддерживающий как функциональный, так и объектно-ориентированный методы. Трудно себе представить web-интерфейс, который обходится без Javascript.
Frontend-специалисты повсеместно и регулярно используют язык и его библиотеки/фреймворки. Среди последних наиболее распространены Angular, Ext, React, Vue, Ember, Socket. Изначально Javascript был лишь бонусом для HTML/CSS. Со временем он стал мощным инструментом веб-разработчика, распространил сферу влияния на смежные области.
Освоение языка считается несложным, а логика работы – понятной даже для новичков. В синтаксисе многое заимствовано из С. Самый эффективный метод изучения – онлайн-курсы с практикой. Специалистом реально стать за 6-12 месяцев. Знание HTML/CSS также необходимо.
По данным НН для программистов Javascript в России открыто наибольшее число вакансий. Причём как для полной занятости, так и для фриланса. Зарплата очень достойная: от 70000 рублей в месяц (полный день). Такая ситуация объясняется бурным развитием интернет-технологий и сайтостроения.
Что же выбрать – вопрос индивидуальный. Ответ зависит от личных способностей, предпочтений. Сфера деятельности – тоже важный аргумент.
Для старта, скорее всего, подойдёт язык, сочетающий в себе востребованность, простоту и скорость освоения, доступность инструментов. Фактически все участники нашего ТОП-5 отвечают этим условиям. Непосредственное знакомство с кандидатами на практике, рекомендации и личные примеры помогут сделать лучший выбор.