Обновить
512K+

Python *

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

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

Бот разобрал 1518 вакансий на hh.ru и отправил 339 откликов

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

Летом я написал бота, который сам искал вакансии на hh.ru, оценивал их через LLM, писал сопроводительные и откликался. За два месяца он разобрал 1518 вакансий и отправил 339 откликов. Рассказываю, что из этого вышло: воронка, какие правки поднимали конверсию и почему расширение поиска ее уронило.

Читать далее

Инди космос за 6 лет. От лобби в VR до мультиплеерной игры

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

Я помню свои первые впечатления от лобби когда я впервые включил Oculus Quest. Космическая станция на орбите. За окном — вселенная. Солнечный свет отражается от стен каюты. За пределами атмосферы солнце кажется необычайно ярким. Вентиляция тихо гудит. Хотелось запрыгнуть в челнок и помчаться по просторам космоса. Но тогда я не знал о существовании подходящей игры. А может, её просто не было. Безумно хотелось летать.

Шесть лет назад появилась идея игры, которая со временем превратилась в Орбиту.

Полетели?

Как я запускаю маленькие Python‑скрипты на VPS: systemd, логи, автоперезапуск и алерты в Telegram

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

Скрипт, запущенный через nohup или в screen, однажды тихо умирает, и узнаёшь об этом через неделю. Показываю минимальную схему на systemd: сервис с автоперезапуском, логи в journald с уровнями, таймер вместо cron и сообщение в Telegram, когда что‑то упало. Без Docker и без внешних сервисов.

Читать далее

Dao PDF или Автоматизация печати в конструкторском бюро, часть 2

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

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

Читать далее

CERTIFICATE_VERIFY_FAILED на российском API: как доверять сертификату Минцифры только в одном клиенте Python

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

Сервер российского API подписан цепочкой Минцифры, и Python падает с CERTIFICATE_VERIFY_FAILED. Показываю, как доверять этому сертификату ровно в одном клиенте: свой SSLContext, промежуточный сертификат как якорь и флаг VERIFY_X509_PARTIAL_CHAIN, без verify=False и без корня в системе. Чем рискуешь с этим флагом, как то же сделать в aiohttp, httpx, requests и urllib, как сверить отпечаток и что делать при смене сертификата.

Читать далее

1С Напарник. Стоит он того?

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

Что решает, дорогое и долгое дообучение узкой модели или хорошая обвязка вокруг обычной облачной?

На первый взгляд модель вендора с неограниченным и привилегированным доступом к материалам 1С не оставляет шанса конкурентам. Есть ли преимущество на практике?

Собрали интерактивного помощника на open-source стеке и сравнили его с 1С-Напарником на семи вопросах из повседневной работы пользователей и разработчиков.

Читать далее

Как мы сделали простой офлайн‑разметчик для YOLO и COCO с семантической и panoptic‑сегментацией

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

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

Мы начинали работы с моделями детекции — как‑то по инерции с предыдущего проекта. Но этого опыта и знаний (а также обученных ранее моделей) оказалось недостаточно для решения поставленных задач. Тогда мы обратились к сегментационным моделям. И сразу возник вопрос об адекватном инструменте для разметки данных.

Если вы обучали свою модель детекции или сегментации, то знаете: самое долгое — не обучение, а разметка. Готовые инструменты делятся на две группы. Серверные (CVAT, Label Studio) умеют всё, но их нужно разворачивать и поддерживать. Эти инструменты замечательны, но очень непростые в освоении и затратные с аппаратной точки зрения.

Существующие простые десктопные вроде labelImg ставятся за минуту и очень удобные в освоении, но не обладают нужным функционалом — умеют в основном размечать прямоугольники (bbox). И стало понятно, что нам нужна была середина: программа, которая запускается на ноутбуке без сервера и делает разметку bbox и полигональную разметку.

Сделали простую программку, которая делала то, что надо. Но дальше — больше: сначала понадобились повёрнутые рамки (OBB), потом маски, затем многопользовательский режим, а под конец — семантическая и panoptic‑сегментация. И всё это нужно было выгружать в форматы, которые без доработки едят YOLO, Detectron2 и Mask2Former. Так появился YOLO Annotator. Код открыт (GPL-3.0), ниже — что он умеет и как устроен изнутри.

Читать далее

Своя модель решений на русском за вечер аренды GPU: что она умеет, сколько стоит и где проигрывает

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

Немалую долю задач в бизнесе, где применим ИИ можно свести к выбору варианта ответа на тот или иной вопрос, например, куда направить обращение, кто согласует заявку, срочная ли жалоба. Я дообучил открытую модель на 4 млрд параметров на русских задачах за несколько сотен рублей аренды видеокарты и честно сравнил её с YandexGPT, GigaChat и открытыми аналогами, в том числе на задачах, которых не видела ни одна модель. На своих задачах 84,5% точности и почти две трети потока на автоматике при 95% правильных решений, на чужих верхняя группа, но не лидер. Плюс грабли, на которые стоит не наступать, и метрики, которые стоит требовать от подрядчика. Модель и код открыты.

Читать далее

Вайбкодим плагины для open‑source видеоредактора

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

В этой статье будет инструкция, как создавать плагины для open-source видеоредактора Wunjo Make самостоятельно или через Claude Code, Codex, Cursor. Для этого в репозитории я добавил код сборщика и умения для облачных языковых моделей. Плагины могут работать с локальными нейронными сетями или через API, а также управляться через MCP.

Читать далее

Я написал сканер уязвимостей для вайбкода и проверил им 3 800 чужих репозиториев

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

Сегодня Telegram-бот для продажи VPN собирается за вечер: Cursor, пара промптов, и он уже принимает деньги. Только в config.py лежит токен бота, Postgres открыт наружу, а в истории git остался .env, который «потом удалили».

Я написал SAST-сканер для кода, сгенерированного ИИ, и прогнал его по 3 800 публичным репозиториям. Рассказываю, что нашлось, как 16 378 сырых находок превратились примерно в 30 настоящих утечек и почему я не проверил ни одного чужого ключа.

Читать далее

Что отвалится у вашего сайта, если завтра отключат иностранные сервисы. Проверил 50 сайтов

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

Мне стало интересно, насколько российские сайты в 2026 году ещё зависят от зарубежных сервисов. Не в смысле «пользуется ли компания Zoom», а буквально: что сломается у сайта, если завтра иностранный провайдер отключит российских клиентов.

Я написал открытую утилиту и прогнал через неё 50 сайтов: банки, магазины, операторов связи, авиакомпании, госорганы. Спойлер: серверы почти все уже перевезли, а вот сертификаты, аналитика и шрифты остались. Рассказываю, что нашлось, как устроена проверка и как одна регулярка повесила всю программу.

Читать далее

Код в Word без картинок: подсветка синтаксиса через python-docx и Pygments

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

В прошлой статье мой генератор отчетов вставлял код в Word картинками, и первый же комментарий был: «Код рисунками – брр». Справедливо: такой код не скопировать, не найти поиском, а при печати он мылится.

Разобрался, как сделать правильно: листинги текстом с подсветкой синтаксиса, рамкой, заливкой и автонумерацией «Листинг N» через поля Word. Все на python-docx и Pygments, около ста строк. По пути – пара ловушек, о которых почти нигде не пишут: почему Word может не открыть документ из-за порядка XML-тегов и зачем задавать шрифт четыре раза.

Бонус – замеры: 30 листингов текстом собираются за 0,6 с против 4,1 с картинками, а файл получается в три раза легче.

Разобраться в деталях

Используем ISD для защищенной персонализации Java Card апплета

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

Всем привет!

В статье «Асимметричная криптография в JavaCard» приводится пример создания канала защищенного обмена сообщениями на сессионных симметричных ключах, вырабатываемых по протоколу ECDH. У этого решения есть два спорных момента: во-первых, сама реализация потребует дополнительных ресурсов на тщательное тестирование, а во-вторых ECDH не обеспечивает аутентификацию сторон. Этот пункт более актуален, т.к. без поддержки апплетом инфраструктуры открытых ключей (PKI) и цифровых сертификатов, он выдаст секреты любому, кто знает параметры эллиптической кривой. Т.е. нужна еще куча времени на разработку и отладку. Преодолеть эти сложности можно одним элегантным решением: использовать механизмы безопасности, предоставляемые «главным по карте» - Issuer Security Domain.

Читать далее

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

Локальный ассистент для зумов, часть 9: Nemotron от NVIDIA — почему взял и что получил

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

Чароит записывает мои созвоны, а после кнопки Стоп собирает стенограмму, протокол и граф встречи. Самое капризное место во всей цепочке — понять, кто что сказал. Это называется диаризацией. Ошиблась она, и решение в протоколе повисает на другом человеке.

23 сентября NVIDIA выложила нейросеть, которая только этим и занимается. Через пять дней она уже работала у меня. Сейчас через неё идут оба канала звонка, очные встречи и живая лента.

Читать далее

Почему pandas и ClickHouse считают разные перцентили на одних данных и как добиться совпадения

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

Один и тот же набор из десяти заказов, а p90 получается от 3900 до 12 500 рублей. В ноутбуке аналитика одна цифра, на дашборде другая, и даже повторный запуск запроса иногда меняет результат. Причина может скрываться в самой функции расчёта перцентиля — разберёмся, как разные инструменты выбирают значения и какой метод использовать, чтобы метрики можно было сравнивать.

Разобраться в перцентилях

Данные для языка, которого почти нет в интернете: текстовые слои, турецкие подмены и псевдоразметка двумя моделями

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

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

Эта статья про данные. Оговорка та же, что и раньше, только строже: я не называю источники, архивы, издания, каналы, людей и организации, которые нам что-то передали, и не рассказываю о договорённостях с ними. Нет здесь и названий моделей, порогов фильтров и внутренних скриптов. Объёмы даю порядками величин. Зато будут метрики, методика проверки и грабли, на которые я наступил, и все цифры взяты из отчётов экспериментов, а не по памяти.

Читать далее

pyrusmorph: в 30 раз быстрее. Интеграция ядра libmorph/rus в Python

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

Разбираем производительность морфологических анализаторов для русскоязычных текстов в Python-среде. Расскажем, почему библиотеки семейства PyMorphy работают так медленно и как интеграция нативного C++ ядра libmorph/rus решает проблему производительности high-load систем.

Читать далее

Почему docker stop ждёт ровно 10 секунд и что при этом теряет Python‑воркер

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

Контейнер с Python-воркером останавливается не сразу, а ровно через десять секунд. Docker всё это время ждёт, пока процесс отреагирует на SIGTERM, а тот его не слышит. Разбираю, почему так выходит с PID 1 и shell-скриптом в ENTRYPOINT, чем помогает и чем не помогает init: true, и показываю короткий шаблон asyncio-воркера, который дописывает текущую пачку данных и выходит сам.

Читать далее

Opencode, история сессий и база данных

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

Я обнаружил, что история работы с AI‑агентом может быть полезным источником информации. Поэтому создал инструмент, который позволяет проще исследовать эту историю и возвращаться к результатам прошлой работы.Представляю вам opencode-db — это CLI‑утилита для быстрого изучения, поиска и экспорта истории сессий OpenCode без необходимости вручную разбираться во внутреннем устройстве SQLite‑базы.

Подробности

Слепой краш-тест 27 LLM осени 2026 (GPT-6, Opus, Алиса): кто сломал JSON, проглотил инъекцию и влетел на 152-ФЗ

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

В январе этого года я уже выкладывал на Хабре свой первый большой аудит 14 нейросетей на галлюцинации (тогда я пару недель гонял тесты в декабре сразу после выхода Gemini 3, а в январе упаковал результаты в статью). За прошедшие девять месяцев ландшафт изменился до неузнаваемости: вышли новые поколения флагманов, а требования бизнеса сместились от «поболтать в чате» к жёстким продакшен-пайплайнам.

Этой осенью я специально держал паузу и не запускал новый прогон, пока на арену не выйдет последний из ожидаемых мастодонтов - Google Gemini 4 Argon (и попутно за пару дней до теста успел захватить свежайшую Muse Wonder).

Почему я вообще трачу время и свои деньги на такие тесты? Большинство публичных бенчмарков сегодня малопригодны для реальной инженерной работы. Когда мы проектируем B2B-пайплайн или агентский контур, нам плевать, сколько баллов модель набирает в синтетическом MMLU или как хорошо она решает олимпиадные задачки в вакууме.

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

- Сломает ли модель парсер, добавив вежливое Вот ваш JSON: перед фигурной скобкой?

- Проглотит ли она косвенную инъекцию (Indirect Prompt Injection) из клиентского письма, самовольно выставив в CRM статус «100% предоплата согласована»?

- Начнёт ли сыпать китайскими иероглифами или выдумывать несуществующие статьи УК РФ с пометкой точно?

- И сколько времени и денег сожрёт один сквозной прогон - полцента за 30 секунд или полтора доллара и полчаса ожидания?

Читать далее