Обновить

Разработка

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

Налоговый мониторинг: режим «постоянной готовности»

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

В последнее время ФНС все активнее смещает фокус в сторону цифрового контроля за операциями бизнеса. Я отчетливо наблюдал зарождение этого тренда, еще работая внутри системы налоговых органов. Налоговый мониторинг и АУСН - яркие тому примеры: стартовав как экспериментальные пилотные проекты, они быстро масштабировались и стали одними из важнейших инструментов налогового контроля.

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

Читать далее

Как я построил Graph RAG систему с точностью 96.7% за 5 дней: от научных статей до production-ready пайплайна

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

Я реализовал Graph RAG систему, которая комбинирует 5 техник из свежих научных статей (KET-RAG, HippoRAG 2, VectorCypher) в единый пайплайн с декларативным Datalog reasoning-движком, полной провенансной трассировкой и типизированным API. Результат: 174/180 (96.7%) на билингвальном бенчмарке из 30 вопросов, оценённых в 6 режимах retrieval. Три режима достигли 100%. В статье — архитектура, 10 уроков оптимизации и эволюция от 38% до 96.7% за 10 итераций.

Читать далее

Цифровая экология: делаем веб легче для планеты

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

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

Читать далее

Как я добавил 10 фич в Android-приложение за один заход: Todo Budget v4.0

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

Как я добавил 10 фич в Android-приложение за один заход: Todo Budget v4.0

Привет, Хабр! Продолжаю серию о разработке Todo Budget — Android-приложения, объединяющего задачи, бюджет, заметки и помодоро-таймер в одном месте.

Читать далее

Долг оптимизацией красен: как мы в МойОфис объединили борьбу с легаси и увеличение производительности таблиц

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

Долг оптимизацией красен: как мы повышали производительность таблиц

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

Меня зовут Дмитрий Шубин, я занимаюсь оптимизацией производительности в компании МойОфис — конкретно в Ядре редакторов (о нём ранее рассказывал мой коллега в статье «Как мы создаём редакторы документов. Ядро и его роль в кроссплатформенной разработке»).

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

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

Читать далее

История о том, как я устал от галлюцинаций ИИ и собрал инструкцию для нейронки

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

Делал проект с помощью нейросети — бесконечные галлюцинации довели. Начал собирать инструкцию для ИИ. Через 14 версий и 25 000 слов получил систему с адаптивным Deep Compute Engine, Red Teaming и двухмерной системой статусов.

В статье:

Эволюция от v1.0 до v7.7.2 — что добавлял и зачем

Какая версия подойдёт под вашу задачу

Инструкция по внедрению в системный промпт

Режим Brainstorming для креатива

Пасхалка: иммерсивная «БРО» версия для фана

Для тех, кто устал объяснять агенту, что он выдумал параметр.

Читать далее

Брокеры, инфраструктура и почему умер масс-маркет алготрейдинг

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

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

Также узнал что онлайн версии не будет, а основными темами будет инфраструктура, алгоритмы, математика и количественная аналитика. Это как раз те темы, которыми я интересуюсь, живя в Перми.

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

Алгоклуб

250 критических замечаний, или Как мы нашли общий язык с разработчиками

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

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

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

Читать далее

Как добавить каталог в PATH

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

Добавить каталог в PATH кажется тривиальной задачей – пока всё не перестаёт работать. Почему команда «не найдена», какой файл конфигурации действительно читает ваш shell и что именно вы добавляете в переменную окружения? В статье – аккуратный разбор этого процесса с практическими проверками и типичными ловушками, в которые регулярно попадают начинающие администраторы Linux.

Читать далее

Приведение типа в C++

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

Продолжаем серию «C++, копаем вглубь». Цель этой серии — рассказать максимально подробно о разных особенностях языка, возможно довольно специфичных. Это десятая статья из серии, список предыдущих статей приведен в разделе 9. Серия ориентирована на программистов, имеющих определенный опыт работы на C++. Данная статья посвящена приведениям типа.

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

Итак, попробуем рассказать о приведениях типа максимально подробно.

Читать далее

Как организовать тестовую среду, сохраняя покой владельца данных

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

Привет, сообществу Habr!

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

Наша команда Neoflex работает на проектах заказчика. При старте работ мы всегда подписываем NDA, но все равно этого недостаточно, чтобы владелец доверил нам полный доступ к промышленным данным. Мы его прекрасно понимаем: данные -  основа благополучия компании и видеть их должен ограниченный круг лиц, отвечающий за бизнес-результат.

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

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

Читать далее

В популярных Helm-чартах (Prometheus, Datadog, Grafana) нашли уязвимость RCE, но Kubernetes отказался её исправлять

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

Казалось бы, права на чтение — что с них взять? Оказывается, в Kubernetes разрешение nodes/proxy GET позволяет выполнять любой код в любых подах кластера. Уязвимость уже нашли в популярных Helm-чартах, включая Prometheus, Datadog и Grafana. И да, команда Kubernetes решила это не исправлять.

Узнать, как проверить свой кластер

Urich: DDD и CQRS для микросервисов на Starlette без ручной раскладки роутов

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

Когда строим бэкенд по DDD и CQRS, роуты и OpenAPI обычно собираем вручную. Urich делает иначе: описываешь ограниченный контекст одним объектом — маршруты и документация появляются сами. Обзор фреймворка на Starlette и примеры кода.

Читать далее

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

Мир на пороге дефицита HDD: как облака и ИИ меняют рынок жестких дисков

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

HD для домашних ПК и ноутбуков сейчас редкость, ведь их во многом и вполне успешно заменили SSD. Однако эта технология по-прежнему очень востребована в дата-центрах. Так, в феврале 2026 года Western Digital сообщила, что ее мощности практически полностью застолбили крупные заказчики. Seagate подтвердила, что линии по высокоемким дискам для серверов загружены под завязку. Основные клиенты — операторы крупных облачных платформ, которые заранее бронируют объемы. WD получила предварительные заказы от семи крупнейших покупателей, часть из которых — до 2027 и 2028 годов. 

Зачем HDD в ЦОД? Есть несколько причин, но основная — это искусственный интеллект. При работе с ИИ важно не только обучать модели, но и хранить огромные массивы исходных данных, логов и резервных копий. В многоуровневых системах горячие данные размещаются на SSD, но основной объем холодных — на дисковых массивах. Речь идет о десятках и сотнях петабайт, где главное — стоимость хранения из расчета на терабайт, плюс предсказуемость инфраструктуры. Именно поэтому спрос на высокоемкие HDD резко вырос. Разберемся, насколько устойчивым будет такой перекос рынка и к чему это может привести.

Читать далее

ИИ в Agile-команде. Цифровой помощник, железный дровосек или коллега?

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

Всем привет! На связи команда «Клаудмастер» («Инферит FinOps»). Хотим рассказать вам про то, как мы используем ИИ в нашей работе.

Помните март 2025-го? Дарио Амадей, генеральный директор Anthropic, обещает, что очень скоро почти весь код будет писать ИИ, регуляторы и рынок труда должны будут адаптироваться (ну вы поняли). 

Тогда мы с командой спешно затеяли эксперимент: решили проверить, каков реальный КПД от ИИ на практике и стоит ли нам в него вложиться.

Читать далее

Ещё одна самодельная акустика

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

Пока на улице зима, а вторая часть статьи "Солнечный коллектор для умеренного климата" задерживается (пришлось баню полностью разобрать), можно отвлечься и собрать что-нибудь менее сложное, но не менее нужное. Акустику, например. Стандартные "гробы" жене совсем не нравятся, так что дизайн будет не стандартным. Сразу дам краткое описание: 4 Ом, трёхполосная, закрытый ящик, СЧ/НЧ разделены физически, Vнч = 95л, Vсч = 23л, ~700гц, ~7кГц, SQL по СЧ.

Собственно, статья начинается здесь. Очень дёшево и совершенно случайно (я серьёзно, там были нюансы) мне достался комплект 50УМ104С и УП-003С. Для тех кто кривит нос - не спешите. Нюансы были в том, что ничего не работало. Под спойлером небольшое описание неисправностей и ремонта, для статьи маловато.

Читать далее

Хватит читать новости про ИИ! Иди и делай

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

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

Читать далее

Что не учитывают паттерны и почему мы не получаем то, что ожидаем?

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

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

Почему так происходит? Разберём паттерны это на реальном кейсе миграции с Legacy-системы — и посмотрим, где заканчивается сила паттернов и начинается суровая реальность.

Краткое содержание статьи:

— Как проектировать правильно?
— К чему может провести правильное проектирование на примере истории миграции
— Почему получилось что-то «неправильное»?
— Выводы.

Читать далее

Memory под Nextion

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

Делаем игру memory на экране Nextion!

Лежит без дела экран Nextion? Сделаем из него автономную игровую консоль для игры в «Memory»! Без внешних микроконтроллеров, только логика редактора Nextion Editor, таймеры и управление тачскрином. Подробный гайд, который можно повторить за чашкой чая.

Читать далее

Чёрное окошко Linux: погружение в подсистему TTY

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

Начав изучать тему терминалов в Linux, вы можете почувствовать, что по отдельности вроде бы всё понятно, но разница между понятиями и их суть всё равно ускользает. Консоль, терминал, TTY, виртуальная консоль, виртуальный терминал, эмулятор терминала, оболочка — это просто «вот то чёрное окошко, куда вводят команды Linux». На самом деле за этим окошком скрывается целая цепочка разных сущностей — от компонентов ядра до пользовательских программ. Цель данной статьи — объяснить подсистему TTY и избавить вас от этого неприятного ощущения.

Читать далее