Обновить

Разработка

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

Пациент болен: как «продать» рефакторинг лиду и продакту

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

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

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

Хочу узнать про рефакторинг ВСЁ

Новости

Мы сократили время создания интерфейсов react-приложений с 1,5 недель до 2 дней

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

Привет! Меня зовут Богдан Алексеев – я дизайн-менеджер в ВТБ. Мы построили и развиваем омниканальную экосистему для бизнеса, в которой сотрудники по всей России обслуживают более 1 млн клиентов.

Вчера мы презентовали вице-президенту результаты работы над новой стратегией. Он ожидал увидеть прототипы для оценки UX-решений на макетах в Figma. Мы показали 4 полностью рабочих react-приложения с реальным скроллом, интерактивными элементами и переходами. 

Раньше такие задачи занимали 1–1,5 недели на одно приложение. Мы сделали 4 за 2 дня. 2 дня, КАРЛ! Реакция на такой показ и на выгоды в будущем была соответствующая.

Читать далее

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

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

Привет! Это Данила Ляпин, наставник курса «Специалист по Data Science». Собрал подборку материалов по обработке естественного языка — она охватывает путь от базовых концепций NLP до трансформеров и BERT. Все материалы бесплатны и проверены на практике. Главное — двигаться последовательно, не пропускать основы и обязательно практиковаться на реальных задачах.

Читать далее

MiniMax Agent 2.0: уборка файлов без терминала и альтернатива Claude Cowork и Moltbot (Clawdbot) — мой опыт

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

Последние недели все обсуждают агентов для компьютера: кто-то ставит опенсорсный Moltbot (бывший Clawdbot), кто-то ждет, когда работать в Claude Cowork станет дешевле, а кто-то хочет просто нажать кнопку и получить результат - без всяких серверов, портов и онбординга в терминале.

Я протестировала MiniMax Agent 2.0 на самом понятном кейсе: навести порядок в папках на компе, и делюсь тем, что получилось со всеми нюансами и со стоимостью, а так же своим мнением, что мне больше понравилось использовать.

Читать далее

# TuiControl — Современный подход к созданию форм-компонентов

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

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

Читать далее

Как мы создали open-source кодового агента, работающего с любыми локальными моделями

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

Можно ли сделать кодового агента уровня Claude Code, но бесплатного и для локальных моделей? Мы разобрали архитектуру конкурентов, нашли слабые места и написали PocketCoder — CLI-ассистент с Agent Loop, XML-контекстом и памятью. Работает даже с qwen-7b, хотя и с приколами.

Читать далее

От контроллеров до операторов: моделирование меняет подход к автоматизации на всех уровнях АСУ ТП

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

Давайте представим, что нам нужно построить сложный объект — скажем, самолет, поезд или вообще атомную электростанцию. Строить «наобум» невероятно дорого и рискованно. Гораздо разумнее выполнить предварительные расчеты и скорректировать слабые места. Есть разные виды расчетов, ну например расчет прочности конструкции, расчет стомости сорружения или эксплуатации, расчет последствий аварии (для АЭС). Расчеты бывают статические например расчет фундамента, расчет толщщины стены, или просто расчет нагрузки на балку. И динамические - расчет некоторого процесса разворащивающегося во времени например: расчет процесса нагрева котла в доме, расчет процесса разгона авиационного двигателя, расчет процесс поддержания давления в кабине самоелета при изменении высоты. В динамических расчетах сложных объектах, как правило необходмо учитывать работу автоматической системы управления (АСУ), поскольку система управления влияет на процесс.

Если мы говоримт об АСУ ТП (Автоматической Системе Управления Технологическими Процессами), то само название как бы намекает на наличие некоторого процесса во времени, а значит тут есть место для динамического рассчета. Вот здесь-то на сцену и выходит "Среда динамического моделирования технических систем SimInTech."

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

Читать далее

Как построить дерево метрик? Разбираем на примере сервиса доставки еды

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

Как не потеряться в сотнях графиков и найти реальные рычаги влияния на бизнес? В статье представлен подробный разбор Дерева метрик на примере FoodTech-сервиса (доставки еды). Мы уходим от простого мониторинга цифр к системной декомпозиции North Star Metric.

Читать далее

Использование машинного обучения при диагностике КИП и динамического оборудования

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

Современный мир переживает бум развития технологий искусственного интеллекта, помимо чат-ботов, сервисов генерации изображений и т.п. Искусственный интеллект (ИИ) применяется в беспилотных автомобилях, которые уже сейчас ездят по дорогам общего пользования. Это пример того, как ИИ управляет техническим средством, а именно, считывает данные с лидаров и видеокамер и т.п., анализирует их и формирует команды для задания направления и скорости движения автомобиля. На первый взгляд, это мало чем принципиально отличается от управления технологическим оборудованием на промышленных предприятиях. Почему же в современных АСУ ТП не применяют ИИ для формирования управляющих воздействий на исполнительные механизмы?

Читать далее

Бэкап мессенджеров: сохранение архивов

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

Резервное копирование включает в себя файлы на диске. Но возникает вопрос: как сохранить информацию с облачных сервисов? Например, архивы всех переписок из мессенджеров Telegram, Whatsapp, Viber и др. Ведь эта переписка может быть потеряна в любой момент. Например, собеседник принимает решение удалить переписку или мессенджер блокирует доступ к аккаунту. Для безопасности лучше заблаговременно скачать всю информацию и сохранить локально.

Читать далее

QAD от NVIDIA: разбираюсь, почему 4-битная квантизация перестала всё ломать

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

NVIDIA выпустила отчет о методе QAD, который позволяет квантовать LLM в 4 бита без потери качества на сложных задачах (математика, код). Разбираем, почему привычный QAT «ломает» модели после RLHF, как дистилляция через KL-дивергенцию решает эту проблему и почему метод работает даже на рандомных данных. Личный опыт попыток уместить 49B модель в железо и анализ нового подхода.

Читать далее

OSINT для ленивых. Часть 2: Что от нас скрывают админы сайтов — быстрый чек за 2 минуты

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

Админы интернет-ресурсов — публика скрытная, им бы все прятать и прятать. То адмику, спрячут, то пароли доступа.

Но мы же не за паролями пришли? На что они нам? Давайте посмотрим, что спрятано от поисковых систем и от нас, но так, чтобы по-быстрому.

Читать далее

Монады на Java

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

Здравствуйте, меня зовут tmaxx, и я алкоголик понял что такое монады. И, естественно, рассказываю об этом всем вокруг, в том числе и вам. Конечно, это Далеко Не Первая Статья О Монадах на Хабре, но ещё один альтернативный взгляд на проблему, думаю, не помешает.

«Монада», как известно, это «моноид в моноидальной категории эндофункторов», что дает примерно ноль информации несведущему человеку. В программировании, можно попробовать определить монаду как «штуку, реализующую вот такие методы»:

(>>=) :: forall a b. m a -> (a -> m b) -> m b
return :: a -> m a

Не понятно на Хаскеле? Вот примерный эквивалент на Java:

<A, B> Monad<B> bind(Monad<A> ma, Function<A, Monad<B>> famb); <A> Monad<A> ret(A a);

Все равно остались вопросы? Почему именно такая сигнатура? Что в ней такого особенного, что она используется абсолютно во всех реальных программах написанных на функциональных языках? Попробуем разобраться.

Читать далее

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

Последовательный анализ в AB-тестировании: ускоряем принятие решений с помощью mSPRT

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

Как часто бизнес задает вопрос о результатах A/B-теста уже на второй день после запуска? В классической статистике основной ответ: необходимо ждать набора фиксированной выборки, иначе риск ложноположительного результата становится неконтролируемым. Однако современные подходы позволяют не только проводить мониторинг данных без риска математической ошибки, но и останавливать эксперименты значительно раньше срока. В основе такой гибкости лежит методология mSPRT, которая превращает эксперимент из закрытого процесса в прозрачный поток данных.

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

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

Такой метод позволяет сократить время проведения тестов на 30-50%, не жертвуя при этом достоверностью. Это способ сделать процесс проверки гипотез более гибким и быстрым, сохраняя безупречную математическую строгость в каждой точке принятия решения.

Читать далее

Создание умного гаража

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

Всё началось с покупки гаража. В каждом гараже есть щиток освещения. Обычно это кусок текстолита с установленным счетчиком, автоматами питания, розетками, выключателями. Выглядит колхозно. Задумал я поставить что-нибудь более современное и добавить какую-нибудь автоматику.

Читать далее

От учебной проблемы до 1000 пользователей: как я писал интерактивный учебник по RxJS

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

История проекта началась в прошлом (2025) году. Я преподаю JavaScript в HTML Academy, и когда мне предложили взять поток начинающих разработчиков по Angular, я согласился. Мы успешно прошли базу, но когда дело дошло до HttpClient и обработки данных, я столкнулся с проблемой: студентам сложно понять Observable и реактивный подход, имея в багаже только промисы.

На лекции мне задали резонный вопрос: А где посмотреть актуальные и понятные материалы по RxJS?. Я провел небольшой ресерч и понял, что ниша полупустая: видеокурсы - это долго, документация - сложно, а интерактивной практики почти нет.

Так появился мой open-source проект. В этой статье я показываю честную аналитику за 90 дней: как набрать 1000 пользователей без рекламы, почему провалилась моя любимая фича и как пет-проект превращается в полноценный продукт.

Смотреть аналитику

Пошаговый запуск собственного LLM сервера от А до Я

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

Введение

В сети сейчас полно «гуру» и коучей, которые обещают запустить собственную LLM почти на ноутбуке. Да, это технически возможно, но обычно речь идёт о моделях в диапазоне от млн до млрд параметров. Такая модель будет работать, однако — медленно, и её практическая ценность будет ограничена. В результате многие пользователи разочаровываются в локальных LLM.

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

 Зачем нужен локальный сервер LLM?

Читать далее

Платформа очередей для клиентского сервиса в кровавом энтерпрайзе

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

Привет, меня зовут Дмитрий Крупенин. Последние 7 лет я занимаюсь созданием и развитием внутренних продуктов для крупных компаний. Я отвечал за распределение обращений в клиентском сервисе для одного биг.теха РФ, а сейчас помогаю строить распределение задач контента в рамках другого. Захотелось освежить все знания по этой теме, а заодно структурировать это в статью, которую вы сейчас и читаете.

В чем собственно вызов в этой области: современные алгоритмы назначения обращений операторам представляют собой критически важную технологическую основу для крупных компаний, обрабатывающих миллионы клиентских запросов ежемесячно. В условиях растущих ожиданий клиентов и необходимости обеспечения высокого качества обслуживания (при оптимальных для бизнеса операционных затратах) эффективность распределения обращений на подходящих исполнителей становится одним из ключевых факторов конкурентоспособности. Исследования (раз, два, три) показывают, что передовые AI-powered алгоритмы способны снижать время ожидания клиентов на 40-60%, повышать показатели решения с первого обращения до 85%, и одновременно оптимизировать загрузку операторов, предотвращая их выгорание. Давайте разберемся так ли это и как достичь таких результатов.

Читать далее

MITM-атаки в телеграмм ботах и почему этот вектор самый опасный

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

Многие Telegram-боты, особенно связанные с криптовалютами, используют HTTP-запросы для взаимодействия с внешними API. В этой статье мы разберем, как на этом можно построить MITM-атаку для подмены кошельков, чеков и перехвата данных, почему это работает, и какие меры защиты стоит применять разработчикам и пользователям. Рассмотрим реализацию на Python с использованием mitmproxy.

Telegram-боты стали неотъемлемой частью экосистемы — от новостных каналов до торговых платформ. Однако архитектура многих ботов, особенно тех, что используют популярные библиотеки вроде aiogram или python-telegram-bot, часто подразумевает выполнение внешних HTTP-запросов для обработки команд (например, для проверки баланса или генерации платежного адреса).

Если такой бот использует сторонний HTTP/HTTPS-прокси, все его запросы и ответы проходят через промежуточный сервер. Это открывает возможность для атаки «человек посередине» (MITM), когда злоумышленник может не только перехватывать, но и модифицировать трафик в реальном времени. На практике это может привести к подмене криптокошельков, платежных реквизитов или токенов доступа.

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

Читать далее

Заявки на PHDays Fest 2026: шанс стать спикером есть всегда

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

Практическое руководство по итогам анализа заявок прошлого года

Каждый год Call for Papers (CFP) на PHDays Fest собирает сотни заявок. В прошлом году их было 825 – и это хороший индикатор не только популярности фестиваля, деловую программу которого посещает несколько десятков тысяч человек, но и уровня конкуренции. При этом отклонено было более 500 заявок, а принято – лишь около трети от рассмотренных. Это означает простую вещь: качество заявки критично. Даже сильная тема может «не доехать» до сцены и быть отбракованной программным комитетом, если она плохо упакована.

Читать далее
1
23 ...