Найти тему

БИТВА, КОТОРОЙ НЕТ: КАК ВЫБРАТЬ ЯЗЫК ПРОГРАММИРОВАНИЯ

Оглавление

Сфера программирования похожа на ландшафт с мозаичным набором языков и фреймворков, в котором сложно определить, с какой тропы начать путь. Каждый ресурс и блог предлагают свой «бессмертный» или «современный» язык будущего, расхваливая его многочисленные библиотеки и поддержку сообщества. Информационный шум создал видимость бесконечной битвы, очаги которой стали миражами на любой намеченной дороге разработчика. Они путают новичков и заставляют выбирать, толком не разобравшись в настоящих возможностях каждого стека. Так стоит ли вообще обращать внимание на эти распри и рекомендации?

Как и во всех направлениях IT, в разработке есть свои просматриваемые тенденции. Главная из них – частая смена «популярного» языка программирования, которая пугает молодых специалистов неправильным выбором. Чтобы разобраться, откуда она возникла, обратимся к первоисточникам популяризации.

КТО РАЗВЯЗАЛ МНИМУЮ БИТВУ

АГЕНТСТВА И ФРИЛАНСЕРЫ

В каждой компании, предоставляющей услуги разработки, есть приоритетный язык программирования. Изначально на нем мог кодить сам СЕО, а потом отбирать тех специалистов, навыки которых ему проще проверить. В других агентствах ведущим языком становится тот, на котором пишет большинство сотрудников в данный момент времени. Новые организации предпочитают изучить спрос рынка и формировать команду по актуальным запросам. В любом случае компания при рекламе своих услуг рассказывает и о преимуществах ее стека, делая акцент на доминирующем. Аналогично поступает и фрилансер, зачастую орудуя одним языком программирования. Говоря проще, на чем работаем – то и лучшее.

АКТИВИСТЫ СООБЩЕСТВ

У языков и фреймворков существуют отдельные площадки-сообщества, в которых общаются и помогают друг другу разработчики. Выходя за пределы среды единомышленников, активные сторонники одного языка «нападают» на инакомыслящих программистов. Особо не разбираясь в другом стеке, они пишут хвалебные посты и комментарии своему, стараясь принизить все, что в него не входит.

РЕЙТИНГИ

Доверять цифрам – это правильно, но слепо верить всем – не стоит. К такому выводу можно прийти, если посмотреть не один, а сразу десять рейтингов языков программирования. Одно ранжирование сделано на основе поисковых запросов, второе – на опросе менее 100 тысяч разработчиков, третье – по числу репозиториев, а четвертое – вообще мнение автора. Метрики рейтингов не учитывают ни количества цифровых продуктов на языке, ни реального числа программистов, работающих на нем. Ничего из жизни – сплошная виртуальность. Все, что они могут подсказать, – какие языки сейчас более обсуждаемы.

-2

КУРСЫ ПРОГРАММИРОВАНИЯ

Онлайн-школы не скупятся на подробное описание языков программирования, которые входят в их обучающий план. Если какого-то языка – нет, то он автоматически становится «морально устаревшим» и ненужным. Зато любой преподаваемый способ кодирования – современный и востребованный, что тоже вносит свою лепту в иллюзорные сражения. Интернет-курсам все равно, что вы выберете, лишь бы сделали это. Они размещают шаблонную рекламу и обещания, не думая, что могут привести новичка к ошибочному мнению о программировании и последующей стагнации в карьерном пути.

САЙТЫ ПО ПОИСКУ РАБОТЫ И СОТРУДНИКОВ

На hh.ru и подобных платформах можно отследить фактическую востребованность языков программирования. Для статистики достаточно сравнить количество вакансий и резюме. Однако большой спрос на Python-разработчиков в настоящее время не гарантирует, что через полгода количество кандидатов на должность не достигнет критического уровня. В то же время PHP-разработчиков может стать дефицитно мало, что в разы увеличит шансы быстро найти работу.

КАК ВЫБРАТЬ СВОЙ ЯЗЫК ПРОГРАММИРОВАНИЯ

При получении высшего профильного образования будущему разработчику намного легче принять решение, чем программисту-любителю. Частично оно предопределено самим обучением, во время которого студент знакомится с 3-4 языками. Если вы впервые хотите заняться глубоким изучением одного языка программирования, то, чтобы не запутаться, ограничьте себя теми, которые находятся на слуху. Изучите вступительную теорию по каждому и попробуйте на них покодить. После этого самостоятельно выберите тот, что понравился.

Можно отталкиваться и от стека компании, в которой хотите работать. Так, Яндексу требуются разработчики на Python, C++, Java, Go. Однако и Яндекс, и другие организации предпочитают специалистов с опытом. В нынешних условиях сложно сказать, будут ли настолько актуальны вакансии к тому времени, когда вы накопите нужные навыки и стаж.

Практичный метод – проанализировать спрос на трудовом рынке. Смотреть нужно и вакансии, и резюме. Например, на момент написания статьи у Kotlin на hh.ru размещено в 6 раз меньше вакансий, чем у Python. Однако на 1 вакансию со знанием языка мобильной разработки – 15 соискателей, а веб – 24. Это говорит о том, что конкуренция среди Python-разработчиков выше. В целом на начало 2024 года наиболее востребованы и дефицитны GO-специалисты: 8 кандидатов на 1 должность. Но через год-два на вершину может взойти совсем другой язык, который снизит спрос на остальные.

-3

Как вы уже поняли, никакой битвы никогда не существовало. Личное предпочтение, вынужденная работа на определенном стеке, появление проектов и доработка старых, обновления версий и новые плагины – вот, что влияет на популярность языка программирования в определенный период времени. Поэтому при его выборе не нужно зацикливаться на «самом-самом».

Выбор языка программирования зачастую стоит перед теми, кто собирается пройти IT-курсы и быстро освоить профессию. Получая полноценное образование программиста, молодой специалист понимает особенности языков. Он практикуется и останавливается на том, с чем ему удобнее работать. Новичкам же, решившим освоить программирование за полгода, советуем сначала ознакомиться со статьей «Правда о нехватке IT-специалистов и отказах рекрутов».