IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте нас в Twitter

     05.01.2022       Выпуск 420 (03.01.2022 - 09.01.2022)       Статьи

Транзакционное юнит-тестирование приложений с БД

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

В этой статье я хочу провести обзор разных способов юнит-тестирования приложения с БД и рассказать о способе, который я не видел в русскоязычном сегменте интернета. Статья будет посвящена Python 3, pytest и ORM-фреймворку SQLAlchemy, но методы переносимы на другие инструменты.

     02.01.2022       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Обходим файловый кэш Google Drive в Colab

Про colab знают, наверное, все. Этот инструмент позволяет независимым исследователям использовать облачную инфраструктуру с GPU и TPU бесплатно или почти бесплатно. Как всегда, проблемы возникают на больших данных.

     02.01.2022       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Защищаем REST API от парсинга генерируемыми токенами

Итак, предположим у нас есть на фронте React.js, на бэке соответственно DRF. Либо другие аналоги. API бэкенда полностью открыто - как для нашего фронта, так и открыто для postman, scrapy и т.п. Также у нас есть информация, что используя наше же api - конкуренты активно парсят цены, остатки и т.п. Можем ли мы им это запретить? - Не думаю. А вот усложнить им жизнь и развлечся за деньги заказщика сделать это интересным образом - вполне.

     31.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Сравнение быстродействия def и lambda функций. Так все таки быстродействие или читабельность?

Читая pep8, я наткнулся на пункт об использовании анонимных функций - по версии пепа, они снижают читабельность, если использовать переменную с значением функции как функцию, лучше использовать def. Я решил сравнить def и lambda по другому параметру - быстродействию. Я предполагал, что lambda, заточенный под однострочники , будет быстрее выполняться и создаваться. В этом исследовании я это проверю.

     30.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Новогодний детектив, или странный хайзенбаг в «питоньих» часах

Далее собственно детектив как оно есть, "расследование" которого ещё не окончено, можно присоединиться кстати… Пост будет обновляться, по окончанию (я надеюсь что баг таки найдётся) пост изменит название получив префикс "[SOLVED]"...

     30.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

TalkPython: лучшие пакеты Python по итогам 2021 года

На КДПВ в гостях у TalkPython вы видите Гвидо ван Россума — создателя Python, Марка Шеннона, план ускорения Python в 5 раз за 4 года и, конечно, автора подкаста. А мы делимся подборкой пакетов Python, о которых шла речь в выпусках за уходящий год.

     29.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Релизы
     29.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Как мы распознаем фото документов пользователей. Часть II

В прошлой статье я кратко описал методы и подходы, которые мы используем в inDriver при распознавании фото документов. Во второй части подробно опишу архитектуру CRAFT и CRNN, а также варианты их использования. Прошу под кат!

     29.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Django Rest Framework для начинающих: как работает ModelSerializer

В предыдущих статьях мы подробно разобрали работу сериалайзера на основе классов BaseSerializer и Serializer, и теперь мы можем перейти к классу-наследнику ModelSerializer.

     29.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Фонд золотых цитат: как сгенерировать стикеры из сообщений в Telegram

Все началось с одной из учебных групп в Telegram. Студенты там очень любят делать стикеры из сообщений своего преподавателя. Я выяснил, что делаются они в полуавтоматическом режиме: сообщение пересылается в бота, который рисует «пузырек» сообщения, а результат пересылается в официального стикер-бота.

     28.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Опыт применения теоремы о свертке с использованием scipy.fft

Теорема о свёртке утверждает, что преобразование Фурье от свёртки двух функций является произведением их Фурье образов

     27.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Выбираем быстрый детектор людей в 2021

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

     27.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Тестирование GraphQL: подходы, инструменты, автоматизация

Это произошло, когда я присоединилась к одному из наших проектов, где был не только привычный REST, но и GraphQL API. Это было моё первое знакомство с ним. Я понятия не имела, что он собой представляет, в чем его особенности, а самое главное для меня, как QA инженера – не знала, как его тестировать. 

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

     27.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Как мы оптимизировали i-запросы, а нашли неточности в документации Django (clickbait)

В современных веб-приложениях большинство запросов к базе данных пишется не на сыром SQL, а с использованием объектно-реляционного отображения (ORM). Оно автоматически генерирует SQL-запросы по привычному объектно-ориентированному коду. Однако эти запросы не всегда оптимальны,  и с  ростом нагрузки на веб-приложение встает вопрос их оптимизации. Как раз в ходе такой оптимизации наша команда обнаружила, что документация Django с нами не совсем честна.

     27.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Torch Hub Series #2: VGG and ResNet

In the previous tutorial, we learned the essence behind Torch Hub and its conception. Then, we published our model using the intricacies of Torch Hub and accessed it through the same. But, what happens when our work requires us to… The post Torch Hub Series #2: VGG and ResNet appeared first on PyImageSearch.

     27.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Работа с госзакупками Казахстана и Узбекистана: туториал со скрепером

Недавно пришлось познакомиться тесно с порталами государственных закупок Казахстана и Узбекистана в рамках Школы Данных. Мы (авторка поста, разработчик скрепера и журналисты) исследовали тему "доступной среды" (удобная инфраструктура для людей с инвалидностью) и столкнулись с необходимиостью написать скрепер, которые бы скачивал данные по ключевым словам.

     27.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Видео

Moscow Python Podcast. Python в ML системах (level: all)

В гостях у Moscow Python Podcast Python Техлид компании СберДевайсы Владимир Соколов. Поговорили с Владимиром о том, чем может заниматься Python разработчик в ML системах и о проблемах речевой аналитики.

     27.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Новогодняя ёлочка на рабочий стол

Помню, лет так 12 назад, когда я был ещё школьником, у всех моих знакомых стояла windows XP. И в преддверии нового года у нас была традиция, скачать на каком-нибудь сайте новогоднюю ёлочку, которая запускается отдельной программой и просто на рабочем столе (либо на любом другом окне, если её открыть поверх окон) играет гифка с этой ёлочкой. Мелочь, но к новогоднему настроению она давала в те года +100 очков.

     27.12.2021       Выпуск 419 (27.12.2021 - 02.01.2022)       Статьи

Разбираемся с сессиями в SQLAlchemy

В этой небольшой статье я хочу дать ответ на вопрос, который возник у меня, когда я познакомился с сессиями в SQLAlchemy. Если сформулировать его кратко, то звучит он примерно так: “А зачем оно надо вообще”? Меня, как человека пришедшего из мира джанги, сессии приводили в уныние и я считал их откровенной фигней, которая усложняет жизнь. Но я ошибался. Как оказалось, сессии в алхимии - штука очень даже полезная. И вот почему.

 

     26.12.2021       Выпуск 418 (20.12.2021 - 26.12.2021)       Статьи

Django-sockpuppet, интересная альтернатива React, Vue, Angular или очередная заброшенная джанговская «батарейка»?

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