TL;DR. Один «безобидный» foo.GetAsync().Result в middleware способен превратить ASP.NET Core, державший 50k RPS с p99 = 40 мс, в сервис с 12k RPS и p99 = 4 с — при CPU 8 %. Виноват не сам blocking call, а hill-climbing — фидбэк-луп в ThreadPool, в недрах которого живёт дискретное преобразование Фурье. Разбираем по исходникам CoreCLR, почему это вообще возможно, воспроизводим эффект на ~80 строках кода и разбираемся, почему SetMinThreads — не решение, а анестезия.
Читать далееКогда я начал поднимать PostgreSQL через Docker для своих проектов, всё выглядело просто: описал сервис в docker-compose.yml, запустил контейнер - база доступна.
Проблемы начались когда, я начал запускать миграции вместе с контейнерами. Иногда миграции стартовали раньше чем PostgreSQL успевал принять подключения, и приложение падало с ошибкой подключение к базе данных.
Читать далееOpSec (Операционная Безопасность) — способ скрыть важную пользователю информацию в сети для избежания утечек или взлома аккаунтов.
Сам по себе OpSec не является чем то сложным. Соблюдать базу операционной безопасности может абсолютно каждый, достаточно простых знаний того, как работает компьютер или другая электроника.
Читать далееДисклеймер: во второй половине статьи речь идёт о продукте OneMix Business от ООО ПАКС ЛАЙВ — я партнёр компании и заинтересованная сторона. Если такое триггерит — закройте сейчас, не обижусь. Если интересно разобрать математику зоопарка корпоративного софта и посмотреть как одна и та же задача решается в России в 2026 году — поехали.
Эта статья выросла из одной простой задачи. Год назад я сел и посчитал во сколько обходится «нормальный набор» корпоративного софта для команды из 50 человек. Когда вышло число, подумал что в формуле ошибка. Пересчитал. Цифра не сдвинулась.
Дальше пошёл по знакомым руководителям. Один партнёр юрфирмы из Питера, один зам технического директора подмосковного завода на пятьсот сотрудников, один владелец сети из четырёх стоматологий. У всех картина одна: платят за разное, в сумме примерно столько же, никто этого нигде не считает.
Ниже разбираю эту математику. Цифры все по прайсам апреля-мая 2026 года, я их проверял.
Читать далееПредставьте, что вы находитесь за рулем автомобиля. Даже находясь на пустой дороге, в отсутствии других участников дорожного движения, вам необходимо постоянно "подруливать", чтобы удержаться в полосе, притормаживать или останавливаться перед перекрестками и, наконец, поворачивать, останавливаться и парковаться. А теперь представьте, что все тоже самое вам необходимо делать с закрытыми глазами — примерно также "ощущает" себя автономный автомобиль без системы локализации.
Всем привет! На связи вновь команда разработки ЭвоКарго, а именно — команда локализации и картирования. Ранее обещали вам рассказать о том, как наш флот автономных грузовиков работает в нынешних условиях постоянного ограничения связи. Сделаем. Но для полноценного погружения решили сперва рассказать о том, как вообще устроена локализация в автономном транспорте. В этой статье в 2-х частях вы узнаете о том, почему задача локализации так сложна и какие способы для ее решения придумали инженеры.
Читать далееПривет! 20 мая прошел Inside AI Meetup от Wildberries & Russ — про практические кейсы внедрения ИИ: векторный поиск и модерация с 200+ моделями, AIOps для ML/GenAI-сервисов, RAG без галлюцинаций, запуск LLM-продуктов, генерация текстов из видео, поиск и рекомендации.
В программе были кейсы от опыт Wildberries & Russ, MWS, Avito, VK, M2, МФТИ, Сбера, red_mad_robot и Альфа-Банка, а еще новые знакомства и полезный нетворкинг. В статье вы найдете видеозаписи с ивента и фото.
Узнать большеНесколько лет, я экспериментирую с генераторами картинок. Меня интересует один вопрос: можно ли из нейронок получить приемлемые концепт-дизайны сайтов,приложений, интерфейсов? Не с точки зрения кода, а хотя бы лэйаутов, цветовых схем и баланса текста/графики.
Читать далееМне захотелось узнать, как игра Cities: Skylines обеспечивает постоянное движение, которое мы видим в растущем городе — жители ищут работу, туристы посещают достопримечательности, мусоровозы ездят по своим маршрутам, люди находят себе пары, но не смог найти почти никакой информации. Поэтому я декомпилировал игру и решил разобраться сам. Выяснилось, что почти все взаимодействия в игре выполняются через простую, изящную систему: торги, напоминающие фондовый рынок.
Читать далееЕсли вы делаете RAG (Retrieval-Augmented Generation) на .NET, то рано или поздно упираетесь в вопрос: куда складывать эмбеддинги и как быстро искать по ним.
Существующие варианты делятся на два лагеря.
Внешние сервисы (Pinecone, Qdrant, Weaviate) — хороши, но требуют отдельной инфраструктуры. Сеть, авторизация, сериализация, мониторинг. Каждый запрос — это миллисекунды на HTTP. Плюс вы привязываетесь к конкретному облачному провайдеру или контейнеру.
Существующие .NET-решения — часто либо заброшены, либо имеют проблемы с производительностью (избыточные аллокации, медленный ANN, отсутствие гибридного поиска).
Но есть и третий путь: встраиваемая (embedded) векторная БД, которая работает прямо внутри вашего процесса. Никакой сети. Никакого внешнего сервиса. Только ваш код и процессор.
Читать далееМесяц назад я писал про парадокс DeepSeek V4 Pro — модель проиграла собственному Flash и Qwen 3.6 Plus трёхнедельной давности. Сегодня прогнал свежий battle на пяти моделях — два американских флагмана и три китайских — и расклад снова поменялся. Главное: Gemini-3.5-flash взял 97/S, тот же балл, что у GPT-5.5, и в 2.5 раза дешевле. Google впервые на моём тесте встал рядом с OpenAI на длинном русском контенте. Tencent Hy3-preview даёт A-tier за $0.0017 за вызов — в 134 раза дешевле GPT-5.5. DeepSeek V4 Pro я прогнал третий раз — качество стоит на месте (87), но цена упала в 5.4× и она снова в зоне полезного. Qwen 3.7 Max упорно вставляет китайские иероглифы в русский текст — регрессия относительно собственной 3.6, где этой проблемы не было. По дороге заметил, что наша формула cost_per_call жила полгода с приближением, которое занижало стоимость на 50–140%. Починили — теперь берём реальные токены из OpenRouter response.usage. И отдельно — почему при такой скорости релизов модель в продукте стоит держать заменяемой, а не зашитой в код намертво.
Читать далееОнлайн доска DGRM.net кеширует файлы в постоянном кеше. Постоянный кеш не удаляется при закрытии вкладки. Рассказываю как хранить большие файлы в браузере.
Читать далееУ большинства трекеров задачи по умолчанию показываются списком. Этого хватает, пока работа линейная: статус, исполнитель, приоритет. Как только появляются зависимости, иерархия и сроки, нужны другие представления. Ниже — короткий обзор того, что есть на рынке и для каких задач это подходит.
Читать далееПодписки купили, тренинг провели, через два месяца все вернулись в Excel. Знакомо? Делюсь методологией, через которую мы прошли в Alpina Digital и которую повторили у 40+ корпоративных клиентов.
Жемал Хамидун, Head of AI Alpina Digital, CPO AlpinaGPT
Читать далееВ прошлой статье мы разбирали kubectl describe pod: как читать вывод, в котором Kubernetes уже часто сам написал причину проблемы — в Events, Conditions, рестартах, probe’ах и статусах контейнеров.
Сегодня спустимся на следующий уровень: что делать, если снаружи всё уже посмотрели, а внутри контейнера нет даже /bin/sh.
Разберём, как дебажить distroless-контейнеры в Kubernetes через ephemeral containers: зачем они нужны, как работают, где помогают во время инцидента, почему можно легко ошибиться с файловой системой, процессами, DNS и TLS, и почему нормальная отладка должна жить в платформе, а не внутри боевого образа.
Читать далее«Ты кнопкодав с многолетним опытом смузихлёбства» — примерно так сейчас звучит позиция рынка в адрес опытных разработчиков. Венчурные деньги уходят в AI-first, штаты сокращаются, джуны уверены, что знают лучше. Я руководил отделом из 30 человек и наблюдал это изнутри.
Это не нытьё про «раньше было лучше». Это попытка честно разобраться, что происходит с профессией — через личный эксперимент.
Читать далееКак быть с инвойсом от иностранного вуза, если нет счёта в зарубежном банке? Сколько стоит образование и студенческая жизнь за границей в 2026 году? Как оплачивать бытовые расходы, если банки не работают?
Кто дочитает до конца, получит ответы на все эти вопросы. Поехали!
Читать далееВ прошлом году одна из наиболее оживлённых дискуссий в моём блоге (116 комментариев) развернулась под статьёй о ложном вакууме, опубликованной в конце августа. В начале этой статьи я упоминал, что уровень энергии вакуума и, следовательно, масса рождающихся элементарных частиц, а также масса протона, напрямую зависят от свойств скалярного поля Хиггса. Бозон Хиггса, открытый в 2012 году на Большом Адронном Коллайдере, является квантом этого поля. Там же я вскользь упоминал, что бозон Хиггса может быть не единственным, а представлять собой лишь одну из группы подобных частиц. Если бы в пространстве доминировало поле Хиггса, заключающее иную энергию, нежели наблюдаемое нами, то настройки Вселенной и нуклеосинтеза в частности могли бы слететь непредсказуемым и, скорее всего, катастрофическим образом. Поэтому важно понимать, существуют ли альтернативные поля, подобные полю Хиггса, и можно ли экспериментально получить другие частицы, функционально похожие на бозон Хиггса. Одно из первых сообщений о том, что на Большом Адронном Коллайдере обнаружен новый бозон Хиггса, поступило в 2015 году от знаменитого физика Марио Ливио. С тех пор ведутся исследования и делаются прогнозы о том, как искать такие альтернативные бозоны, и сколько их может быть в соответствии с какими теориями (спойлер: до пяти). Об этих поисках коротко расскажу под катом.
Читать далееCamelion - один из старейших брендов батареек, присутствующий на российском рынке (кстати, батарейки этого бренда продаются более чем в ста странах).
Я протестировал батарейки серии Camelion Plus Alkaline.
Читать далееПолтора года назад я работал в B2C-продукте с командой около 150 человек. Маркетинг хотел запускать промо на сайте: баннеры, акции, сезонные кампании. Простая задача, на которую у нас ушло два с половиной года и шесть разных решений.
Эта статья про путь, который мы прошли. И про то, что я обнаружил, когда поговорил с другой командой внутри той же компании.
Читать далееСтатья о том, как получить наблюдаемость (observability) в приложении с минимальным кодом, а бонусом получить структурированные логи с типизированными шаблонами, автоматическую корреляцию со спанами OpenTelemetry, всё это с помощью набора библиотек, которые я называю CleverBrush Framework.
Читать далее