🖇️ MongoDB C# Driver — официальный .NET-клиент для работы с MongoDB, который превращает взаимодействие с документной БД в удобный типизованный код. Проект поддерживает как динамические BsonDocument, так и строгую типизацию через POCO-классы, сохраняя при этом все преимущества NoSQL.
Интересно реализована LINQ-поддержка: можно писать привычные для C#-разработчика запросы вида
🤖 GitHub
@csharp_ci
Интересно реализована LINQ-поддержка: можно писать привычные для C#-разработчика запросы вида
collection.Find(x => x.Name == "Jack"),
которые под капотом транслируются в MongoDB-операции. Подходит для всего — от быстрых прототипов до enterprise-решений с асинхронными операциями. 🤖 GitHub
@csharp_ci
This media is not supported in your browser
VIEW IN TELEGRAM
На E-CODE одно из фокусных направлений — C#. Доклады экспертов на главном IT-событии осени будут в треке Backend 💙
Заходите смотреть программу и регистрироваться — места улетают стремительно.
Успех ждёт middle+ инженеров — команда Ozon Tech собирает в пространстве E-CODE профессиональное комьюнити. Общаться, меняться опытом и контактами, находить идеи и своё место в этом большом мире IT.
Или хотя бы у сцены — в лайнапе E-CODE НТР, Заточка, ILWT и Нейромонах Феофан.
E-CODE — событие, на котором вам стоит побывать.
Зарегистрироваться⬅
Заходите смотреть программу и регистрироваться — места улетают стремительно.
Успех ждёт middle+ инженеров — команда Ozon Tech собирает в пространстве E-CODE профессиональное комьюнити. Общаться, меняться опытом и контактами, находить идеи и своё место в этом большом мире IT.
Или хотя бы у сцены — в лайнапе E-CODE НТР, Заточка, ILWT и Нейромонах Феофан.
E-CODE — событие, на котором вам стоит побывать.
Зарегистрироваться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔍 NetSonar — инструмент для сетевой диагностики от sn4k3
NetSonar — это лёгкая и кроссплатформенная утилита, которая помогает диагностировать сеть, визуализировать данные и управлять сетевыми интерфейсами.
🧰 Возможности:
• Многопротокольные пинги: ICMP, TCP, UDP и HTTP — проверка доступности и измерение задержек
• Управление интерфейсами: просмотр IP‑конфигураций, статистики и управление адаптерами в реальном времени
• Сканирование сети: обнаружение устройств, подсетей и открытых портов
• Современный UI: интерфейс на Avalonia + SukiUI с тёмной темой и графиками
• Кроссплатформенность: работает на Windows, macOS и Linux (на базе .NET)
• Открытый код: лицензия AGPL‑3.0 — можно адаптировать и дорабатывать
🛠 Установка:
🔹 Windows:
🖥 Github
NetSonar — это лёгкая и кроссплатформенная утилита, которая помогает диагностировать сеть, визуализировать данные и управлять сетевыми интерфейсами.
🧰 Возможности:
• Многопротокольные пинги: ICMP, TCP, UDP и HTTP — проверка доступности и измерение задержек
• Управление интерфейсами: просмотр IP‑конфигураций, статистики и управление адаптерами в реальном времени
• Сканирование сети: обнаружение устройств, подсетей и открытых портов
• Современный UI: интерфейс на Avalonia + SukiUI с тёмной темой и графиками
• Кроссплатформенность: работает на Windows, macOS и Linux (на базе .NET)
• Открытый код: лицензия AGPL‑3.0 — можно адаптировать и дорабатывать
🛠 Установка:
🔹 Windows:
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Что выведет на экран этот код?
Anonymous Quiz
21%
Bar Bar Bar
50%
Bar InterfaceA InterfaceB
8%
Bar Bar InterfaceB
9%
Bar InterfaceA Bar
12%
Как выбрать стэк для ML-задач на соревнованиях?
Разбираемся на примере E-CUP 2025 от Ozon Tech. В новой статье собрали рабочие инструменты для решения типичных заданий по машинному обучению:
1️⃣ Рекомендации: предсказание следующей покупки пользователя.
2️⃣ Логистика: автопланирование курьеров.
3️⃣ Контроль качества: автоматическое выявление поддельных товаров.
Эти задачи предстоит решить на E-CUP 2025. Регистрация открыта до 17 августа включительно
Статья поможет разобраться, какие инструменты из богатой экосистемы open-source проектов лучше использовать на соревновании:
🔹 Библиотеки и фреймворки для построения рекомендательных систем и маршрутизации.
🔹 Градиентный бустинг и графовые нейросети.
🔹 Оптимизация маршрутов и работа с геоданными.
🔹 Поиск аномалий и дефектов, работа с мультимодальными данными.
Если вы участвуете в соревновании или просто ищете надежный стэк для ML-прототипов — читайте и сохраняйте: https://cnrlink.com/ecup25articlecsharp
Разбираемся на примере E-CUP 2025 от Ozon Tech. В новой статье собрали рабочие инструменты для решения типичных заданий по машинному обучению:
Эти задачи предстоит решить на E-CUP 2025. Регистрация открыта до 17 августа включительно
Статья поможет разобраться, какие инструменты из богатой экосистемы open-source проектов лучше использовать на соревновании:
🔹 Библиотеки и фреймворки для построения рекомендательных систем и маршрутизации.
🔹 Градиентный бустинг и графовые нейросети.
🔹 Оптимизация маршрутов и работа с геоданными.
🔹 Поиск аномалий и дефектов, работа с мультимодальными данными.
Если вы участвуете в соревновании или просто ищете надежный стэк для ML-прототипов — читайте и сохраняйте: https://cnrlink.com/ecup25articlecsharp
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥 Одна из дучших фишек в ASP.NET Core 10 — Server-Sent Events (SSE)
Теперь можно реализовать real-time обновления без SignalR и WebSockets. SSE — это лёгкий способ стримить данные с сервера на клиент *в одну сторону*, идеально для простых задач.
📡 Зачем это нужно?
В .NET-приложениях часто нужно передавать обновления с backend на frontend. Есть несколько способов:
• Polling — клиент всё время спрашивает: «что нового?» (нагружает сервер)
• SignalR — bidirectional WebSockets, но избыточно для простых стримов
• SSE — простой и нативный способ отправлять обновления *односторонне*
Теперь SSE доступен прямо в .NET 10 (preview) и легко интегрируется с Minimal APIs.
🧠 Что сегодня показали:
— Как работает SSE и чем отличается от SignalR
— Как реализовать SSE endpoint с Minimal API
— Как тестировать SSE-поток из IDE (HTTP request file)
— Как собрать frontend для отображения стриминга
— И как создать *живой рынок акций* на SSE — от бэкенда до клиента
👨💻 Отличная альтернатива, если нужно real-time, но без всей сложности WebSockets.
#dotnet #aspnetcore #SSE #ServerSentEvents #SignalR #realtime #webdev
Теперь можно реализовать real-time обновления без SignalR и WebSockets. SSE — это лёгкий способ стримить данные с сервера на клиент *в одну сторону*, идеально для простых задач.
📡 Зачем это нужно?
В .NET-приложениях часто нужно передавать обновления с backend на frontend. Есть несколько способов:
• Polling — клиент всё время спрашивает: «что нового?» (нагружает сервер)
• SignalR — bidirectional WebSockets, но избыточно для простых стримов
• SSE — простой и нативный способ отправлять обновления *односторонне*
Теперь SSE доступен прямо в .NET 10 (preview) и легко интегрируется с Minimal APIs.
🧠 Что сегодня показали:
— Как работает SSE и чем отличается от SignalR
— Как реализовать SSE endpoint с Minimal API
— Как тестировать SSE-поток из IDE (HTTP request file)
— Как собрать frontend для отображения стриминга
— И как создать *живой рынок акций* на SSE — от бэкенда до клиента
👨💻 Отличная альтернатива, если нужно real-time, но без всей сложности WebSockets.
#dotnet #aspnetcore #SSE #ServerSentEvents #SignalR #realtime #webdev
🧩 Как собрать приложение Playground: React + .NET Aspire
Если вы хотите быстро создать SPA на React (через Vite) вместе с backend’ом на ASP.NET Core, .NET Aspire делает это очень просто.
➡️ Новый пример на GitHub показывает, как интегрировать React-приложение и ASP.NET Core API в единую .NET Aspire‑архитектуру.
Что внутри:
- AspireJavaScript.AppHost — проект‑оркестратор на .NET Aspire
- AspireJavaScript.MinimalApi — API на ASP.NET Core (возвращает тестовые данные)
- AspireJavaScript.React — фронтенд на React (Vite), потребляющий API
- Также есть варианты на Angular и Vue
⚙️ Преимущества:
- Авто‑конфигурация сервисов и портов через Aspire Dashboard
- Простое связывание frontend/backend без ручной настройки
- Visual Studio или CLI (dotnet run) запускают всю систему сразу
Для запуска понадобится:
- .NET 8 SDK (или новее), Node.js (≥ 20.x), Docker Desktop/Podman
- В каждом клиентском (React/Angular/Vue) каталоге выполнить
📦 Структура запуска:
🧠 Почему это круто:
- Работает из коробки: сервисы стартуют, обнаруживают друг друга и логируются в едином UI
- Полная изоляция: конфигурации, порты, переменные окружения управляются централизованно
- Пресеты шаблонов облегчают настройку и отладку
📌 Подробности
@react_tg
Если вы хотите быстро создать SPA на React (через Vite) вместе с backend’ом на ASP.NET Core, .NET Aspire делает это очень просто.
➡️ Новый пример на GitHub показывает, как интегрировать React-приложение и ASP.NET Core API в единую .NET Aspire‑архитектуру.
Что внутри:
- AspireJavaScript.AppHost — проект‑оркестратор на .NET Aspire
- AspireJavaScript.MinimalApi — API на ASP.NET Core (возвращает тестовые данные)
- AspireJavaScript.React — фронтенд на React (Vite), потребляющий API
- Также есть варианты на Angular и Vue
⚙️ Преимущества:
- Авто‑конфигурация сервисов и портов через Aspire Dashboard
- Простое связывание frontend/backend без ручной настройки
- Visual Studio или CLI (dotnet run) запускают всю систему сразу
Для запуска понадобится:
- .NET 8 SDK (или новее), Node.js (≥ 20.x), Docker Desktop/Podman
- В каждом клиентском (React/Angular/Vue) каталоге выполнить
npm install
, затем запустить через Aspire 📦 Структура запуска:
# из папки с AppHost
dotnet run
# откроется Aspire Dashboard
# через него можно перейти в React‑frontend, вызвав API
🧠 Почему это круто:
- Работает из коробки: сервисы стартуют, обнаруживают друг друга и логируются в едином UI
- Полная изоляция: конфигурации, порты, переменные окружения управляются централизованно
- Пресеты шаблонов облегчают настройку и отладку
📌 Подробности
@react_tg
Полезный инструмент, который поможет кастомизировать цвет и метку значка ваших папок в браузере проектов Unity.
Please open Telegram to view this post
VIEW IN TELEGRAM
Эта модели умеет генерировать виртуальные и интерактивные 3D-миры в реальном времени (25fps) и при этом работать пару минут без потери контекста.
Вы можете дать ему любое изображение в качестве отправной точки для создания мира: фото из старого альбома, картину, кадр из фильма.
Huggingface тут.
Репозиторий с примерами здесь.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
Ваши коллеги уже изучают .NET 10 → а вы готовы остаться на старых версиях?
Каждый релиз .NET приносит десятки нововведений, которые меняют подходы к разработке. Пока одни программисты осваивают новый синтаксис C# 14 и возможности runtime, другие продолжают писать код «по-старому» и удивляются, почему их решения выглядят устаревшими.
.NET 10 — это не просто очередное обновление. Это LTS-версия, которая задаст стандарты разработки на ближайшие годы. Новый синтаксический сахар, field и extension в C# 14, обновления в MAUI и EF Core — всё это уже меняет то, как пишут современные приложения.
Вебинар «Что нового в .NET 10 для разработчиков» в рамках курса «C# углубленный»
→ 18 августа, 20:00
→ Антон Герасименко
Программа:
→ Обзор ключевых нововведений .NET 10 и их практическое применение
→ Синтаксические конструкции C# 14: сахар, field, extension
→ Изменения в runtime и их влияние на производительность приложений
→ Новые возможности MAUI и EF Core для современной разработки
После вебинара вы поймёте, как адаптировать свой код под новые стандарты, сможете читать и писать современный C# код и не будете отставать от коллег, которые уже перешли на актуальные версии.
Бесплатная регистрация — займите место в числе первых: https://otus.pw/dmGS/?erid=2W5zFHRBTUk
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
Каждый релиз .NET приносит десятки нововведений, которые меняют подходы к разработке. Пока одни программисты осваивают новый синтаксис C# 14 и возможности runtime, другие продолжают писать код «по-старому» и удивляются, почему их решения выглядят устаревшими.
.NET 10 — это не просто очередное обновление. Это LTS-версия, которая задаст стандарты разработки на ближайшие годы. Новый синтаксический сахар, field и extension в C# 14, обновления в MAUI и EF Core — всё это уже меняет то, как пишут современные приложения.
Вебинар «Что нового в .NET 10 для разработчиков» в рамках курса «C# углубленный»
→ 18 августа, 20:00
→ Антон Герасименко
Программа:
→ Обзор ключевых нововведений .NET 10 и их практическое применение
→ Синтаксические конструкции C# 14: сахар, field, extension
→ Изменения в runtime и их влияние на производительность приложений
→ Новые возможности MAUI и EF Core для современной разработки
После вебинара вы поймёте, как адаптировать свой код под новые стандарты, сможете читать и писать современный C# код и не будете отставать от коллег, которые уже перешли на актуальные версии.
Бесплатная регистрация — займите место в числе первых: https://otus.pw/dmGS/?erid=2W5zFHRBTUk
Реклама. ООО "ОТУС ОНЛАЙН-ОБРАЗОВАНИЕ". ИНН 9705100963.
🌀 Try .NET — интерактивная среда для работы с .NET прямо в браузере. Проект позволяет запускать и редактировать C#-код в интерактивных документах и учебных материалах, что особенно полезно для обучающих платформ вроде Microsoft Learn.
С помощью dotnet try можно превращать обычные Markdown-файлы в интерактивные руководства с исполняемыми примерами кода. Интеграция с Blazor дает возможность создавать подобный опыт прямо на веб-страницах без необходимости локальной установки SDK.
🤖 GitHub
@csharp_ci
С помощью dotnet try можно превращать обычные Markdown-файлы в интерактивные руководства с исполняемыми примерами кода. Интеграция с Blazor дает возможность создавать подобный опыт прямо на веб-страницах без необходимости локальной установки SDK.
🤖 GitHub
@csharp_ci
⚡ Не сравнивай строки через
Плохая практика:
❌ Медленно (каждый раз создаёт новые строки)
❌ Лишние аллокации памяти
Правильный способ:
✅ Без лишних аллокаций
✅ Намного быстрее
✅ Чёткий контроль над правилами сравнения
📊 Бенчмарки:
.ToLower()
Плохая практика:
bool equal = stringA.ToLower() == stringB.ToLower();
❌ Медленно (каждый раз создаёт новые строки)
❌ Лишние аллокации памяти
Правильный способ:
bool equal = string.Equals(stringA, stringB, StringComparison.OrdinalIgnoreCase);
✅ Без лишних аллокаций
✅ Намного быстрее
✅ Чёткий контроль над правилами сравнения
📊 Бенчмарки:
.ToLower() → ~38 ns
.ToUpper() → ~50 ns
string.Equals(..., OrdinalIgnoreCase) → ~0.003 ns 🚀
Что если за один вечер успеть прокачать скилы у пирса, вдохновиться новыми идеями за мороженым и отдохнуть под DJ-сет на закате?
GoSharp Weekend от Ozon Tech — летняя перезагрузка для тех, кто пишет на Go и C#.
Эксперты команд backend-разработки Ozon Tech поделятся внутренними исследованиями и инструментами оптимизации, которые уже доказали эффективность в продакшене.
Подавай заявку и жди приглашения!
GoSharp Weekend от Ozon Tech — летняя перезагрузка для тех, кто пишет на Go и C#.
Эксперты команд backend-разработки Ozon Tech поделятся внутренними исследованиями и инструментами оптимизации, которые уже доказали эффективность в продакшене.
Подавай заявку и жди приглашения!
🧼 Как писать чистый и тестируемый middleware в ASP.NET Core
Самый простой способ — сделать его строго типизированным.
📦 Что нужно:
1. Создай класс, который реализует
2. Помести всю логику в
Но не забудь два важных шага:
✅ Зарегистрируй middleware в DI-контейнере:
✅ Добавь его в пайплайн:
🎯 Такой подход:
- делает middleware переиспользуемым
- учитывает область действия зависимостей (scoped)
- и позволяет легко покрыть тестами
Идеально, если хочешь поддерживаемый и чистый код.
Самый простой способ — сделать его строго типизированным.
📦 Что нужно:
1. Создай класс, который реализует
IMiddleware
2. Помести всю логику в
InvokeAsync(...)
Но не забудь два важных шага:
✅ Зарегистрируй middleware в DI-контейнере:
services.AddTransient<YourMiddleware>();
✅ Добавь его в пайплайн:
app.UseMiddleware<YourMiddleware>();
🎯 Такой подход:
- делает middleware переиспользуемым
- учитывает область действия зависимостей (scoped)
- и позволяет легко покрыть тестами
Идеально, если хочешь поддерживаемый и чистый код.