Обновить
524.95

Python *

Высокоуровневый язык программирования

Сначала показывать
Порог рейтинга
Уровень сложности

CPython — бессмертные Immortal объекты

Уровень сложностиСложный
Время на прочтение16 мин
Охват и читатели4.9K

Начиная с версии 3.12 Python поддерживает такой тип объектов, как бессмертные (Immortal). Бессмертными объектами являются глобальные константы, такие как None, False, True, а также некоторые другие объекты. Если вам интересно, что это за объекты, как ими становятся обычные смертные, где они используются и как повлияли на CPython — добро пожаловать.

Читать далее

Анатомия проекта по автоматизации на Python: как не запутаться в тестах

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели4.9K

Создаем с нуля профессиональный фреймворк для автоматизации API-тестов на Python. Пошаговый гайд по структуре проекта, использованию Pytest и Requests, который поможет новичкам избежать типичных ошибок и писать чистый, поддерживаемый код. От хаоса к порядку!

Читать далее

Raspberry Pi, веб‑камера и Python — все, что нужно для создания ИИ‑тренера по фортепиано

Уровень сложностиПростой
Время на прочтение9 мин
Охват и читатели3.4K

Здравствуйте! Меня зовут Ада Ло́пес, я студентка первого курса факультета «Креативные технологии и ИИ» в Университете Хауэст в Кортрейке.

Этот проект — моя первая полностью самостоятельная работа по интеграции искусственного интеллекта с «железом». Фортепианный тренер на базе ИИ — интерактивный комплекс для помощи начинающим в обучении игре на фортепиано. Система предоставляет обратную связь в реальном времени и отслеживает исполнение заранее заданной мелодии.

Под катом — весь путь создания проекта. Мы пройдем от обучения ИИ-модели и создания корпуса — до построения контура обратной связи и решения проблем с потоковой передачей данных в реальном времени. Опыт получился отличным! Он был наполнен отладкой, открытиями и множеством ночных тестов.

Читать далее →

Как я устал тестировать LLM-системы вручную и написал универсальный сканер уязвимостей

Уровень сложностиСредний
Время на прочтение9 мин
Охват и читатели13K

Полгода назад я работал над внедрением RAG-системы в крупной финансовой компании. Задача была типичная: построить корпоративного чат-бота, который мог бы отвечать на вопросы сотрудников по внутренним документам. Казалось бы, что может пойти не так? Берем готовую LLM, подключаем к базе знаний, добавляем немного магии с векторным поиском — и готово.

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

Читать далее

Bash vs Python: битва, где нет проигравших

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели6.2K

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

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

Читать далее

Промышленная автоматизация металлургического производства. Архитектурные решения и техническая реализация

Уровень сложностиПростой
Время на прочтение6 мин
Охват и читатели2.7K

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

Читать далее

RKNN Toolkit2: конвертация моделей и симуляция NPU Rockchip

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели2.8K

Rockchip — довольно крупная китайская компания, которая разрабатывает микросхемы для ТВ-приставок, смартфонов и планшетов. Мне довелось поработать с одноплатным компьютером Orange Pi 5, оснащенным ARM чипом RK3588 и NPU (neural processing unit) с заявленной производительностью до 6 TOPS.

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

Читать далее

AFlow: как создавать мультиагентные системы без программиста

Уровень сложностиСложный
Время на прочтение5 мин
Охват и читатели1.7K

Привет, Хабр!

Меня зовут Ярослав, я магистрант AI Talent Hub в ИТМО. Сегодня расскажу об одной из самых интересных статей ICLR 2025 — AFlow: Automating Agentic Workflow Generation.

В ней предложен подход к автоматическому созданию мультиагентных систем для решения прикладных задач с помощью LLM и алгоритма Monte Carlo Tree Search (MCTS). Разберёмся, как это работает и почему это важно.

Читать далее

Основы ETL на примере работы с Superset, Airflow и ClickHouse

Время на прочтение39 мин
Охват и читатели7.1K

В этой статье я расскажу, как можно запустить простой ETL-процесс на виртуальном сервере, используя связку Superset, Airflow и ClickHouse. В качестве платформы я взял готовую конфигурацию от Beget, включающую Superset и Airflow из коробки — это позволяет сосредоточиться на логике обработки данных, а не на настройке окружения.

В качестве примера мы подготовим процесс выгрузки и визуализации данных о товарах с сайта Wildberries.

Для извлечения данных мы будем использовать Python-библиотеки selenium и BeautifulSoup — они хорошо подходят для парсинга веб-страниц. Дополнительно применим re для обработки текстовой информации с помощью регулярных выражений.

Читать далее

Как мы топили «Госуслуги»: разбор фишинговой сети от разведки до abuse-репорта

Время на прочтение4 мин
Охват и читатели2.6K

Привет, Хабр. Сегодня я хочу поделиться историей одного небольшого, но увлекательного расследования. Все началось, как обычно, с малого — с одного подозрительного IP-адреса. А закончилось вскрытием целой сетки фишинговых доменов и отправкой финального «письма счастья» хостинг-провайдеру.

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

Читать далее

Ruff: мой опыт выселения legacy-линтеров и повышения производительности кода

Уровень сложностиПростой
Время на прочтение7 мин
Охват и читатели4.1K

Какими инструментами для линтинга и форматирования Python-кода вы пользуетесь? Black, Isort, Flake? Их существует множество, каждый следует своей цели, некоторые могут пересекаться по функциональности. Одни могут нравиться за автономность, другие — за возможности конфигурирования. И наверняка вы слышали о Ruff, который обещается заменить собой все.

Привет, Хабр! Я Гена, Python-разработчик в Selectel. В этой статье я опишу свой опыт перевода проекта на Ruff: что понравилось, что — не очень, к чему готовиться и, если все же решитесь, то как это сделать. Добро пожаловать под кат.

Читать далее

Высокоуровневые языковые возможности и тестирование в Python

Время на прочтение8 мин
Охват и читатели2.2K

Я впервые начал заниматься разработкой через тестирование ещё когда программировал на PHP. Тогда в нашем арсенале разработчика использовался отличный фреймворк SimpleTest от Маркуса Бейкера. Мне этот инструмент очень нравился. С тех пор я имел дело с фреймворками для тестирования на C, Perl, Java и Python, при этом SimpleTest до сих пор остаётся моим главным фаворитом независимо от языка.

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

Только когда я стал много программировать на Python, меня вдруг озарило, почему так происходит. В большинстве фреймворков xUnit, в особенности тех, где предоставляются хорошие мок-объекты, более чем адекватно поддерживаются любые паттерны тестирования, которые я только могу придумать. Фреёмворк SimpleTest определённо из их числа. Проблемы, с которыми я сталкивался, происходят из самого языка.

Читать далее

Регистрация событий в Astra Linux Special Edition

Время на прочтение10 мин
Охват и читатели4.4K

В статье вы найдете краткий обзор подсистемы регистрации событий - собственной разработки команды ОС Astra Linux.

Всё, что будет описано ниже, актуально для самой новой на момент написания статьи версии Astra Linux Special Edition - 1.8.2.

Поехали!

Читать далее

Ближайшие события

Шпаргалка для новичков — от GIT до Деплоя

Уровень сложностиПростой
Время на прочтение24 мин
Охват и читатели21K

Всем привет!

Недавно я провел опрос среди подписчиков моего Telegram-канала "Код на салфетке", спросив их о возникающих проблемах и ошибках при деплое. Ответов накопилось немало, и большинство из них касались применения Docker. Однако были и комментарии о том, как организовать проект и репозиторий.

В этой статье мы обсудим ключевые моменты, которые помогут вам правильно организовать git-репозиторий, подготовить Docker-файлы, а также сделать процесс деплоя более гладким. Кроме того, мы подробно рассмотрим механику деплоя на двух примерах: деплой приложения на облачную платформу Dockhost и классический деплой на VPS с помощью Docker Compose.

Читать далее

Автоматизируем сканирование IT-инфраструктуры: скрипт v2.0 для Сканер-ВС 6

Время на прочтение7 мин
Охват и читатели2.2K

Привет, Хабр! Это Антон Дятлов, инженер по защите информации в Selectel. В одной из предыдущих статей я рассказывал, как настроить скрипт, который через API «Сканер-ВС 6» запустит сканирование, создаст отчеты и отправит уведомление в Telegram. Мы научились запускать сканер по расписанию через cron, импортировать IP-адреса и подсети, получать отчеты об уязвимостях. Такой подход хорошо работал на небольших объемах, но в реальных задачах — особенно в инфраструктурах с десятками и сотнями хостов — быстро всплыли ограничения: скрипт требовал ручного контроля на многих этапах, переход между стадиями (сетевой скан → скан уязвимостей → отчет) приходилось отслеживать вручную, проявилась ошибка в сканере, которая не позволяла корректно удалять ассеты.

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

Читать далее

VisionPilot: автономный автопилот на Betaflight и Orange Pi 5 с YOLO и ELRS

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели1.8K

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

Эта концепция уже воплощена в проекте VisionPilot — автономном автопилоте на базе Betaflight и Orange Pi 5 с аппаратным ускорением YOLO и управлением через ELRS. VisionPilot — это простой, расширяемый и доступный инструмент, который сочетает мощь нейросетевого обнаружения объектов и надёжность протокола управления для создания настоящей автономии.

Читать далее

VPN-клиент для Windows своими руками: L2TP, PPTP, маршруты и Telegram-уведомления

Уровень сложностиСложный
Время на прочтение4 мин
Охват и читатели7.8K

Рабочая задача: развернуть VPN на MikroTik с поддержкой L2TP и PPTP, авторизация — через Radius.
В роли серверов — стандартные для нас RouterOS CCR1016-12G. Параллельно возникло требование: подобрать клиент под Windows, чтобы можно было просто передать пользователям исполняемый файл, и они могли подключиться — без инструкций, .bat-файлов и шаманства.

Читать далее

PEP-734: Субинтерпретаторы в Python 3.14

Уровень сложностиСложный
Время на прочтение16 мин
Охват и читатели6.1K

Привет! Меня зовут Никита Соболев, я core-разработчик языка программирования CPython, а так же автор серии видео про его устройство.

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

Под катом будет про: новые питоновские API для ускорение и паралеллизации ваших програм, про управление памятью, про дублирование данных. Ну и много C кода!

Чтобы разобраться в вопросе и рассказать вам, я сделал несколько важных шагов: прочитал почти весь код данной фичи, начал коммить в субинтерпретаторы и взял интервью у автора данного проекта. Интервью доступно с русскими и английскими субтитрами. А еще я добавил кучу контекста прямо в видео. Ставьте на паузу и читайте код.

Если вам такое интересно или целиком незнакомо – добро пожаловать!

Читать далее

Anchor Optical TrackeR: Система трекинга смещений и поворота на основе оптического потока

Уровень сложностиПростой
Время на прочтение2 мин
Охват и читатели399

Реализация метода визуальной одометрии для оценки смещения и угла поворота камеры с использованием простого оборудования и OpenCV. Используется улучшенный трекинг оптического потока и «верёвочный» метод стабилизации движения.

Читать далее

Как превратить свою аватарку Telegram в термометр?

Уровень сложностиСредний
Время на прочтение5 мин
Охват и читатели41K

Снова всех приветствую. В моей прошлой статье "Как превратить статус Telegram в статус Steam" вдохновленной статьей "Как превратить свою аватарку в Telegram в часы" я описал интересную концепцию. Почитав комментарии с обеих статей, я пришел к еще одной идее. А именно - аватар с термометром. Это будет последняя статья, которая будет описывать скрипты для стилизации вашего аккаунта в ТГ.

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

Читать далее

Вклад авторов