На дворе 2026 год. Веб-сервисы тестируют облачные оркестраторы: тысячи виртуальных пользователей поднимаются из пайплайна, метрики падают в Prometheus, деградации ловит алерт до того, как их заметит клиент. А в телефонии, которая до сих пор держит колл-центры, банки, скорую помощь и диспетчерские, релиз АТС часто проверяют так же, как двадцать лет назад: тестировщик берёт два телефона и звонит сам себе. Нагрузку дают инструментом из нулевых (SIPp со сценариями в XML) которые проверяют сигнализацию, но не слышат, прошёл ли голос.
xk6-sip — моя попытка закрыть этот разрыв. Это расширение k6/x/sip для Grafana k6, в котором звонок описывается кодом на JavaScript: абоненты регистрируются, звонят друг другу через тестируемую АТС, отвечают, переводят, ставят на удержание, передают DTMF и проверяют, что слышат друг друга. Один и тот же скрипт работает как функциональный тест из одного звонка и как нагрузочный тест на тысячи одновременных разговоров.
По сути это инфраструктурный сдвиг: SIP-коммуникации начинают описываться так же, как Infrastructure as Code. Сценарий лежит в Git, проходит ревью, запускается из CI и оставляет после себя метрики.
Расширение подано в официальный реестр расширений k6 Grafana Labs и проходит там ревью. Код открыт под Apache-2.0: github.com/Dmitry-Fedotov-Dev/xk6-sip.
Я работал 4 года в телефонии и прошёл путь от стажёра-ручника QA в команде ядра до Performance Engineer продукта. Идея описывать тест действиями абонентов вдохновлена внутренним инструментом, который я написал во время работы в телекоме. Всё остальное — код, нагрузка, медиа, метрики, SIP-стек — написано в xk6-sip заново.
Читать далееБесплатный AI-кодинг в 2026 году уже далеко не всегда означает несколько запросов в день.
Я собрал 10 AI coding agents, которыми можно пользоваться бесплатно: OpenCode, Freebuff, Cline, Kilo Code, Cursor, Codex, TRAE, ZCode, CodeGPT и Antigravity. Сравнил не только сами приложения, но и бесплатные модели, реальные лимиты, trial-периоды, BYOK, локальные модели и цены платных тарифов
Все данные в статье актуальны на 25 сентября 2026 года.
Читать далееПривет, Хабр! Это четвёртая статья цикла про R&D‑исследование для небольшой команды DBA.
Мы начали с того, что решили упростить мониторинг парка из более чем 800 экземпляров нашей СУБД Platform V Pangolin DB (реляционная СУБД на базе PostgreSQL) с помощью доработки postgres_exporter. А потом и вовсе собрали автономный агент, который сам обрабатывает тикеты: очищает дисковое пространство, выполняет VACUUM/ANALYZE и планирует остановки БД.
В этой статье расскажу, как мы продолжили тестировать гипотезу с агентом: перевели его в режим второй линии поддержки и замеряли реальные результаты. Будут числа, примеры, использование LLM для анализа паттернов, миграция задач из Pipeliner и планы по дальнейшему R&D и превращению агента в полноценную вторую линию поддержки.
Читать далееПереход на новую версию 1С часто выглядит проще, чем оказывается на практике: обновление платформы, новый интерфейс и изменения в окружении могут одновременно повлиять на пользователей, разработку и процессы доставки.
В статье разобрали сценарий миграции на 1С:Предприятие 8.5, где несколько незаметных проблем привели к сбоям после выхода в прод, и показано, какие технические и процессные решения помогают избежать таких ситуаций.
Читать разборОбычно такие статьи начинаются с банальных вопросов по типу «Что такое интерфейс», «Что такое разработка», «Что такое проектирование». Суть в том, что это не так важно в рамках данной статьи, и к тому же без того интуитивно понятно. Интуитивно понятно также, как и должен быть понятен хороший пользовательский интерфейс!
Из экономики можно подчерпнуть то, что существует три типа реализации продукта/модели взаимодействия на рынке: от бизнеса к бизнесу, от бизнеса к потребителю и от потребителя к потребителю (последнее – допустим, доски объявлений, тот же Авито). По части ПО мы имеем нечто похожее: от программиста к программисту, от программиста к пользователю, от пользователя к пользователю. Например, когда одни программисты создают библиотеку или новый усовершенствованный ЯП – они нацелены прежде всего на аудиторию программистов. А если идёт разработка ПО для создания и редактирования графических объектов (тот же Photoshop) – то главной аудиторией является пользователь в самом широком смысле этого слова. От пользователя к пользователю же – это когда один юзер отправляет другому программу на Visual Basic для анализа чего бы то ни было в Excel (либо других таблицах).
Проблема какая, прежде всего: мы любим, когда всё видно, существует логика, последовательность, в общем – когда ПО напоминает больше музыкальный инструмент, а не набор функций (последнее примемлемо только для библиотек Python – но даже они соревнуются в понятности между собой). В общем, никому не нужен инструмент, которым непонятно, как пользоваться. И если в связке программист-программисту это не так страшно (хотя неприятно, те же IDE штука полезная), то создание ПО для массового пользователя без интерфейса – это означает создание ПО, которое не откроют никогда. Ваш автомобиль может быть шикарен в большинстве своём, но если человек не понимает, как открыть дверь и где там вообще руль – это провал. А если вы вдобавок выдадите ему вместо объяснений 200-ти страничный документ – провал вдвойне, опять же, если речь про классического потребителя.
Читать далееАтаки, направленные на подмену адресов, отравление адресной книги и перехватчики буфера обмена делают одну и ту же ставку: вы сравниваете только несколько первых и последних символов адреса, и не сравниваете каждый символ. Мы написали небольшую open-source-библиотеку, которая представляет адрес в виде понятного изображения, с дорогой возможностью подделки
Читать далееOpenResearch от alphaXiv превращает coding-агентов в исследовательских. Из коробки он работал с Claude Code, Codex, OpenCode, Cursor и Google Antigravity. Мне хотелось использовать в нём ещё три агента, которые уже стояли у меня на Windows: Kimi Code, MiniMax Code и ZCode. Я поставил эту задачу Claude Code в облачной сессии и получил форк с релизом для Windows и Linux, в котором новые агенты работают наравне со старыми.
Дальше рассказываю, что такое OpenResearch, как мы разделили работу, как устроены адаптеры и на какие грабли наступили. Их набралось 13.
Читать далееКритичный сервис лег, Prometheus показывает firing, в общем чате уже бухтят менеджеры, но к исправлению проблемы никто не приступил: один инженер решил, что проблему уже разбирает коллега, а коллега уже не дежурит.
Причина может находиться на любом участке цепочки: правило потеряло метку команды, маршрут выбрал общий канал или у сообщения не оказалось конкретного получателя.
Для того, чтобы разобраться, мы рассмотрим путь одной HTTP 500 ошибки: от счётчика приложения и PromQL до webhook в систему реагирования. По дороге соберём конфигурации, разберём ошибки маршрутизации и проверим, почему повторная отправка не заменяет эскалацию. Для участка с дежурствами используем наш открытый проект nxs-anomaly.
Читать далееСчитается, что если fsync включён в конфиге — данные в безопасности. На практике это не гарантия, а всего лишь надежда: вызов может быть проигнорирован драйвером, виртуализацией или самой ОС, а СУБД при этом честно подтвердит COMMIT клиенту. Разбираем, как через несколько независимых проверок — от системных вызовов до жёсткой перезагрузки тестового стенда — узнать, действительно ли ваш WAL долетает до диска, а не только до кэша операционной системы.
Читать далееПривет! Я Маша Селявко, продуктовый редактор в Авито. Недавно мы проверяли интерес к ИИ-помощнику в Автохабе и для этого сделали фейкдор — ложную точку входа в продукт, за которой скрывался опрос.
Обычный фейкдор строится на иллюзии, что продукт уже существует, но мы не хотели подрывать доверие пользователей. Поэтому решили сделать джентльменский сценарий. Важную роль в нём играли тексты, и я подключилась к задаче как редактор. Расскажу, что у нас получилось.
В конце будет небольшой бонус для редакторов — ссылка на оплачиваемую стажировку в Авито (。•̀ᴗ-)✧
Читать далееВ данном примере рассмотрен способ торможения который реализован путём переключения цепи питания от источника трехфазного напряжения на нагрузку через выпрямитель. В данном случае двигатель будет работать в генераторном режиме и нагрузка в общем случае может быть различной, например в таком режиме могут заряжаться аккумуляторы (рекуперативное торможение). В качестве механической нагрузки на электродвигатель используется инерция + трение.
Читать далееЯ Максим Поклонский. Более 18 лет занимаюсь стратегией и проведением стратегических сессий для бизнеса, участвовал более чем в 280 стратегических проектах в компаниях из разных отраслей.
У компании может существовать стратегия, бюджет, набор KPI, проектные команды и вполне профессиональный менеджмент — и при этом отсутствовать единый ответ на вопрос:
Читать далееВ команде может быть сильный аналитик, десятки дашбордов и привычка принимать решения на данных, но это еще не значит, что аналитика в команде зрелая. Мы в Garage Eight решили разобраться, как измерить это состояние и что делать, если сильное партнерство с бизнесом уже есть, а аналитический фундамент всё еще хромает.
Меня зовут Олег Игнатов, я Head of Product Analytics в Garage Eight. В статье расскажу, как мы собрали матрицу зрелости аналитики, а затем превратили результаты оценки в планы развития. Покажу, почему партнерская модель — важный, но не финальный этап развития аналитика, и объясню, почему с распространением AI роль аналитика-владельца становится только важнее.
Читать далееДля разных задач требуются разные модели. Одни быстрее, другие дешевле. Есть те, что показывают лучшие результаты в анализе данных, и есть те, что лучше подходят для кодинга. Иногда выбор определяют требования к обработке данных, внутренней инфраструктуре, информационной безопасности и соблюдению регуляторных норм.
Чтобы собрать все эти суперспособности воедино, пригодится маршрутизация или роутинг моделей.
Читать далееПеред вами график гласных Международного Фонетического Алфавита. Если вы когда-либо интересовались фонетикой или даже лингвистикой в целом, вы видели этот график. Его учит каждый студент-лингвист на первом курсе. Тем не менее, он неверен.
Из этой статьи вы узнаете:
1. Как мы до этого дошли - почему ошибка из 1917-го года до сих пор воспроизводится в каждом учебнике в 2026-м
2. Как на самом деле выглядит пространство гласных
3. Как на самом деле связаны артикуляция и акустика гласных
4. Как программно вычислить положение конкретного звука в прострастве гласных
5. Как правильную теорию можно использовать для улучшения английского произношения и уменьшения акцента
Читать далееВо второй части серии — чего ждёт от инструмента отчётов современный Java-разработчик и на каких идеях я собрал свою надстройку над JasperReports — не переписывая движок и не отказываясь от Jaspersoft Studio.
Один стандарт вместо нескольких способов передать данные: в отчёт едут обычные Java-объекты. Дерево вместо плоской сетки банд: отчёт собирается из модулей, вложенных друг в друга, включая повторяющиеся. Слои: данные добывает Java, вёрстка остаётся в JRXML и в Studio. И объект как единый носитель структуры, данных и имён — вместо одного и того же смысла, продублированного и в XML, и в коде.
Отдельно — ответ на возражение из комментариев к первой статье: зачем вообще выносить выборку данных из шаблона, если Jasper умеет ходить в базу сам.
Первая часть серии — откуда взялся Jasper и почему он так устроен.
Читать далееВ этом минутном фильме нет ни одной картинки, видеофайла или сэмпла. Огонь, гравюру, 3D-сферу, пиксельную игру и музыку рисует и синтезирует один HTML-файл на 1700 строк, и написал его ИИ-агент. Без правил тот же агент выдаёт унылую заставку: синий фон, неон, всё ползёт линейно. Разбираю, что это меняет: кадр как чистая функция draw(ctx, t), рендер в MP4 без единого рывка и агент, который сам проверяет фильм по таймкодам.
Читать далееУйти из найма на фриланс хочется после вдохновляющих видео о свободе и путешествиях или посреди напряжённого рабочего дня в найме. Но фриланс в IT не так прост и заманчив, как кажется на первый взгляд. Это отдельная модель работы со своими плюсами и минусами.
В статье разберём, всем ли подходит работа на себя, как она устроена и сколько можно зарабатывать на фрилансе.
Читать далееКак постулирует Второй Закон Термодинамики (великий и ужасный), без притока свободной энергии любая сложная система быстро деградирует и никакая движуха в ней становится невозможна. Естественно, бактериальные клетки не исключение. Поэтому, рассмотрение процессов, происходящих в ней, имеет смысл начать именно с энергетического аспекта.
Погнали!Дрессировочный ошейник для собак на предплечье, провод в COM‑порт ноутбука, португальская фраза в наушниках. Ошибусь на букве — ударит током.
Я занимаюсь машинным обучением, и однажды я задал вопрос, от которого преподавателя передёрнет: чем обучение человека принципиально отличается от обучения модели? А дальше два года проверял ответ на самом живом — на собственной голове.
Половина второго ночи. На левом предплечье у меня застёгнут дрессировочный ошейник для собак — тот самый, с металлическими контактами. От него тянется провод к COM‑порту старого ноутбука. На экране — португальская фраза, я слышу её в наушниках и должен набрать вслепую. Палец висит над клавишей. Я знаю: ошибусь на букве — меня ударит током. Не сильно. Достаточно.
Зачем взрослый мужчина, инженер, отец троих детей, сидит ночью и бьёт себя током за опечатки в португальском — история длинная. Она началась с отчаяния, прошла через несколько диких экспериментов и закончилась работающей системой, на которой сейчас учится вся моя семья. Расскажу целиком.
И сразу оговорюсь, чтобы ошейник не выглядел аттракционом ради красивого начала: без этой дури не было бы всего остального. Именно он показал мне, почему сигнал вообще перестаёт работать, — а из этого выросло всё, что сегодня действительно держит и меня, и семью за столом. Так что мы к нему ещё вернёмся, и не один раз.
Читать далее