LINUX.ORG.RU
ФорумTalks

Наброс про Питон

 ,


0

3

Наступил 2024. Питон — самый популярный язык в мире по рейтингу TIOBE. Самый известный программный продукт ушедшего года — ChatGPT — написан на Питоне. Питон легко выучить, и программисты на Питоне делают головокружительную карьеру в разработке. Питон — универсальный язык, на котором можно писать любые программы.

Эти факты могут создать ложное впечатление, что новые учебные курсы по программированию должны быть посвящены Питону и все новые программы нужно также писать на Питоне.

Между тем указанные факты никаких подобных следствий не имеют, для выбора Питона для написания программ нет оснований (за исключением узкой ниши машинного обучения), а изучение Питона может скорее навредить (в особенности в качестве первого языка программирования). Разберём популярные заблуждения в деталях.

Все нижеизложенные цифры — свежие (даны по состоянию на 2023) и вряд ли заметно изменятся в пользу Питона в будущем, т. к. язык существует более 32 лет, он старше своих нынешних конкурентов (кроме Bash, Tcl и C/C++) и свой потенциал взрывного роста давно исчерпал.

http://shmat-razum.blogspot.com/2024/01/python.html


Ответ на: комментарий от vvn_black

Там чувак не осилил принять GIL и бугуртит.

ei-grad ★★★★★
()

за исключением узкой ниши машинного обучения

Во-первых, питоном там не обойтись, если весь стек технологии рассмотреть. Во-вторых, плевать на раздутую популярность в раздутой отрасли, если есть вполне конкретное (и изначально «родное») применение питона - автоматизация. Дофига скриптов в проде работают на Питоне, без всякого ИИ.

seiken ★★★★★
()

Скрипты писать на питоне вполне приятно и удобно, именно для этого он в общем-то и создавался.

Werenter ★★★
()
Ответ на: комментарий от krasnh
Вместо изучения Python, рекомендуется учить Microsoft PowerPoint, который является универсальным и популярным инструментом.

Нельзя не согласиться.

vvn_black ★★★★★
()

Скорее не соглашусь:

Python: Найдено 397 вакансий

Java: Найдено 294 вакансии

C#: Найдено 79 вакансий

C++: Найдено 127 вакансий

Любовь она приходит и уходит, а кушать хочется всегда. На hh пропорции примерно те же, но резюме питонистов больше на процентов пятьдесят, чем по другим языкам.

Ygor ★★★★★
()
Ответ на: комментарий от vvn_black

И тем не менее мс добавил питон в свой офис.

Ygor ★★★★★
()

Чотам, ИИ опять нагенерил стену текста на заданную тему?

thesis ★★★★★
()
Ответ на: комментарий от vvn_black

Microsoft Excel же! Теперь настоящий Питон - это только тот, который в Excel. :)

sanyo1234
()

У Python теперь есть Mojo, пилится версия без GIL - для самых истеричек. Но каждый год, кто-то пишет фантазии на тему. По ссылке не ходил.

th3m3 ★★★★★
()

Для тех, кто настойчиво пишет «по ссылке не ходил», скопировал краткое содержание из коммента выше:

Об использовании Питона в высшем образовании

    • Python является популярным языком программирования, но его универсальность и популярность могут быть проклятием.

    • Python используется в различных областях, включая веб-разработку, машинное обучение и науку.

    • Нейросети разрабатываются преимущественно на Python, но для профессионального занятия нейросетями требуется знание других дисциплин.

    • В науке использование Python минимально, и язык не имеет уникальных качеств, востребованных в этой области.

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

    • Зарплаты разработчиков на Python не имеют заметного отрыва от зарплат на других языках.

    • Вместо изучения Python, рекомендуется учить Microsoft PowerPoint, который является универсальным и популярным инструментом.
krasnh ★★★
()
Ответ на: комментарий от Werenter

именно для этого он в общем-то и создавался.

он создавался как учебный язык

FishHook
()
Ответ на: комментарий от th3m3

Мне тоже Питон не нравился, пока я не ознакомился с Golang. :)

Хоть они и достаточно разные, но оба используются в сфере DevOps.

sanyo1234
()
Ответ на: комментарий от krasnh

Если ещё более кратко, то статья говорит о том что питон не нужен вообще.

Aoka
()

Наброс

Как хорошо, сам признался.

eternal_sorrow ★★★★★
()

изучение Питона может скорее навредить (в особенности в качестве первого языка программирования).

4.2. Изучение ооп в питоне позволяет гораздо лучше понять ооп в плюсах.

Я хз че там с питоном в программировании вообще, по мне так основная проблема питона - попытка писать на нем большие проекты, динамическая типизация при этом здорово мешает. Но и это как то побеждают.

Но, отвественно заявляю - в научных скриптах питон просто незаменим. Нейросети тут непричем, питон это идеальный яп для верхнего управляющего слоя. Да, он медленный - но это не является проблемой, вещи которые должны считать быстро делаются на других яп. Зато на питоне очень высокая скорость разработки и очень низкий аорог вхождения.

AntonI ★★★★
()
Ответ на: комментарий от AntonI

изучение Питона может скорее навредить (в особенности в качестве первого языка программирования).
4.2

Это не 4.2, а жалкая попытка подражать Дейкстре и прочим cs-юмористам.

frob ★★★★★
()
Последнее исправление: frob (всего исправлений: 1)
Ответ на: комментарий от krasnh

Вместо изучения Python, рекомендуется учить Microsoft PowerPoint

Всё понятно с этим пациентом. У кого-то уже весеннее обострение раньше времени.

th3m3 ★★★★★
()

Скрипты писать на питоне вполне приятно и удобно, именно для этого он в общем-то и создавался.

Дофига скриптов в проде работают на Питоне.

Да, конечно. В посте это признаётся. (Впрочем, и не на Питоне тоже предостаточно скриптов.)

он создавался как учебный язык

Официальная история гласит, что Питон создавался как язык для скриптования, а не для обучения.

Python: Найдено 397 вакансий
Java: Найдено 294 вакансии
C#: Найдено 79 вакансий
C++: Найдено 127 вакансий

В перечне нет JS, по которому обычно вакансий ещё больше. В целом по миру Питон на втором месте с 20% вакансий, у Java 18%:
https://www.devjobsscanner.com/assets/blog/most-demanded-languages/ranking-to...

резюме питонистов больше на процентов пятьдесят, чем по другим языкам

Может быть, но какое это имеет значение для анализа карьерных перспектив?

У Python теперь есть Mojo, пилится версия без GIL
Да, и вроде JIT в CPython когда-нибудь появится.

Да, а ещё давно есть Jython и IronPython с компиляцией и без GIL. И Pyston тоже давно есть. Но это не совсем Питон, а малоиспользуемые модификации. CPython без GIL и с JIT (i) будет неизвестно когда, (ii) будет совсем другим, чем нынешний CPython, (iii) причинит массу страданий в течение переходного периода, который продлится 5-10 лет, (iv) будет конкурировать не с нынешними C#/Kotlin/C++/etc, а с их более развитыми за эти 5-10 лет версиями.

В посте описана ситуация с Питоном, который существует в реальности, а не в фантазиях.

В научных скриптах питон просто незаменим.

Почему? Прекрасно заменим, масса научных исследований делались и делаются без Питона, а те, которые делаются с Питоном, в подавляющем большинстве могли бы быть сделаны и без него.

ringill
() автор топика
Последнее исправление: ringill (всего исправлений: 1)

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

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

Адепты пихания пихона в вычисления просто забывают, что главное в вычислениях не знание пихона, а знание вычислений - поэтому им кажется что все легко и просто.

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

windows10 ★★★★★
()
Ответ на: комментарий от ringill

CPython без GIL и с JIT

Еще раз - низкая скорость питона и GIL не являются проблемой. Питон НЕ предназначен для задач где требуется высокая скорость работы - для этого есть другие ЯП. У питона есть своя ниша, в этой нише он практически идеален.

В научных скриптах питон просто незаменим.

Почему? Прекрасно заменим,

Вы, пардонте, какое то отношение к науке имеете? Если да, то какое? У питона есть два огромных плюса:

  1. низкий порог вхождения - его знают все.
  2. высокая скорость разработки

масса научных исследований делались и делаются без Питона

Когда то пользовались логарифмической линейкой и арифмометрами, да. Сейчас питон это стандарт де-факто для API многих научных пакетов.

те, которые делаются с Питоном, в подавляющем большинстве могли бы быть сделаны и без него.

Если бы у бабки были тестикулы, то она была бы дедкой.

AntonI ★★★★
()
Последнее исправление: AntonI (всего исправлений: 1)
Ответ на: комментарий от AntonI

У питона есть своя ниша, в этой нише он практически идеален.

Да, это нейросети. Во всех остальных нишах Питон или не подходит, или подходит, но по историческим причинам не является лидером. В любом случае, это не значит, что писать на Питоне нельзя. Можно, конечно.

низкий порог вхождения - его знают все.
высокая скорость разработки

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

Сейчас питон это стандарт де-факто для API многих научных пакетов.

Подавляющее большинство научных пакетов имеют API на C/C++, Фортране или собственных скриптовых языках. Да, есть и на Питоне, и наверное можно сказать, что их много, но в относительном выражении скорее мало.

ringill
() автор топика
Последнее исправление: ringill (всего исправлений: 1)

В numpy метод бисекций реализован в функции searchsorted, которая по неизвестным причинам работает медленнее

Ну так займись выяснением этих причин, а не набросами.

Одним из наиболее ярых защитников обратной совместимости является Линус Торвальдс

Это нонсенс.

ox55ff ★★★★★
()
Последнее исправление: ox55ff (всего исправлений: 1)

Простота использования + библиотеки работы с ms office, PDF, телеграмом, выгрузки данных, + простая работа по запросам с кучей публичных финансовых API + уже и простой интерес к нейросетям = идеальный язык для меня лично и мини-проектов в пару тысяч строк. Ну а производительность совсем не проблема.

Ах, да, помощь как раз и нейросетей в написание кода python для такого ламера как я - это превосходно

One ★★★★★
()
Последнее исправление: One (всего исправлений: 2)
Ответ на: комментарий от ringill

Да, это нейросети.

Не только. Вообще непонятно что Вы так привяздись к нейросетям… ни с чем другим что ли не работали?

Во всех остальных нишах Питон или не подходит, или подходит, но по историческим причинам не является лидером.

Не правда.

Не очень понятно, почему это является плюсами для научных исследований.

Что бы это понять, наверное надо самому позаниматься научными исследованиями? У Вас какой стаж (второй раз справшиваю)? У меня овер 25 лет.

В науку как таковую порог вхождения не очень низкий.

Это не значит что у ученого есть время и силы на изучение ЯП с высоким порогом. ЯП это инструмент, чем проще его освоить и использовать - тем больше времени останется на все остальное.

Скорость разработки в науке не является приоритетом.

Является.

Скорее, наука задаёт высокие стандарты для точности, формальности, воспроизводимости, быстродействия вычислений.

Есть туева хуча задач, где важна именно скорость разработки, а быстродействие стоит на последнем месте.

Подавляющее большинство научных пакетов имеют API на C/C++, Фортране или собственных скриптовых языках.

И на питоне. И для проведения расчетов конечными юзерами используется именно питоновское АПИ. Вы, простите, сколько лично научных программных комплексов написали? В скольких областях? Список огласите пожалуйста.

PS «На данный момент Indigo предоставляет унифицированный программный интерфейс для разработчиков на C/C++, Java, C# и Python.» - че то ржу…

AntonI ★★★★
()
Последнее исправление: AntonI (всего исправлений: 5)

Самый известный программный продукт ушедшего года — ChatGPT — написан на Питоне

да-да, старая история. Открываешь гитхаб pytorch - аж «py» в названии, чтобы любой дурак понял, - а там CMakeLists.txt и код на плюсах :))

Lrrr ★★★★★
()
Ответ на: комментарий от ox55ff

Одним из наиболее ярых защитников обратной совместимости является Линус Торвальдс

Это нонсенс.

Сам видел на ютубе, как он на какой-то конференции поливал помоями разрабов glibc – дескать, мы тут в ядре аккуратничаем, а они с лёгкостью ломают у себя то то, то это.

pr849
()
Ответ на: комментарий от AntonI

Еще раз - низкая скорость питона и GIL не являются проблемой. Питон НЕ предназначен для задач где требуется высокая скорость работы - для этого есть другие ЯП. У питона есть своя ниша, в этой нише он практически идеален.

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

низкий порог вхождения - его знают все.

высокая скорость разработки

Любой ЯП знают все. Базовый конструктив языка вместе с семантикой изучаются за сутки. Семантика и принципы во всех языках одни и те же. А с учетом популярности Ардуйни в качестве детских конструкторов (и я знаю сотни ребят-девочек в возрасте 10-14 лет) могу тебя разочаровать, Сишечку знают больше. Просто они не светятся в статистике и этого не знают.

Насчет высокой скорости разработки - врать не нужно. Конечно она выше чем в pure C, но на порядки ниже других языков, даже Пацкаля. Как проверяется ? Да элементарно, берешь гуманитария, даешь ему коды на пяти языках, где например выводится цикл от 0 до 100 и просишь модифицировать программу, например добавить второй цикл. Удивишься насколько убог Пихон для понимания. Более того, из-за этой самой угребищной семантики, разработка на нем производится эмпирическим методом проб-ошибок-изменений-отваливаний-перезапуском. В то время как на других языках ты можешь написать код мелом на доске, и дебажить его там же.

Когда то пользовались логарифмической линейкой и арифмометрами, да. Сейчас питон это стандарт де-факто для API многих научных пакетов.

Стандарт де-факто - API, и ты бы это знал если бы имел отношение к вычислениям, или хотя бы к медицине. Эти API описаны в документации через биндинг, и пихон там только один из множества ЯП.

Если бы у бабки были тестикулы, то она была бы дедкой.

А если бы пихон умел в нормальный вывод ошибок, как пых или хотя бы сишечка - был бы полноценным ЯП.

windows10 ★★★★★
()
Последнее исправление: windows10 (всего исправлений: 2)

В чем вопрос то? Если честно все это бесконечное блеяние про Пайтон утомило ещё пару лет назад

saibogo ★★★★
()
Ответ на: комментарий от windows10

я знаю сотни ребят-девочек в возрасте 10-14 лет

Тааак.

thesis ★★★★★
()
Ответ на: комментарий от windows10

как полноценный ЯП его стали оценивать когда он захотел прыгнуть выше головы

После появления инструментов для контроля типизации питон вполне себе нормально работает даже для больших пректов - хотя изначально он для этого не предназначался.

Насчет высокой скорости разработки - врать не нужно. Конечно она выше чем в pure C, но на порядки ниже других языков, даже Пацкаля.

Ну так и не врите, бггг.

ты бы это знал если бы имел отношение к вычислениям

Я имею, Вы - очевидно нет.

А если бы пихон умел в нормальный вывод ошибок, как пых или хотя бы сишечка

Дяденька, да Вы мало того что хамло, так еще и не хера не понимаете в обсуждаемом вопросе… зачем тогда пишете? С каких пор сишечка без танцев с бубном/дебаггером умеет показывать стек например? Заканчивайте уже позориться.

AntonI ★★★★
()
Последнее исправление: AntonI (всего исправлений: 3)
Ответ на: комментарий от saibogo

В чем вопрос то? Если честно все это бесконечное блеяние про Пайтон утомило ещё пару лет назад

Утомило еще в середине нулевых, когда люди с низким интеллектом поперли в профессию. Возможно, кстати, петухон и послужил этаким катализатором данного явления.

naushniki
()

Ты пришёл сюда пиарить свой бложик, я тебя правильно понял? В следующий раз, снесу с -20 без предупреждения. Хочешь обсудить или выразить мнение — пиши статью в соответсвующий раздел. Тащить сюда копипасту со своего «уютного бложика» не нужно.

ilinsky ★★★★★
()
Ответ на: комментарий от ilinsky

Предлагаю компромис: вместо -20 когда-нибудь потом, по -7 за каждый комментарий включая стартовый уже сейчас.

frob ★★★★★
()
Ответ на: комментарий от Lrrr

И? Ядро на плюсх/куде/фортране, пользовательский APİ на пайтоне. В чём проблема?

thunar ★★★★★
()

Я тоже считаю, что питон не нужен. Для работы с данными есть б-гоугодный R, а для всего остального Perl.

Smacker ★★★★
()
Ответ на: комментарий от vvn_black

Вместо изучения Python, рекомендуется учить Microsoft PowerPoint, который является универсальным и популярным инструментом.

Вот это поворот!

Xintrea ★★★★★
()

Наброс про Питон

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

u5er
()
Ответ на: комментарий от u5er

в новых версиях пайтона ломается совместимость со старыми

Подробности давайте. Что сломали в 3.12 по сравнению, ну например, с 3.7? Т.е. за пять лет, что нужно переписать, и почему нельзя продолжать использовать 3.7?

vvn_black ★★★★★
()
Ответ на: комментарий от vvn_black

Я не знаю, что сломали конкретно в этих версиях, но когда я сидел на дженту, то у меня был момент, когда пайтонов в системе было установленно одновременно несколько: 2.7, 3.6, 3.7, 3.8, 3.9. Я полагаю, что этому есть более веская причина, чем «мейнтейнеры неосиляторы».

u5er
()
Ответ на: комментарий от u5er

В текущей Убунту ЛТС установлен только питон 3.10. У последней Федоре питон 2.7 и 3.12. Т.е., грубо говоря, в популярных дистрибутивах в лучшем случае будет только последняя версия и 2.7 (между которыми ломали совместимость).

То что у вас там когда-то там было не имеет никакого значения. Особенно если из аргументов только «НУ НЕ МОЖЕТ ЖЕ ЭТО БЫТЬ ПРОСТО ТАК!».

MoldAndLimeHoney
()
Последнее исправление: MoldAndLimeHoney (всего исправлений: 1)
Ответ на: комментарий от u5er

Не заню, как там в дженте, но вооюще, выглядит вполне разумным не удалять старые версии интерпретаторов при обновлении системы. Будь это питон, джава, С# или что-то еще.

FishHook
()
Ответ на: комментарий от MoldAndLimeHoney

Особенно если из аргументов только «НУ НЕ МОЖЕТ ЖЕ ЭТО БЫТЬ ПРОСТО ТАК!».

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

u5er
()
Ответ на: комментарий от u5er

Пайтон - это единственный яп, где приходилось держать 100500 версий интерпретаторов.

а вы ни разу не заглядывали, сколько версий .NET сордержится в винде?

версией баша, тикля, gcc, клэнга, пыха, перла и т.д

Это классный конечно подход - собрать в одну кучу gcc, клэнг и пхп

баша, перла а когда там последний раз новые мажорные версии выходили?

пыха

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

FishHook
()
Последнее исправление: FishHook (всего исправлений: 1)
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)