Более 28 лет опыта разработки, в том числе и на C#.NET с 2002 года — архитектура, практики, паттерны, реальный код, с ИИ и без него.

Блог разработчика C#.NET: архитектура, паттерны, практики, примеры кода, опыт разработки с 1989 года.

Недавно добавлено
Идемпотентность в API
Опубликовано 17.10.2026 07:00:00 в категории Микросервисы
Как повтор запроса превращается в дубль заказа и двойное списание — и как это исправить в ASP.NET Core? Обо всём в этом видео.
Промпт-инжиниринг для технической документации — как настроить ИИ-агента
Опубликовано 16.10.2026 05:02:00 в категории Искусственный интеллект
Какие документы можно доверить ИИ-агенту, что ему нужно явно запрещать, примеры плохих и правильных промптов для XML-комментариев, ADR и release notes, инструменты docs as code.
Кэширование — как инструмент управления коммуникациями в микросервисах
Опубликовано 11.10.2026 03:28:00 в категории Микросервисы
Кэширование обычно воспринимают как способ «чтобы работало быстрее». В монолите так оно и есть. В микросервисной архитектуре у кэша появляется вторая, не менее важная роль: он решает, когда сервису вообще стоит разговаривать с "соседом". В этой статье разберёмся, чем кэш помогает микросервисам, где он может находиться, как узнаёт об устаревании данных и как всё это реализовать на ASP.NET Core.
Code Review от ИИ-агента
Опубликовано 10.10.2026 07:30:00 в категории Теория и практика
Чтобы не прокиснуть мозгами, можно делать наоборот: не заставлять ИИ-агента писать код, а наоборот, написать код и попросить ИИ-агента его проверить.
Факт дня
Большая часть Египта находится в Африке, а небольшой кусочек — в Азии.
Интересные новости
300 тысяч job в час: как неправильный порядок Dispose в Serilog устроил утечку памяти
Архитектура и паттерны
21.10.2026 04:47:41

Фоновые задачи Hangfire ждали в очереди до 1,5 часа, а память сервиса росла без остановки. Причин нашлось две: аналитические job конкурировали с обычными за одну очередь, а из-за неправильного порядка Dispose у LogContext.PushProperty в Serilog накопилось около 229 тыс. объектов PropertyEnricher. После разделения очередей ожидание сократилось до 5 минут, а исправление Dispose остановило утечку.

Разработчик сделал заглушку для SD-слота MacBook, которая показывает статус работы ИИ-агентов
Железо и гаджеты
21.10.2026 04:47:39

SidePulse — светодиодный индикатор на 8 светодиодов для SD-слота MacBook Pro. Он показывает, что делают Claude Code, Codex, Cursor, Junie и Grok: работают, ждут ответа, завершили задачу или упали с ошибкой. Версия для SD-слота стоит $70, для USB-C (Windows/Linux) — $30, программная часть открыта на GitHub.

Остановили Python, .NET продолжил работать: как изолировать ИИ без лишних микросервисов
Архитектура и паттерны
21.10.2026 04:47:37

Основной API на .NET 10 построен как модульный монолит, а отдельным сервисом на FastAPI вынесены только ИИ-вычисления. Автор проверяет, что будет при отказе Python: ошибки связи превращаются в ответы 503/504/502 через ProblemDetails, API продолжает работать, а после перезапуска контейнера всё восстанавливается без перезапуска .NET.

Тысячи приватных переписок и документов утекли из ИИ-агента Meta Muse
Искусственный интеллект
21.10.2026 04:47:32

Исследователи нашли около 6800 ссылок на приватные переписки с ИИ-агентом Muse: названия чатов попадали в поддомены и находились в публичных базах pDNS одним запросом. Среди найденного — документы о найме, заявка на кредит и графики отпусков. Meta отключила обмен ссылками на неопределённый срок. Хороший пример того, как утечка данных возникает из-за решения на уровне архитектуры.

Релиз открытого музыкального проигрывателя Audacious 4.6.2
Программное обеспечение
21.10.2026 04:46:06

В середине октября 2026 года состоялся релиз легковесного кроссплатформенного музыкального проигрывателя Audacious 4.6.2. Это решение является ответвлением от проекта Beep Media Player (BMP) — форка классического плеера XMMS. Исходный код проекта написан на C++ и С. Разработка проекта ведётся с 2001 года. Версия Audacious 4.5 вышла в июле 2025 года. Сборку Audacious 4.6 представили в мае 2026 года.

Вопрос дня
Какое масло должно составлять основу церковного елея?
A) Облепиховое
B) Розовое
C) Оливковое
D) Миртовое
Полезности
Опубликовано 08.09.2021 17:40:01 в категории Полезности
Комментариев: 1
В этом посте постарался собрать всё самое полезное, что может помочь максимально быстро найти новую работу разработчику.
Шаблоны микросервисов
Опубликовано 03.08.2021 14:50:19 в категории My Frameworks
В статье речь пойдет про Nimble Framework. Шаблоны позволяют ускорить процессы, потому что исключают рутину. Не за чем делать одно и тоже много раз, можно просто использовать наработки и опыт других людей. Причем сфера применения шаблонов абсолютно не важна. Как часто вы создаете микросервисы?
Опубликовано 02.07.2021 16:10:26 в категории Полезности
Комментариев: 3
Интересные, полезные ссылки на книги, видео, статьи и другие материалы, которые могут быть полезные разработчикам.
Опубликовано 22.05.2021 23:22:50 в категории Теория и практика
Серия видео роликов с вопросами и ответами на них, которые присылают подписчики youtube-канала и читатели блога, а также и подписчики boosty.to. Ответы на разные вопросы по разным темам: о принципах программирования, паттернах, правилах, законах, библиотеках, nuget-пакетах, инструментах, сборках и многое-многое другое.
Юмор дня

Звонок на фирму

Истории
Реальная история. Звонок на фирму... Секретарша (молодая девушка) берет трубку, клиент начинает объяснять, что он хочет. Она его тем временем переводит на телефон менеджера (молодого человека), когда тот поднимает трубку (то бишь нажимает СП-фон), клиент в это время спрашивает:
- Девушка, а я вот что еще хотел спросить!
На что менеджер грубым мужским голосом отвечает:
- А я, собственно, уже не девушка!
(дальше следует немая сцена)
Что-то пошло не по сценарию и завершилось ошибкой. Перезагрузить страницу (F5) 🗙

Переподключаем сервер...

Переподключение сломалось... Пробуем еще раз сек.

Не получилось переподключится.
Пожалуйста, обновите страницу F5

Сессия была поставлена сервером на паузу.

Восстановить сессию не получилось.
Пожалуйста, обновите страницу F5.