Наиболее востребованные языки программирования – 2018
Очередная статистика от hh.ru под катом. Вкратце — очень хотелось посчитать, на каких языках чаще всего пишут отечественные разработчики и какие языки чаще других ищут работодатели. Итого — посчитал, что указывали в вакансиях и в резюме в первом полугодии 2018 и 2017 годов. Получилось что получилось.
Как все было. Сначала список языков — логико-интуитивно собрал n языков, убрал штуки вида TypeScript, React, CSS и проч. Мысленно готов к холивару по теме отсутствия Cobol`a или ещё чего (при составлении списка что-то мог упустить, а что-то пропустить).
Далее искал слова по списку в вакансиях (при подсчете резюме алгоритм аналогичный). Разделил поиск на две части:
1. Когда название языка встречается в любом месте вакансии, будь то описание, название или требования. Пример вакансии:
Название: Java-разработчик
Описание: … приветствуем знание скриптовых языков, например, Python …
Такая вакансия будет учтена в статистике и по Java, и по Python.
2. Когда название языка встречается только в названии вакансии. Это означает, что вакансия из примера выше будет учтена только в статистике по Java. Всё это нужно для того, чтобы примерно отделить core subj от сопутствующих навыков и получше понять, что к чему на рынке).
В случае с такими языками, как например, 1С или Assembly, искал названия языка вместе со словами developer or engineer или синонимы.
Ещё несколько важных ремарок:
Топ-20 языков по количеству вакансий (упоминание в любом пункте вакансии)
Как писал выше — в количестве вакансий по JavaScript могут учитываться вакансии с названиями вида «Python-разработчик», если JS где-то в теле таких вакансий упомянут. JS и SQL в статистике ниже абсолютные лидеры, т. к. их чаще прочих указывают в дополнение с пометкой «плюсом будет». Кстати, языки здесь не все из списка — например, Solidity: новая штука для блокчена и смартконтрактов, только 160 вакансий в первом полугодии 2018 (ниже будут зарплаты, там будет статистика по нему).
Топ-20 языков по количеству вакансий (упоминание в названии)
Конечно, у нас нет правила «если ищете разработчика на Java — в названии так и пишите», поэтому нельзя сказать, что здесь всё (т. е. вакансий с названием вида «Senior backend developer» в этой статистике нет вообще). Итого: 1С лидер, второй PHP (специфика отечественного рынка?), Java следом (рынок труда в Java описан здесь).
Изменение количества вакансий по отношению к предыдущему году
Соотношения количества вакансий из первого графика (где искался язык по всей вакансии) к первому полугодию 2017 года (аналогичный период, тот же алгоритм поиска). Оказалось, что спрос на знающих в котлине вырос в 7 раз, а то ли ещё будет.
Топ-20 языков по количеству резюме (упоминание в любом пункте резюме)
Топ-20 языков программирования по количеству резюме (упоминание в названии резюме)
Теперь только те резюме, где язык указан в названии. 1С снова лидер, SQL только восьмой (чаще всего основным не является, что можно сказать также про vb, R и, возможно, JS). PHP не лидер (не любят писать о нем в названии резюме, видимо).
Зарплаты по убыванию
Дальше две таблицы. При всей нелюбви к таблицам, иного способа показать зарплаты не вижу. Итак, предлагаемые (из вакансий) — без скобок, и ожидаемые (из резюме) в скобках. Значения в тысячах рублей, медианные. Отсортированы по убыванию предлагаемых. Scala, Solidity и Haskell абсолютные лидеры по предлагаемым зп. У clojure в Петербурге и у fortran везде указано “Н/Д” — это значит, что тридцати вакансий (минимум для анализа) с указанной зарплатой по ним не нашлось в 2018 году.
Доля вакансий и резюме в России
Здесь интересно. Показана доля от общего количества — например, на Москву приходится 41% от общего количества вакансий в Java и 39% резюме (в скобках). Также отсортированы по убыванию доли Москвы.
На этом всё. Вопросы приветствуются. Спасибо!
UPD: было обновлено количество вакансий с упоминанием языка 1С.
Топ-10 самых популярных языков программирования
В сфере IT огромное количество направлений: от создания игр и приложений до разработки роботов, которые полностью заменяют труд человека. Не существует языка программирования, который бы одинаково быстро решал задачи для любого из этих направлений. Поэтому важно понимать, что любые списки лучших языков программирования субъективны и обычно основаны на том, насколько язык популярен, универсален и комфортен в работе.
Какие языки программирования бывают
Прежде чем переходить к топ-5 языков программирования, давайте узнаем, какие языки бывают и какие задачи они решают. Для этого мы подобрали 10 не похожих друг на друга языков и расскажем немного о каждом. Последовательность в этом списке случайна — это еще не рейтинг. А после расскажем, какие языки из списка пользуются наибольшей популярностью среди программистов.
Язык Java
Язык программирования общего назначения, который стабильно занимает высокие места в рейтингах популярности. Приложения на Java могут работать на любом компьютере, для этого создана виртуальная Java-машина. На Java активно разрабатывают мобильные приложения под операционную систему Android.
На Java написаны такие успешные проекты, как RuneScape, Yahoo, Amazon, eBay, LinkedIn.
Недостатки Java — медленная работа программ и большое потребление оперативной памяти.
Язык С
С помощью языка C разрабатывают операционные системы, приложения реального времени. Также его используют в качестве промежуточного при компиляции более высокоуровневых языков.
Язык С сложен и содержит в себе такие элементы, в которых с легкостью можно ошибиться, он способствует созданию запутанного и далеко не безопасного кода. За 40 лет существования он устарел, и это значительно снижает его работоспособность в наше время.
Синтаксис C стал основой для других языков программирования: С++, Java, C# и Objective-C.
Язык Python
Python легок в изучении и очень часто используется при обучении детей программированию — например, в онлайн-школе Skysmart. Программы на Python близки к естественному языку, поэтому он отлично подходит как первый язык для начинающего программиста.
Это очень распространенный язык, на нем реализовано большое количество проектов. Python активно используют в Google, на нем написана большая часть исходного кода YouTube. Также часто применяется при создании машин-роботов.
Сильные стороны Python — модульность и возможность интеграции с другими языками, а среди недостатков — низкая скорость работы и большое потребление памяти.
Язык C++
Этот язык — один из самых популярных, он широко используется для разработки программного обеспечения. С его помощью программисты создают операционные системы, разнообразные прикладные программы, драйверы устройств, приложения для встраиваемых систем и игры. Синтаксис C++ унаследован от языка C.
Язык Go (golang)
Самый молодой в нашем списке: его разработка началась в 2007 году внутри компании Google в качестве замены для C и C++. Популярность Go за последние несколько лет выросла, он занимает высокие места в рейтингах самых используемых языков программирования.
Язык C#
Название языка читается как «си шарп». Его разрабатывали в 1998–2001 годах внутри компании Microsoft для создания приложений.
C# принадлежит к семье языков с C-подобным синтаксисом, из них он наиболее близок к C++ и Java. Поэтому у C# достаточно сложный синтаксис, что считается недостатком.
По сравнению с С и С++, С# обладает безопасным кодом. С# работает в десятки раз медленнее, чем С.
Язык Fortran
Это пример узкоспециализированного языка. Он широко используется для инженерных расчетов. На Fortran написано большое количество программ и библиотек подпрограмм, например, для матричной алгебры, дифференциальных уравнений, интегральных уравнений, математической статистики и других дисциплин. Такие пакеты разрабатывались на протяжении многих лет, и до сих пор некоторые из них популярны в научной области.
Язык JavaScript
Не путайте его с Java — это разные и совершенно не похожие языки.
JavaScript применяют для создания графики, мобильных и веб-приложений, в браузерных операционных системах. Он очень универсален и довольно легок в изучении.
Язык РНР
Широко применяется для создания веб-приложений, лидирует по применению для создания динамических сайтов. PHP прошел быструю эволюцию и стал востребован среди программистов. Однако программисты его часто критикуют за несогласованный синтаксис.
Язык Scratch
Создан для детей и подростков, которые только начинают знакомиться с программированием. С его помощью можно создавать простые приложения и игры. В онлайн-школе Skysmart есть курс по Scratch — на нем дети учатся разрабатывать собственные 2D-игры и мультфильм.
Топ-5 языков программирования
Мы проанализировали 19 списков самых востребованных языков программирования на профессиональных форумах и на их основе составили свой рейтинг.
Лидером по популярности стал JavaScript, но весомым претендентом на первое место был Python. Давайте рассмотрим на диаграмме, как распределились места.
По мнению 37% форумов, JavaScript находится на первом месте списка по популярности. Python совсем немного отстает от него — 26% среди первых мест, но 37% IT-сайтов поставили его на второе место, поэтому и в нашем рейтинге он оказался вторым.
Язык Java — третий по популярности по мнению 26% форумчан, но он мог бы посоревноваться с Python за второе место. За четвертое место боролись сразу несколько языков, но все-таки 16% голосов было отдано C#. Среди пятых мест наибольший процент занял PHP.
И хотя рейтинги меняются каждый год, какие-то языки совершенствуются и становятся востребованнее, а другие устаревают и опускаются ниже, эти пять языков программирования встречаются на первых позициях примерно в том же составе из года в год. Это значит, что они более универсальны и популярны, чем остальные.
И все-таки, выбирая язык программирования для работы, не стоит ориентироваться только на его популярность. Изучение любого языка требует внимательности, желания учиться и четко поставленной цели. Многие программисты осваивают несколько языков программирования, что ценится еще выше.
На курсах программирования для детей и подростков в онлайн-школе Skysmart ученики знакомятся с самыми распространенными языками программирования — JavaScript и Python. Курсы охватывают самые разные цели: создание игр, приложений, веб-разработку. А если вы пока не знаете, что выбрать — приходите на бесплатный вводный урок, и наш методист поможет определиться с траекторией развития.
5 самых перспективных языков 2021 года
В конце 2020 года портал StackOverflow провел опрос, в котором приняли участие 90 тыс. разработчиков. Первая десятка самых востребованных языков (тех, которые больше всего хотели бы освоить программисты) выглядит так:
Python
Язык завоевал популярность благодаря понятному синтаксису и удобным библиотекам (набор готовых функций, объектов и подпрограмм), которые делают его гибким. Программы на Python легко читать и писать, поэтому его часто выбирают новички. Разработчикам со стажем он помогает решать разные задачи: от автоматизации рутинных операций до создания нейросетей и экспериментов в Data Science.
Основные преимущества Python:
Python применяется в разных областях, поэтому, зная его, можно идти и в разработку веб-приложений, программ или игр, и в Data Science.
JavaScript
Язык JavaScript позволяет запускать приложения прямо в браузере и оставаться им производительными. Программировать на JavaScript относительно легко, хотя разработчикам приходится тщательно искать ошибки и уязвимости — киберпреступники часто используют этот язык, чтобы внедрять в интернет-страницы зловредный код, манипулировать сайтами и похищать пользовательские данные.
Основные преимущества JavaScript:
Знание JavaScript — обязательный навык для frontend-разработчиков (главное об это профессии читайте здесь) и веб-девелоперов. Он открывает доступ к вакансиям программистов как в крупных интернет-компаниях, так и в стартапах.
Выберите свой путь в IT
Поможем выбрать профессию. Получите все курсы SkillFactory по цене одного. Скидка до 45% по промокоду BLOG.
Этот язык с открытым кодом разработали и запустили в Google. Инженеры стремились к простоте, чтобы максимально избавить кодинг от лишних операций. В результате появился язык, который объединяет удобство, безопасность и эффективность. Как и у других современных языков, у Go понятный синтаксис, поэтому он отлично подходит новичкам. По этой же причине его можно использовать в крупных командах разработчиков: они не будут тратить лишнее время, чтобы разобраться в чужом коде.
Основные преимущества Go:
Go подойдет backend-разработчикам — тем, кто программирует внутреннюю часть веб-сервисов. На нем можно разрабатывать как сложные высоконагруженные системы, так и микросервисы.
TypeScript
Еще один язык от крупной интернет-корпорации, на этот раз — от Microsoft. TypeScript создавали с расчетом на масштабные приложения, которые должны обладать понятной структурой и обеспечивать максимальную безопасность данных. В результате язык получил такой понятный синтаксис, что программисты практически избавились от необходимости ловить в коде баги. Некоторые эксперты полагают, что в ближайшие годы TypeScript может потеснить с пьедестала JavaScript, который так и не смог побороть свои проблемы в безопасности.
Основные преимущества TypeScript:
С TypeScript стоит познакомиться любому frontend-разработчику, который хочет остаться востребованным, если вдруг JavaScript станет менее популярным языком.
Этот язык программирования разработали в компании Mozilla. По задумке, Rust — это следующая ступень эволюции C и C++, в нем нет проблем и ошибок этих языков.
Основные преимущества Rust:
Rust подходит для решения разных задач: можно разработать и простой веб-сервис, например калькулятор, и игровой движок. Он подойдет как frontend-, так и backend-разработчикам.
6 профессий по цене одной
Поможем выбрать профессию разработчика. Получите доступ к 6 курсам по цене одного и измените свою жизнь к лучшему.
Самые популярные языки программирования. Хабратоп 2020 года
Мы тут решили подбить предварительные итоги года и проанализировать рейтинги популярности языков программирования. Как менялась популярность ЯП и какие языки в 2020 году считаются топовыми, читайте в этой статье.
Рейтинги субъективны
Начать стоит с того, что популярность языков программирования — понятие весьма субъективное. Для объективного анализа банально не хватает данных. Просто невозможно отследить даже примерное количество программистов, которые начали учить конкретный язык, или отдельных проектов, в которых он используется.
В основном для расчёта популярности ЯП используют данные поисковой выдачи крупных поисковиков. Но даже при единых исходных данных результаты аналитики иногда различаются кардинально.
Индекс TIOBE
Индекс TIOBE — один из самых известных рейтингов языков программирования. Для анализа используются запросы в поисковиках, которые включают название языка. Например, «python для новичков». Но уже здесь имеется несколько нюансов, которые потенциально могут повлиять на место ЯП в рейтинге.
Рейтинг не учитывает качество и количество написанного кода на конкретном языке. По сути для анализа используются косвенные данные.
TIOBE не учитывает поиск Яндекса. То есть как минимум половина запросов из русскоговорящих стран вылетает в трубу. Также не учитывается китайский поисковик Baidu. Тем не менее рейтинг остается одним из самых популярных.
Теперь непосредственно о языках программирования.
На первом месте оказался С. С начала года он стабильно занимает примерно 16% рынка.
Java, который ещё в январе был лидером, стремительно обваливается. Он потерял треть пунктов и опустился на третье место. Эксперты считают, что падение Java и подъем Python, который поднялся на второе место, — это следствие пандемии.
Популярность Python также подстёгивает значительный рост сферы Data Science, где Python считается приоритетным языком. К разочарованию поклонников R, Python требуют в 81% вакансий на позицию аналитика больших данных (читайте об этом в нашем материале), а R (без Python) нужен только в 3% случаев.
Впрочем, активное изменение рейтинга в 2020 году могло быть вызвано и майскими изменениями алгоритмов Google. Ведь именно в мае начались резкое падение рейтинга Java и рост Python.
Немного странной кажется низкая позиция JavaScript. 2 % рейтинга, и 7-е место — слишком заниженный результат, по нашему мнению. Ведь по количеству пулреквестов в GitHub JavaScript уверенно лидирует. Больше 20 % всех пулреквестов — это JavaScript. Для сравнения: Python на втором месте с показателем 15,9 %.
Активность сообщества разработчиков говорит куда больше, чем количество ключей в поисковой выдаче. И, несмотря на крепкую позицию JavaScript на GitHub, в TIOBE JavaScript за всю историю существования не поднимался выше 6-й позиции.
Вот, например, сравнение рейтинга JavaScript и C даже без учёта С++:
По рейтингу TIOBE, все шансы стать языком 2020 года есть у С. Если за декабрь не случится никаких серьезных изменений, то этот титул будет у языка второй год подряд — таким ранее мог похвастаться лишь Objective-C.
PYPL — рейтинг от GitHub
PYPL — это ещё один рейтинг популярности языков программирования. И он использует совершенно другую систему анализа.
TIOBE учитывает общее количество страниц, которые относятся к конкретному языку. Собственно, это одна из причин, почему С стабильно находится в лидерах, ведь многие популярные ЯП появились значительно позже.
Рейтинг PYPL использует для анализа Google-тренды. С их помощью оценивают, насколько часто пользователи ищут туториалы по конкретному языку. Ведь, по мнению создателей рейтинга, именно поиск туториалов показывает, насколько популярен язык конкретно сейчас.
PYPL показывает удивительную стабильность. Первая десятка позиций за последний год абсолютно не изменилась. А ведь именно на них приходится 85,94% всех запросов.
Уверенно лидирует Python, индекс которого почти в 2 раза выше, чем у Java с его вторым местом. При этом отрыв второго от третьего места — тоже почти в 2 раза. Так что в сумме Python и Java занимают почти половину всех запросов по туториалам. А это значит, что именно их активнее всего изучают в 2020 году.
По всем рейтингам — Python в топе (хоть и на втором месте после Java). Сохранится ли тенденция? Какие у языка перспективы?
Python не просто останется в топе еще много лет, но и поднимется по позициям. Если мы говорим о России, то это во многом обусловлено экономическими факторами. Люди поняли, что их профессии уже не такие нужные, да и денег приносят не так много. Поэтому многие начинают штурмовать IT-сферу и изучать программирование. А Python имеет очень низкий порог входа из-за простоты синтаксиса и, конечно же, сахара.
Тут мы приходим к другой причине. Python позволяет написать рабочий прототип скрипта с помощью нескольких десятков строк кода, в отличие от других языков, где будет уже сотня-другая. Тем самым разработка на Python гораздо быстрее. А для многих компаний нужно быть первыми, чтобы не потеряться на рынке.
Семён Березовский, ментор курса SkillFactory «Python для веб-разработки»
Среди других ЯП активный рост демонстрируют Go, Rust, Ada, Lua и Dart. Их можно рассматривать как перспективные языки, но пока что интерес к ним слишком мал, чтобы с ними считаться в глобальных масштабах. Отметку в 1% преодолел только Go.
Если обобщить, то рейтинг PYPL дает хорошее понимание, какие языки программирования сейчас активно изучают либо ищут для них решение конкретных задач.
Но при этом он не показывает, на каких языках работают программисты. Ведь для выполнения рабочих задач совсем не обязательно искать туториалы в Интернете.
Опрос программистов на постсоветском пространстве
В начале 2020 года на DOU были опубликованы результаты опроса почти 10 000 программистов из постсоветских стран. И на основе их ответов был составлен рейтинг языков на которых сейчас пишут больше всего.
Да, выборка в 10 000 анкет — это мало по сравнению с анализом миллионов запросов поисковиков. Но при этом она дает более полное видение о истинной популярности языков. Ведь используются не косвенные данные, а вполне себе прямые.
В первую очередь нас интересует вопрос «На каком языке вы пишете сейчас?» Ведь именно он показывает, насколько распространен язык именно в рабочей сфере, а не в обширности теории или популярности обучения.
Первая пятёрка с небольшими изменениями повторяет рейтинг PYPL. Разве что нет такого огромного отрыва Python от остальных ЯП. А разброс первого места с 18,4 % и пятого с 10,8 % нельзя считать слишком уж большим.
При этом первые пять позиций покрывают 71,5 % рынка, что также коррелирует с рейтингом PYPL. Но тут тоже есть изменения. По сравнению с 2019 годом JavaScript и Python растут, а вот рейтинги Java, C# и PHP постепенно падают.
Особенно активно растёт Python. Количество разработчиков, которые считают Python своим основным ЯП, выросло на 21,1% по сравнению с 2019 годом.
В целом Python растёт практически во всех аспектах. Он лидирует по личностным предпочтениям программистов. Также его планирует изучать как второй язык наибольшее количество респондентов. А в качестве дополнительного языка программирования он занимает почётное второе место.
Учитывая темпы роста, Python через несколько лет вполне может вырваться в лидеры и крепко оккупировать первое место. Тем более что разрыв между ним и лидером составляет всего чуть больше 5 %.
При этом очень активно растёт TypeScript, что в целом имеет смысл. Ведь разработка мобильного софта на TypeScript за последние несколько лет выросла многократно. Поэтому программистам, которые планируют разрабатывать софт для смартфонов, стоит обратить внимание на этот ЯП. Ну а для тех, кто уже знает JavaScript, — сам Билл Гейтс велел.
Заключение
Если обобщить информацию из всех рейтингов, то складывается следующая картина.
Python, JavaScript, Java и С# и PHP — это элита. Их активно изучают, на них программируют, пишут и читают туториалы. Сообщество языков живо, они развиваются и процветают. Можно посоветовать любой из этих языков новичку, который хочет «войти в IT» — и не ошибётесь. Они действительно востребованны и популярны.
Что касается С/С++, то в Интернете просто огромное количество информации по ним. Несмотря на возраст, они все ещё сильны, хоть и понемногу теряют аудиторию.
Что касается перспективных языков программирования, которые могут хорошо «выстрелить» в будущем, то здесь стоит упомянуть TypeScript, Kotlin, Rust и Dart. На них стоит обратить внимание, если ищете перспективный второй язык программирования.
Но в целом стоит помнить, что любые рейтинги такого плана субъективны и во многом зависят от того, как именно проводится анализ данных. Так что если хочется учить С++ — вперед. И даже если интересен Whitespace (тьфу-тьфу-тьфу), то можно и его. Успехов вам в ваших начинаниях! Тем кто надумает изучать язык — мы всегда готовы в этом помочь. А промокод HABR, добавит 10 % к скидке на баннере.












