Питонические атаки
1.19K subscribers
183 photos
4 videos
1 file
459 links
Всяческие заметки про программирование на Python и другие весёлые истории.
Download Telegram
Много нынче стало в интернете онлайн-курсов на различные темы — хороших и интересных. Настолько много, что при желании можно освоить практически что угодно за просто так, но с другой стороны часто ощущаешь себя полностью дизориентированным в этом океане информации.

Чтобы усугубить вашу дизориентацию в этом океане информации, делюсь ссылкой на еще одну малоизвестную платформу онлайн-образования, на которой, тем не менее, есть несколько годных курсов: https://ulearn.me/

Лично я еще давно смотрел вот этот курс про компьютерную безопасность: https://ulearn.me/Course/Hackerdom
Он содержит хорошие объяснения многих базовых вещей, так что полезен будет не только тем, кто хочет погрузиться в компьютерную безопасность, но и просто тем, кто хочет расширить свой кругозор и укрепить понимание основ. Рекомендую!

Из интересного на платформе есть еще вот такое, но я сам пока не смотрел:
* Оценка сложности алгоритмов: https://ulearn.me/Course/complexity
* Введение в математику: https://ulearn.me/Course/math
* Компьютерные сети: https://ulearn.me/Course/Networks
* Тестирование ПО: https://ulearn.me/Course/Testing

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

Странно, что находятся люди, которым это не нравится: https://glyph.twistedmatrix.com/2019/06/kernel-python.html

Шучу, конечно. На самом деле у Python и правда слишком жирная стандартная библиотека. Ладно, исполнитель «черепашка» я ещё могу понять зачем (чтобы влиять на неокрепшие умы детей, тем самым заманивая их в ряды программистов), но там есть куда более странные и дремучие вещи. И, к сожалению, множество модулей там пылятся без дела, потому что почти у всего есть внешняя более удобная и популярная альтернатива, которой все и пользуются. А код всё равно нужно поддерживать. Статью почитайте, там по делу всё написано.
Как думаете, долетела ли на Марс вместе с Персеверанс черепашья графика?
Anonymous Poll
26%
Надеюсь, что нет
33%
Наверняка, да
41%
Конечно, он ведь на ней и работает
В конце года релизнется Python 3.10, а там «отложенные тайп-аннотации» (это когда все тайп-аннотации по сути становятся просто строками, так что можно использовать ещё не определенные типы в аннотациях) станут поведением по умолчанию, и от этого никак нельзя отказаться. Из-за этого грозятся сломаться такие приятные библиотеки как pydantic и FastAPI, и, вероятно, многие другие, использующие тайп-аннотации в рантайме каким-либо образом 😢

https://github.com/samuelcolvin/pydantic/issues/2678

#fastapi
В тот тред из сообщения выше уже пришли Core Contributor’ы и представители Steering Council. Прям одно удовольствие читать этих умных и вежливых людей! Похоже, вопросик уже на контроле, так что сохраняем спокойствие и не паникуем 😌

Можно закинуть ребятам доллар, чтобы им лучше работалось на благо всех нас: https://www.python.org/psf/donations/

#fastapi
Flask готовится выпустить большое обновление. На данный момент уже доступна релиз-кандидат версия 2.0.0rc1. Судя по ченджлогу, это прям супер-крутой релиз. Обновляйтесь, пробуйте и отправляйте обратную связь разработчикам!

Из нового:
* прекращена поддержка Python 2, и благодаря этому в коде стали появляться тайп-аннотации;
* появилась возможность делать асинхронные хэндлеры.

Полный ченджлог: https://github.com/pallets/flask/blob/master/CHANGES.rst

Оригинальный пост: https://www.reddit.com/r/Python/comments/msbt3p/flask_20_is_coming_please_help_us_test/

#flask
Forwarded from БлоGнот
На канале NASA началась трансляция первого полета марсианского вертолета. Вертолет Ingenuity поднимется на 3 метра, повиснет там и приземлится. Это будет первый в истории человечества полет на другой планете. Можно уже смотреть, хотя пока полет не начался.
https://www.youtube.com/watch?v=p1KolyCqICI
docker-compose, походу, встроили в основной состав Docker CLI, так что теперь (с какой-то недавней версии) можно писать без дефиса:

Docker Compose is now in the Docker CLI, try `docker compose up`

Получается, переписали с питона на Go. Ну и дела!
По поводу Python 3.10 и разламывания Pydantic и FastAPI походу обошлось, как минимум ещё на год, а дальше будет видно. Ждём 3.11 😬

#fastapi
JetBrains (да блин, опять я про них пишу) собирают деньги для Django Software Foundation. До 29 апреля можно купить подписку на PyCharm Professional со скидкой 30%, а все собранные деньги пойдут в DSF.

Промокод на странице: https://www.jetbrains.com/pycharm/promo/support-django/

Не могу назвать себя большим поклонником Django, но и не могу недооценивать важность этого фреймворка для всей экосистемы веб-разработки на Python в целом. Зато точно могу рекомендовать PyCharm — если вы его хорошенько освоите, то это будет хороший буст для вашей эффективности как разработчика. Короче, имейте ввиду, что можно купить его со скидкой и одновременно поддержать экосистему — вин-вин. Инициатива хорошая, и за несколько лет ребята уже смогли таким образом собрать 140k$, что впечатляет.

#jetbrains
Питонические атаки
Кстати, по поводу Code With Me. Это абсолютно бесплатная (пока что, пока оно еще находится в разработке и, вероятно, содержит какие-то баги) функциональность, так что предлагаю не упускать возможности и попробовать. Ну вы только посмотрите, там даже есть аудио…
С тех пор, когда я об этом писал в предыдущий раз, у Code With Me вышел публичный релиз, и сервис разделился на разные тарифы. В бесплатном тарифе есть ограничения (3 гостя и продолжительность сеанса не более 30 минут). Но если у вас есть подписка на PyCharm или другие IDE, то вам доступен премиум тариф (50 гостей, нет ограничений по времени) и платить ничего отдельно не надо.

Стоит отметить, что важно лишь то, какой тариф у хоста, чья IDE шарится. У гостей вообще может даже не быть IDE (wat? как это работает?).

Пост в блоге: https://blog.jetbrains.com/blog/2021/04/12/code-with-me-reaches-public-release/

#jetbrains
NASA опубликовало список опенсорс зависимостей, которые использовались при разработке софта для Ingenuity — первого аппарата, взлетевшего не в земной атмосфере. Примечательно, что добрая часть этих зависимостей нам всем хорошо знакома — это самые обычные библиотеки на Python, которыми мы пользуемся постоянно, в том числе boto3, requests, attrs, Flask, и, конечно же, научный набор — numpy и scipy. GitHub в свою очередь раздал контрибуторам этих проектов бэйджи-ачивки. Такие бэйджи получило примерно 12 тысяч человек со всего мира.

Пост в блоге: https://github.blog/2021-04-19-open-source-goes-to-mars/
Список библиотек: https://docs.github.com/en/github/setting-up-and-managing-your-github-profile/personalizing-your-profile#list-of-qualifying-repositories-for-mars-2020-helicopter-contributor-badge

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

#flask
Дали ли кому-нибудь из вас такую ачивку на гитхабе? Если дали, то пишите в комменты, буду за вас гордиться и завидовать 😅
Судя по списку библиотек, можно подумать, что Ingenuity — это веб-сервер с API на Flask, который при этом ещё и пользуется какими-то сервисами с AWS (S3?), попутно перемножая матрицы, перемалывая все известные форматы данных (JSON, YAML, TOML и XML), нарезая какие-то картинки. У всего этого есть тесты на pytest, а где-то сбоку ещё GUI на Tkinter. Логи складываются в ElasticSearch, который тоже лежит где-то неподалёку.

Казалось бы, как вот это может взлететь? Но ведь летает!

#flask
Берегите своих детенышей!

via MonkeyUser

#meme
У black — автоформаттера кода на Python с фиксированным, ненастраиваемым стилем — вышла новая версия. К сожалению, это опять лишь бета.

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

О релизе: https://github.com/psf/black/releases/tag/21.4b0

Кстати, я же когда-то писал пост про black: https://semakin.dev/2020/05/black/
Как вы уже знаете, мне нравятся всякие опросы аудитории, а особенно их результаты, поэтому я каждый раз пощу сюда результаты StackOverflow Survey, Python Ecosystem Survey и так далее. А еще мне нравится Telegram.

Тут сейчас как раз проводится опрос пользователей Telegram. А вдруг что интересное будет в результатах? Я уже прошёл (заняло 5 минут), и вас тоже приглашаю. Вроде чего-то конфиденциально-идентифицирующего даже особо не спрашивали.

https://tgstat.ru/research
WSL (Windows Subsystem for Linux) — это когда ты, будучи на Windows, запускаешь терминал и оказываешься в полноценном bash (или что там у вас, лично мне нравится fish), где есть все привычные консольные инструменты. А скоро эта штука сможет запускать и графические программы внутри Linux, отрисовывая окна в Windows. И ваш софт с GUI из Linux прям попадёт в «Пуск» и в целом будет мало чем отличаться от обычных, виндовых программ. Эта функциональность уже доступна в сборках Windows Insiders, а код лежит на GitHub:

https://github.com/microsoft/wslg

Пока не понял, зачем мне это надо, но это очень круто. На скриншоте в репозитории у них запущен PyCharm внутри WSL.
Forwarded from Geeks (shekpar)
Себастьян Рамирез, известный под никнеймом "tiangolo", когда-то побывал в гостях у подкаста TalkPython и из этого выпуска я узнал о его проект FastAPI. Для тех, кто не знает - Себастьян разрабатывает фреимворк FastAPI и сейчас это очень быстро набирающий популярность инструмент для разработки HTTP сервисов на python. Фреймворк из коробки сразу предоставляет все плюшки использования тайпинга для валидации данных вкупе с моделями библиотеки pydantic, автогенерацией openapi спеки и много всего разного и приятного по мелочам. После фастапи мне пришлось даже зафрендзоноить aiohttp и навсегда бросить Flask, который в моей жизни так и оставался быстрой наколеночной хреновиной для прототипирования. В общем, я рад и всем кто не смотрел фреймворк - советую глянуть. Использую я его как для рабочих сервисов, так и для пэт-проджектов - ощущения самые положительные.

https://talkpython.fm/episodes/show/284/modern-and-fast-apis-with-fastapixx
Microsoft становится PSF Visionary Sponsor. Чтобы вы понимали, это наивысшая степень спонсорства. На данный момент с таким же статусом спонсируют Python только Google и Bloomberg. Microsoft вообще молодцы.

https://pyfound.blogspot.com/2021/04/welcoming-microsoft-as-visionary-sponsor.html

А ещё из этого поста стало известно, что Гвидо в Microsoft работает над улучшениями производительности CPython — эталонной реализации интерпретатора.

UPD: а в блоге Microsoft эта новость изложена интереснее:
https://devblogs.microsoft.com/python/?p=8396