Обновить
512K+

Python *

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

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

Подсчет транспорта в видеопотоке: пять мест, где я ошибся

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

Счетчик показал десятки проездов за одну красную фазу светофора. Машина была одна, и она стояла.

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

Система считает машины, автобусы и трамваи на видео с неподвижной камеры… Готовых наборов данных не брал: хотел пройти весь путь от съемки до обученной модели сам и посмотреть, где он ломается.

Ломался он пять раз. Метрики тоже будут, вместе с разбором, почему верить им нельзя.

Читать далее

ICO — как я осмелел и написал свой типизированный ML-фреймворк на Python

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

Последние годы я работал разработчиком в области машинного обучения, компьютерного зрения и 3D-реконструкции. Писал и видел множество вариантов организации вычислений и обработки потока данных. Но в них мне не хватало системы и организованности, прозрачности и гибкости. Поэтому я набрался решимости и воплотил самые мои смелые — и, как оказалось, вполне рабочие — идеи в новом фреймворке, который я назвал ICO.

Читать далее

OpenIDE Pro в деле: Java, Spring, базы данных и AI-агенты в одной IDE

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

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

27 августа в 11:00 покажем OpenIDE Pro вживую: от разработки на Java и Spring до работы с базами данных и AI-агентами прямо в IDE.

👉 Зарегистрироваться на вебинар

Читать далее

Человек между агентом и кнопкой: почему слой подтверждения — это такая сложная инженерия

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

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

Слой подтверждений выглядит как день работы: таблица, кнопка «одобрить», кнопка «отклонить». Я вёл каталог отказов, пока его делал. К релизу в нём было 66 пунктов. Разбираю пять, которые почти всегда переживают первую версию, и показываю, почему 100% покрытия по ветвям ничего не гарантируют.

Читать далее

Мы отключили интернет — и ML‑конвеер сломался. Кто всё это время ходил в сеть?

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

Меня зовут Павел, я разрабатываю и ML-решения в R77.AI. На одном из проектов мы перенесли ML-пайплайн в закрытый контур — и обнаружили, что без интернета привычные библиотеки работают совсем не так, как ожидаешь.

Читать далее

Вгрызаемся в память World of Warcraft: дрифт ценой в 20 гигабайт

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

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

Читать далее

DeepSeek управляет вашим рестораном

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

Как просьба друга «настроить кассу» закончилась open-source ERP, тринадцатью российскими интеграциями и нейросетью, которая теперь считает закупки, ищет косяки в учёте и пишет владельцу в Telegram.

Есть у меня друг. Назовём его Артём.

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

Примерно за месяц до открытия Артём пришёл ко мне с классической фразой:

— Слушай, тыжепрограммист. Помоги систему настроить. Ну чтобы касса, кухня, заказы — всё нормально работало.

Если вы когда-нибудь были «тем самым знакомым программистом», то примерно понимаете, чем обычно заканчивается слово «помоги». Сначала задача выглядела просто: выбрать что-нибудь вроде iiko, поставить, настроить и забыть.

В итоге я полез смотреть, как вообще устроен ресторанный софт, перебрал несколько систем, остановился на open source, русифицировал его, прикрутил российские кассы, банки, 1С, маркировку, агрегаторов доставки, а потом зачем-то решил, что обычной автоматизации мне уже мало.

Так в ресторане появился DeepSeek, который скоро заменит Артема, а может и всех остальных. Сам будет заказывать еду, сам кушать... ну это я отвлекся.

Сразу важный момент. Я не писал ресторанную ERP с нуля. Это был бы отличный способ потратить много времени и получить плохую кассу. Я взял готовую open-source систему и начал допиливать её под конкретный ресторан. И вот здесь всё стало интереснее.

Читать далее

Как парсить сайты за Cloudflare

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

Если вы пытались спарсить сайт на Cloudflare через Selenium или Playwright и упёрлись в бесконечный «Verify you are human» — дело не в вашем коде. Дело в том, что Cloudflare палит автоматизацию браузера ещё до того, как отработает первая строчка JS‑скрипта.

Читать далее

RAG‑система для анализа новостей с позиций исторической личности на основе литературных источников «АЙ_Ленин»

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

Широкое распространение СМИ в сети привело к формированию группы тематических экспертов — лидеров общественного мнения — блогеров. Их задача — оценка и анализ фактов, подача информации через призму собственного мнения.

Закономерно, мысленное упражнение, как человек, оставивший след в истории, оценил бы тот или иной современный факт.

Читать далее

Более 100 000 вакансий: полный анализ IT‑рынка России в 2026 году. Кто нас на самом деле нанимает?

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

Привет, Хабр! (И тебе, IT-шник, который хочет разобраться, что в 2026 вообще здесь происходит? Сейчас разберёмся, но легче тебе от этого не станет).

Сегодня продолжим препарировать весь IT рынок России на более чем 100 тысяч вакансий со всевозможных площадок. По-настоящему, полная и честная аналитика. С графиками, цифрами и верой в светлое будущее...

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

Читать далее

Проверил семь советов по повышению видимости в нейросетях. Не сработал ни один

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

Я проверил семь советов по видимости в нейросетях на 73 страницах, которые модели сами поставили в источники. Я прогнал каждый совет через две группы страниц из собственных логов и посчитал разницу точным тестом Фишера: 34 страницы против 39, различие по авторству 100% против 82%. Это лишь эксперимент на небольшой выборке, но всё же.

Читать далее

Mojo 1.0 вышел из бета-тестирования. Что это за язык программирования и зачем он нужен

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

Python давно стал почти стандартным инструментом для машинного обучения, анализа данных и научных задач. Однако в вычислительно сложных проектах его производительность быстро становится ощутимым ограничением. Поэтому под привычными NumPy, PyTorch и другими инструментами значительная часть вычислений выполняется компонентами на C, C++ или CUDA. Особенно заметно это становится, когда готовых библиотечных функций недостаточно и высокопроизводительные операции приходится писать самостоятельно.

Несколько лет назад за решение этой проблемы взялась компания Modular, представившая Mojo — новый язык, внешне очень похожий на Python, но построенный иначе. Первую публичную версию показали в 2023 году, после чего проект довольно быстро менялся, а некоторые его конструкции успели исчезнуть или несколько раз поменять форму. Теперь этот этап формально завершен: 11 августа 2026 года вышел Mojo 1.0. Первая стабильная версия стала хорошим поводом разобраться, откуда вообще взялся этот необычный проект и зачем понадобился еще один инструмент для высокопроизводительных вычислений.

Читать далее

Скрапер Google Maps на Playwright: семь граблей, на которые я наступил

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

Задача звучала просто: получить список компаний определённого профиля в конкретном городе — с сайтом и способом связаться. Не телефоном, а email / Telegram / WhatsApp.

Итоговый скрипт — примерно 400 строк: Playwright для Maps, requests + BeautifulSoup для сайтов, регексы для контактов, txt на выходе. Ниже — не туториал "как повторить", а список мест, где всё ломается.

Вот весь конвейер целиком, с отмеченными точками отказа — дальше по статье разберём каждую:

Читать далее

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

INDB: когда все лгут, помнит, что вы видели

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

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

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

INDB стоит на этом: смысл производится при чтении, а не фиксируется при записи. Вместо CRUD три фазы — вдох (Inhale, принять сырое наблюдение), выдох (Exhale, сжать повторы и отфильтровать шум репутацией), аксиома (Axiom, подписать то, что выжило).

Читать далее

Что вы увидели на картинке первым? Спрашиваем трансформер

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

Что видит трансформер: крокодила, лодку или силуэт человека? Проверяем BLIP на визуальных иллюзиях.

Наверняка многие видели картинки‑тесты, которые предлагают по тому, что первым бросилось в глаза определить характер, какое полушарие доминирует или что‑то еще. Обычно на этих изображениях находится несколько объектов или один объект меняется в зависимости от «угла» обзора. А что будет, если попросить трансформер описать эти картинки? Что «увидит» он и на что он «обратит внимание»?

Читать далее

Две страницы с 17-й позиции и нулём кликов дали больше цитирований ИИ, чем весь мой топ-5

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

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

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

Читать далее

TrueForge: открытая обвязка, которая превращает LLM в полноценного агента

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

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

Сложности начинаются, когда такого агента нужно запустить в проде.

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

Глубже

MetaORM — когда устал от ORM настолько, что написал свою

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

Эта статья о том, как я написал 200-строчную обертку над SQLModel, которая закрывает все реальные задачи с базой. В подарок идет непрошенное мнение об излишней сложности ORM.

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

Читать далее

Гидродинамика на python: Пишем CFD симуляцию плоского течения несжимаемой жидкости

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

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

Читать далее

Развитие FastAPI приложения в ходе разработки production-системы

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

Полтора года назад я написал о своём подходе к структуре FastAPI-приложений. С тех пор два крупных проекта, production и несколько архитектурных граблей заставили меня многое пересмотреть. В этой статье расскажу, что изменилось и какие решения действительно упростили мне разработку.

Читать далее