Чем больше задач берёт на себя агент, тем чаще он упирается не в качество модели, а в контекстное окно: туда нужно уместить инструкции, историю диалога, схемы инструментов и всё, что эти инструменты возвращают. Я считаю, что токен-оптимизация агентов — то, как мы расходуем это окно — станет одним из ключевых направлений ближайших лет, наравне с выбором модели и качеством промпта.
Читать далееВ этой статье я хочу поделиться личным опытом внедрения API-first подхода в автотестировании Java-приложений. Речь пойдет не о теории тестовой пирамиды, а о практической архитектуре автотестов, которая сложилась в нескольких фреймворках с разным уровнем сложности и балансом между API, UI и E2E.
Мы пересмотрели распределение проверок между API, UI и E2E, вынесли основную массу бизнес-сценариев на API-уровень и оставили UI там, где он действительно дает ценность: в пользовательских сценариях, отображении данных, работе форм и критичных сквозных проверках.
Читать далееНаверное не существует в мире технической поддержки, которая бы среди прочего не занималась спасением данных клиентов. Не минула участь сия и нас в Postgres Professional. Однако особенность спасения битых данных в СУБД заключается в том, что сломаться может сразу на двух уровнях: физическом и логическом. Первое, это когда что-то случилось с физическим файлом внутри которого лежат данные, а второе это когда файл цел, но внутри него каша без смысла. Поэтому сегодня мы поговорим о том как понять что в вашей базе что-то пошло не так, как понять почему, как оценить ущерб и минимизировать его. А в конце, бонусом, обсудим как не стать героем подобных статей.
Читать далееЕсли вы руководитель, вы наверняка знаете это чувство: голова забита планами, KPI, сроками, бюджетами, а где-то на периферии теплится мысль, что самое важное в работе — это всё-таки люди: ваши сотрудники, клиенты да и вы сами. Книги про менеджмент часто бывают сухими, как песок в пустыне, или, наоборот, слишком вдохновляющими, что после прочтения хочется, но непонятно, с чего начать.
Мы собрали пять книг, которые подходят к делу по-человечески. В них нет высокомерных лекций и скучных инструкций, и они напоминают: хороший руководитель не давит, а договаривается. Не приказывает, а объясняет. И не боится признавать ошибки — ни свои, ни чужие.
Читать далееОдин хост. Один образ. Пять виртуальных машин. Три минуты — и у вас HA Kubernetes с аппаратной изоляцией, который не снился облачным провайдерам. Никаких облаков, никаких managed-сервисов — только Firecracker, kubeadm и пара сотен строк bash. Это не «лабораторка на выходные» — это чертёж собственной инфраструктуры, которую вы контролируете до последнего байта.
Читать далееЕсли вы хоть раз обсуждали «правильную» архитектуру мессенджера, вы знаете, что разговор всегда скатывается в два полюса, и оба плохие.
Полюс первый: чистый P2P. Никаких серверов, клиенты говорят напрямую. Звучит красиво ровно до первого практического вопроса. Собеседник офлайн, а вы хотите написать ему сейчас. Куда уйдёт сообщение? В никуда, ждите, пока он включит телефон одновременно с вами. NAT, симметричные файрволы, спящий Android, который убивает фоновые сокеты. P2P горит на неудобстве.
Полюс второй: сервер. Удобно, офлайн-доставка есть, пуши есть. И ровно одна коробка, в которой лежат личности всех, граф контактов всех, очереди всех. Эту коробку можно заблокировать по сети, можно изъять физически, можно прийти к оператору с предписанием. Серверные мессенджеры горят на сервере.
Один из наших пользователей в бете сформулировал это лучше, чем мы в любой презентации: обсуждение альтернатив всегда имело два полюса. Либо ищем инфраструктуру как в Matrix, где все сидят по своим загонам и не пишут друг другу. Либо сидим без офлайн-сообщений как в P2P. Либо вообще не можем подключиться, потому что мосты для обхода блокировок съела моль.
Мы делаем RCQ, мессенджер в духе старой аськи, но на современной крипте. И последние месяцы мы потратили на то, чтобы найти выход из этого треугольника. Ниже модель, к которой мы пришли, и, что важнее, места, где она пока спотыкается. Это не готовый протокол, это дизайн и первые слои. Но он внутренне непротиворечив, и спор о двух полюсах он закрывает.
Читать далееКаждый раз когда коллега за 40 тихо уходит из компании, все думают одно и то же. Не выгорел ли. Не попросили ли. В IT принято считать, что после 35 становится сложнее, а после 40 совсем грустно. Но это ощущение или реальность? Я собрал цифры из hh.ru, рекрутинговых агентств, западных исследований и проверил.
Читать далееСегодня Пикабушник под ником @apokhmel подарил мне мою мечту - оригинальную консоль GBA SP. Для тех, кто не в курсе - это легендарная портативка, вышедшая в далёком 2003 году и являющаяся раскладной версией оригинального GBA, куда добавили подсветку дисплея. Сначала ламповую, а затем и светодиодную!
Читать далееСертификат комплаенса — мёртвая бумага: через два часа хотфикс делает сертифицированный хеш недействительным, и никто не замечает. UVS заменяет «доверьтесь нам» на то, что любой пересчитает сам: deriveTier выводит тир из улик, а не из бейджа. drand + двойной RFC-3161-якорь + WASM-движок, собираемый на лету. Демо живые — попробуй сломать.
Provably Fair и как с ним житьВ ИБ и IT до сих пор рассказывают сказку про «рынок кандидата». На практике вами торгуются алгоритмы, скрытые критерии и корпоративная шизофрения. Разбираю по опыту своему и гостьи подкаста, HR‑эксперта Екатерины Днепровской, как устроен этот цирк и как в нём выживать именно технарю и безопаснику.
Читать далееНа сегодняшний день сфера ИТ в России — это огромная индустрия, где работают сотни тысяч специалистов. Официально государство признало значимость этой профессии еще в 2009 году, когда был учрежден День программиста (Указ Президента РФ № 1034).
Но даже тогда эта формулировка сужала всю индустрию до одной специальности. Ведь работа ИТ-систем — это заслуга не только программистов. Здесь одинаково важны системное администрирование, администрирование сетей, информационная безопасность техподдержка, и другие специальности. За прошедшие годы разрыв между формулировкой в законе и реальностью только увеличился. Думаю пора расширить статус праздника, переименовав его в День специалиста информационных технологий.
Читать далееКаждый раз, когда нужно обновить аватарку на Линке, HeadHunter или во внутреннем Битриксе компании, в мире плачет один digital-специалист. Потому что варианта обычно два. Либо ты судорожно ищешь в телефоне фотку с чьей-то свадьбы, где ты в костюме, и пытаешься криво обрезать чужое плечо из кадра. Либо сдаешься, отдаешь 10 тысяч за час в фотостудии и на выходе получаешь пластиковый, скованный портрет с натянутой улыбкой «успешного успеха». Привет, 2010-е.
Читать далееДержите LLM подальше от тестов чат-бота
Кто тестировал чат-бота, знает: на одной реплике всё просто, а на третьей-четвёртой начинается боль. Бот должен помнить имя, которое вы назвали два хода назад, держать слоты и не сваливаться в «уточните ваш запрос» на ровном месте. И как только садишься это проверять, упираешься в развилку: чем, собственно, проверять ответы многоходового диалога.
Читать далееПоследние пару лет, кажется, невозможно поговорить об AI в разработке, чтобы разговор не упирался в тему производительности.
Отовсюду постоянно вылезают новые истории успеха. Кто-то показывает, как сократил время разработки в несколько раз. Кто-то рассказывает, что теперь пишет за день столько кода, сколько раньше писал за неделю. Иные вообще собирают полноценный продукт за выходные и искренне не понимают, почему раньше на это уходили месяцы. Честно говоря – раньше читал, но в последнее время просто игнорирую такие заголовки (почему – надеюсь станет понятно из статьи).
В общем, начинает возникать ощущение, что индустрия наконец приближается к своей заветной мечте: программирование становится быстрее, а создание продукта дешевле и доступнее.
И мы, с моей командой проходим через те же изменения, что и вся индустрия.
Понять / Найти решениеКогда нейросеть отвечает на вопрос и показывает блок «источников», кажется, что у всех систем это одно и то же — список ссылок, на которые модель опиралась. На деле за этим блоком в каждой системе стоит своя реализация: свой способ обмена с сервером, свой формат ответа, свои поля, из которых интерфейс достаёт цитаты. Мы разобрали сетевой обмен веб-клиентов трёх систем — ChatGPT, Gemini и DeepSeek — и параллельно прогнали через них один и тот же набор запросов по 10 раз, чтобы понять не только техническое устройство цитирования, но и что эти системы реально цитируют.
Сразу оговорка: я основатель RankCaster AI — платформы, которая управляет видимостью брендов в ответах нейросетей. То есть мы изучаем категорию, в которой сами работаем. Чтобы не подыгрывать себе, мы исключили собственный домен из всех таблиц ещё до подсчётов, а ограничения методики описали в полном тексте исследования. Здесь — техническая часть: разбор механики цитирования.
Читать далееМалый бизнес несёт непропорционально высокую административную нагрузку: штраф по ч. 4 ст. 5.27 КоАП РФ за отсутствие трудового договора — до 100 000 ₽ на юридическое лицо, отказ ФНС в регистрации изменений по формальным основаниям откатывает процесс на 5–7 недель, ненадлежащим образом оформленный договор в арбитраже лишает доказательной базы. При этом экономика малого бизнеса не позволяет держать штатный юридический блок. В этой статье — разбор операционной структуры юридических задач, нормативная привязка и механика типовых процедур.
Читать далееPostgreSQL: PostgreSQL 19 Beta 1
Официальный релиз запланировали на сентябрь/октябрь. Вот что старейшины решили выделить в описании релиза 19-й версии:
Производительность
PostgreSQL 19 усовершенствует асинхронную подсистему ввода-вывода, представленную в PostgreSQL 18: io_method=worker теперь автоматически масштабирует количество рабочих процессов ввода-вывода на основе новых параметров io_min_workers и io_max_workers.
Расширение pg_plan_advice позволяет пользователям стабилизировать и контролировать решения планировщика, а pg_stash_advice - автоматически применять рекомендации, используя идентификаторы запросов.
Autovacuum теперь может использовать параллельные рабочие процессы, которые можно настраивать с помощью нового параметра autovacuum_max_parallel_workers, а новая система оценки autovacuum помогает расставлять приоритеты таблиц при их вакуумировании. Кроме того теперь PostgreSQL помечает страницы как видимые, когда их запрашивают.
Читать далееСтрока “false” в PHP равна true. Я узнал это, когда рубильник, которым я выключаю фичи перед живыми игроками, полгода отказывался выключаться. Два года в одиночку пилю текстовую MMORPG на CodeIgniter 4: мир дышит раз в минуту по крону, 485 выживших, 45 тысяч боёв. Пять багов — и за каждым стоял реальный человек по ту сторону экрана.
Читать далееЕсть тип рекламных кампаний, который сложно сразу распознать. На первый взгляд все выглядит стабильно: показы идут, клики есть, CTR не падает. Но стоимость заявки медленно растет. Не в два раза за день, а хуже. На 5–10% каждую неделю. Настолько плавно, что увеличение легко списать на сезонность, рост ставок или конкуренцию. При этом все больше и больше денег тратится впустую.
Рассказали в статье:
Читать далееredb экосистема
В предыдущей статье я анонсировал redb.Route.Llm как 24-й транспорт redb.Route — мы делали LLM ещё одним endpoint'ом наравне с Kafka, RabbitMQ и HTTP, чтобы выкинуть отдельную «AI-инфраструктуру», стоящую рядом с интеграционной. Заодно я повесил в конец статьи «честный skip-list» — список того, что в 3.1.0 ещё не доделано: streaming, ToolCacheStore, KnowledgeStore, BatchStore, EvalRunStore, sliding-window память, sandbox-инструменты.
Из этого skip-list'а делано больше, чем я планировал. Но не это главное. Главное — что в процессе доделывания обнаружилась настоящая ценность всей затеи: LLM-транспорт оказался не очередным чат-фреймворком, а недостающим звеном в ESB, после которого «бизнес-агент в проде» перестаёт быть отдельным проектом. Эта статья — про то, как чат-демо превращается в enterprise-агентскую платформу, не переписываясь и не превращаясь в «AI-монолит сбоку».
Всё, что ниже — реальный код из репозитория, не псевдокод. Ссылки на демо-маршруты в конце.
Читать далее