Обновить

Как стать автором

Зелёный CI — не признак качества. Как ИИ ломает инженерное мышление

Уровень сложностиСложный
Время на прочтение4 мин

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

Читать далее
Всего голосов 7: ↑7 и ↓0+8
Комментарии0

Как я за 2,5 месяца написал строительный калькулятор на Flutter с ИИ-прорабом, 45+ калькуляторами и 8000 тестами

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

В конце ноября 2025-го я сел писать строительный калькулятор для RuStore. Хотел собрать всё, что нужно при ремонте, в одном приложении - от расчёта обоев до ИИ-ассистента, который подскажет, где ты накосячил с расходом штукатурки. Через 2,5 месяца «Мастерок» вышел в продакшн: 45+ калькуляторов, 269 коммитов, 259 тысяч строк кода, рейтинг 4.9 в RuStore.

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

Читать далее
Всего голосов 7: ↑7 и ↓0+7
Комментарии13

ClickHouse: разбираем MergeTree

Уровень сложностиПростой
Время на прочтение15 мин

Привет, Хабр!

В этой статье разбираем фундамент ClickHouse — движок MergeTree. Посмотрим, как данные хранятся на диске, чем отличается «парт» от «партиции» и почему индекс в ClickHouse работает не так, как в привычных транзакционных базах вроде PostgreSQL или MySQL.

Читать далее
Всего голосов 20: ↑20 и ↓0+22
Комментарии6

Незаменимых не повышают? Вот и нет

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

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

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

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

Читать далее
Всего голосов 4: ↑3 и ↓1+2
Комментарии4

ADR, архитектурные тесты и кейсы из прода: ресурсы, которые реально меняют код

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

У меня была привычка. Вижу классную статью про архитектуру —-сохраняю. Репозиторий с примерами DDD - в закладки. Видео про CQRS - в плейлист «Посмотреть потом».

Вы знаете, чем кончаются плейлисты «Посмотреть потом».

В какой-то момент закладок стало 300+. Половина ссылок битые, треть дублируют друг друга, остальное - статьи, которые казались гениальными в два часа ночи. Я сел и вычистил всё до 106 ресурсов. Собрал их в awesome-list на GitHub.

Но статья не про список. Статья про три вещи, которые я для себя открыл в процессе и которые почему-то мало обсуждают.

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии1

Использование термодинамической помощи случайным лесам для многоклассификационных задач (с кодом Python)

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

В области объяснимого искусственного интеллекта (Explainable AI, XAI) метод SHAP (SHapley Additive exPlanations), опирающийся на прочную теоретическую базу теории игр, стал ключевым методом оценки важности признаков. Для простых задач классификации сообщество располагает обширной документацией и учебными материалами, что позволяет разработчикам легко создавать графики-водопады (Waterfall Plot) или графики-пчелиный рой (Beeswarm Plot) для объяснения прогнозов модели.

Однако при работе с многоклассовой классификацией (Multi-class Classification) применение SHAP претерпевает изменения. Из-за изменения размерности выходных данных прямое использование стандартного кода часто приводит к ошибкам размерности или неверной интерпретации.

В данной статье рассматриваются технические трудности применения SHAP в задачах многоклассовой классификации и предлагается проверенное решение для визуализации на Python. Материал основан на новейшем исследовании, опубликованном в 2025 году в журнале Measurement (статья под названием Thermodynamic simulation-assisted random forest: Towards explainable fault diagnosis of combustion chamber components of marine diesel engines), в котором реализована визуализация объяснимой диагностики неисправностей для многоклассовой задачи (вычисление SHAP для 14 категорий в пяти состояниях неисправности).

Адрес репозитория Github

Читать далее
Всего голосов 1: ↑1 и ↓0+1
Комментарии0

Роль, контекст, данные: формула рабочего промпта для кода

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

Привет, Хабр! 👋

Меня зовут Карлен, я Lead Fullstack разработчик в ITFB Group. Хочу поговорить о том, как превратить нейросеть из «игрушки» в настоящего компаньона, который усиливает ваши навыки 😎 Речь пойдет не об обзоре AI-инструментов (выбор оставим за вами), а об искусстве составления промптов — «разговорном интерфейсе» между вами и вашим digital-напарником.

Читать далее
Всего голосов 17: ↑7 и ↓10-3
Комментарии7

VHS Decode: перед употреблением прочитать

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

Входим в VHS Decode нежно и плавно. Пытаемся понять, как собрать сетап без потери интереса и визитов в ПНД.

Пакет ld-decode произвёл мини-революцию в сфере оцифровки и сделал доступным захват сырого FM сигнала для последующего декодирования. VHS Decode продолжил развитие ld-decode и значительно расширил список поддерживаемых форматов, а также увеличил скорость и улучшил качество работы.

Данная заметка рассчитана на аудиторию, уже знакомую с феноменом RF декодирования и ориентирована в первую очередь на новичков, которые хотят «вкатиться» или уже сделали первые шаги. Для более опытных юзеров были припасены не совсем очевидные факты о формате и оборудовании.

Заглянуть глубже
Всего голосов 23: ↑23 и ↓0+37
Комментарии29

Как писать release notes, которые читают

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

Release notes обычно появляются в конце цикла разработки — и так же быстро теряются в описании версии в сторе. В этой статье разбираем три подхода к релиз-нотам, от шаблонных до креативных, и объясняем, почему даже хороший текст может никто не увидеть. А также — что меняется, когда релизы становятся частью процесса и пользовательского сценария.

Читать далее
Всего голосов 2: ↑2 и ↓0+2
Комментарии1

Боевые «жуки», или битва роботов в категории beetleweight

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

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

Читать далеe
Всего голосов 5: ↑5 и ↓0+7
Комментарии0

Вытесняй и властвуй: еще раз про многозадачность

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

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

Примеры на Ruby, Go, Java.

Читать далее
Всего голосов 7: ↑7 и ↓0+9
Комментарии0

Методология: Поиск значений Cheat Engine

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

Эта статья ориентирована на начинающих пользователей Cheat Engine. Здесь собраны базовые рекомендации, методологические подходы и разборы типичных сценариев, с которыми можно столкнуться при попытке найти нужный адрес.

Читать далее
Всего голосов 3: ↑3 и ↓0+3
Комментарии2

PID (ПИД) без математики: как просто понять P, I и D

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

PID-регулятор — частая проблема для начинающих в робототехнике: математика отпугивает. Но саму идею понять можно без формул. В этой статье я объясню P, I и D простыми словами и с визуализацией

Читать далее
Всего голосов 196: ↑196 и ↓0+228
Комментарии48

Как мы собрали СЭД для поликлиники из трёх костылей

Время на прочтение5 мин

В этой статье я рассказываю, как мы за 3 месяца собрали кастомную СЭД для поликлиники на базе трёх open-source компонентов: Mayan EDMS (хранилище), Camunda (workflow) и NiceGUI (фронтенд). Система закрыла ключевые потребности: электронные подписи для внутренних документов, сквозная LDAP-аутентификация и контроль исполнения задач — без единой коммерческой лицензии

Читать далее
Всего голосов 5: ↑5 и ↓0+5
Комментарии4

Observability своими руками: затаскиваем Prometheus, Loki и Grafana в Go-стартап на бесплатный VPS

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

Я Go-разработчик из крупной Bigtech-компании и один из основателей ИИ-помощника по налаживанию отношений Ближе. По сути это телеграм-бот, который принимает вопрос от пользователя по long-polling модели, обогащает его промтом, идёт в LLM, получает ответ, отправляет обратно пользователю. Контекст диалога и пользователи хранятся в Postgres, всего один инстанс приложения на Go, также cron, который отправляет уведомления с просьбой оставить обратную связь о продукте. Docker Compose для запуска нескольких контейнеров.

Также в моей команде есть product-manager, который отвечает за развитие продукта. Ему необходимо быстро тестировать гипотезы, понимать эффективность каналов продвижения, считать вовлечённость, удержание пользователей и желательно делать это всё с минимальными тратами.

Погрузиться в детали
Всего голосов 8: ↑7 и ↓1+6
Комментарии4

Я пишу свой терминал с нуля, чтобы понять как работает компьютер

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

Что происходит, когда вы вводите ls в терминале? Как 2 буквы превращаются в список файлов на экране? Я решил разобраться и написал свой терминал с нуля на C++.

В этой статье я объясняю через метафору ресторана, как работают три магических системных вызова — fork(), exec() и wait() — которые лежат в основе любого терминала. Вы узнаете, почему cd нельзя сделать обычной программой, как работает перенаправление >, и какой коварный баг я поймал из-за непонимания процессов. Без сложной теории — только практика и понятные объяснения.

Читать далее
Всего голосов 14: ↑13 и ↓1+14
Комментарии10

Почему страницы сайта выпадают из индекса

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

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

Читать далее
Всего голосов 1: ↑0 и ↓1-1
Комментарии0

Подключаем российские AI-сервисы к OpenClaw: GigaChat, YandexGPT и Yandex 360

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

Интегрируем российские AI-сервисы (GigaChat от Сбера, YandexGPT и Yandex 360) с OpenClaw — open-source платформой для AI-агентов. Создаём русскоязычных агентов, подключаем CalDAV календарь и Yandex Disk. Все с нуля, с кодом и troubleshooting.

Читать далее
Всего голосов 8: ↑6 и ↓2+5
Комментарии17

Автоматизируем чтение Telegram-каналов: LLM, Telethon и грабли на пути к MVP (Claude Code опыт)

Время на прочтение7 мин

Расскажу, как собрал бота для AI-суммаризации Telegram-каналов: архитектура, выбор LLM-провайдера, оптимизация скорости и неочевидные проблемы при деплое на российский VPS.

Читать далее
Всего голосов 9: ↑9 и ↓0+11
Комментарии5

Проблема не в разработке, проблема в управлении: если виноватых нет, виноватый назначается

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

Когда я начинал карьеру в ИТ в роли разработчика, я довольно рано начал слышать одну и ту же фразу от более опытных коллег и руководителей:

«Тут проблема не в разработке. Тут проблема в управлении».

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

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

Как говорил Луначарский, дайте мне томик Ленина — и я найду в нём такую цитату, которая способна объяснить любое явление в этой вселенной.

Читать далее
Всего голосов 9: ↑7 и ↓2+5
Комментарии11