Обновить
566.76

Python *

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

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

Как я писал свой первый веб‑чат на React + FastAPI и всё сломал (а потом починил)

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

История о том, как я перешёл от просмотра вакансий к реальному проекту. Сделал простой веб-чат на React + TypeScript и FastAPI, задеплоил на Vercel и Render, и столкнулся со всеми классическими проблемами начинающего разработчика: Git-хаос, CORS-ошибки, забытые коммиты и node_modules в репозитории.

В статье - честный рассказ про мой первый пет-проект: выбор стека, структуру проекта, работу с REST API, настройку деплоя и документацию. Без приукрашиваний, с реальными граблями и ощущением победы, когда всё наконец заработало.

Читать далее

Новости

И еще немного о QR кодах

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

Изначально я хотел написать статью про коды Рида-Соломона с иллюстрацией на примере работы QR кодов, в процессе подготовки сделал инструмент для визуализации промежуточных этапов построения QR кодов и обнаружил что у меня уже есть достаточно отсутствующего на хабре материала, в связи с чем немного поменял план. Кому не интересно читать, QR с КДПВ сгенерированы с помощью qr-verbose

pip install qr-verbose

Документация (англ.)

Про QR коды на хабре писали много, например одна из самых популярных статей за всё время "Читаем QR код" и куча переводных статей. К сожалению у этих статей есть кое-что общее: если вы попытаетесь прочитать код версии 4 и больше а также некоторые коды версии 3 следуя описанию из статей, то потерпите фиаско. Не верите? Попробуйте прочитать нижний код с КДПВ.

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

Читать далее

Сервисы — место, где живет бизнес-логика

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

Сервисы — место, где живет бизнес-логика

Здравствуйте! Идея написать эту статью пришла мне в голову абсолютно спонтанно. Я работаю в компании и, так сложилось, что нас имеет мы имеем DRF монолит на писят два миллиона строк кода. И вот однажды, чью-то светлую голову посетила мысль — «а давайте писать код одинаково». Идея прозвучала чертвоски просто и соблазнительно. С этого момента мы завели себе ишака по имени «Django Service Layer», и все дружно начали на него наваливать. Теперь навалю и вам. Би-бу-бип.

Читать далее

Подземелье c LLM-экспертами: используем PocketFlow и MCP для объяснения настолок

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

Всем привет! Меня зовут Артем, я Data Scientist компании RAFT. Сегодня я расскажу об своем pet проекте по объяснению правил для настольных игр. Цель данного проекта — понять, как можно собрать RAG агента без использования больших библиотек.

Читать далее

Плагины с человеческим лицом: истории комьюнити OpenIDE

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

Мы в OpenIDE хорошо понимаем, что среда разработки — это не просто набор инструментов и функций. Это пространство, в котором разработчик проводит значительную часть своего времени: думает, экспериментирует, ошибается и создаёт новое. Именно поэтому для нас особенно важны открытость, доступность и ощущение живого диалога внутри экосистемы. 

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

И когда до Нового года остаётся совсем немного времени, а сил на сложные технические материалы почти не остаётся, мы решили немного сменить ритм. Вместо глубоких разборов — лёгкое, тёплое и предпраздничное чтение. Так появилась идея серии интервью с участниками нашего комьюнити — людьми, которые создают плагины для OpenIDE.

Читать далее

Как интегрировать аудит-логи с SIEM: от теории к практике на Wazuh и RuSIEM

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

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

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

При должном подходе аудит-логи — не просто набор технических сообщений, а инструмент, который помогает как предотвращаь проблемы, так и эффективно расследовать их при необходимости. Но чтобы начать анализировать события, которые происходят в системе, нужно сначала эти события получить и передать анализатору — SIEM-системе. Этому и будет посвящена данная статья.

Читать далее

Автоотклики на hh.ru своими руками: когда API закрыт, выручит эмуляция интерфейса (часть 1)

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

Рынок найма IT-специалистов в России, кажется, реально «сломался» под натиском автоматизации. Соискатели массово вооружились нейросетями: автогенерация резюме, шаблонные сопроводительные письма и скрипты, которые пачками откликаются на вакансии. В ответ работодатели подкручивают фильтры, ATS и чат-ботов для первичного отбора — по сути, соискатели штурмуют рынок ИИ-откликами, а работодатели отбиваются ИИ-фильтрами. Флоу превращается в «битву двух ИИ», где люди — где-то рядом, иногда даже живые. (Habr)

Доходит до абсурда: HR пишет кандидату «Вы откликались на вакансию…», а кандидат отвечает «Это не я, это робот откликнулся». И вроде бы смешно, но рекрутеру — не всегда. (Сетка)

Решение hh.ru: с 15 декабря 2025 закрыли публичный API для соискателей. Старый добрый автоотклик через API (когда сервисы отправляли отклики «по кнопке» программно) — всё, приехали.

Теперь, чтобы автоматизация продолжала жить, приходится возвращаться в «ручной режим 2.0»: парсить HTML, эмулировать браузер и нажимать кнопки так, будто вы — очень мотивированный человек с бесконечным терпением.

Читать далее

Итоги года развития NoDPI — открытого инструмента для свободного интернета

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

Салют, Хабр! Прошел ровно год с момента публикации моей первой статьи про загрузку видео с YouTube. Бонусом к статье шла небольшая утилита для... кхм... модификации сетевых пакетов. Это был небольшой скриптик на Python, форкнутый от theo0x0/nodpi. Я не делал на него совершенно никаких ставок, но в комментариях посыпались восторженные (нет) отзывы, обсуждения и просьбы выложить на GitHub. Через полгода, в мае, я опубликовал статью с презентацией NoDPI и подробными объяснениями, что, как и почему. Публикация зашла, попала в топы Хабра, аудитория на GitHub стала расти. Еще через месяц вышел NoDPI for Android - немного сыроватый и неудобный, но вполне работающий и справляющийся со своей задачей.

И вот на дворе конец 2025 года. За окном мороз, падает снег, а значит самое время подвести небольшие итоги...

Читать далее

Ручное управление не делает нас сильнее: как я написал клиент для автоматизации тестирования

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

Всем привет! Меня зовут Стас, я ведущий инженер отдела сертификационного тестирования компании YADRO. Однажды мне стало лень вручную проставлять статусы тестов PASSED/FAILED в TestY TMS, и я написал свое клиент-серверное приложение ATS Studio. С его помощью я залечил боль ручного управления для нескольких команд YADRO.

Как мне это удалось, если я не пишу код на Python, и чему я научился в процессе, узнаете под катом.

Читать далее

Как я написал телеграм бота для отбора лучших криптоактивов для торговли

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

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

Целью данной работы стало создание автоматизированного скрипта, который позволяет в реальном времени отбирать криптоактивы с признаками повышенного интереса со стороны участников рынка. В основе подхода лежит анализ динамики открытого интереса (Open Interest) и его соотношения с движением цены. В качестве платформы для оповещений я выбрал telegram - настроим бота, который будет присылать уведомления по необходимым активам.

Читать далее

RAG — это не память. Разбираем архитектуру персистентных AI-агентов

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

Почему векторной базы/RAG недостаточно для качественной памяти ИИ-агентов. Приближаем поведение агента к человеческому с помощью архитектурных решений поверх LLM

Читать далее

Как налоговый юрист написал сервис для расчета пени по НДС с помощью LLM, не зная Python

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

Я налоговый юрист и автор телеграм-канала «Налоговый Инсайдер». В моей работе есть рутинные задачи, которые сложно автоматизировать стандартными средствами вроде Excel. Одна из таких задач — расчет пени по НДС при подаче уточненной налоговой декларации.

В этой статье я расскажу, как не написав самостоятельно ни строчки кода с помощью Gemini и ChatGPT я прошел путь от идеи до работающего приложения на Flask , и с какими неочевидными техническими проблемами (вроде устаревшего Python на хостинге и CGI-скриптов) столкнулся гуманитарий-юрист пытаясь запустить современную программу на обычном хостинге.

Читать далее

Нейропоисковик на 17 миллионов картинок: OpenCLIP, Qdrant и ZeroTier вместо облаков

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

Как сделать свой аналог Pinterest, если у вас нет бюджета корпорации, но есть 4 ТБ картинок (17 миллионов штук) и желание искать по ним не просто по тегам, а по визуальному стилю?

В статье — опыт построения распределенной системы поиска из подручных средств. Разбираем архитектуру: — Гибридное хранение: Backblaze B2 (холодное) + Домашний сервер (вычисления). — Сеть: Как ZeroTier объединил разрозненные ноды в одну Mesh-сеть без белых IP. — Векторный поиск: Как уместить 17 миллионов векторов OpenCLIP ViT-H/14 в 32 ГБ RAM с помощью Qdrant и квантизации. — Оптимизация: Почему поиск работает за 5 мс, а загрузка метаданных тормозила до 3 секунд, и как PostgreSQL спас ситуацию.

Полный разбор ETL-пайплайна и экономики домашнего HighLoad-проекта.

Читать далее

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

Один микросервис — один контейнер. День 1

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

Это первая статья о том, как идея проходит путь от прототипа до полноценного продукта — с участием архитектуры на каждом шагу. Формат — ADR (Architecture Decision Records): каждое решение зафиксировано по дням, чтобы показать реальную эволюцию проекта. Продукт вымышленный, проблемы — настоящие. Те самые, с которыми сталкиваются архитекторы и команды. Документация и код — в открытом доступе на GitHub.

Читать далее

Как мы построили систему видеоаналитики на open source и довели её до продакшена

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

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

Материал будет полезен инженерам, тимлидам и продакт-менеджерам и всем тем, кто рассматривает open source как основу для production-ready CV-систем.

Читать далее

AutoCraft‑Bot: Telegram как пульт управления Windows

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

Этот проект я изначально писал для себя и под свои рабочие привычки: хотелось иметь быстрый «пульт» к компьютеру/серверу из Telegram, где всё управляется кнопками, без постоянного ввода команд.

Потом стало понятно, что штука может пригодиться и другим людям, поэтому я решил выложить её в открытый доступ.

Репозиторий на GitHub

Последняя версия на GitHub на момент публикации: v1.1.7.

Если интересно, как всё начиналось и к чему я пришёл по ходу разработки, у меня уже выходили две статьи на Хабре:

Читать далее

Мало кто знает, но в Python есть switch/case: Гид по структурному сопоставлению (match/case) не только для версии 3.10+

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

Разбираем мощь match/case в Python: от базового синтаксиса до распаковки JSON и эмуляции в старых версиях.

Читать далее

Умная афиша концертов Золотого кольца России: Python + LLM

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

Таргетированная реклама не всегда предлагает те события, которые интересны 🎯. В афишах и лентах ВК сложно найти мероприятие под настроение, т.к. поиск в них отсутствует 🔍. На большинстве сайтов невозможно найти событие по смыслу, а только по точному совпадению названий 🤔

Данная статья знакомит с сервисом «Знаток концертов» 🎵 (https://www.t.me/koncert_calendar_bot), где интеллектуальный поиск позволяет находить мероприятие под желания и настроение по городам Золотого кольца России 🏛️
Для пытливых умов есть более углублённые технические блоки. В данных блоках разобраны: архитектура сервиса 🏗️, подводные камни❗️, развёртывание в продакшен 🚀

Приятного чтения 😉

Маленькая модель обыграла большие: почему Nanbeige4-3B меняет правила игры

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

В ноябре вышла модель Nanbeige4-3B-25-11 (а 6 декабря они выложили статью об обучении на arxiv). Её размер всего лишь 3 миллиарда параметров. Это почти в 100 раз меньше, чем GPT-4, и даже меньше, чем большинство открытых моделей.

Но вот парадокс: на тестах она достигает показателей выше, чем модели в 10 раз больше, а на бенчмарке WritingBench и вовсе держится на уровне проприетарных моделей занимая место между Gemini-2.5-Pro и Deepseek-R1-0528.

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

Читать далее

Как превратить звонки техподдержки в самообновляемую базу знаний на Python и LLM

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

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

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

В этой статье разберём инженерный способ автоматически извлекать из этого потока проблемы и решения и вести актуальную базу знаний с помощью Python, МТС Exolve и LLM.

Читать далее
1
23 ...

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