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

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

     23.06.2023       Выпуск 496 (19.06.2023 - 25.06.2023)       Статьи

Вскрываем средство для DDoS-атак на российскую ИТ-инфраструктуру

В начале апреля 2023 года на одном из хостов был обнаружен подозрительный файл mhddos_proxy_linux_arm64 (MD5: 9e39f69350ad6599420bbd66e2715fcb), загружаемый вместе с определенным Docker-контейнером. По открытым источникам стало понятно, что данный файл представляет из себя свободно распространяемый инструмент для осуществления распределённой атаки на отказ в обслуживании (DDoS), направленный против российской ИТ-инфраструктуры.

     23.06.2023       Выпуск 496 (19.06.2023 - 25.06.2023)       Статьи

Умный дом с голосовым ассистентом на минималках

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

     21.06.2023       Выпуск 496 (19.06.2023 - 25.06.2023)       Статьи

Что такое SpeedTab и как им пользоватся

В прошлой публикации я показывал как сделать токен для Google API и упомянул свою библиотеку как пример, где такой токен нужен. Вот прямая ссылка.SpeedTab это обертка на API от гугла, который позволяет работать и редактировать гугл таблицы. Библиотека также включает минимальный функционал для работы с гугл диском.В этой публикации я покажу как использовать библиотеку SpeedTab на нескольких примерах.

     21.06.2023       Выпуск 496 (19.06.2023 - 25.06.2023)       Статьи

О генерации скобочных последовательностей

Эта коротенькая заметка посвящена симпатичной задачке генерации в лексикографическом порядке всех правильных скобочных последовательностей. Её нередко включают в список задач для подготовки к собеседованию (например, здесь).

     20.06.2023       Выпуск 496 (19.06.2023 - 25.06.2023)       Статьи

Типизация в Python. Работа с Mypy, PyCharm и SQLAlchemy 2.0

На митапе «Типичный Python» поделились своим опытом, послушали коллегу из МТС Digital, а также ответили на вопросы участников. Приводим краткий обзор трех докладов: разбираем работу со средой разработки PyCharm, статическим анализатором Mypy и программной библиотекой SQLAlchemy 2.0.

     19.06.2023       Выпуск 496 (19.06.2023 - 25.06.2023)       Статьи

Суперклей ABI, или Как применять C++ где угодно

Время от времени я сталкиваюсь с понятием «двоичный», он же «бинарный» интерфейс приложений, или просто ABI (application binary interface). Все найденные мной материалы на эту тему были либо очень скудны, либо вели к многостраничным эпопеям, которые напоминали сборную солянку из описания, например, архитектуры процессора x86, сдобренную стандартом С++.

     19.06.2023       Выпуск 496 (19.06.2023 - 25.06.2023)       Статьи

Полнотекстовый поиск в PostgreSQL с SQLAlchemy

В прошлой статье я  писал о том, как реализовать end-to-end тестирование telegram-бота. А сегодня расскажу о том, как реализовать полнотекстовый поиск в Postgres посредством SQLAlchemy и как его проиндексировать. Вы узнаете, как подготовить файл миграции для alembic. В конце статьи я приведу ссылку на небольшой репозиторий, где реализовал сервис-класс для удобной интеграции поиска в свой проект. 

     19.06.2023       Выпуск 496 (19.06.2023 - 25.06.2023)       Статьи

А как понять? Делаем аналитику для бота с нуля. Часть 1 — пишем бота

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

     19.06.2023       Выпуск 496 (19.06.2023 - 25.06.2023)       Статьи

Поиск объектов на изображении. Часть 1

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

     18.06.2023       Выпуск 495 (12.06.2023 - 18.06.2023)       Статьи

Что под капотом у нейронной сети. Нейросеть c точки зрения математики и программирования

Цель данной публикации – комплексное рассмотрение строения искусственных нейронных сетей c точки зрения и математики и программного кода. В данной работе нейронная сеть реализуется на языке Python с использованием библиотеки tensorflow.keras. Статья сосредоточена в основном на строении и функционировании искусственной нейронной сети, поэтому такие этапы как обучение и т.д. в ней не затрагиваются.

     18.06.2023       Выпуск 495 (12.06.2023 - 18.06.2023)       Статьи

Мой первый супероптимизатор

Настало время для очередного бесполезного проекта.

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

     18.06.2023       Выпуск 495 (12.06.2023 - 18.06.2023)       Статьи

Заметки про увеличение картинок нейронными сетями

TLDR — это не готовое решение, это попытка самостоятельно разобраться, подобрать архитектуру и обучить генеративно-состязательную модель (GAN) для увеличения картинок в 2 или 4 раза. Я не претендую на то, что моя модель или путь рассуждений лучше каких-то других. Кроме того, относительно недавно стали популярны трансформеры и diffusion модели — заметки не про них.

     18.06.2023       Выпуск 495 (12.06.2023 - 18.06.2023)       Статьи

Сводка новостей от pythonz.net 11.06.2023 — 18.06.2023

А теперь о том, что происходило в последнее время на других ресурсах.

     15.06.2023       Выпуск 495 (12.06.2023 - 18.06.2023)       Статьи

Apache Airflow в связке с Kubernetes

В этой статье я поделюсь опытом в работе Apache Airflow в связке с Kubernetes. Мы соберем собственный образ Docker с python-скриптом, установим Airflow в Kubernetes, настроим автоматическую синхронизацию DAG'ов с удалённым репозиторием и их исполнение. Всё это — на примере запуска простейшего DAGа.

     14.06.2023       Выпуск 495 (12.06.2023 - 18.06.2023)       Статьи

Мокинг внешних API в Python

В этом руководстве я покажу, как протестировать использование внешнего API с помощью Python моков. Интеграция со сторонними приложениями — отличный способ расширить функциональность любого продукта. Однако дополнительные возможности продукта сопряжены с определенными препятствиями. Если вы не являетесь владельцем внешней библиотеки, у вас не получится контролировать серверы, на которых она размещена, код, составляющий ее логику, или данные, которые передаются между ней и приложением. Кроме того, пользователи постоянно воздействуют на данные при взаимодействии с библиотекой.

     14.06.2023       Выпуск 495 (12.06.2023 - 18.06.2023)       Статьи

Что такое индексация смарт-контрактов в Web3 разработке?

Статья в которой я скомпилировал знания полученные в течение года работы в web3 инфраструктурном провайдере о данных на EVM блокчейнах и инструментах разработчика для доступа к ним. Сложно сказать, что культура инженерии данных глубоко укоренилась в сообществе разработчиков Web3. И не каждый разработчик может легко определить, что означает индексация в контексте Web3. Я хотел бы уточнить некоторые детали на эту тему и поговорить об инструменте под названием The Graph, который стал де-факто стандартом индустрии для доступа к данным на блокчейне для создателей DApp'ов (децентрализованных приложений).

     13.06.2023       Выпуск 495 (12.06.2023 - 18.06.2023)       Статьи

Shawarma as a service: как создать бота для заказа шавермы и оставить голодными лишь 1,1% коллег

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

     13.06.2023       Выпуск 495 (12.06.2023 - 18.06.2023)       Статьи

Роли ChatGPT, которые первыми начинают диалог с клиентом и добивается поставленной бизнес задачи

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

     13.06.2023       Выпуск 495 (12.06.2023 - 18.06.2023)       Статьи

cv3 — делаем OpenCV питоничным

cv3 - это более питоничный интерфейс к OpenCV. Он упрощает работу с этой библиотекой, расширяет его синтаксические возможности, а также ускоряет исследования в области компьютерного зрения и выполнение задач по обработке изображений, при этом сохраняя гибкость и функциональность OpenCV.

     12.06.2023       Выпуск 495 (12.06.2023 - 18.06.2023)       Статьи

Автоматизация видеонаблюдения

В перечень обязанностей входит и администрирование систем видеонаблюдения [мы используем CTV и HiWatch], это обычная ситуация админ должен уметь все и сразу. Информацией в данной статьей я хочу поделиться в виду того, что потребовалось не мало времени для поиска решения задачи и написания небольшого скрипта.