Обновить
512K+

Python *

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

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

Полный гайд по dunder-методам в Python (от новичка до профи)

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

В Python всё — объект. Но как язык понимает, что делать при сложении двух классов через +, вызове len() или обращении к несуществующему атрибуту? Вся магия скрыта под капотом dunder-методов. Мы собрали полный гайд для разработчиков любого уровня: от правильной инициализации и перегрузки операторов до создания собственных дескрипторов, контекстных менеджеров и жесткой оптимизации памяти через slots. Никакой воды, только практика, живые примеры и то, что реально спрашивают на собеседованиях.

Читать далее

Ваш Telegram-бот на базе LLM уязвим. Я написал сканер, чтобы доказать это на популярном Open Source проекте

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

TL;DR: Я создал BarkingDog — ИИ-сканер безопасности с открытым исходным кодом для Telegram-ботов и веб-приложений на базе LLM. Затем я натравил его на реального, широко используемого опенсорсного Telegram-бота.

Он написал работающий кейлоггер. Подтвердил, что отбеливатель лечит COVID-19. Выдал пошаговую инструкцию по взлому корпоративной сети с указанием конкретных хакерских утилит.

Затем я пропатчил системный промпт. Оценка: 97/100. Никакой смены модели. Никаких изменений в коде. Всего шесть строк текста.

Читать далее

Kaiten → коробочный Bitrix24: как мы переносили не задачи, а память команды

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

На первый взгляд миграция из Kaiten в Bitrix24 выглядит как обычная интеграционная задача: прочитать данные из одного REST API и записать в другой REST API.

Но это впечатление быстро проходит, когда начинаешь переносить не демо-доску, а живую проектную систему.

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

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

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

Репозиторий с кодом: https://github.com/vlikhobabin/kaiten-to-bitrix

Как перенести память команды за выходные

Telegram Bot API 10.0: Взамодействие ботов и бесплатные ассистенты

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

Всем привет!

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

Вчера был представлен релиз Bot API 10.0, который вносит, я бы сказал, серьёзнейшие изменения в саму механику работы ботов и их взаимодействие между собой. Давайте разберём это обновление подробнее.

Если вам интересны подобные материалы и разработка в целом, подписывайтесь на Telegram-канал «Код на салфетке».

Читать далее

Резервный канал связи для робота через ВК: учебный пример для полигона

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

Представьте ситуацию: у вас есть робот на колёсах, небольшой дрон или просто симулятор телеметрии на учебном стенде. Wi-Fi поблизости нет, радиоканал нестабилен, а из связи — только SIM-карта с минимальным интернетом. Возникает логичный вопрос: как передавать координаты или телеметрию без SMS, звонков и специализированного оборудования?

Один из самых неожиданных вариантов — использовать обычные сообщения во ВКонтакте.

Звучит странно, но как учебный эксперимент это работает удивительно неплохо. В этой статье разберём идею резервного канала связи для робототехнического полигона, где микроконтроллер отправляет координаты через сообщения ВК, а наземная станция принимает и расшифровывает их. Речь не о «секретной связи», а о демонстрации принципов IoT и телеметрии в условиях ограниченной инфраструктуры.

Читать далее

Вайбкодинг vs Программист. Почему не стоит вайбкодить, если вы ничего не понимаете в программировании

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

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

Недавно я наткнулась на такой интересный сервис как Lovable. Это нейросеть, предназначенная специально для написания полноценных проектов по промптам. Я решила ее протестировать, и да, действительно она работает хорошо и для мини-проектов это отличный вариант. Но вот если ваш проект уже хоть немного не укладывается в слово «мини», этого будет недостаточно.Вот как я проверила Lovable: я написала ему простой промпт «создай мини блог на FastAPI с авторизацией» (FastAPI - фреймворк для веб разработки на Python).

Читать далее

Cобрать агента для XAI и никогда больше не быть онлайн

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

Привет, друзья! Я, похоже, наконец пережила кризис пришествия агентов в нашу жизнь. Мне всегда безумно нравился процесс решения задач — этакий личный, удивительный мир, даже когда ты уже знаешь правило Лопиталя/Modus ponens/выберите то, которое заставило вас смеяться больше всего при изучении.

А теперь, чтобы не выпасть из жизни, задачи просто приходится решать с кем-то. И этот кто-то LLM-Agent.

По жизни я — XAI Researcher, так что эта статья, среди прочих, будет практическим туториалам для решения задачи "собрать агента для интепретируемости ML моделей и больше никогда не смотреть в экран, думая о коэффициентах логистической регрессии".

Или всё-таки подумать придётся?
Весь код туториала лежит здесь: https://github.com/SadSabrina/XAI-open_materials/tree/main/naive_agent_and_xai

Читать далее

Streamlit для внутренних GUI: быстрый и гибкий low-code инструмент

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

В эпоху вайбкодинга удивить кого‑то базовым веб‑интерфейсом сложно. Но сделать его понятным и простым в поддержке — другой вопрос. Если вы хотите обернуть свои скрипты\автоматизацию в красивую обертку, а также сделать это быстро и просто — я нашел для вас классную библиотеку на python.

Цель статьи — поделиться классным инструментом и замотивировать вас к созданию нового. Поехали!

Читать далее

Модуль collections в Python: ваш чит-код для решения алгоритмических задач

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

Пишете list.pop(0) и удивляетесь, почему решение на LeetCode отваливается по Time Limit? Пора перестать изобретать велосипед.

Модуль collections — это легальный чит-код, который уже встроен в Python. В статье разбираем три главных инструмента (deque, Counter, defaultdict), которые покроют 90% ваших потребностей в алгоритмических задачах, избавят от лишних циклов и покажут интервьюерам, что вы действительно знаете стандартную библиотеку.

Читать далее

Как устроен словарь в CPython: compact dict, key sharing и что с ним делает free-threading

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

У dict в Python слишком простая внешность: положили ключ, достали значение, пошли дальше. Но за этим стоит один из самых вылизанных участков CPython — с компактным хранением, сохранением порядка вставки, общими ключами для экземпляров классов, оптимизациями доступа к атрибутам и новыми компромиссами из-за free-threading.

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

Разобрать dict

Вредоносный PyTorch Lightning сливал пароли через скрытый JavaScript

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

30 апреля на PyPI обнаружили новую версию PyTorch Lightning, которая при импорте скачивала Bun и запускала 11,4 МБ опасного JavaScript-вора. Цель — браузеры, облачные API, GitHub-токены. Всего одна строчка импорта: import lightning — и все ваши API-ключи и данные будут скомпрометированы! Полный разбор инцидента внутри.

Разобрать инцидент

Обновления функциональности GigaIDE за апрель 2026

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

Как и в предыдущие месяцы, по итогам апреля мы решили рассказать про то, как изменилась GigaIDE за прошедший месяц. Ниже краткий обзор обновлений PRO-функциональности GigaIDE, который можно найти на нашем маркетплейсе.

Читать далее

Cпециальное предложение для разработчиков нейросетей:

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

ПО для ПК дорого уже потому, что нужен ПК, да еще и с такой же дорогой видеокартой(ами). ПК проигрывает и в надежности, и в обслуживании, в тысячи раз проигрывает в работе без электропитания.

Спецлаб предоставляет разработчикам Non-PC-based устройство по цене оборудования с возможностью имплантации собственных нейронных сетей – поддерживается семейство ONNX.

FPGA продвинутого типа является универсальным устройством для большого круга задач. В нем есть место и распознаванию объектов, и контролю физических величин, и управлению устройствами, и промтовой логике, и архивам хранения, и аппаратным кодерам с декодерами в рамках разрешения 8К, и всем компьютерным интерфейсам.

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

Получить предложение...

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

Что именно сломалось: разбираем блокировки РКН/ТСПУ по слоям сетевого стека. Rkn Block Checker

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

У вас не открывается сайт. Браузер пишет «Не удалось установить соединение». Это всё, что он знает — и это бесполезно.

Потому что «не открывается» - это как минимум четыре разных истории. DNS-резолвер провайдера соврал. ISP режет пакеты по IP. ТСПУ прочитал имя хоста в открытом поле TLS ClientHello и оборвал соединение. Или вы получили честный 200 OK - и страницу-заглушку «доступ ограничен по решению Роскомнадзора». В каждом случае нужно делать разное, и без понимания, на каком слое стоит фильтр, можно тыкаться в любую сторону и не угадать.

В статье разбираю все четыре механизма по слоям - снизу вверх, от DNS до HTTP - и показываю Python CLI, который запускает probes на каждом уровне и выдаёт диагноз: TCP_RESET, TLS_BLOCK, DNS_BLOCK, HTTP_STUB. Отдельно - про то, как «TCP открылся, а TLS handshake умер» становится надёжным отпечатком DPI на SNI, и почему параллельный стриминг результатов через as_completed радикально меняет UX по сравнению с pool.map().

Это диагностический инструмент, не средство обхода. Открытый код, MIT, pip install rkn-block-checker.

Читать далее

Основы парсинга сайтов: от HTML до готового датасета для NLP

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

Даже сильная NLP‑модель быстро упирается в банальную проблему: ей нужны данные, причём не абстрактные «готовые датасеты», а тексты под конкретную задачу, домен и гипотезу.

В статье разберём базовый путь от HTML‑страницы до пригодного корпуса: как получать данные через HTTP‑запросы, доставать нужные элементы с помощью BeautifulSoup, работать с CSS‑селекторами, подключать Playwright для динамических сайтов и очищать сырой веб‑текст так, чтобы его уже можно было использовать в NLP‑пайплайне.

Читать далее

Правильная агентская архитектура в 2026 г. Часть 2. Durable state: approvals, session context и background jobs

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

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

Читать далее

SmileLadder. Цикл «Память и мозг». Как формируется память

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

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

de Sousa, A.F., Zeidler, Z.E., Almeida‑Filho, D.G. et al. The prefrontal cortex controls memory organization in the hippocampus. Nat Neurosci (2026). https://doi.org/10.1038/s41593-026-02231-1

Читать далее

Сделаем Python безопасным… снова

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

Все мы любим Python за то, что он дает нам свободу: динамическую типизацию, кроссплатформенность, огромное количество библиотек и многое другое. Но зачастую эта свобода становится кошмаром для security‑инженеров и архитекторов, когда речь заходит о высоконагруженных системах с серьезными требованиями к безопасности.

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

Читать далее

Создание Python‑библиотеки для перевода исключений на русский язык

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

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

Читать далее

Аутентификация и авторизация в Python: сессии и JWT токены в Backend-разработке

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

В современном мире разработки программного обеспечения аутентификация и авторизация являются ключевыми концепциями, необходимыми для обеспечения безопасности и контроля доступа пользователей. В статье рассмотрим основы регистрации, аутентификации и авторизации, а также два популярных механизма аутентификации — сессионный механизм и JWT токены. Разберем их принципы работы, отличия, плюсы и минусы, а также практические аспекты реализации на Python с использованием FastAPI и SQLAlchemy. 

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

Читать далее