@@mikep541 слево от смотрящего есть светильник, слево от светильника вдоль стенки шкафчика на полке стоит кнопка, между ними лежит какойто пульт или тетрис
Я начинал свой путь в программисты с JavaScript. Мой случай не уникален, но это как раз тот случай, когда не человек выбирает ЯП, а ЯП выбирает человека))) Мне просто попалась в руки книга "JavaScript для детей", и я начал по ней учиться. Сначала ничего не понимал, но спустя чуть больше чем год я получил первый оффер в компанию :) И вот, проработав немного как Node.js разработчик, я столкнулся с Python. К Python у меня максимально тёплое отношение. Для меня этот язык приятный, конечно не совсем с привычным синтаксисом после JS, тем не менее это замечательный язык. Одно время хотел перейти на него, чтобы писать бек энд на нём, но т.к. у меня опыт в коммерции в основном JS\TS, то всё, что мне предлагали это было интернатура и Джуниор позиция, а я не мог себе позволить "проседать" в зп, при наличии семьи. Поэтому до сих пор так и не поработал с ним в коммерции, хотя все пэт проекты, все проекты вне работы для себя, я обычно пишу на нём:)
Я в шоке как можно 10 лет писать на одном языке и так его и не узнать, вы как так живёте то вообще? У меня дети которых к ЕГЭ готовлю больше вашего про питон расскажут, да и про плюсы тоже
А какой смысл зная JS писать на питоне бэкэнд (при живых node, deno, bun и т.п.) !? Чтобы все тормозило и чтобы все время переключаться с языка на язык и не писать изоморфные JS приложения?
@@tvortsa почему же всё должно тормозить? По Вашему, если в синтетических тестах Python медленнее, то в реальной жизни он настолько медленный, что те, кто им пользуются, мягко говоря не умные люди или как? В реальном мире, когда дело не касается веб разработки, а не десктоп и мобайл, так же есть такие ограничения как: работа сети, работа базы данных, нагрузка на сервера, мощность серверов и т.д. Если их учесть, то по факту, разницы между приложениями на PHP и Java пользователь разницы не увидит ( если конечно, это не касается мощной обработки данных, которые происходят на сервере после запроса), ибо разница в долисекундах будет минимальной. Плюс, если человек не умеет писать высоконагрузочные системы, его не спасёт ни Go, ни Java. А насчёт почему Python? Ну скажем так, какой-то период времени, когда я следил за вакансиями, проекты, которые писались на Python, для меня были более интересны. В то время на Node.js предлагалось писать проекты типа: микрозаймы, криптокошельки и гемблинг. А мне это не интересно. Поэтому смотрел на то, что происходит на рынке и с другими направлениями. И ничего плохого не вижу, когда человек переходит с одной технологии на другую. Это инструмент для решения задач бизнеса, а не вероисповедание) ИМХО
От души 😂 Особенно развеселил момент о боли фрилансера, когда заказчик начинает выкручивать вам руки и с каждым днем меняет тз 😂 Как то так сложилось, к программированию пришёл с сайтов для мобильных телефонов wap версии, подвернулся именно php и с головой затянул меня, это было в 2007 году (17лет в php 🤔), много чего написал, 90 процентов из этого уже не активно в сети (жаль даже) Недавно посмотрел интервью Дурова, где он рассказал о своих проектах и что бэк у него на пайтоне, хотя вк он писал на php. Что-то так вдохновило меня посмотреть пайтон и он мне зашёл , совершенно понятный синтаксис, локоничен круто. Правда эта точка с запятой не знаю как победит желание оканчивать ею 😂 Плюс решил залезть в java и вообще писать что либо для андроид 😮 Удивило что можно в андроид студии просто расставлять объекты графически -это так просто.... Я 17 лет не интересовался ничем кроме php, sql и языки разметки, сам в шоке...
Сейчас уже сложной найти работу в вебе на синхронном питоне. FastAPI сильно увеличил применяемость асинхрощины в питоне. И случилось это уже леn 5 как. Производительность питона регулярно улучшается и во многих задачах, для которых он регулярно используется, уже не сильно уступает плюсам или JS. Асинхронность питона тоже постоянно допиливают, так как видят в этом потребность. И в ближайшем обновлении 3.13 планируется сильно ускорить работу JIT компилятора. Питон уже добрался даже до микроконтроллеров - специальная сборка MicroPython для работы на платах Python Circute - аналог Ардуино. Но конечно это все только для пет проектов, а не промышленной разработки. Хотя кто знает во что это может вырасти. Так что в след за ростом популярности язык тоже очень сильно растет и становится лучше.
"Производительность питона регулярно улучшается и во многих задачах, для которых он регулярно используется, уже не сильно уступает плюсам" - для числодробилок ситуация наипечальнейшая, если сравнивать нативный питоновский код и плюсы.
Решал подобную задачу по обработке видеопотоков с помощью нейросети. Первое решение написанное исключительно на python несколько лет отработало на проде, хотя и справлялось с нагрузкой в несколько сотен потоков, но потребляло кучу памяти и нещадно грузило процессор) Сейчас реализовал сервис получения и обработки кадров на плюсах, день и ночь просто, памяти не ест, проц не бьётся в полку, производительность решения возросла. В общем, для прототипирования и скриптования простой логики python хорош, для hi-load лучше что то компилируемое)
как оно могло быть написанно исключительно на питоне. быть такого не может, вы там с нуля gradient descent с матричными операциями что ли имплементировали. почти любой deep learning фреймворк из популярных имеет ядро на плюсах. и обертки на питоне. модели вангую вы до сих пор готовите на питоне. не поверю, что у вас там тренировка на плюсах. и вот в этой доменной области заслуга не столько языка, сколько математиков-программистов , которые за вас самую сложную работу и сделали. попробуйте с нуля сделать подобную архитектуру модели плюс тренировку модели, плюс быстрый инференс(где нужно быстро выполнять матричные операции) на плюсах и скажите сколько это займет времени написать(без использования всех этих lapack/openblas). но то что в вашем примере безусловно говорит не в пользу питона, это мультипоточность/мультипроцессорность при наличии огромной постоянно нагрузки. ну по моему это и так все известно. тут нет никакой новости, что питон один из худших языков в concurrent programming. а матрички считать, ну разницы особой нет, что вы в плюсах torch вызовите . что в питоне, ну наверное с небольшим оверхедом за счет интеропа с питоном. но все операции будут выполнять вообще одним и тем же скомплированным ядром (что там будет огромный файл libtorch.so, что там. про CV библиотечки так тем более, нет ни одной чисто питон библиотеки, которая в индустрии используется)
@@TheDelwish Доброго времени суток! Ни кто и не говорил про реализацию на чистом Python, особенно того, что касается матриц, там, естественно, везде сишные модули, будь то numpy, pytorch, или даже Opencv. Речь шла о том что "гонять" эти самые матрицы изображений между процессами приходилось при помощи стандартных библиотек python, типа multiprocesing queue или shared memory, что роняет производительность и прочее. Что касается разработки нейросетевых решений, проверки гипотез, обучения нейросеток, скрипты обработки датасетаов, это все python, без него не куда, отличное быстрое прототипирование. Ну и на проде python отличный инструмент для скриптовой обвязки тех же сишных модулей
@@DenisLeadERTV если только руби, js и php. Но не факт что Си++, АСМ, раст. Помимо освоения языка надо еще осваивать оценку сложности алгоритма, паттерны и принципы, а это дело уже не малое. Прочитайте Чистый код, осознаете, поймете и сможете использовать, считайте навыки точно есть
Не люблю Питон исключительно из-за того, что сейчас его все любят и все на нем пишут. У меня дух противоречия включился. Но мне можно - я не программист, а так, балуюсь понемногу
В первый раз увидел код на пайтоне когда в начале 2000х ковырялся в игре Blade Of Darkness. Был удивлен, увидев кучу игровой логики в виде легко читаемых скриптов.
Очень нравится этот язык. Учил его примерно 2 месяца, сейчас забросил из за учебы, но не перестал писать. Самое удивительное, это то, что мой первый проект это не какой-то калькулятор или тупо переписанный код, а действительно полезный тг бот, который я загрузил на сервер и который приносит мне небольшую денежку. Летом хочу полностью переписать своего бота под айогрм, научится парсингу и написать простенький сайт для рекламы моего бота. Давно мечтал быть "бизнесменом", косвенно моя мечта сбылась, но я на планирую на этом останавливаться. Если мой старый бот в несезон приносил мне достаточно хорошую прибыль (как для 11 классника), то новый бот, надеюсь, увеличит эту прибыль в разы.
@@megafalos850 дурачат людей, которые никогда не нюхали кодинг. Им говорят что все легко и продают курсы). Оно то и правда легко, если человек настроен на алгоритмы. Потом люди доходят до ООП и охреневают. Но это уже другая история А так, то конечно Леше больше спасибо за познавательное видео. Никакого сарказма. правде большое спасибо🔥🔥🔥
Но это чистая правда. Для человека, который решил на закате молодости войти в айти, Питон может показаться сложноватым, но если ему показать вместо питона плюсы, то он сразу бросит идеи "вайтишника" и убежит на стройку или завод. Поэтому, да, Питон - очень простой. Как и Луа. И как любой другой динамически типизированный скриптовый язык
@@akaikangaroo Ну, плюсы и самые сложные в освоении. Если что-то проще плюсов, это не значит, что это очень простое. Речь шла о разных возможностях питона, о которых многие и не знают. Большинство из использующих язык (даже не новичков) никогда не писало генераторной функции, а о каких-нибудь метаклассах и асинхронных контекстных менеджерах и не подозревает. Я не думаю, что это очень просто, там есть что разобрать. Асинхронщина точно не тривиальна. Но это не только Python касается, хотя она здесь довольно грамотно сделана. Другими словами, Python прост, когда его используют только как скриптовый язык, но такие задачи и не требуют сложных инструментов языка. То есть, автор коммента по сути прав.
Леша, здравствуйте. Спасибо за ваши видео. Если будет возможность, запишите пожалуйста видео о том, какие книги вы бы посоветовали тем, кто решил изучать программирование. Начиная от основ информатики, работы с алгоритмами и заканчивая книгами по языкам с которыми вы работали. Спасибо.
Простота питона зависит от того кто код пишет. Можно такую наркоманию там развести что устанешь разбираться. Столько сахара что диабет может развиться. Мне кажется Go как раз как антидот после питона. Но для питониста он и правда поначалу сильно непонятный
Только это надо или быть лидом и заставлять других писать код как ты считаешь правильным, или искать такую команду, детально расспрашивая на собеседовании про их практики. С го тоже можно наколбасить ещё тот код, но возможностей для этого поменьше.
@@olegssh6452 линтер не решение проблем, если человек пишет методы по 300строк с кучей аргументов, не соблюдает принципы. И что вообще значит "писать код как ты считаешь правильным"? Есть принципы (SOLID, DRY, KISS, YAGNI), метрики кода, паттерны! Есть книги - Чистый код, Чистая архитектура и т.д.. Нет такого "считаешь правильным"! Соблюдаешь правила и все ок! А линтер это про то, как скобки у блоков кода поставлены, как оформлены комментарии
Спасибо за видео, очень легко слушается и очень понятно все объясняется до такой степени что можешь ухватить суть идеи даже если не особо разбираешься в программировании.
Мне очень понравилось в питоне кроме упомянутой простоты работы со строками встроенное снятие ограничений с размера числа. Я не встречал другого языка, в котором число может быть любого размера - вообще без ограничений. Для своего интереса просто считал задачку, в которой мне нужно было возвести числа в степень от 1 до 100.000 - и в питоне для этого вообще никаких дополнительных действий/структур данных не понадобилось - просто прямая логика в две строчки. Поэтому наверное он так популярен среди непрограммистов и околопрограммистов.
А я только изучаю Си, вот эта проверка на clang-format и valgrind помогают очень сильно. В принципе нормальный язык. Скоро (через год) перейду на плюсы.
Очень интересный опыт, спасибо что поделился, Алексей! Что до аннотации типов - надо, надо переходить! Категорически надо! Если старую кодовую базу переносить долго и может быть сложно (как минимум, в плане времени) покрыть аннотациями, новый код надо аннотировать полностью! Совершенно зрелый механизм, и если не с mypy, то можно начать (и в принципе закончирть) pyright'ом. Я придерживаюсь такого правила - аннотации типов не пишу только в реально коротких скриптах питонячих. Если система хоть сколько усложняется или планируется усложняться / расширяться (>1 модуля) - не аннотировать типы -- преступление
почему-то мало кто упоминает про Cython, очень хорошо подходит под высокопроизводительные задачи это код в стиле Python *.pyx со специфическими операторами от языка С, который компилируется в C и подключается к обычному пайтону как модуль
Прям очень знакомая история была и у меня. Делал я сайты на php и когда понадобился скрипт автоматизации (для свои нужд - генерировать образы DVD-дисков для резервного копирования фотографий) я написал на PHP, но в этот момент понял, что PHP не для этого. Поэтому следующий проект делал на python. Языка я не знал, но понял, что он для этого идеален. И не ошибся. Более того, до сих пор пересматриваю исходник. и не вижу к чему придраться. Там скрипт поднимал и останавливал виртуальные машины, подключался к их сетевым дискам проверял внешней программой контрольные суммы и так далее. Про это производительность была совершенно не принципиальна (большую часть времени скрипт ждал, когда поднимется виртуалка). Но потом я решил посчитать и контрольные суммы не внешней программой (написанной на C), а сделать функцию на python. Я перевел код с C на python попутно существенно оптимизируя его и что же? Замедлилось в 40(!) раз. В общем, битовая арифметика - не для python. (я все равно выложил на github результат, жалко было потраченных усилий, но сам им не пользуюсь) Потом было еще куча проектов на python, но на одном я сломался. Проект 10000 строк исходного кода - синхронизация файлов между папками со всякими проверками этих самых файлов. Была накручена архитектура с потоками и тут выяснилось, что GIL, будь он неладен, приводит к затыкам системы. При чем это не вопрос производительности - она в этом проекте не существенна (проверки во внешних системах занимали гораздо больше времени). Но в совершенно случайные моменты система просто останавливала потоки. Попробовал перейти на процессы и да, как и в этом видео - передавать данные между процессами оказалось гораздо сложнее. Итог - переписал все на Go, сохранив ключевые идеи архитектуры и все прекрасно заработало. Всякие race condition Go умеет отслеживать сам. (именно в этом виде я выложил проект на github) Так что теперь моя любовь - Go. У Go беда с программами с UI. Так что теперь смотрю в сторону Dart...
питон для меня это как дополнительная операционная система, с фри программами в библиотеках, подсел на анализ данных для своей организации, работаю коммерческим директором. через апи для chatgpt вообще бомба.
11:50 это да. Просто посмотрите исходники того же fastapi или litestar. Типизация, дженерики... изначально язык обманчиво прост. Книга "Python к вершинам мастерства" 900 страниц весом в полтора кило :)
Меня каждый раз корёжит, когда с каждого утюга раздаётся "питон простой". Да, для задач написания скриптов непрограммистами он достаточно прост (хоть и с ньюансами). Впрочем, как и любой другой скриптовый язык. Но для области профессиональной разработки - это зрелый и довольно сложный язык, заметно сложнее тех же джавы/C#. Про гошку и вовсе говорить нечего.
@@redneck_prm5429 Ээээ окей. Ну допустим, что питухон сложнее чем решетка или жаба (хотя только от этого смех пробирает), предположим что трава хорошая и драггер честный😂 В чем он сложнее?))) Это ж недохрень из костылей))) Сложность штука относительная. Сишка вон простая, но подавляющее большинство питухонистов от нее будут слезки пускать и веревки намыливать. С гошкой же такое поделие как питухон лучше вообще не сравнивать - это небо и земля. Да и такие понятия как «профессиональная разработка» и питухон ни разу не совместимые. Что-нибудь по быстрому наваять - да. Подкостылить - да. В крупный проект - нет, любой architect подтвердит. А если и да - ну штош, обнять и плакать🤣
Пишу на python лет шесть, в этом году закончил универ и устроился на свою первую работу на этом языке. За время обучения перепробовал c, c++, java, посмотрел как работают Fortran и Assembler, а первым моим школьным языком был pascal. В итоге так и не ушел с питона из-за его простоты, а остался из-за сложности и глубины)
Спасибо большое за информацию. Очень интересно. Моя история с пайтон: перед поступлением на специальность программиста, я начал искать с чего начать, какой язык выбрать. Я тогда вообще был 100% далек от темы мира языков и программирования в целом. И вот интернет выдал популярность Пайтон. Я скачал книжку (автор Эрик Мэттенс, по моему так). И все так интересно было, как новичку. В общем пришло время поступать и я поступил с очень теплыми и приятными ощущениями от этой книжки и языка в целом (понятно что я толком так ничего не понял, но не страшно). И вот после курса языка пайтон, точнее от преподавателя и метода преподавания, я полностью охладел к пайтон, всякий интерес пропал напрочь. Теперь более влекут меня JS и все что с ним связано, и с fullstack MERN в целом.
JS грязный язык. Парадигмы программирования не доработаны (например, в ООП у многих ЯП нет множественного наследования, но есть альтернативы вроде миксинов/трейтов и интерфейсы, в JS нет и этого, просто пародия на ООП), язык часто используют, обернув в какую нить новую абстракцию, формальный язык типа CoffeeScript или TypeScript, это все подтверждает его убогость, зачем тогда сам язык, если на нем не могут сразу адекватно описывать свои требования
@@КонстантинБелоглазов-р1з ну ничего страшного. Работают как-то же на нем люди😉 тем более ООР не всегда нужно. Да и всегда под рукой есть java на всякий случай.
А я давно подписан на канал. Здесь всегда так, спокойно и по существу. Плохо только, что редко стали появляться ролики автора на ютюбе. Причина понятна, но очень грустно😮.
Лёша напиши туториал по инвентарю для игры на GODOT на пайтоне - не буть гадом 😁Йа на киберфоруме выложил код в разделе игровые движки, там не понимаю как итем уничтожить из ячейки и сложить его если однотипный кидаем в ячейку. Drad and Drop написан осталось токо это
Питон простой, когда ты уже понимаешь что отвечает за что. Специально так сформулировал ) Но если ты впервые окунулся в программирование, то Питон вызовет такой же разрыв мозга или задницы (кому что) как и Джаваскрипт или C#. Когда уже понимаешь логику и знаешь команды, то написание кода в целом не вызывает проблем. На Питоне автоматизировал для своей работы кучу процессов, благодаря чему сэкономил и заработал серьезную сумму денег. Программистом себя не считаю, у меня рекламное агентство. Но за автоматизацией - будущее
Не соглашусь. По крайней мере с JS разрыв чего либо более вероятен, когда узнаёшь, что можно вполне официально и легально делить на 0, а ещё многие типы данных или отсутствие данных пустые строка, список преобразуются в число. При этом типом NaN является number. И это я рассказал только поверхностное знакомство. Но этого хватает, чтобы сильно задуматься: а хочется ли погружаться глубже в это
Всем доброго времени суток, подскажите пожалуйста где учить Python, я имею ввиду курс, но бесплатный, мне просто нужно выучить язык, буду признателен за ответ!
Алексей, вот хотелось бы Ваш взгляд на язык Julia - и по поводу скорости работы питона. Почему - я беру питоновский модуль requests и получаю 300 rps - беру java (препробовал кучу http клиентов) и получаю 25 rps (использую тот же самый сервис) - т.е. почему питоновский requests работает от 3 до 12 раз быстрее джавовского?
в питоне оптизация автоматически вшита в модуль, а на жабе нужно оптимизировать все самому, а на плюсах еще нужно будет постоянно вовремя очищать память
@@ТамерланКабдолла-б5ц я думаю, потому, что многие многие куски питона под капотом на самом деле реализованы на сях, и причем, очень грамотными людьми.
я из за этого просто не воспринимаю такие языки. Натерпелся от простыней в Foxpro , когда понял что php божественен во всех отношениях, и новомодный питон скоро умрет.
Да, все библиотеки на python, которые есть "из коробки" написаны на C. Это - numpy, math, datetime, itertools, random, os и ещё десятки других. Но непонятно, если допустим я буду извлекать квадратный корень из числа через Python, это бы выглядело так: 100 ** 1/2. С модулем math это бы было так math.sqrt(100). Вопрос, что бы выполнилось быстрее?
На Python это бы выглядело так >>100 ** (1 / 2) Всё таки про приоритеты операторов не забываем. Ну или >>100 ** 0.5. А вот с замером скорости всё получилось несколько неожиданнее и интереснее (правда тестировал это на python 3.10). Результат получился такой, что приведённая первая запись (но только со скобочками) быстрее операции math.sqrt() в 3 раза о_О
@@arthurkuznetsov618 Интересно, тогда в чём смысл использования простых модулей по типу math. Я ещё могу представить необходимость os, sqlite и многих других библиотек, но тогда теряется смысл остальных, которые можно запросто воспроизвести и не потерять скорость в процессе использования их функционала.
@@benpuls9414 math.sqrt сделали для совместимости со всеми обернутыми C функциями. Оператор ** это более продвинутая функция которая умеет работать с комплексными числами, неограниченными числами и тому прочее. То есть предпочтительнее в Python коде использовать оператор **.
мне питон зашел, не знаю как "чисто" я на нем писал, но учитывая, что у меня 4 года коммерческого опыта на js/ts/react, то достаточно быстро врубился что и как, простенький бекенд накидать труда не составило, насчет более сложных штук не углублялся еще)
У меня для сисадминских дел так и не прижился. В своё время работал в конторе где всё решалось на перле. В итоге потыкал питон и лично у меня оказалось что на перле в разы быстрее, особенно если находу надо чтото менять, хотя изначально надо затратить больше времени для изучения.
У фласка есть обёртка вокруг алхимии Flask-SQLAlchemy, она под капотом сама управляет сессией. Если для простого сайта это достоинство, то для более сложных сайтов, в которых нужно адекватное управление транзакциями - это очевидный недостаток. По этому уже давно перешёл с Flask-SQLAlchemy на обычную алхимию
@@Feycot Слово "микрофреймворк" всех вводит в заблуждение. То что flask это микрофреймворк ни значит, что его нельзя обвешать всяческими готовыми батарейками. Реддит, нетфликс и патреон написаны на фласке так то
@@VaeV1ct1s ну можно и обвешать, а можно взять взять фреймворк, в котором есть все необходимое. Конечно это условное разделение, но есть микрофреймворки типа Фласки/slim/express, где базовый минимум, а есть Laravel/Spring/Rails где есть все необходимое для т.н. fullstack приложений
@@Feycot верно, можно и так и так. Только разница в том, что фреймворки в которых всё есть из коробки, за счёт этой нагруженности имеют ненужный оверхед
Для небольших проектов, особенно если с нейронками - он идеален. Но что-то большое я на нем писать бы не стал. Тормоза, плюс поймаешь проблем с отсутствием строгой типизации.
А я в последнеее время помимо C++ использую в основном Cython - это некоторый компромисс между C и Python. Есть типизация и компиляция, при этом сохраняется полная совместимость с Python и всеми его библиотеками. Даже несколько обучающих видео по нему записал, они у меня на канале опубликованы.
@@RaptorT1V Скажем так - полностью совместимый. Можно писать как в документации по Python, и всё будет работать. Но есть и дополнения, например, можно объявить тип переменной ("cdef int i"), аргументов и результата функции ("cdef int foo(double bar)"), определять перечисления и структуры как в C ("cdef enum", "cdef struct") и тому подобное - это повлияет на компиляцию и, соответственно, быстродействие и компактность кода. Ну и дополнительтные фишки взаимодействия с сишными библиотеками ("extern", "cimport" и т.п.) В общем, очень жизнеспособный гибрид.
@@RaptorT1V Сам удивляюсь. Прекрасный инструмент, причём далеко не новый, о котором почему-то мало говорят. Хотя он способен прекратить всякое нытьё о производительности Python.
Хочется добавить, в классах есть декоратор @property, который как-то имитирует ту самую недоступность атрибутов извне Насчёт того что простота именно кажущаяся - 100% правы)
Очень полезная информация для тех, кто думает: стоит ли изучить Python или лучше продолжать изучать и совершенствоваться в Java. Хотелось бы узнать Ваше мнение.
Большое спасибо 🙏 нереальное спасибо 🙏 Благодарочка !!!! Спасибо что делитесь самым главным Опытом , вы бессмертно богатый человек рась можете это дать другим и нечего не требовать в замен )(ps) плюс очень ламповый формат и ясность глубины задницы которая будет мучить мой мозг до конца моих дней ❤❤❤😂😂
Очень хорошо рассказывает,приятно слышать. С фронтенд я согласен, именно в плане динамических элементов. Но мобильная разработка не согласен. Фреймворк kivy, достаточно большой и с хорошей поддержкой. С возможностью сборки под разные мобильные ос. Также и разработку игр не упомянул,сам баловался с некоторыми библиотеками(что имеют под собой не знаю, врать не буду). Если не ошибаюсь,популярная и старая стратегия eve online написано на python (понятно в соединении с чем -то). А веб-фреймворки стали развиваться по причине постепенной гибели php,laravel и codeigniter. Django на сегодня очень гибкий и удобный,хотя flask быстрее. Скорость абсолютно согласен и компенсируется всё гибкостью .
А на пайтон еще не придумали какой-нибудь «TypePyton» по аналогии с TypeScript над JS? TS изучается как родной после языков со статической/строгой типизацией
Хороший язык если использовать аннотации типов или быстро написать прототип. Ещё нет проблем со сборкой. Проблема в скорости. Если много данных или надо быстро результат, то поседеешь пока даже 100Gb файл прочитаешь. Если платить за облако, то больше CPU - больше денег. Проблема скорости не только в движке, но и в постоянных аллокациях и непрямом доступе. Если на плюсах так писать - тоже медленно будет.
Первый канал, о программировании, на который я когда-то подписался. Начинал с питона, потом джава... (щас закидают шапками про русское написание 😂) Но в итоге я не питонист и не джавист, а простой 1Сник 🤷🏻♂️ В РФ сейчас стартовать можно только в 1С или в фронтовые ЯП.
Товарищи программисты Хочу начать изучать эту сферу как свою будущую деятельность. Если без особого контекста то я имел небольшой опыт в создании скромных программ и мне показалось это привлекательным Прошу вас подсказать какие направления и прилегающие к нему языки програмирования стоит выбирать в начале пути(я слышал что с некоторых языков программирования не стоит начинать и вообщем то не хочу "промахнуться") Также я собираюсь поступать в ВУЗ, хочу переехать и своего города в другой(пока буду учиться точно) и необязательно в столицу и в Питер. Возможно эта информация что-то да даст тому кто решит ответить И если не секрет то скажите сколько лет вы имеете опыт в этой сфере, будет просто очень хорошее лично для меня дополнение вашего ответа Заранее большое спасибо
Я выбрал Python для изучения потому, что он очень популярный, а значит много проектов пишут на нём и этим проектам нужны будут программисты, а во вторых я выбрал этот ЯП, потому что его можно быстро изучить. Хотя я до этого уже был знаком на начальном уровне с С и Pascal. Сейчас я доучиваюсь,как раз разбираюсь с Django. Проблема в том, что почти нет работы на Python для людей без опыта, чаще всего я встречаю вакансии по Java и 1С. Было бы здорово, если бы как-нибудь вы сказали в своих видео что-нибудь об этом и о подобном. Лёша Корепанов, вы классно всё рассказываете,я в восторге, всё вполне доступным языком.
Интересно, а есть ли какие преимущества Python перед современным C++? Возврат из функции нескольких значений - std::tuple + structure binging, вместо list comprehension, map, reduce - std::ranges, вместо генераторов, асинхронщины - stackless coroutines. Если лень писать явно типы, то почти всегда можно использовать auto, decltype(auto).
@@АнатолийИ-ю5якак же держатся питонисты за эту нелепую сказочку про "простоту разработки и поддержки". Никакие объективные данные эту сказочку не поддерживают, но питонисты все равно веруют.
Ну питон изначально под Datascience разрабатывался. А насчёт простоты изучения, ну например, стоматолог или повар если начнёт изучать питон с нуля, он прикурит. Но мне было проще так как ранее в 2000-х писал на делфи и visual basic и как-бы имею представление по построению и структуре кода, что куда и как, кто где лезет и хранит объекты в памяти. А питон хорош еще тем, что есть куча уже готовых библиотек, тот-же Bluetooth модули давно есть. Очень удобно например сделать автоматизацию работы теплицы с открытием заслонок на сервоприводах, автополив огурцов и помидоров, контроль температуры, расписание и т.д. это очень интересно, + ардуино, так вообще что угодно слепить можно)
самый топовый совет для меня прозвучал в ироничном ролике про изучение TS и явился для меня озарением -- я послал в жопу изучение и просто стал делать, закрывая попутно дыры незнания) спасибо за совет)
Ооо, поделитесь пожалуйста поподробнее? Вы изучаете Python ? Что конкретно вы начали делать после этого озарения? Я такой человек, что очень плохо учусь через теорию, лучше всего я обучаюсь на практике, особенно когда показывают более конкретный контекст (например в проекте) использования какой-либо темы. А ещё я вообще не могу долго сидеть и мучать мозги над чем-то. Мне проще побыстрее посмотреть готовое решение и в голове сделать "отметочку", что я вернусь к этому решению когда пригодится, наизусть знать всё не надо.
Ребята,можете подсказать,пожалуйста,хочу выучить питон параллельно с основной работой,не связанной с it,но желание бешено имею,прихожу домой и сажусь заниматься,совмещая с семьей,покупать курс на скилкоробке дорого и не уверен что знания дадут, но не могу структурировать свое обучение,с чего начать по шагам,я прочитал книгу байт оф пайтон и начал читать грокаем алгоритмы и параллельно практикуюсь на ботах в тг(аиограм), что нужно знать чтобы выйти на первое собеседование, благодарю за обратную связь
Недавно обратился к python после многих лет работы на C# для Unity, очень кайфанул от его легкости, но отсутствие строгой типизации часто приводило к выстрелам в ногу, особенно с непривычки)
Вы так и не стали пайтон разработчиком:) Настоящий питонщик, всё напишет на питоне, даже ОС, если что питон можно компилировать, например, используя mypyc. И для мобильной разработки есть Kivy, Flet, PyQt, было бы желание можно даже pygame заюзать. P.S.: Я шучу, и понимаю, что для каждой задачи лучше подходит свой инструмент, но говорить, что на Python нельзя что-то сделать, это всё таки опрометчиво немного.
Спасибо за видео. Моё мнение такое, что Python хорош для прототипирования, но не для полновесного прода (хотя с другой стороны его брат по разуму Ruby вполне себе успешно используется в таких серьёзных вещах как Gitlab, например). Аналогичная история случилась и с Docker, кстати, который тоже не для продакшна разрабатывался, но ввиду его простоты освоения, его стали пихать везде, куда не лень. Но скорее всего я ошибаюсь и популярность пайтона и закалит его, сделав промышленным стандартом. Kotlin вот вполне себе успешно повзрослел таким образом. И Rust, мне видится, тоже ждёт та же участь.
Python идеально подходит для автоматизации, внедрения нейросетей и средненагруженных бекендов Если соблюдать все стандарты то бекенд пишется без боли, очень легко и быстро дебажить Когда разработчики бекенд фреймворков полноценно интегрируют возможности разблокировки GIL и сделают фреймворк ориентированный на максимальную производительность, это будет очень мощный язык для высоконагруженного бекенда в связке с каким-нибудь Cython
Я два месяца любил пайтон, когда переходил с Java на JS, все было классно, пока не дошло до областей применения... Больше всего убил GoDot - "движок на питоне" который при этом без питона и без его стандартной либы. (так было в то время не знаю как сейчас уже и знать не очень хочу :) ) Сейчас конечно все эти ОРМ и пляски с версиями и полтора фреймворка выглядят максимально пугающе и глупо. Асинхронность это атрибут реалий а не языка. Запрос на сервер не придет к вам мгновенно и даже за гарантированное время, поэтому если есть сервер - будет и асинхронность. Но спасибо автору, приоткрыл завесу над тайной куда тратились в золотые времена мегадоллары человекочасов: на "переход с версии 2 на версию 3" ))
Такая же фигня, начал изучать пайтон, ой легко и просто, а потом как распаковался во все красе, я тоже подумал что это обманчивое впечатление о его простоте
Сам я на С++, но в начале карьеры ПРИШЛОСЬ рваботать на питоне. Вот честно, противней языка не встречал (из тех, что на слуху). Никогда в жизни больше не хотел бы работать на питоне, за исключением мелких скриптиков. Ничего непонятно, что передаетсяв. функцию, что из функции возвращается, приходится смотреть что это за функция, определять откуда ее вызвали, что в нее передали, прихожится опять идти "наверх" по коду, искать полученные значения, идти обратно, смотреть что мы возвращаем и почему, для этого приходится просматривать сам код функции и тд и тп. В С++ я бы просто чекнул входные типы и выходной. ПОнимаемость кода на 100% зависит от комментариев и названий функций и переменных. Если нет хотя бы одного, то можно вешаться. Хотя у него есть и свои преимущества, например можно очень быстро и легко написать небольшие скриптики и разнообразие либ и легкость их установки это только поощряет
Самый, более менее универсальный ЯП это js, на нём можно писать фронт, бэк(nodejs) и приложения для разных платформ по типу реакт натив, электрон и тп. Но и у js есть много минусов. Поэтому если новичок хочет связать свою жизнь программированием, то лучше сразу понять что придётся понять как работает компьютер и выучить много языков для того чтобы использовать в различных ситуациях разные языки/инструменты. Кстати популярное высказывание про забивание гвоздей с помощью пассатижей или молотка, очень уместно.
Микросевисы в докере для некоторой автоматизации одно удовольствие делать на python. По поводу скорости работы, никто не запрещает отдавать некоторые процессы обработки в с++ и возвращать результаты. Если совсем упороться в скорость, то надо уходить в ассемблер)) поэтому нужно понимать что за задача, и на чем её реализовывать.
Python пушка для специалистов в DS, тем более в 2024г. Без него - практически никуда а этой сфере. И касательно простоты - она иллюзорная, хотя по синтаксису заморочек поменьше.
А какие заботы с памятью в C++? Я подчеркиваю. В C++, не C. Нужен буфер - используй вектор или свой класс. Нужно поделиться указателем на объект - для этого есть умные указатели. И так далее.
А что скажете про либу Flet ? В новых версиях python (пока с переменным успехом) пытаются внедрить JIT, как думаете справятся с проблемами производительности?
jit ускорил мою простую функцию которая в цикле 222222222 раза инкрементирует переменную - на 30% в случае Cython ускорение в 555.525,34 раз это примерно 555_525_242.63% ниже замеры timeit Python: 6.016323834002833 Numba: 0.11226104100933298 Cython: 1.0829971870407462e-06
Спасибо, как раз хотел поглубже нырнуть в питон. Мы, дата-инженегры, используем его на неглубоком уровне в PySpark для манипуляций данными. По большому счёту, у нас есть Dataframe который мы можем кромсать почти на SQL и в принципе сделать collect для преобразования в массив, но это очень плохо для производительности, есть spark которому мы можем сказать df1 = spark.sql("sql query from {df}", df = df2), всё это напоминает обёртки на джаваскрипте к серверным программам, но можно подтянуть и pandas и numpy для подсчетов статистики или чего угодно ещё.
Питон меня раздражает безответственностью писателей на нём. Два раза было так, что я уже мысленно представляю себе путь к завоеванию Галактики, и он должен сработать, потому что все нужные библиотеки и утилиты уже кем-то написаны на питоне и даже входят в Debian repository, но тут выясняется, что код-то на самом деле написан "на отъебитесь" студентом, чтобы сдать зачёт и ненадёжен. Чем проще язык, тем больше в нём таких вот студентов. Ну а самый луший язык -- 1. компилируемый 2. на котором код короче других для неэлементарных задач.
Скромность Леши Корепанова - поставить ютуб кнопку так, чтобы ее никто не заметил. Первый раз такое вижу.
я попытался найти кнопку, но так и не нашёл в кадре. А где она там припрягалась?
@@mikep541 слева от лампы, боком стоит
@@mikep541, присмотрись на лампу
@@mikep541 слево от смотрящего есть светильник, слево от светильника вдоль стенки шкафчика на полке стоит кнопка, между ними лежит какойто пульт или тетрис
Я на поиски потратил наверное пол минуты, вообще задний фон у Лёши это отдельный вид искусства. Если что кнопка слева от лампы.
Случайно попал на видео. Приятное объяснение по сути, спокойно, по существу. Приятно слушать, так держать!
Я начинал свой путь в программисты с JavaScript. Мой случай не уникален, но это как раз тот случай, когда не человек выбирает ЯП, а ЯП выбирает человека))) Мне просто попалась в руки книга "JavaScript для детей", и я начал по ней учиться. Сначала ничего не понимал, но спустя чуть больше чем год я получил первый оффер в компанию :) И вот, проработав немного как Node.js разработчик, я столкнулся с Python.
К Python у меня максимально тёплое отношение. Для меня этот язык приятный, конечно не совсем с привычным синтаксисом после JS, тем не менее это замечательный язык. Одно время хотел перейти на него, чтобы писать бек энд на нём, но т.к. у меня опыт в коммерции в основном JS\TS, то всё, что мне предлагали это было интернатура и Джуниор позиция, а я не мог себе позволить "проседать" в зп, при наличии семьи. Поэтому до сих пор так и не поработал с ним в коммерции, хотя все пэт проекты, все проекты вне работы для себя, я обычно пишу на нём:)
Я в шоке как можно 10 лет писать на одном языке и так его и не узнать, вы как так живёте то вообще? У меня дети которых к ЕГЭ готовлю больше вашего про питон расскажут, да и про плюсы тоже
язык для зарабатывания денег
А какой смысл зная JS писать на питоне бэкэнд (при живых node, deno, bun и т.п.) !?
Чтобы все тормозило и чтобы все время переключаться с языка на язык и не писать изоморфные JS приложения?
@@tvortsa какой смысл писать на JS говно, когда это самое говно генерирует ChatGPT.
@@tvortsa почему же всё должно тормозить? По Вашему, если в синтетических тестах Python медленнее, то в реальной жизни он настолько медленный, что те, кто им пользуются, мягко говоря не умные люди или как? В реальном мире, когда дело не касается веб разработки, а не десктоп и мобайл, так же есть такие ограничения как: работа сети, работа базы данных, нагрузка на сервера, мощность серверов и т.д. Если их учесть, то по факту, разницы между приложениями на PHP и Java пользователь разницы не увидит ( если конечно, это не касается мощной обработки данных, которые происходят на сервере после запроса), ибо разница в долисекундах будет минимальной. Плюс, если человек не умеет писать высоконагрузочные системы, его не спасёт ни Go, ни Java. А насчёт почему Python? Ну скажем так, какой-то период времени, когда я следил за вакансиями, проекты, которые писались на Python, для меня были более интересны. В то время на Node.js предлагалось писать проекты типа: микрозаймы, криптокошельки и гемблинг. А мне это не интересно. Поэтому смотрел на то, что происходит на рынке и с другими направлениями. И ничего плохого не вижу, когда человек переходит с одной технологии на другую. Это инструмент для решения задач бизнеса, а не вероисповедание)
ИМХО
От души 😂 Особенно развеселил момент о боли фрилансера, когда заказчик начинает выкручивать вам руки и с каждым днем меняет тз 😂
Как то так сложилось, к программированию пришёл с сайтов для мобильных телефонов wap версии, подвернулся именно php и с головой затянул меня, это было в 2007 году (17лет в php 🤔), много чего написал, 90 процентов из этого уже не активно в сети (жаль даже)
Недавно посмотрел интервью Дурова, где он рассказал о своих проектах и что бэк у него на пайтоне, хотя вк он писал на php.
Что-то так вдохновило меня посмотреть пайтон и он мне зашёл , совершенно понятный синтаксис, локоничен круто. Правда эта точка с запятой не знаю как победит желание оканчивать ею 😂 Плюс решил залезть в java и вообще писать что либо для андроид 😮 Удивило что можно в андроид студии просто расставлять объекты графически -это так просто.... Я 17 лет не интересовался ничем кроме php, sql и языки разметки, сам в шоке...
Сейчас уже сложной найти работу в вебе на синхронном питоне. FastAPI сильно увеличил применяемость асинхрощины в питоне. И случилось это уже леn 5 как. Производительность питона регулярно улучшается и во многих задачах, для которых он регулярно используется, уже не сильно уступает плюсам или JS.
Асинхронность питона тоже постоянно допиливают, так как видят в этом потребность. И в ближайшем обновлении 3.13 планируется сильно ускорить работу JIT компилятора.
Питон уже добрался даже до микроконтроллеров - специальная сборка MicroPython для работы на платах Python Circute - аналог Ардуино. Но конечно это все только для пет проектов, а не промышленной разработки. Хотя кто знает во что это может вырасти.
Так что в след за ростом популярности язык тоже очень сильно растет и становится лучше.
"Производительность питона регулярно улучшается и во многих задачах, для которых он регулярно используется, уже не сильно уступает плюсам" - для числодробилок ситуация наипечальнейшая, если сравнивать нативный питоновский код и плюсы.
"не сильно уступает плюсам" - неважно сильно или не сильно, если уступает, остаюсь на плюсах
"не сильно уступает плюсам" - Ахахахах, чел, вот ты тупой
ждем оптимизированный FastAPI с разблокированным GIL это будет еще быстрее работать
@@ffunktor Для "числодробилок" есть nuba.jit - декоратор достаточно повышает производительность, но если нужен уровень С то есть Cython
Приятный мужик! Успехов тебе!
спасибо, очень приятно когда специалисты делятся своим мнение, а не оставляют эти знания внутри корпораций
Специалист? с чего вы это взяли?
@@igorseledtsov7345 из ролика.
@@igorseledtsov7345 20 лет опыта
Решал подобную задачу по обработке видеопотоков с помощью нейросети. Первое решение написанное исключительно на python несколько лет отработало на проде, хотя и справлялось с нагрузкой в несколько сотен потоков, но потребляло кучу памяти и нещадно грузило процессор) Сейчас реализовал сервис получения и обработки кадров на плюсах, день и ночь просто, памяти не ест, проц не бьётся в полку, производительность решения возросла. В общем, для прототипирования и скриптования простой логики python хорош, для hi-load лучше что то компилируемое)
как оно могло быть написанно исключительно на питоне. быть такого не может, вы там с нуля gradient descent с матричными операциями что ли имплементировали. почти любой deep learning фреймворк из популярных имеет ядро на плюсах. и обертки на питоне. модели вангую вы до сих пор готовите на питоне. не поверю, что у вас там тренировка на плюсах. и вот в этой доменной области заслуга не столько языка, сколько математиков-программистов , которые за вас самую сложную работу и сделали. попробуйте с нуля сделать подобную архитектуру модели плюс тренировку модели, плюс быстрый инференс(где нужно быстро выполнять матричные операции) на плюсах и скажите сколько это займет времени написать(без использования всех этих lapack/openblas).
но то что в вашем примере безусловно говорит не в пользу питона, это мультипоточность/мультипроцессорность при наличии огромной постоянно нагрузки. ну по моему это и так все известно. тут нет никакой новости, что питон один из худших языков в concurrent programming. а матрички считать, ну разницы особой нет, что вы в плюсах torch вызовите . что в питоне, ну наверное с небольшим оверхедом за счет интеропа с питоном. но все операции будут выполнять вообще одним и тем же скомплированным ядром (что там будет огромный файл libtorch.so, что там. про CV библиотечки так тем более, нет ни одной чисто питон библиотеки, которая в индустрии используется)
@@TheDelwish Доброго времени суток! Ни кто и не говорил про реализацию на чистом Python, особенно того, что касается матриц, там, естественно, везде сишные модули, будь то numpy, pytorch, или даже Opencv. Речь шла о том что "гонять" эти самые матрицы изображений между процессами приходилось при помощи стандартных библиотек python, типа multiprocesing queue или shared memory, что роняет производительность и прочее. Что касается разработки нейросетевых решений, проверки гипотез, обучения нейросеток, скрипты обработки датасетаов, это все python, без него не куда, отличное быстрое прототипирование. Ну и на проде python отличный инструмент для скриптовой обвязки тех же сишных модулей
Мой первый язык программирования. 6 лет назад начал изучать именно с него.
Со временем и другими языками овладел, но "думаю" на python до сих пор.
Если овладел питоном, то другие языки проще даются)) Главное ничего не перепутать по привычке так сказатб.
@@DenisLeadERTV если только руби, js и php. Но не факт что Си++, АСМ, раст. Помимо освоения языка надо еще осваивать оценку сложности алгоритма, паттерны и принципы, а это дело уже не малое. Прочитайте Чистый код, осознаете, поймете и сможете использовать, считайте навыки точно есть
Не люблю Питон исключительно из-за того, что сейчас его все любят и все на нем пишут. У меня дух противоречия включился. Но мне можно - я не программист, а так, балуюсь понемногу
Я программирую на питоне только из-за того, что он мне нужен для математики и криптографии
В первый раз увидел код на пайтоне когда в начале 2000х ковырялся в игре Blade Of Darkness. Был удивлен, увидев кучу игровой логики в виде легко читаемых скриптов.
Очень нравится этот язык. Учил его примерно 2 месяца, сейчас забросил из за учебы, но не перестал писать. Самое удивительное, это то, что мой первый проект это не какой-то калькулятор или тупо переписанный код, а действительно полезный тг бот, который я загрузил на сервер и который приносит мне небольшую денежку. Летом хочу полностью переписать своего бота под айогрм, научится парсингу и написать простенький сайт для рекламы моего бота. Давно мечтал быть "бизнесменом", косвенно моя мечта сбылась, но я на планирую на этом останавливаться. Если мой старый бот в несезон приносил мне достаточно хорошую прибыль (как для 11 классника), то новый бот, надеюсь, увеличит эту прибыль в разы.
Удачи!
Бот открытый?
@@vogelfenixable в плане ?
@@TV-lz9yq ну ссылка есть на бот или только для личного пользования?)
@@TV-lz9yq видимо имелось в виду, что в него все могут зайти или не все. Можно же фильтр поставить.
я тоже всегдаа улыбаюсь когда люди говорят что Пайтон очень простой, но они пробовали писать только print('Hello World'))))
Во во и я так подумал, новичков дурачат говоря что питон прям изи, впаривая очередной курсик)
@@megafalos850 дурачат людей, которые никогда не нюхали кодинг. Им говорят что все легко и продают курсы). Оно то и правда легко, если человек настроен на алгоритмы.
Потом люди доходят до ООП и охреневают. Но это уже другая история
А так, то конечно Леше больше спасибо за познавательное видео. Никакого сарказма. правде большое спасибо🔥🔥🔥
Но это чистая правда. Для человека, который решил на закате молодости войти в айти, Питон может показаться сложноватым, но если ему показать вместо питона плюсы, то он сразу бросит идеи "вайтишника" и убежит на стройку или завод. Поэтому, да, Питон - очень простой. Как и Луа. И как любой другой динамически типизированный скриптовый язык
@@akaikangaroo ну да тут однозначного ответа
@@akaikangaroo Ну, плюсы и самые сложные в освоении. Если что-то проще плюсов, это не значит, что это очень простое. Речь шла о разных возможностях питона, о которых многие и не знают. Большинство из использующих язык (даже не новичков) никогда не писало генераторной функции, а о каких-нибудь метаклассах и асинхронных контекстных менеджерах и не подозревает. Я не думаю, что это очень просто, там есть что разобрать. Асинхронщина точно не тривиальна. Но это не только Python касается, хотя она здесь довольно грамотно сделана.
Другими словами, Python прост, когда его используют только как скриптовый язык, но такие задачи и не требуют сложных инструментов языка. То есть, автор коммента по сути прав.
Спасибо большое. что делаете видео. Всегда узнаю что-то новое после просмотра.
Леша, здравствуйте. Спасибо за ваши видео. Если будет возможность, запишите пожалуйста видео о том, какие книги вы бы посоветовали тем, кто решил изучать программирование. Начиная от основ информатики, работы с алгоритмами и заканчивая книгами по языкам с которыми вы работали. Спасибо.
Вы пьете эликсир молодости? Делитесь секретом вечной молодости, тоже так хочу!
Не бухай, живи без стресса, занимайся спортом.
тоже об этом Алёшу прошу))
@@ugin-nb4sy Да я лысый, но сморщенный в свои 45 просто жесть какая то. А тут прям младенец какой то.
Высокая зп
генетика и образ жизни !
Очень интересно объясняете. Спасибо за видео, было приятно послушать!
Алексей, спасибо Вам за познавательный и полезный контент, продолжайте в том же духе. Очень приятно слушать и смотреть вас.
Работаю более 10 лет в аналитике. Последние лет 5 пишу на Пайтон. Очень помогает в работе!
Простота питона зависит от того кто код пишет. Можно такую наркоманию там развести что устанешь разбираться.
Столько сахара что диабет может развиться.
Мне кажется Go как раз как антидот после питона. Но для питониста он и правда поначалу сильно непонятный
Антидотом от плохого кода, в мире python разработки, является внедрение пайплайнов с запуском строго настроенного flake8
Только это надо или быть лидом и заставлять других писать код как ты считаешь правильным, или искать такую команду, детально расспрашивая на собеседовании про их практики. С го тоже можно наколбасить ещё тот код, но возможностей для этого поменьше.
@@MrLotrus никого не нужно заставлять, обязательная проверка линтером будет делать это за вас
@@olegssh6452 Так ее надо встроить в CI/CD и слать лесом МРы с непрошедшей проверкой. Это и имею в виду под заставлять
@@olegssh6452 линтер не решение проблем, если человек пишет методы по 300строк с кучей аргументов, не соблюдает принципы. И что вообще значит "писать код как ты считаешь правильным"? Есть принципы (SOLID, DRY, KISS, YAGNI), метрики кода, паттерны! Есть книги - Чистый код, Чистая архитектура и т.д.. Нет такого "считаешь правильным"! Соблюдаешь правила и все ок! А линтер это про то, как скобки у блоков кода поставлены, как оформлены комментарии
После профессиональной разработки на C/C#/Java на питон оч сложно переходить из-за тьмы недостатков
Спасибо за видео, очень легко слушается и очень понятно все объясняется до такой степени что можешь ухватить суть идеи даже если не особо разбираешься в программировании.
Хороший ролик, спасибо! Добавлю что сейчас без async веб разработку на python себе уже сложно представить, даже джанго костылит в эту сторону.
Мне очень понравилось в питоне кроме упомянутой простоты работы со строками встроенное снятие ограничений с размера числа. Я не встречал другого языка, в котором число может быть любого размера - вообще без ограничений.
Для своего интереса просто считал задачку, в которой мне нужно было возвести числа в степень от 1 до 100.000 - и в питоне для этого вообще никаких дополнительных действий/структур данных не понадобилось - просто прямая логика в две строчки.
Поэтому наверное он так популярен среди непрограммистов и околопрограммистов.
шеме позволяет
Да ладно, Питон полное убожество по сравнению с numeric tower в Scheme.
А уж провсякие Axiom, Maxima, Mathematica и им подобных вообще молчу.
Понравилось, как в конце такой - фух, блин, записал)
А я только изучаю Си, вот эта проверка на clang-format и valgrind помогают очень сильно. В принципе нормальный язык. Скоро (через год) перейду на плюсы.
Приятное объяснение по сути, спокойно, по существу. Приятно слушать, так держать!
Очень интересный опыт, спасибо что поделился, Алексей! Что до аннотации типов - надо, надо переходить! Категорически надо! Если старую кодовую базу переносить долго и может быть сложно (как минимум, в плане времени) покрыть аннотациями, новый код надо аннотировать полностью! Совершенно зрелый механизм, и если не с mypy, то можно начать (и в принципе закончирть) pyright'ом. Я придерживаюсь такого правила - аннотации типов не пишу только в реально коротких скриптах питонячих. Если система хоть сколько усложняется или планируется усложняться / расширяться (>1 модуля) - не аннотировать типы -- преступление
вы объясняете так, что приятно смотреть, прикольно 👍 😊
Как же он красиво и просто рассказывает. Аж захотелось снова начать учить питон
сейчас сложно не знать об асинхронном программировании :)
Согласен
почему-то мало кто упоминает про Cython, очень хорошо подходит под высокопроизводительные задачи
это код в стиле Python *.pyx со специфическими операторами от языка С, который компилируется в C и подключается к обычному пайтону как модуль
То есть синтаксис в основном как у Python
Согласен
Прям очень знакомая история была и у меня. Делал я сайты на php и когда понадобился скрипт автоматизации (для свои нужд - генерировать образы DVD-дисков для резервного копирования фотографий) я написал на PHP, но в этот момент понял, что PHP не для этого. Поэтому следующий проект делал на python. Языка я не знал, но понял, что он для этого идеален. И не ошибся. Более того, до сих пор пересматриваю исходник. и не вижу к чему придраться. Там скрипт поднимал и останавливал виртуальные машины, подключался к их сетевым дискам проверял внешней программой контрольные суммы и так далее. Про это производительность была совершенно не принципиальна (большую часть времени скрипт ждал, когда поднимется виртуалка). Но потом я решил посчитать и контрольные суммы не внешней программой (написанной на C), а сделать функцию на python. Я перевел код с C на python попутно существенно оптимизируя его и что же? Замедлилось в 40(!) раз. В общем, битовая арифметика - не для python. (я все равно выложил на github результат, жалко было потраченных усилий, но сам им не пользуюсь)
Потом было еще куча проектов на python, но на одном я сломался. Проект 10000 строк исходного кода - синхронизация файлов между папками со всякими проверками этих самых файлов. Была накручена архитектура с потоками и тут выяснилось, что GIL, будь он неладен, приводит к затыкам системы. При чем это не вопрос производительности - она в этом проекте не существенна (проверки во внешних системах занимали гораздо больше времени). Но в совершенно случайные моменты система просто останавливала потоки. Попробовал перейти на процессы и да, как и в этом видео - передавать данные между процессами оказалось гораздо сложнее. Итог - переписал все на Go, сохранив ключевые идеи архитектуры и все прекрасно заработало. Всякие race condition Go умеет отслеживать сам. (именно в этом виде я выложил проект на github)
Так что теперь моя любовь - Go. У Go беда с программами с UI. Так что теперь смотрю в сторону Dart...
Занимаюсь DS и поэтому использую этот самый питон. Весьма удобный для этого язык. И главное крайне много библиотек и материалов в сети.
питон для меня это как дополнительная операционная система, с фри программами в библиотеках, подсел на анализ данных для своей организации, работаю коммерческим директором. через апи для chatgpt вообще бомба.
Про реальный пример и про асинхронность - спасибо. Совершенно новая информация для меня.
11:50 это да. Просто посмотрите исходники того же fastapi или litestar. Типизация, дженерики... изначально язык обманчиво прост.
Книга "Python к вершинам мастерства" 900 страниц весом в полтора кило :)
Меня каждый раз корёжит, когда с каждого утюга раздаётся "питон простой". Да, для задач написания скриптов непрограммистами он достаточно прост (хоть и с ньюансами). Впрочем, как и любой другой скриптовый язык.
Но для области профессиональной разработки - это зрелый и довольно сложный язык, заметно сложнее тех же джавы/C#. Про гошку и вовсе говорить нечего.
@@redneck_prm5429 Ээээ окей. Ну допустим, что питухон сложнее чем решетка или жаба (хотя только от этого смех пробирает), предположим что трава хорошая и драггер честный😂
В чем он сложнее?))) Это ж недохрень из костылей))) Сложность штука относительная. Сишка вон простая, но подавляющее большинство питухонистов от нее будут слезки пускать и веревки намыливать. С гошкой же такое поделие как питухон лучше вообще не сравнивать - это небо и земля.
Да и такие понятия как «профессиональная разработка» и питухон ни разу не совместимые. Что-нибудь по быстрому наваять - да. Подкостылить - да. В крупный проект - нет, любой architect подтвердит. А если и да - ну штош, обнять и плакать🤣
Пишу на python лет шесть, в этом году закончил универ и устроился на свою первую работу на этом языке. За время обучения перепробовал c, c++, java, посмотрел как работают Fortran и Assembler, а первым моим школьным языком был pascal. В итоге так и не ушел с питона из-за его простоты, а остался из-за сложности и глубины)
Спасибо большое за информацию. Очень интересно. Моя история с пайтон: перед поступлением на специальность программиста, я начал искать с чего начать, какой язык выбрать. Я тогда вообще был 100% далек от темы мира языков и программирования в целом. И вот интернет выдал популярность Пайтон. Я скачал книжку (автор Эрик Мэттенс, по моему так). И все так интересно было, как новичку.
В общем пришло время поступать и я поступил с очень теплыми и приятными ощущениями от этой книжки и языка в целом (понятно что я толком так ничего не понял, но не страшно). И вот после курса языка пайтон, точнее от преподавателя и метода преподавания, я полностью охладел к пайтон, всякий интерес пропал напрочь. Теперь более влекут меня JS и все что с ним связано, и с fullstack MERN в целом.
JS грязный язык. Парадигмы программирования не доработаны (например, в ООП у многих ЯП нет множественного наследования, но есть альтернативы вроде миксинов/трейтов и интерфейсы, в JS нет и этого, просто пародия на ООП), язык часто используют, обернув в какую нить новую абстракцию, формальный язык типа CoffeeScript или TypeScript, это все подтверждает его убогость, зачем тогда сам язык, если на нем не могут сразу адекватно описывать свои требования
@@КонстантинБелоглазов-р1з ну ничего страшного. Работают как-то же на нем люди😉 тем более ООР не всегда нужно. Да и всегда под рукой есть java на всякий случай.
Вау, я думала, что вы перестали выпускать свои видео, а мне просто не приходили уведомления 😢
Спасибо что вы делитесь своим опытом. Очень полезно было послушать.
Лёша, красавчик! Пора курсы по програмированию запускать!!! Сама ищю хорошую курсы!!! Благодарю за Ваш труд!!
А я давно подписан на канал. Здесь всегда так, спокойно и по существу. Плохо только, что редко стали появляться ролики автора на ютюбе. Причина понятна, но очень грустно😮.
Лёша напиши туториал по инвентарю для игры на GODOT на пайтоне - не буть гадом 😁Йа на киберфоруме выложил код в разделе игровые движки, там не понимаю как итем уничтожить из ячейки и сложить его если однотипный кидаем в ячейку. Drad and Drop написан осталось токо это
Приятно слушать, по делу. Интересные примеры.
Питон простой, когда ты уже понимаешь что отвечает за что.
Специально так сформулировал )
Но если ты впервые окунулся в программирование, то Питон вызовет такой же разрыв мозга или задницы (кому что) как и Джаваскрипт или C#.
Когда уже понимаешь логику и знаешь команды, то написание кода в целом не вызывает проблем.
На Питоне автоматизировал для своей работы кучу процессов, благодаря чему сэкономил и заработал серьезную сумму денег.
Программистом себя не считаю, у меня рекламное агентство. Но за автоматизацией - будущее
Не соглашусь. По крайней мере с JS разрыв чего либо более вероятен, когда узнаёшь, что можно вполне официально и легально делить на 0, а ещё многие типы данных или отсутствие данных пустые строка, список преобразуются в число. При этом типом NaN является number. И это я рассказал только поверхностное знакомство. Но этого хватает, чтобы сильно задуматься: а хочется ли погружаться глубже в это
Если начал программировать на Питоне после С, С++ и С#, то приходится привыкать к относительно другой логике. .
Всем доброго времени суток, подскажите пожалуйста где учить Python, я имею ввиду курс, но бесплатный, мне просто нужно выучить язык, буду признателен за ответ!
Алексей, вот хотелось бы Ваш взгляд на язык Julia
- и по поводу скорости работы питона. Почему
- я беру питоновский модуль requests и получаю 300 rps
- беру java (препробовал кучу http клиентов) и получаю 25 rps (использую тот же самый сервис)
- т.е. почему питоновский requests работает от 3 до 12 раз быстрее джавовского?
в питоне оптизация автоматически вшита в модуль, а на жабе нужно оптимизировать все самому, а на плюсах еще нужно будет постоянно вовремя очищать память
@@ТамерланКабдолла-б5ц я думаю, потому, что многие многие куски питона под капотом на самом деле реализованы на сях, и причем, очень грамотными людьми.
Давно не было видео от Лёши. Рад видеть
Леша, отступы , как C#-ка - дико раздражают! Неужели тяжело сделать режим для таких) , типа выбрал опцию и вместо отступов - фигурные скобки, блоки)
from __ future __ import braces
я из за этого просто не воспринимаю такие языки. Натерпелся от простыней в Foxpro , когда понял что php божественен во всех отношениях, и новомодный питон скоро умрет.
Да, все библиотеки на python, которые есть "из коробки" написаны на C. Это - numpy, math, datetime, itertools, random, os и ещё десятки других.
Но непонятно, если допустим я буду извлекать квадратный корень из числа через Python, это бы выглядело так: 100 ** 1/2. С модулем math это бы было так math.sqrt(100). Вопрос, что бы выполнилось быстрее?
На Python это бы выглядело так >>100 ** (1 / 2) Всё таки про приоритеты операторов не забываем. Ну или >>100 ** 0.5. А вот с замером скорости всё получилось несколько неожиданнее и интереснее (правда тестировал это на python 3.10). Результат получился такой, что приведённая первая запись (но только со скобочками) быстрее операции math.sqrt() в 3 раза о_О
@@arthurkuznetsov618 Интересно, тогда в чём смысл использования простых модулей по типу math. Я ещё могу представить необходимость os, sqlite и многих других библиотек, но тогда теряется смысл остальных, которые можно запросто воспроизвести и не потерять скорость в процессе использования их функционала.
@@benpuls9414 math.sqrt сделали для совместимости со всеми обернутыми C функциями. Оператор ** это более продвинутая функция которая умеет работать с комплексными числами, неограниченными числами и тому прочее. То есть предпочтительнее в Python коде использовать оператор **.
Чтобы не представлять корень в таком виде
Если стоит задача писать быстрый код, то не надо использовать питон.
мне питон зашел, не знаю как "чисто" я на нем писал, но учитывая, что у меня 4 года коммерческого опыта на js/ts/react, то достаточно быстро врубился что и как, простенький бекенд накидать труда не составило, насчет более сложных штук не углублялся еще)
Использую python для написания скриптов для работы бэкендом, мне как сисадмину язык очень заходи, но порой хочется написать что-то и посложней.
У меня для сисадминских дел так и не прижился. В своё время работал в конторе где всё решалось на перле. В итоге потыкал питон и лично у меня оказалось что на перле в разы быстрее, особенно если находу надо чтото менять, хотя изначально надо затратить больше времени для изучения.
Мне случайно 48 лет и я решил стать программистом, и да, я думаю , что Алексей Корепанов и Сергей Балакирев это одно лицо! :))
У Flask не было никогда собственной ORM - все используют стороннюю SQLAlchemy
У фласка есть обёртка вокруг алхимии Flask-SQLAlchemy, она под капотом сама управляет сессией. Если для простого сайта это достоинство, то для более сложных сайтов, в которых нужно адекватное управление транзакциями - это очевидный недостаток. По этому уже давно перешёл с Flask-SQLAlchemy на обычную алхимию
а она нужна ли ему? фласк по сути микрофреймворк.
@@Feycot Слово "микрофреймворк" всех вводит в заблуждение. То что flask это микрофреймворк ни значит, что его нельзя обвешать всяческими готовыми батарейками. Реддит, нетфликс и патреон написаны на фласке так то
@@VaeV1ct1s ну можно и обвешать, а можно взять взять фреймворк, в котором есть все необходимое. Конечно это условное разделение, но есть микрофреймворки типа Фласки/slim/express, где базовый минимум, а есть Laravel/Spring/Rails где есть все необходимое для т.н. fullstack приложений
@@Feycot верно, можно и так и так. Только разница в том, что фреймворки в которых всё есть из коробки, за счёт этой нагруженности имеют ненужный оверхед
Для небольших проектов, особенно если с нейронками - он идеален.
Но что-то большое я на нем писать бы не стал. Тормоза, плюс поймаешь проблем с отсутствием строгой типизации.
А я в последнеее время помимо C++ использую в основном Cython - это некоторый компромисс между C и Python. Есть типизация и компиляция, при этом сохраняется полная совместимость с Python и всеми его библиотеками. Даже несколько обучающих видео по нему записал, они у меня на канале опубликованы.
Синтаксис тот же?
@@RaptorT1V Скажем так - полностью совместимый. Можно писать как в документации по Python, и всё будет работать. Но есть и дополнения, например, можно объявить тип переменной ("cdef int i"), аргументов и результата функции ("cdef int foo(double bar)"), определять перечисления и структуры как в C ("cdef enum", "cdef struct") и тому подобное - это повлияет на компиляцию и, соответственно, быстродействие и компактность кода. Ну и дополнительтные фишки взаимодействия с сишными библиотеками ("extern", "cimport" и т.п.) В общем, очень жизнеспособный гибрид.
@@m0Ray79 почему ж реально о нём мало кто знает и почему о нём не говорят на тех же курсах, например. или другие ютуберы.
@@RaptorT1V Сам удивляюсь. Прекрасный инструмент, причём далеко не новый, о котором почему-то мало говорят. Хотя он способен прекратить всякое нытьё о производительности Python.
Хочется добавить, в классах есть декоратор @property, который как-то имитирует ту самую недоступность атрибутов извне
Насчёт того что простота именно кажущаяся - 100% правы)
Очень полезная информация для тех, кто думает: стоит ли изучить Python или лучше продолжать изучать и совершенствоваться в Java.
Хотелось бы узнать Ваше мнение.
В другом видео я увидел у Вас много медалей, что у вас за хобби?😁
Я про пайтон думаю: хорошо, что я пишу на js😂
Большое спасибо 🙏 нереальное спасибо 🙏 Благодарочка !!!! Спасибо что делитесь самым главным Опытом , вы бессмертно богатый человек рась можете это дать другим и нечего не требовать в замен )(ps) плюс очень ламповый формат и ясность глубины задницы которая будет мучить мой мозг до конца моих дней ❤❤❤😂😂
Вот это приятный контент) очень было интересно, сам уже 7 лет пишу на питоне
Весьма полезна обратная связь по Python на базе собственного опыта.
Очень хорошо рассказывает,приятно слышать. С фронтенд я согласен, именно в плане динамических элементов. Но мобильная разработка не согласен. Фреймворк kivy, достаточно большой и с хорошей поддержкой. С возможностью сборки под разные мобильные ос. Также и разработку игр не упомянул,сам баловался с некоторыми библиотеками(что имеют под собой не знаю, врать не буду). Если не ошибаюсь,популярная и старая стратегия eve online написано на python (понятно в соединении с чем -то). А веб-фреймворки стали развиваться по причине постепенной гибели php,laravel и codeigniter. Django на сегодня очень гибкий и удобный,хотя flask быстрее. Скорость абсолютно согласен и компенсируется всё гибкостью .
А на пайтон еще не придумали какой-нибудь «TypePyton» по аналогии с TypeScript над JS? TS изучается как родной после языков со статической/строгой типизацией
Хороший язык если использовать аннотации типов или быстро написать прототип. Ещё нет проблем со сборкой.
Проблема в скорости. Если много данных или надо быстро результат, то поседеешь пока даже 100Gb файл прочитаешь. Если платить за облако, то больше CPU - больше денег.
Проблема скорости не только в движке, но и в постоянных аллокациях и непрямом доступе. Если на плюсах так писать - тоже медленно будет.
Первый канал, о программировании, на который я когда-то подписался. Начинал с питона, потом джава... (щас закидают шапками про русское написание 😂) Но в итоге я не питонист и не джавист, а простой 1Сник 🤷🏻♂️ В РФ сейчас стартовать можно только в 1С или в фронтовые ЯП.
Бизнесу абсолютно все равно на чем вы пишите, главное решить его задачу максимально быстро и эффективно.
У вас есть работа, и отлично, а то что для души/полезное для других, можно и в свободное время писать
Товарищи программисты
Хочу начать изучать эту сферу как свою будущую деятельность.
Если без особого контекста то я имел небольшой опыт в создании скромных программ и мне показалось это привлекательным
Прошу вас подсказать какие направления и прилегающие к нему языки програмирования стоит выбирать в начале пути(я слышал что с некоторых языков программирования не стоит начинать и вообщем то не хочу "промахнуться")
Также я собираюсь поступать в ВУЗ, хочу переехать и своего города в другой(пока буду учиться точно) и необязательно в столицу и в Питер. Возможно эта информация что-то да даст тому кто решит ответить
И если не секрет то скажите сколько лет вы имеете опыт в этой сфере, будет просто очень хорошее лично для меня дополнение вашего ответа
Заранее большое спасибо
Я выбрал Python для изучения потому, что он очень популярный, а значит много проектов пишут на нём и этим проектам нужны будут программисты, а во вторых я выбрал этот ЯП, потому что его можно быстро изучить. Хотя я до этого уже был знаком на начальном уровне с С и Pascal.
Сейчас я доучиваюсь,как раз разбираюсь с Django. Проблема в том, что почти нет работы на Python для людей без опыта, чаще всего я встречаю вакансии по Java и 1С.
Было бы здорово, если бы как-нибудь вы сказали в своих видео что-нибудь об этом и о подобном.
Лёша Корепанов, вы классно всё рассказываете,я в восторге, всё вполне доступным языком.
Что java, Шо 1с - 90% вероятности столкновения с легаси. Уж лучше попотеть на более популярных языка: Python, Matlab, C# (+WPF)
Интересно, а есть ли какие преимущества Python перед современным C++? Возврат из функции нескольких значений - std::tuple + structure binging, вместо list comprehension, map, reduce - std::ranges, вместо генераторов, асинхронщины - stackless coroutines. Если лень писать явно типы, то почти всегда можно использовать auto, decltype(auto).
интерпретация?
простота разработки и поддержки?
@@АнатолийИ-ю5якак же держатся питонисты за эту нелепую сказочку про "простоту разработки и поддержки". Никакие объективные данные эту сказочку не поддерживают, но питонисты все равно веруют.
Алексей, откройте свою школу, я точно пойду, давно мечтаю сделать python частью своей жизни
Ну питон изначально под Datascience разрабатывался. А насчёт простоты изучения, ну например, стоматолог или повар если начнёт изучать питон с нуля, он прикурит. Но мне было проще так как ранее в 2000-х писал на делфи и visual basic и как-бы имею представление по построению и структуре кода, что куда и как, кто где лезет и хранит объекты в памяти. А питон хорош еще тем, что есть куча уже готовых библиотек, тот-же Bluetooth модули давно есть. Очень удобно например сделать автоматизацию работы теплицы с открытием заслонок на сервоприводах, автополив огурцов и помидоров, контроль температуры, расписание и т.д. это очень интересно, + ардуино, так вообще что угодно слепить можно)
"питон изначально под Datascience разрабатывался" где такую чушь вычитал! тебе же ясно сказали в видео, для чего изначально делался!
Кто ты воин ?)
самый топовый совет для меня прозвучал в ироничном ролике про изучение TS и явился для меня озарением -- я послал в жопу изучение и просто стал делать, закрывая попутно дыры незнания)
спасибо за совет)
Ооо, поделитесь пожалуйста поподробнее? Вы изучаете Python ? Что конкретно вы начали делать после этого озарения?
Я такой человек, что очень плохо учусь через теорию, лучше всего я обучаюсь на практике, особенно когда показывают более конкретный контекст (например в проекте) использования какой-либо темы.
А ещё я вообще не могу долго сидеть и мучать мозги над чем-то. Мне проще побыстрее посмотреть готовое решение и в голове сделать "отметочку", что я вернусь к этому решению когда пригодится, наизусть знать всё не надо.
1:21 динамическая СТРОГАЯ типизация
Ну и сейчас type hints развивается c каждой версией.
Плюс эксперименты с заменой GIL :)
Язык просто ожил!
Ребята,можете подсказать,пожалуйста,хочу выучить питон параллельно с основной работой,не связанной с it,но желание бешено имею,прихожу домой и сажусь заниматься,совмещая с семьей,покупать курс на скилкоробке дорого и не уверен что знания дадут, но не могу структурировать свое обучение,с чего начать по шагам,я прочитал книгу байт оф пайтон и начал читать грокаем алгоритмы и параллельно практикуюсь на ботах в тг(аиограм), что нужно знать чтобы выйти на первое собеседование, благодарю за обратную связь
Посоветуйте если тебе за 40 то лучше в java заходить ?
Недавно обратился к python после многих лет работы на C# для Unity, очень кайфанул от его легкости, но отсутствие строгой типизации часто приводило к выстрелам в ногу, особенно с непривычки)
Вы так и не стали пайтон разработчиком:)
Настоящий питонщик, всё напишет на питоне, даже ОС, если что питон можно компилировать, например, используя mypyc.
И для мобильной разработки есть Kivy, Flet, PyQt, было бы желание можно даже pygame заюзать.
P.S.: Я шучу, и понимаю, что для каждой задачи лучше подходит свой инструмент, но говорить, что на Python нельзя что-то сделать, это всё таки опрометчиво немного.
на Яндекс Практикум в курсе по Питону Django обязателен) Прикольная штука, мне понравилась
Спасибо за видео. Моё мнение такое, что Python хорош для прототипирования, но не для полновесного прода (хотя с другой стороны его брат по разуму Ruby вполне себе успешно используется в таких серьёзных вещах как Gitlab, например). Аналогичная история случилась и с Docker, кстати, который тоже не для продакшна разрабатывался, но ввиду его простоты освоения, его стали пихать везде, куда не лень.
Но скорее всего я ошибаюсь и популярность пайтона и закалит его, сделав промышленным стандартом. Kotlin вот вполне себе успешно повзрослел таким образом. И Rust, мне видится, тоже ждёт та же участь.
Python идеально подходит для автоматизации, внедрения нейросетей и средненагруженных бекендов
Если соблюдать все стандарты то бекенд пишется без боли, очень легко и быстро дебажить
Когда разработчики бекенд фреймворков полноценно интегрируют возможности разблокировки GIL и сделают фреймворк ориентированный на максимальную производительность, это будет очень мощный язык для высоконагруженного бекенда в связке с каким-нибудь Cython
Я два месяца любил пайтон, когда переходил с Java на JS, все было классно, пока не дошло до областей применения...
Больше всего убил GoDot - "движок на питоне" который при этом без питона и без его стандартной либы. (так было в то время не знаю как сейчас уже и знать не очень хочу :) )
Сейчас конечно все эти ОРМ и пляски с версиями и полтора фреймворка выглядят максимально пугающе и глупо. Асинхронность это атрибут реалий а не языка. Запрос на сервер не придет к вам мгновенно и даже за гарантированное время, поэтому если есть сервер - будет и асинхронность.
Но спасибо автору, приоткрыл завесу над тайной куда тратились в золотые времена мегадоллары человекочасов: на "переход с версии 2 на версию 3" ))
Такая же фигня, начал изучать пайтон, ой легко и просто, а потом как распаковался во все красе, я тоже подумал что это обманчивое впечатление о его простоте
Сам я на С++, но в начале карьеры ПРИШЛОСЬ рваботать на питоне. Вот честно, противней языка не встречал (из тех, что на слуху). Никогда в жизни больше не хотел бы работать на питоне, за исключением мелких скриптиков. Ничего непонятно, что передаетсяв. функцию, что из функции возвращается, приходится смотреть что это за функция, определять откуда ее вызвали, что в нее передали, прихожится опять идти "наверх" по коду, искать полученные значения, идти обратно, смотреть что мы возвращаем и почему, для этого приходится просматривать сам код функции и тд и тп. В С++ я бы просто чекнул входные типы и выходной.
ПОнимаемость кода на 100% зависит от комментариев и названий функций и переменных. Если нет хотя бы одного, то можно вешаться. Хотя у него есть и свои преимущества, например можно очень быстро и легко написать небольшие скриптики и разнообразие либ и легкость их установки это только поощряет
Есть аннотации
@@khamzinadel никто их не пишет.
@@5классвиленкин-ъ4п в нормальных компаниях без этого никак
@@5классвиленкин-ъ4п и то что их не пишут, не проблема питона
@@5классвиленкин-ъ4п то что их не пишут не проблема питона, а в разработчиках. В нормальных компаниях все пишут. Есть же потрясающий typing
Самый, более менее универсальный ЯП это js, на нём можно писать фронт, бэк(nodejs) и приложения для разных платформ по типу реакт натив, электрон и тп. Но и у js есть много минусов. Поэтому если новичок хочет связать свою жизнь программированием, то лучше сразу понять что придётся понять как работает компьютер и выучить много языков для того чтобы использовать в различных ситуациях разные языки/инструменты. Кстати популярное высказывание про забивание гвоздей с помощью пассатижей или молотка, очень уместно.
Это не яп, это один сплошной костыль
Сам перешёл на Python c С++. Первоначальное максимальное отторжение сменилось безграничной любовью :)
Микросевисы в докере для некоторой автоматизации одно удовольствие делать на python. По поводу скорости работы, никто не запрещает отдавать некоторые процессы обработки в с++ и возвращать результаты. Если совсем упороться в скорость, то надо уходить в ассемблер)) поэтому нужно понимать что за задача, и на чем её реализовывать.
На Rust можно перекинуть бизнес-логику которая тормозит в пайтоне, и быстренько подключаемую через PyO3.
Будет серьёзное ускорение.
Python пушка для специалистов в DS, тем более в 2024г. Без него - практически никуда а этой сфере. И касательно простоты - она иллюзорная, хотя по синтаксису заморочек поменьше.
Reflex фреймворк есть сейчас.. вроде можно вебки с ним писать ...он в себя и фронтенд и бэкэнд включает
Отличное видео, спасибо за Ваше мнение
Как будто жена стоит за кадром и тема видео что я думаю о 10 годах совместной жизни
А какие заботы с памятью в C++? Я подчеркиваю. В C++, не C. Нужен буфер - используй вектор или свой класс. Нужно поделиться указателем на объект - для этого есть умные указатели. И так далее.
А что скажете про либу Flet ?
В новых версиях python (пока с переменным успехом) пытаются внедрить JIT, как думаете справятся с проблемами производительности?
jit ускорил мою простую функцию которая в цикле 222222222 раза инкрементирует переменную - на 30%
в случае Cython ускорение в 555.525,34 раз это примерно 555_525_242.63%
ниже замеры timeit
Python: 6.016323834002833
Numba: 0.11226104100933298
Cython: 1.0829971870407462e-06
Спасибо!
Приятно слушать👍
А сейчас какие движки для web сайтов используют питонисты?
Python 3 это не исправление всего, что было плохо в Python 2, а просто изуродование языка...
Спасибо, как раз хотел поглубже нырнуть в питон.
Мы, дата-инженегры, используем его на неглубоком уровне в PySpark для манипуляций данными.
По большому счёту, у нас есть Dataframe который мы можем кромсать почти на SQL и в принципе сделать collect для преобразования в массив, но это очень плохо для производительности, есть spark которому мы можем сказать df1 = spark.sql("sql query from {df}", df = df2), всё это напоминает обёртки на джаваскрипте к серверным программам, но можно подтянуть и pandas и numpy для подсчетов статистики или чего угодно ещё.
Приветствую коллегу по цеху) тот же стек, но я data qa =)
Питон меня раздражает безответственностью писателей на нём. Два раза было так, что я уже мысленно представляю себе путь к завоеванию Галактики, и он должен сработать, потому что все нужные библиотеки и утилиты уже кем-то написаны на питоне и даже входят в Debian repository, но тут выясняется, что код-то на самом деле написан "на отъебитесь" студентом, чтобы сдать зачёт и ненадёжен. Чем проще язык, тем больше в нём таких вот студентов. Ну а самый луший язык -- 1. компилируемый 2. на котором код короче других для неэлементарных задач.
Сделал стартап на Python (Django), сейчас разрабатываю более эффективный алгоритм обучения для нейросетй. 🐍 ❤️