Обновить
1024K+

Python *

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

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

Pandas: 4 вопроса, которые мучают 51% Python-разработчиков — и их правильные ответы

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

По данным Stack Overflow Developer Survey, pandas — самая ищемая Python-библиотека. Разбираем четыре топовых вопроса: итерация по строкам, переименование колонок, удаление NaN и фильтрация. Для каждого — несколько способов с бенчмарком и рекомендацией «как надо делать в 2026».

Читать далее

FunGP: питоничность против церемониальности JavaCard

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

Всем привет!

Традиционное вступление в стиле "плач Ярославны": GlobalPlatform, ISO 7816, JavaCard и прочие смежные стандарты - боль. Тонна материала написанная сухим языком так и навивает мысль, что авторы этого всего не инженеры, а юристы. Для примера скажу, что каждый стандарт ETSI начинается со смысловых определений глаголов "shall", "shall not", "should", "should not" и т.д. Нет, в канцелярском стиле ничего плохого нет. Плохо становится когда он плавно переходит поросячью латынь - и это одно из самых терпимых определений. Это же додуматься надо "размазать" требования к несчастной SMS-ске между пятью стандартами (ETSI 102-223/-225/-226 и 131-111/-115).

Ну вот ты преодолел пучины стандартов, затем засел за написание JavaCard-апплета, с чем тоже успешно справился, ну а дальше начинается квест "найди все тулзы". Инструментарий от Oracle для сборки .cap-файлов недоступен из России, благо есть один удобный в открытом доступе. Там же рядышком лежит тулза для установки/удаления апплетов (да и вообще управления жизненным циклом карты).

Итак, ты скомпилировал и загрузил апплет на карту. Классно! А дальше? А дальше поговорим в статье.

Читать далее

Мониторинг того, что нельзя «пощупать»: как следить за cron-задачами, бэкапами и серверами за NAT с помощью Heartbeat

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

Heartbeat-мониторинг — единственный способ проверить cron-задачи, фоновые процессы и устройства за NAT. Рассказываю, как работает эта технология в PingZen, и почему она проще и надежнее self-hosted решений.

Читать далее

Анатомия современного антифрода и автоматизация мультиаккаунтинга: Технический разбор AdsPower и его Local API

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

Если вы все еще считаете, что покупка «качественных» прокси или использование дефолтных настроек антидетект-браузера — это гарантия того, что ваш бот или скрипт не улетит в бан через 15 минут после запуска, у меня для вас плохие новости. Современные антифрод-системы (от Google и Meta до Cloudflare) уже давно перестали смотреть только на ваш IP-адрес.

Сегодня ваш «цифровой отпечаток» — это сложная нейросетевая модель. Они анализируют всё: от скорости отрисовки WebGL-контекста до того, как именно (с точностью до миллисекунд) ваш курсор перемещается по экрану.

В этой статье я не буду предлагать вам «волшебную таблетку». Я покажу, как выглядит современная лаборатория автоматизации «изнутри». Мы разберем, почему классические Selenium-фермы сегодня — это «красная тряпка» для систем защиты, и как через связку Python + Local API конкретного инструмента (в моем случае — AdsPower) выстроить систему, которую нейросети систем защиты будут принимать за реального, «офисного» пользователя.

Мы идем дальше, чем просто «создать профиль». Мы идем в сторону инженерной автоматизации.

Читать далее

Собственная облачная LLM на 16 ГБ VRAM — часть 1: базовая сборка, tools и MCP

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

Привет, Хабр! На фоне ажиотажа вокруг нейросетей все чаще встает вполне приземленный вопрос — сколько стоит содержать собственную LLM.

Современные ИИ-агенты уровня Claude, ChatGPT и DeepSeek уже давно перестали быть «чатами для развлечения». Это сложные системы, которые перед тем как выдать ответ, тратят десятки тысяч токенов на внутренние рассуждения, вызывают внешние функции, взаимодействуют с MCP-серверами и даже работают напрямую с интерфейсом ОС.

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

В статье я покажу практичный компромисс: как развернуть собственную облачную LLM, которая укладывается в 16 ГБ видеопамяти, поддерживает инструменты и вызов функций, интегрируется с MCP-серверами и может использоваться как полноценный API-сервис для бэкенд-задач. 

Читать далее

Знакомьтесь, Ричард Джонс (цикл заметок о выдающихся питонистах)

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

PyPI — централизованный каталог Python-пакетов. Сегодня в нем более 865 тысяч проектов общим весом 36 терабайт.

PyPI создал Ричард Джонс. В октябре 2002-го, в электричке, по дороге на работу в Мельбурн.

Будет интересно

Одна функция, которая заменила аналитика

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

Финансовый директор Алексей каждый понедельник тратил несколько часов на анализ продаж. Сейчас — 4 минуты 30 секунд. Рассказываю, как Python + Claude API превращают немые таблицы в диалог: задаёшь вопрос — получаешь ответ с цифрами и выводом. Без BI, без SQL, без аналитика в цепочке. ~75 строк кода, реальные грабли с 1С и контекстным окном.

Читать далее

Что с QA в 2026? Профессия умирает? Или все преувеличивают?

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

Раз в несколько месяцев я вижу одни и те же обсуждения:
«Manual QA больше не нужны»,
«Рынок перегрет»,
«Всё автоматизируют и заменят».

Если коротко — нет, QA никуда не исчезает.
Но профессия действительно сильно меняется. И тем, кто работает в тестировании, важно понимать в какую сторону.

В этой статье расскажу. Что нужно делать, чтобы не остаться у мусорки без работы 👇

Читать далее

Copper Filler: экономим на производстве печатных плат в KiCad

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

Copper Filler: экономим на производстве печатных плат в KiCad без нарушения изоляции

Привет, коллеги-разработчики!

Каждый, кто проектирует многослойные печатные платы в KiCad, сталкивался с необходимостью в процессе трассировки оставлять по схемотехническим или каким-то иным причинам большие по площади области свободными от медных (подключённых или не подключённых к цепям) полигонов. На внешних слоях это не представляет особых проблем. На внутренних всё немного не так. Cо стороны топологии это нормально, но с точки зрения производства — не очень.

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

Зачем это нужно?

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

Продолжим?

PEP — это не стиль, это язык, которым ты думаешь о коде

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

Я долго думала, что PEP — это про оформление. PEP 8: называй переменные вот так, PEP 257: пиши докстринги вот так.

Потом начала использовать их по‑настоящему и выяснилось, что часть из них вообще не про то, как выглядит код!

Читать далее

Я устал каждый раз собирать проект с нуля — и сделал универсальный Docker+Python-шаблон

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

Всем привет! Это моя первая статья на Хабре и я надеюсь и рассчитываю на вашу критику, дельные замечания, внимание и аплодисменты. Сим я начинаю серию статей посвящённых тому как создавать SaaS продукты, как подбирать нишу, как его собственно программировать и отлаживать, как выводить на рынок и всё в таком духе. Поделюсь своим опытом, так сказать.

Эта статья (и несколько последующих) будет посвящена сугубо технической части вопроса. Я расскажу о своём шаблоне для разработки и тестирования MVP, который ускоряет дело. Он у меня появился потому, что я любитель экспериментов и много раз делал разные микропроекты — боты, игры, сайты, парсеры и тому подобное В какой‑то момент я заметил что таскаю между проектами один и тот же кусок кода, который здорово ко всему подходит и с которого начинается каждый мой новый проект.

Итак, вашему внимаю представляю МЕГА ШАБЛОН УДОБНОГО БЫСТРОГО ПРОГРАММИРОВАНИЯ

«Чем же он так хорош?», спросите вы. И правильно сделаете что спросите! А я вам отвечу.

Читать далее более сильнее погнале

Как мы научились честно считать эффект промокодов: Causal Inference в онлайн-доставке X5 Digital

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

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

Представьте стандартный отчёт по промокампании: «Пользователи, применившие промокод, потратили на 800 рублей больше среднего». Бизнес доволен, маркетинг рапортует об успехе. Но подождите, а сколько из них потратили бы эти деньги и без промокода?

Это не риторический вопрос. Это принципиальная проблема, которая называется selection bias — систематическая ошибка отбора.

Читать далее

__str__ vs __repr__ в Python: конец путанице

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

«str для людей, а repr для машин» — эту фразу слышали многие, но на практике путаница всё равно остается. Почему функция print() иногда игнорирует ваши настройки? Что такое односторонний фолбэк? И зачем вообще писать оба метода?

Читать далее

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

Как мы с ИИ сделали локальный ИИ, который учится по моим книгам и пишет за меня отчёты

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

Я с GitHub Copilot (Claude) собрал полностью локальную RAG-систему с GUI, которая индексирует мои учебники и генерирует по ним отчёты, презентации, конспекты и эссе. Всё работает офлайн. В статье — архитектура, выбор компонентов, процесс совместной разработки с ИИ-ассистентом, грабли и рабочий код.

Читать далее

Научил ИИ-агента помнить важное и забывать лишнее в SQLite

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

Я делаю локально работающего ИИ-агента и столкнулся с тем, что стандартный подход «закинуть текст в векторную базу, достать по косинусу» для долгоживущего агента не работает: контекст замусоривается, факты конфликтуют, ничего не забывается. Вместо этого реализовал графовую когнитивную память поверх одного файла SQLite: эпизодические и семантические узлы, типизированные рёбра, именованные сущности, гибридный поиск (FTS5 + vector + graph) с Reciprocal Rank Fusion, кривую забывания Эббингауза и фоновую LLM-консолидацию. В статье — полная архитектура с кодом, SQL-схемой и формулами. Код и минимальный пример — в репозитории.

Дальше long-read

10 900 тестов: Как мы обеспечиваем качество в PingZen, или Почему ваш мониторинг должен быть протестирован

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

Мониторинг мониторинга - звучит как масло масляное, но именно этим мы постоянно занимаемся в PingZen. Ведь наш сервис должен быть надёжнее, чем объекты, которые он отслеживает. Если PingZen упадёт, кто сообщит о падении вашего сайта?

Сегодня я залезу под капот тестирования PingZen и расскажу, как мы дошли до 10 900 автоматических тестов (5100 на бэкенде и 5812 на фронтенде). Все цифры и технологии - строго из нашего репозитория . Без хайпа, только факты, код и архитектурные решения.А статью подробнее про Pingzen можете посмотреть здесь

Читать далее

Я делаю инструменты, которыми реально пользуются. Вот как это устроено

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

Внутренние инструменты — это странный жанр. Ты не делаешь продукт для миллиона пользователей. Ты делаешь для двадцати человек, которые будут использовать это каждый день. И если облажалась — они скажут тебе об этом лично. Прямо на созвоне. Иногда с демонстрацией экрана, где всё сломано.

Я занимаюсь этим несколько лет. Python, внутренние сервисы, утилиты, автоматизация. За это время появился довольно конкретный взгляд на то, как надо работать. Не из учебника, а через синяки.

Читать далее

Как я определял дистрибутивы Linux по установленным пакетам, и при чем тут KUMA?

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

Как определить дистрибутив Linux? А что, если имеется только информация о пакетах, установленных на устройстве? История одного «велосипеда» или мы не нашли готового решения.

Представьте, что вам нужно определить дистрибутивы, опираясь исключительно на установленные пакеты. Инвентаризация есть, но данные неполные — часто известно только имя хоста, IP и список установленных пакетов. Операционная система может быть указана как «Linux» без уточнения дистрибутива и версии. О создании алгоритма, работе с KUMA и написании код в данной статье.

Читать далее

Бизнес-логика первична, микросервисы — вторичны

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

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

Но есть более фундаментальный вопрос - кто в системе определяет правила игры?

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

- часть проверок живeт во фронтенде

- часть - в API,

- часть - в промежуточных сервисах

- часть — во временных проверках, добавленных после инцидентов

Добавили новый сервис в цепочку - и изменилось поведение.

Вынесли проверку в отдельный процессинг - и появились состояние гонки.

Перестроили оркестрацию - и неожиданно стала недоступной операция, которая раньше работала.

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

Для финтеха это особенно критично. Допустимость действия - это не просто проверка прав. Это функция состояния процесса, версии правил, контекста операции и регуляторных ограничений. Если эта допустимость зависит от связности сервисов или порядка их вызова, система становится хрупкой и уязвимой, и тогда, начинается разговор о подходе, в котором бизнес-логика централизуется, версионируется и становится инвариантной к физической архитектуре.

Мы отвлекаем существенные ресурсы в поисках решения для проблем.

Читать далее

Анонимные функции и функциональные инструменты в Python: От lambda до встроенных функций

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

В мире Python есть особый вид функций — невидимки. У них нет имени, документ-строки и даже нормального тела. Они живут одну строку и умирают, сделав свое дело. Это лямбда-функции.

Многие новички считают их бесполезной игрушкой или, наоборот, пытаются запихнуть всю логику в одну лямбду, превращая код в нечитаемое месиво. В этой статье мы разберемся, где проходит эта грань. Мы не просто выучим синтаксис lambda x: x, мы поймем, как они устроены внутри, как их использовать с инструментами вроде mapfiltersorted, и главное — когда от их использования стоит категорически отказаться.

Читать далее