Обновить
632.95

Python *

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

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

Критическая уязвимость в камерах v380: Как plaintext credentials раскрывали миллионы устройств

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

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

Проблема оказалась банальной и пугающей одновременно: учетные данные пользователей передавались по сети в открытом виде. Любой, кто знал ID камеры, мог подключиться к незащищенному relay-серверу, перехватить логин и пароль владельца, получить полный доступ к видеопотоку и даже транслировать заранее записанное видео вместо live feed — как в классических фильмах про ограбления.

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

Читать далее

Создаем виджеты для BUSY Bar без кодинга

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

BUSY Bar — девайс для концентрации и современный Pomodoro-таймер с блокировкой отвлекающих приложений и интеграцией в умный дом. Предыдущие посты [1],[2]

В этом посте мы покажем, как с помощью HTTP API создавать виджеты для BUSY Bar. Это смогут сделать не только разработчики, но и обычные пользователи.

Далее вы узнаете как:
— Вывести изображения и текст на экран BUSY Bar.
— Взаимодействовать с устройством прямо из браузера.
— Создать виджеты без программирования.

Читать далее

Интенсивный курс «AI-агенты» от Google День 4

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

На данный момент я прохожу 5-дневный интенсив по AI-агентам от Google и параллельно веду собственный конспект. Эта статья представляет собой перевод оригинального материала, выполненный с помощью Gemini и мной. В некоторых местах я немного упростила формулировки или обобщила идеи.

Оригинал статьи тут Agent Quality

Другие статьи:

Интенсивный курс «AI-агенты» от Google День 1
Интенсивный курс «AI-агенты» от Google День 2
Интенсивный курс «AI-агенты» от Google День 3

Читать далее

Создаем свой «Photoshop» на Python: пишем десктопный редактор изображений с помощью Flet и Pillow

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

Название громкое, но цель реальна: написать на Python простую, но полезную утилиту для обработки изображений, которая выглядит и работает как современное приложение.
Внутри — пошаговый гайд, где мы берем всю мощь библиотеки Pillow для работы с картинками, добавляем магию Flet для создания интерфейса. Только чистый Python.

Читать далее

Тестирование Ansible-ролей локально на macOS (Apple silicon) с помощью драйвера molecule-lima

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

Разрабатываете Ansible роли на macOS с процессорами M1/M2/M3/M4? Тогда вы знаете проблему локального тестирования роли: molecule + vagrant + virtualbox не работает, molecule + vagrant + VMWare через "костыли", а Docker не подходит для тестирования системных компонентов. Я написал драйвер molecule-lima, который использует нативную виртуализацию macOS через Lima и полностью интегрируется со стандартным Molecule workflow. Драйвер реализован на Ansible playbooks, работает на macOS (ARM/Intel) и Linux, устанавливается одной командой pip install molecule-lima.

Читать далее

Забудьте про print(): Современное и красивое логирование в Python с помощью Loguru

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

Все мы начинали с print() для отладки, но в серьезных проектах это превращается в хаос. Стандартный logging? Мощно, но громоздко. Пора это исправить.

Loguru — это библиотека, которая делает логирование простым, как print(), и мощным, как logging, но без боли и десятков строк конфигурации. В статье покажу, как одной строкой настроить цветные логи, автоматическую ротацию файлов и ловить исключения с полным контекстом переменных. Заходите, чтобы сделать свою отладку в разы приятнее.

Читать далее

Как мы превратили цифровое ТВ в радар

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

Как мы превратили цифровое ТВ в радар

Open Source проект по мониторингу воздушного пространства на SDR

Зачем вообще делать радар из телевизора?

Традиционные радиолокационные системы (РЛС) — это огромные антенны, киловатты мощности, разрешения на частоты и бюджеты уровня «военного отдела». Нам же хотелось видеть небо, не нарушая ни законов физики, ни законодательства.

Так родилась идея собрать пассивную когерентную локацию (PCL) — систему, которая ничего не излучает, а просто слушает уже существующие сигналы в эфире.
FM-радио, LTE, цифровое ТВ — всё это мощные «осветители», которые и так покрывают территорию. Почему бы не использовать их?

Мы выбрали сигнал DVB-T2 (546 МГц) — стабильный, мощный, и что особенно приятно — с известной структурой (OFDM).

Результат? Получился радар без передатчика, который можно запустить хоть на балконе. И да, всё это — на полностью open source стеке.

Читать далее

Я взломал поэзию Маяковского с помощью Python

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

Как «Про это» стало первой киберпоэмой. Стихотворение, которое впервые в истории использовало фотоколлаж, разбивку строк по принципу «лесенки» и типографские эксперименты, напоминающие современные веб-дизайн?

Читать далее

Практичные Python-привычки, которые реально повышают качество кода

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

Практичные Python-привычки: явное состояние и мемоизация, асинхронность для продакшн, ошибки и raise, типизация и валидация, ленивая загрузка и кеширование

Читать далее

Интенсивный курс «AI-агенты» от Google День 3

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

На данный момент я прохожу 5-дневный интенсив по AI‑агентам от Google. Эта статья представляет собой перевод оригинального материала, выполненный с помощью Gemini и мной. В этой статье вы узнаете как сделать так, чтобы ИИ не просто «отвечал», а «понимал» и «запоминал»? И если вы когда‑либо задумывались о том, как научить LLM‑агентов вести осмысленные, долгосрочные беседы, эта статья станет вашим проводником в мир сессий и памяти, которые формируют ИИ агентов.

Читать далее

Все об устройстве Q65 с примерами на Python (часть 1)

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

Q65 — цифровой протокол, разработанный Джо Тейлором (K1JT) и его командой в 2021 году для проведения минимальных связей в условиях сложных трасс прохождения радиосигнала, в том числе для проведения связи через отражение сигнала от Луны, где сигналы не только очень сильно ослабевают, но и имеют Доплеровский разброс. В этой статье будут рассмотрены подробности работы протокола.

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

Читать далее

Пушкин vs Лермонтов: поиск истины на Python

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

Можно ли с помощью Python и математических метрик лучше понять поэзию? В этой статье я покажу, как с помощью кода можно количественно сравнить стили Александра Пушкина и Михаила Лермонтова.

Читать далее

Интенсивный курс «AI-агенты» от Google День 2

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

Злоумышленник успешно обошёл средства контроля безопасности компании. Ему не пришлось взламывать репозиторий напрямую. Вместо этого он использовал доверительные отношения между AI-моделью и высокопривилегированным MCP-сервером.

Читать далее

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

Python для начинающих: () или []? Ответ, который изменит ваш код

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

Положа руку на сердце, давайте признаемся: когда вы только начинали учить Python, вам наверняка на первом же занятии вам сказали: «Списки (list) — изменяемые, а кортежи (tuple) — нет. Запомнили? Молодцы».

И большинство из нас кивнуло и пошло дальше. Казалось бы, всё просто: если данные могут меняться — берём квадратные скобки [], если это константа — круглые (). Задача решена.

А что, если я скажу, что на этом простом правиле заканчивается Python для новичков и начинается Python для профессионалов?

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

Читать далее

Как мы первый раз провели митап питонистов в Новосибирске и решили повторить

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

Всем привет! Меня зовут Бронислав Алексеев, я разработчик и один из организаторов сообщества Python-разработчиков в Новосибирске — PythoNSK.

В городе-миллионнике с сильными вузами мы с коллегами заметили парадокс — митапов, посвящённых исключительно Python, практически не было. Мы решили это исправить. Сегодня я хочу поделиться не только успехами, но и честным разбором ошибок, которые мы допустили. Надеюсь, наш опыт поможет вам избежать этих граблей и смелее браться за создание коммьюнити в своём городе!

И да, нам удалось привлечь Никиту Соболева, core-разработчика CPython. Рассказываю, как это было с нуля: бронирование помещения, поиск участников, составление расписания.

Кстати, эта статья написана в преддверии второго митапа PythoNSK - он будет в субботу 22 ноября, а в этой статье мы разберем плюсы и минусы нашего первого митапа, проведенного 13 сентября 2025 года!

Но обо всём по порядку. Всех интересующихся - просим под кат.

Читать далее

Repository Pattern в управлении базами данных: пример интеграции NocoDB в Django

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

Классический сценарий: есть база данных и приложение на бэкенде. Для подключения достаточно знать адрес, порт, имя пользователя, пароль — и прямой доступ перед вами. Но что делать, если необходимо подключить no-code базу данных, которой можно управлять только через REST API? Есть ли способ интегрировать такие подключения в логику «красиво», не поломав архитектуру?

Привет, Хабр! Меня зовут Влад, в свободное время я занимаюсь разработкой. В этой статье расскажу, как мне удалось относительно нативно интегрировать работу с платформой NocoDB на бэкенде, какие можно использовать паттерны и зачем мне понадобилось разработать собственный Python-модуль. Подробности под катом!

Читать далее

Как Python раскрыл поэтический гений Маршака

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

Маршак хорошо переводил Шекспира, но насколько он был близок к оригиналу? Сохранен ли у него ритм, размер, смысл и структура? Установлю это математически точно с помощью Python.

Читать далее

Как я создал торговую алго-платформу без опыта или почему для одних ИИ — гений, а для других — идиот

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

Технический разбор процесса разработки торговой платформы с использованием Gemini, Claude и ChatGPT. С настоящими постановками задач, архитектурными проблемами и выводами.

Всем привет! Меня зовут Артём, и последние 6 месяцев я создавал полноценную веб-платформу для алготрейдинга. Около 95% кода было сгенерировано c использованием современных LLM, большая часть с помощью Gemini 2.5 Pro, ручные правки составили менее 5%

Речь о проекте Depth Sight. Это платформа с гибким визуальным конструктором торговых стратегий, бэктестингом, реальной/бумажной торговлей, мобильной pwa версией и нативно встроенным Ai ассистентом для помощи в создании и объяснении торговых стратегий, а также анализа результатов бэктестов. Эта статья не столько об алготрейдинге, сколько о новом подходе к созданию сложных программных продуктов. Это кейс о том, как человек с видением продукта может в одиночку создать платформу промышленного уровня. Или нет? Предлагаю разобраться вместе.

Читать далее

Как ИИ помог быстро ввести и нормализовать строительные сметы

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

У знакомого есть консалтинговая компания по внедрению продуктов 1С в бизнес и он поделился болью - у его заказчика - среднего размера строительной компании необходимо внести в систему порядка нескольких сотен смет в xlsx формате в 1С конфигурацию, которую они внедряют.

Сложность в том, что другие инженерные отрасли сильно отстают от IT в плане культуры разработки. Во времена моей юности по ФИДО ходила присказка "Если бы строители строили дома, как программисты пишут программы, то первый же залетевший дятел разрушил бы цивилизацию". Скорее всего автор этого афоризма никогда не был знаком с реальными строителями. Сейчас скорее наоборот - если бы строители писали программы, мы бы не вышли из эпохи арифмометров. Мы в IT приучены к тому, что ревью кода не пропустил коммит с лишним пробелом.

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

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

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

Читать далее

Long Polling и Webhooks. Обработка событий в Telegram-ботах

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

Есть два способа, которые позволяют вашему боту получать обновления от серверов Telegram. Это long polling и вебхуки. Давайте разберемся, что это такое и когда какой вариант лучше использовать.

Сравнить подходы

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