Как стать автором
Обновить

Какие языки программирования самые популярные: статистика ИТ-платформ

Время на прочтение4 мин
Количество просмотров215K
Всего голосов 29: ↑19 и ↓10+9
Комментарии76

Комментарии 76

Интересно, что Crystal, а не Nim. Мне как-то Crystal, при беглом взгляде, больше понравился, но мне казалось, что Nim популярнее.
Я как был сторонником PHP так и останусь. Зачем что то менять и гнаться за трендами, если мой пятнадцатилетний опыт всегда востребован и приносит прибыль.
Статистики надо смотреть по вакансиям, там же соотносить зарплаты.
Все остальные сервисы, не дадут даже близкую картину реальности, особенно в России.
На сервисы Q&A опираться вообще нельзя, т.к. там чаще задают вопросы, обучаясь а не по рабочим моментам.
Сам иногда задаю вопросы, но они касаются каких то новых знаний, не связанных на прямую с моей работой.

P.S.
Так же, пишу микросервисы на Go, если это необходимо, уже чуть более 3х лет.
Символично, что в теме про самые популярные ЯП, PHP-шнику приходится оправдываться
Оправдываются те, кто что то сделал плохое и/или не верное.
Я же сделал правильный выбор.
Вдобавок, стоит иногда постскриптум читать а не просто так флудить.
PHP понемногу сдаёт позиции. Вон на православном западе вообще Perl разработчики больше востребованы, чем PHP… Хотя у нас этот язык ещё держится очень даже неплохо.
www.scrapers.space/compare
Кривую вы статистику скинули.
Там явно надо фильтры подправить, а то получается что в СНГ, топовое программирование на HTML. Там еще все в кучу — и вашим и нашим, давайте спляшем.
BimBam Статистика по СНГ почему-то не учитывает целый пласт программистов 1С. Судя по hh.ru, вакансий для них 3189. Причем это только те вакансии, которые размещены на hh, а у них, напомню, недешевое платное размещение, так что реальную цифру можно умножать на 1,5 как минимум.
Или 1С-ников не считают за программистов (хотя людей, знающих HTML, в этой статистике учитывают именно как программистов), или в чем я неправ?
Так же странно, что в этой статистике нет питона, хотя в публикации он входит в список самых востребованных яп
Или я что-то не понимаю?
Лет 5 назад примерно тоже самое писали фанаты флэша и AS. Ну и где этот флэш сейчас?
Он, конечно, еще пока не умер — до 2020 года еще время есть, но факт остается фактом — сама же Adobe заявила что технология устарела и её жизненный цикл будет завершен в ближайшие 3 года.
Так можно было бы сравнивать, если бы Facebook и vk были на флеше, а затем за пять лет перешли на чтото другое. Вот так легко скопытить за пять лет PHP не выйдет. За пять лет все перейдут на PHP7, вот в это я поверю.
Python как ни как, все же набирает обороты, в годах 2013-х статистику забросов помню набирал, было около 13-ти с чем-то тыс. что ли, сейчас почти полмиллиона.
Для себя пишу на js, но как правило приходиться чаще всего на php. Я думаю по статистике роста npm пакетов, js будет ещё в тренде года 3, уступая только питону.
составители таких рейтингов поди и в глаза не видели языки, о которых пишут.
>>Hi-Tech.Mail.ru выделил ( которые будут набирать популярность )
> Erlang,
э… это точно? синтаксис смотрели? есть же мягкая версия Elixir
>GO
сам язык Го это песня. без надрыва не споёшь. что то сделано очень хорошо, но какой ценой.
> Erlang,
э… это точно? синтаксис смотрели? есть же мягкая версия Elixir


А что там с синтаксисом? Проблемы там совсем в другом месте.
имхо, там синтаксис из 80х, когда создавалась машина эрланга. трудновато читать. учитывая что ниша эрланга не столь широка, трудно надеяться на большой энтузиазм к этому языку.
А какие проблемы там в другом месте? вроде как хвалят машину эрланга, скорость там, распределённость, надёжность
Синтаксис-то из 80-х, но это ерунда.
А проблемы возникают как раз в «распределённости и надёжности»: больше 60 нод — и начинаются проблемы. Скорость? Извините, извольте вынести числодробильню наружу. Да, надеемся, что к 21 релизу проблему с интерконнектами исправят, но гонять какую-то математику на нем — та еще афера.
ну тогда почему за него топят? мол надо много распределённости — есть эрланг
а вдруг, если 60 нод это уже много, то проблема в железе или архитектуре?

имхо, там синтаксис из 80х

Вы так говорите, как будто это что-то плохое…

Тем более не совсем понятно чем отличается синтаксис 80-ых годов от 90-ых, а синтаксис 90-ых от 2000-ых. Синтаксис ЯП штука такая, которая была окончательно ошлифована к концу 70-ых, если не раньше.
ну речь не о том, что тот или иной синтаксис плох. просто 0 вероятность что эрланг будет первым языком. а вот переход на него с других, у которых хороший набор много чего, будет проблематичен.
лично я когда просматривал обзор языка именно это и резало глаз.
Все зависит от мотивации. Если скажем найдете себе работу в Ericsson программистом на Erlang за кучу денег, то не такой уж он и плохой будет ;)
Нужно также заметить, что информация может отличаться от реалий сегмента.
Так например я пару дней назад зашел на «Мой круг» и по запросу react увидел максимум +-130 т.р. и при этом в Москве, в офисе. Требования знания всего стека + angular, пляс высокоточная настройка webpack для изоморфных приложений + умение писать сервера на nodejs и разрабатывать архитектуру крупных приложений. Другими словами сеньор за МАКСИМУМ 130т.р, а так от 100т.р. И повторюсь, это в Москве, на задворках и того наверное в два разам меньше. Если я не ошибаюсь, то сеньор разработчика наши клёвые предприниматели приравняли к уборщице в банке.

Поэтому прежде чем выбирать язык основываясь на статистике, нужно выложить статистику где живут самые ожиревшие уроды-менеджеры. Это самое настоящее рабство, в китайских интерьерах за корейскими компами делать сайты для сша за 100т.р.м… Ну или кто-то подрывает авторитет «Мой круг» выкладывая туда нелепые вакансии, от которых возникает желание больше туда не возвращаться.

Жалко что не пишут статьи для новичков, кем они не должны стать когда станут работодателями и что если с Вами поступили плохо, это не значит что так нужно поступать с остальными.
Не от ста! От 60 до 150. 150 одно объявление, и то 150 не гарантированно.

Ну это особенность "Моего круга" при всём моём уважении к хаброэкосистеме. Там есть вполне адекватные предложения вакансий, но большинство как-будто расчитано на программиста-ботаника, который круто шарит в технологиях, работает за идею, но совсем не следит за рынком труда. И вот перед его глазами мелькнёт объявление, чем-то его заинтересует и он перейдёт в новую фирму за недорого. По крайней мере, у меня такое впечатление сложилось.

Вы считаете, что знать пару фреймворков и инструментов сборки — это невесть какой уровень профессионализма?
Знать webpack для высокоточной настройки изоморфных приложений и умение проектировать большие приложения, писать сервера и знать react + angular, это по Вашему джуниор за ДО 120т.р.? И это не говоря о высоком уровне знания самих языков.
Со стороны смотрю, не могли бы вы мне рассказать, что там за высокоточная настройка у вебпака? Это можно свести к «умеет грамотно пользоваться»?
скорее всего — кто умеет очень грамотно пользоваться. Хеширование, создание собственных плагинов, удаленная компиляция, создание удаленных логеров. К примеру пару дней назад, была статья на хабре о typescript + webpack. Так вот оказалось что авторы решали проблемы, которые уже были реализованы в более качественных инструментах, чем они знали и чем они создали. Нооб этом им сказали только в комментах. Сбербанк они вроде поддерживают. Назвать их глупыми нельзя, просто они не уделили должного внимания окружению. Это нормально. И вот на мой взгляд, знать все это и есть то о чем Вы спрашиваете.

К тому для изоморфного приложения настройка дев сервера + горячая замена js уже будет отличаться.

Не стоит вводить в заблуждения, там бывают вакансии с низкой ЗП, Так же иногда компании завышают требования и очень разнятся с реальностью. В целом по опыту, midle получает до 130 т.р и senior от 130-150 т.р. В регионах да меньше, почти в два раза
Я живу в столице Кузбасса, у нас программист на С, Java и подобных языках вообще практически не востребован, программист с JS иногда нужен, но за 10т-15т. Само собой требование всегда как к сеньору. Поэтому наше всё это 1С, практически единственный востребованный язык, где можно на 40т. устроится. Читаешь такие статьи и комментарии и понимаешь, что живешь на другой планете. :-)
Так и есть. Но чтобы увидеть вакансии отличные от 1С и сайтов (PHP и JS), достаточно посмотреть на вакансии соседнего Новосибирска. Да, деньги не столичные, но выбор вакансий гораздо шире. Да даже Томск, относительно небольшой город (сравним с Кемерово) гораздо технологичнее в этом плане. И я вас отлично понимаю, потому что недалеко, скажем, в Барнауле ситуация почти такая же. 1С-ники и сайтостроители на проверенной связке.
Так что будущее уже здесь, просто оно неравномерно распространено.
Да, в Новосибирске вакансии есть и даже зарплата не плохая, в сравнении с Кемерово. Но в отличии от американцев мы народ очень оседлый и не можем бросить то что есть ради возможной перспективы. Поэтому зачастую люди продолжают жить в маленьких городах, где вообще работы почти нет и также программисты в средних городах переквалифицируются в 1С, а все остальные языки для души, чтобы совсем не закиснуть.

Ничего не поделаешь, либо продавай 2-х комнатную квартиру и на эти деньги в большем городе покупай гостинку, либо сиди и жди, когда прогресс докатится и до глубинки. :-) Это как с интернетом, когда я сидел на модеме, при том только по ночам из-за высокой цены, в Москве безлимитные тарифы были уже в порядке вещей. Теперь и я сижу на безлимитном, а значит ещё лет 20 и можно будет видеть вакансию для программиста С++ и в моем городе. Тогда и я поспорю, какой язык популярнее, помимо 1С. :-)
Вероятность этого крайне низкая, интернет нужен практически всем людям, в отличии от C++ программиста. В Новосибирске развитие IT происходит, во многом благодаря университету, в который едут со все России.
По собственному опыту (правда не в России, а в ЕС) — часто пишут в требованиях очень завышенные ожидания. И вполне рассматривают разработчиков уровнем пониже заявленного в этих самых требованиях.

Чаще всего происходит так, что найти того, кого требовалось не получается — соглашаются на уровнем пониже. Да и если находят, чаще всего просят больше ЗП чем заявлено.
Ну а если повозет и найдут «такого прям всего крутого», который согласится на «ту довольно низкую ЗП» — то вообще классно им.
R будет набирать популярность? Я немного встревожен. Синтаксис достаточно убогий имхо, да и область применения маленькая. Python выглядит гораздо предпочтительнее. Я наоборот надеюсь, что python вытеснит R в будущем.
Рост популярности R практически неизбежна. Просто потому, что аналитика все более и более востребована, а аналитики очень часто используют R.
Тем более это примечательно, т.к. R — достаточно узкоспециализированный язык, изначально предназначенный для нужд статистики. Cинтаксис на нем вполне может быть симпатичным и читаемым.
Ну если говорить о синтаксисе, то он у обоих мусорный, но в R хотя бы нет буйства табов, поддержка векторов и матриц из под коробки и всех операций с ними, что хоть как-то обнадеживает. Статистические модели пишутся в несколько строк. Вообще R — это лингва-франка статистиков.

Серьезный минус там только один и из другой оперы — медленный, хотя казалось бы куда уж медленнее Питона?
А в каком языке синтаксис, по-вашему, хороший, не мусорный?
Я что-то не очень понял почему в комментаричх программирование отождествляется с фронтендом.
или бакенды тоже на js и php пишутся?
Также вопрос, учитывались ли все те, кто не стартап на гитхабе, а молча коммитят в свой локальный реп?
НЛО прилетело и опубликовало эту надпись здесь
php-бакенды просто ни разу не видел. Кроме проектов вроде dokuwiki, например, где бакенд и фронтенд не разделяются
Вы никогда не видели PHPDaemon (phpd)?
Ну, предположим я даже писал бэкэнд на php, а скрипт даже не через phpd дергался, а cron'ом.
На php можно писать realtime backend? Если не ошибаюсь, скрипт там не может выполняться постоянно.
Чем while (true) не угодил? Работает не только для php, кстати говоря.
Ну как сказать — по запросам может лидировать самый запутанный язык программирования, больше путаницы больше обсуждений, вопросов и воплей help me)
Java лидирует потому что все кто на нем пишет в свое время хотели учить JavaScript но по ошибке освоили Java )) Шутка ))
Сам юзаю JS, TS, Angular иногда php что по мелочам поправить.
Прошу не бить ногами за несведущесть (сам программирую немного, больше по универу), но есть у меня такой вопрос:

Зачем придумывают новые языки программирования, если можно совершенствовать старые? Ладно, эппл со своим Свифтом тут немного отличается закрытостью (поэтому телефоны у них не на андроиде, а компы не на винде).

Посудите сами: создание новых ЯП — это почти ловушка. Да, если ты уже знаешь несколько ЯП, то выучить новые легче, но это же непросто: тебе не только работать, но и учиться надо всю жизнь. Бесспорно, учиться нужно, но я бы предпочёл совершенствовать опыт на одном-двух ЯП, чем пытаться угнаться за трендами и давать сырой результ из-за нехватки опыта и вечной беготнёй за новинками.

Вот с сентября 2017 в универе учим Javascript вместе с векторной математикой (да, типа рисуем на JS). Боже, JS хоть и универсален, но для новичков он плох своей свободой и отсутствием таких строгих правил, как в С, С++, Java и тому подобных ЯП.
Есть такие понятия, как обратная совместимость и легаси. Нельзя вот так просто выкинуть труды 10 лет и распустить штат. Так что самое большое количество инноваций на квадрат площади там, где короче цикл жизни приложения.
С языками программирования такая-же засада, как и со всеми инструментами. Универсальными они не могут быть в принципе. Возьмем две крайности. Швейцарский нож и набор полноразмерных аналогичных инструментов. Швейцарский нож просто идеален что бы каждый день носить его с собой, но при этом готовить лучше поворским ножом, а спилить дерево будет куда проще обычной большой пилой по дереву. Но каждый из этих инструментов хорош по-своему. Так же и языки программирования каждый создавался что бы быть хорошим в определенной нише. Скажем можно ли писать все на С/С++? Да. Но будет-ли это хорошо? Это быстрые и развитые языки, но за их универсальность нужно платить. Как не крути, а порог входа у них сильно выше, чем, например, у Python. И если нам нужно будет распарсить файл, то на С мы будем писать программу неделю. А на Python уложимся в 30 минут. И несмотря на то, что Python медленнее в 1000 раз результат куда интереснее получить через 30 минут и 1 секунду, чем через неделю и 1 млс ;). Или другой нишевый продукт- Matlab. Он очень широко распространен в научной среде. Он обладает просто феноменальным количеством библиотек. Прямо из коробки. Бери и пользуйся. Или, например, Matlab позволяет запустить скрипт в параллель не только на локальных ядрах СPU, но и на машинах в сети. Для этого нужно просто ему об этом сказать. Поиск и распределение — его задача. За сколько времени вы возьметесь это все реализовать на C++? А ученые, основная область которых часто и густо не программирование, даже думать об этом не будут.

Или пример из другой плоскости. Компилируемые и интерпретируемые языки. Компилируемые языки дают отличный результат, но что бы внести изменения нужно будет пересобрать все заново или только часть, но это нужно сделать. И далеко не всегда это будет очень просто и быстро. С интерпретаторами же ты просто меняешь файл в нужном месте любым текстовым редактором и готово. Конечно есть языки обладающие одновременно и компилятором и интерпретатором. Например это есть в Haskell. Но порог входа у него такой, что С/С++ на его фоне кажутся отличным вариантом для первого простого языка для маленьких деток.

Так что много языков это скорее хорошо, чем плохо. Тем более все-равно никто не заставляет учить все. 2-3 будет достаточно почти во всех случаях.

Почему вы считаете продукцию Apple закрытой ума не приложу. Как можно считать систему закрытой если и ее ядро и утилиты выложены в отрытый доступ? В MacOS входит целая подсистема, которая поможет вам установить на Mac Windows. Прямо в стандартной поставке. Я что-то не помню, что бы Windows могла этим похвастаться.
по поводу билда в рантайме С/С++ можно использовать напильник+loadLibrary
в C# есть готовый класс Microsoft.CSharp.CSharpCodeProvider.CompileAssemblyFromSource(code.cs);

например создаётся обработчик FileWatcher на файл, и при его изменении он подргружается, перекомпилируется и подключается.
тут все преимущества скорость+интепретация
Если файлов мало, то звучит неплохо. А если файлов сотни? Как-то 500 обработчиков лично меня совсем не радуют. Мало того, что они жрут процессор и память, нагружают файловую систему, их банально нужно повесить. Если он один, то он сканирует файлы и жрет меньше, но и действует медленнее.

В общем костылей наставить можно и, порой, это оправдано, но разница между обычном процессом и подпиранием костылями все-таки есть.
Ну если за Шарп говорить то там все просто. Буду за компом, скину код, ну если интересно
Свифт опенсорсный и собирается в том числе на юникс системах и венде, а придумывался с целью избавиться от 20летних костылей/синтаксиса Obj-C, которые отпугивают новых разработчиков (от части конечно).
Опряделять общию популярность ЯП, это же не верный пдход. Т.к каждый ЯП предназначен для свой сферы будь это: АСУТП,Embedded,GameDev,webразработка и прочие другии категории. И если оценить популярность ЯП по процентному соотношению пользования каждой из этих сфер, то даже не могу предположить кто будет в топ 5.
С самыми популярными языками вообще сложно. Если говорить вообще о всех языках, то лидеры ясны. Но есть узкие области, где языки с популярностью 1.5% занимают половину ниши, а то и больше. Например R нельзя назвать очень популярным, но аналитики его любят. И судя по всему он делит нишу пополам с Python. Если взять научную среду, то там Matlab впереди планеты всей. Но если составить действительно очень хороший рейтинг, то изучить его можно будет в лучшем случае за часы ;)

Вопрос языка для следующего проекта, на мой взгляд, говорит вообще непонятно о чем. Если бы меня спросили, то я, наверное, назвал бы Haskell, потому, что сейчас с ним ковыряюсь или Kotlin потому, что в ближайшие пару лет это все-равно придется это сделать. Но по факту, а я в этом уверен на 1000%, мой следующий проект будет на Java. Ну или если считать маленький скриптик для автоматизации за проект, то Python. И такая ситуация с большой вероятностью у подавляющего большинства.
Занимаюсь Embedded разработкой на работе, и в качестве хобби дома. И уверенно скажу, что следующий проект на работе будет точно на С++, а вот домашний на С, и возможно что-то на Assembler/Rust, или даже Ada/Oberon
Зачем столько букв? Приведите пару табличек или диаграммок, всё будет понятно.

Бешеная статистика JS не вполне отражает популярность языка, IMHO


Давайте уберем из выборки веб фронт, где просто выбора нет, и тогда посмотрим.

И даже тогда там еще останется NPM.
Писал на Delphi и дальше буду писать, а рейтинги для идиотов, которые только и могут обсирать, то чего не понимают!
Stack Overflow, HN и Хабрахабр — это «ИТ-платформы»? Очень странный заголовок.

Вот тут я даже соглашусь c оратором выше (который про делфи писал). Пишу на PHP, знаю огромное колво темных сторон этого ЯП (читать как пхп говно), но пишу на нем уже лет так 10, и не смотря на все его недостатки для меня это один из лучших ЯП для решения моих задач.
Помимо PHP я пишу код на различных других ЯП (думаю с десяток можно набрать), и у всех у них свои плюсы и минусы, нет ничего суперклассного и суперуниверсального.

А я на Progress Open Edge сижу на работе… Видимо принадлежу к вымирающему виду. Про него вообще информации ноль на популярных ресурсах. А в вечерних проектах использую с#.
Был приятно удивлен насчет Erlang
Учитывая, что означает слово «популярный», то тут естественно JavaScript. Поскольку он постоянно меняется, он постоянно на слуху. Плюс низкий порог вхождения, а значит огромное количество вопросов от новичков и мануалов для них везде и всюду.
Но если говорить о самом используемом — то это Java. БОльшая часть всех серверных приложений работает на Java, андроид приложения и тд.
Веб с php вы лихо отбросили из серверных приложений?)
Согласен. Все время забываю, что PHP стал языком программирования.
Он с версии 5.2 им вполне себе стал ;) Но кого это волнует…
Я больше склонен к версии 5.6…
Я тут посмотрел по логам «что нового» и, думаю, погорячился. Не 5.2, а скорее 5.3. Добавление неймспейсов полностью изменило язык и фреймы (Zend, Yii, Symfony — можно сравнить какими они были до 5.3 и после).

А в 5.6 отличия минимальные, операции над скалярами в константах, да «вариадик» аргументы. Я бы понял ещё, если бы 7.0 упомянули как все, который, к слову, ничего кроме тайп-хинтинга для скаляров не добавляет (ну ок, ещё null-coalence оператор очень популярен). Но 5.6… Чем 5.6 прям такой «самостоятельный»?
Забавно, но выбор языка для проектов — это уровень ни тимлида, архитектора или кого то еще, а это минимум уровень CTO, т.к. самое дорогое в проекте — это менять язык.
Но опросили кодеров, студентов или кого там вообще опросили, я честно говоря не понял да и не важно.
Erlang больше не развивается. как он сюда попал?
Мои рабочие языки PHP, Perl, три диалекта SQL, посматриваю добавить в свою Open Source коллекцию Python.
Самые востребованные у нас в регионе 1с программисты. остальным как повезет.
Выбор языка — это результат анализа решаемой задачи. В моей работе приходится использовать от низкоуровневого С до математических пакетов в облаках. Судя по прогнозам всё ещё правят языки среднего уровня. Так что «покодим» ещё.
Метод подсчёта интересный, но не без изъяна. На ABAPе, например, врядли что-то найдётся на Github'е, однако язык хоть и нишевой, но весьма распространённый
Зарегистрируйтесь на Хабре, чтобы оставить комментарий