Почему Python стали критиковать в 2023 и 2024 году

Аватарка пользователя Рафаил Агазода

Всё чаще в соцсетях можно встретить хейт по отношению к разработчикам на Python. Узнали, почему Python так резко стали не любить.

Всё чаще в соцсетях можно встретить хейт по отношению к разработчикам на Python. Узнали у middle и senior специалистов, почему Python так резко стали не любить и актуален ли этот язык в 2024 году.

***

Напоминаем, что вы можете задать свой вопрос экспертам, а мы соберём на него ответы, если он окажется интересным. Вопросы, которые уже задавались, можно найти в списке выпусков рубрики.

Если вы хотите присоединиться к числу экспертов и прислать ответ от вашей компании или лично от вас, то пишите на experts@tproger.ru, мы расскажем, как это сделать.

***

Никогда не слышал хейта в сторону Python, и для меня это стало открытием. Ненавидеть язык программирования или ругать его – это примерно, как испытывать неприязнь к испанскому или греческому, согласитесь?

В изучении языка программирования не нужно обладать какими-то специальными навыками или особенностями, как и для изучения иностранного языка. Могу сказать об этом как лингвист-переводчик со знанием основ педагогики.

Методика изучения похожа, в том смысле, в каком мы привыкли со школьных лет: теория – практика, теория – практика, и чем больше практики – тем быстрее ты начинаешь говорить, ну или кодить, если хотите. Все мы разные, и кто-то схватывает “на лету”, а кому-то надо решить не одно упражнение, чтобы материал мог усвоиться. Все зависит только от усердия и мотивации студента: хочешь оставаться там, где ты сейчас – ничего не делай.

Возвращаясь к теме Python и хейта, можно лишь сказать про легкую дискриминацию со стороны тех, кто изучал программирование 5 лет в университете. Для них все, кто приходит в профессию без специального высшего образования это “войтишники”. Но такое отношение не отражается на работе, скорее мелькает в разговорах. Я несколько раз спрашивал коллег: что такого вы узнали за 5 лет в университете, что позволило прийти на работу и быть лучше, чем любой из присутствующих джунов? Ответа на такой вопрос, как правило, нет. Я прошел этот путь “войтишника” лично и получил высшее по своей специальности, уже несколько лет работая в профессии на позиции senior. Сделал это, чтобы не комплексовать, на деле это конечно ничего не изменило.

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

Конечно есть у этого языка и минусы, например, скорость исполнения кода, но это субъективно, иногда скорость не так важна. Youtube и Instagram достаточно для вас быстры? Они почти полностью сделаны на Python. 87% кода в ИИ написаны на Python.

Нет, точно не стоит переживать об потере актуальности этого языка. Возьмите любой рейтинг и Python всегда будет в топ-4, в любом году, выше него только JavaScript и html/css, но это объяснимо тем, что любому бэкенду нужен фронтенд, а это всегда JS. Ну если уж не верите мне на слово, то напишите на известном сайте по поиску работы Python и посмотрите на количество вакансий, а потом для сравнения поищите по Java, JS или C++, перевес всегда будет в сторону Python.

Помимо преимуществ языка Python у этого языка есть и недостатки. В частности, скорость работы, динамическое ограничение видимости и ограниченность применения в мобильной разработке (Python не самый подходящий для мобильной разработки язык, а мобильные приложения становятся всё более и более популярными).

Согласно прогнозам, Python могут заменить следующие языки программирования: Rust, GO и Julia.

Рост популярности Python, помимо простого и удобного синтаксиса, а также большого числа библиотек, отчасти связан с активным применением машинного обучения, т. к. большинство ML библиотек написаны как раз на Python.

Отчасти это [хейт] могло быть связано с простотой погружения в Python и сложностью последующего перехода к таким языкам программирования как C/C++. Как итог, знание алгоритмов и понимание работы коды может получиться поверхностным. Среди минусов питона стоит отметить невысокую скорость работы (это интерпретируемый, а не компилируемый язык программирования), использование динамического ограничения видимости. Это значит, что для оценки выражения компилятор сначала ищет текущий блок, а затем последовательно все вызывающие функции. В итоге, это приводит к тому, что каждое выражение должно быть протестировано во всех возможных контекстах, а это довольно долго. К другим недостаткам питона можно отнести важность пробелов при написании кода. Пробелы используются для отделения логических блоков. Для новичков в программировании и небольших проектов это удобно, но вот для масштабных проектов это далеко не всегда удобный вариант.

В ближайшие года три питон точно не утратит своих лидирующих позиций. В дальнейшем возможно лидер среди языков программирования сменится. Но ожидается, что в областях, связанных с машинным обучением и анализом данных, web-разработкой и DevOps по-прежнему будет лидировать питон. Однако, в проектах где критична скорость работы будут использоваться более быстрые языки программирования (например, C или C++).

***

Напоминаем, что вы можете задать свой вопрос экспертам, а мы соберём на него ответы, если он окажется интересным. Вопросы, которые уже задавались, можно найти в списке выпусков рубрики.

Если вы хотите присоединиться к числу экспертов и прислать ответ от вашей компании или лично от вас, то пишите на experts@tproger.ru, мы расскажем, как это сделать.

Языки программирования
Python
2886