Skip to content

DetailedTalks 2023

Anatoly Kulakov edited this page May 23, 2024 · 3 revisions
Когда и где Докладчик Доклад Ссылки
14 декабря 2023 г.
Встреча SpbDotNet №93
Photo
Георгий Круглов
Blazor: Frontend For Backend
Погружение в механизмы работы Blazor (Server и WebAssembly), обзор возможностей Razor и библиотек компонентов для него.
Видео
Слайды
14 декабря 2023 г.
Встреча SpbDotNet №93
Photo
Евгений Пешков
ConcurrencyToolkit
В .NET из коробки есть разные примитивы синхронизации и concurrent-коллекции: SemaphoreSiim, ConcurrentDictionary, ConcurrentQueue, BlockingCollection, Channel и другие. Реализация подобных примитивов – всегда tradeoff: между сложностью кода, блокировками, аллокациями. Чтобы привнести в .NET мир новые достижения в concurrency из других платформ, Евгений Пешков разработал библиотеку ConcurrencyToolkit, с альтернативными реализациями async семафоров и key-value коллекций. Подробно поговорим о ней, а также о других библиотеках для написания производительного многопоточного кода, таких как Disruptor.NET и NonBlocking.
Видео
Слайды
Демо
21 ноября 2023 г.
Встреча SpbDotNet №92
Photo
Вадим Мартынов
DI-контейнеры в NUnit-тестах
В автотестах разных проектов часто можно встретить повторяющиеся проблемы — код тестов сложный для чтения, навигации и рефакторинга; тесты не параллельны, и их сложно распараллеливать; запуск одного теста может вызывать длительные действия подготовки иногда не нужных ему данных; из-за хитроспелетений [SetUp]-ов и наследования сложно понять, в каком контексте работает конкретный тест. Попробуем решить эти проблемы, используя общепризнанные практики написания кода и посмотрим, что из этого получится.
Видео
Слайды
21 ноября 2023 г.
Встреча SpbDotNet №92
Photo
Максим Шошин
Serverless. Под капотом Cloud Functions
Доклад о внутреннем устройстве Cloud Functions в Yandex Cloud. Подобный сервис реализован у всех крупных облачных провайдеров — Azure, AWS и Google Cloud. Доклад для тех, кто планирует использовать в своей работе serverless-сервисы и хочет глубже понимать, как устроены механизмы работы одного из самых базовых сервисов этой экосистемы. Этот доклад также будет любопытен тем, кто интересуется внутренним устройством высоконагруженного распределённого сервиса. Рассмотрим: - Примеры использования и границы применимости сервиса Cloud Functions. - Распределённую архитектуру и внутреннее устройство системы. - Планировщик, механизм масштабирования и эвристики. - Проблемы, с которыми сталкивались, и пути их решения.
Видео
Слайды
28 сентября 2023 г.
Встреча SpbDotNet №91
Photo
Евгений Пешков
Убийцы производительности
Одна из причин низкой производительности .NET-приложений — некачественные сторонние библиотеки или неправильное их использование. Например, обычное логирование может превратить всю программу в однопоточную, если неправильно сконфигурировано. Увы, некоторые подобные проблемы кочуют из библиотеки в библиотеку, и из проекта в проект. В докладе спикер покажет примеры таких проблем и расскажет, как их избежать.
Видео
Слайды
28 сентября 2023 г.
Встреча SpbDotNet №91
Photo
Станислав Сидристый
Реактивная сборка огромного проекта
При стремительном росте проекта возникает ряд трудностей не только у разработки, но и у DevOps. Спикер решил помочь коллегам и сделал очень быструю сборку всех проектов. В итоге удалось ускорить сборку с 400 машиноминут (20 агентов, 20 минут) до диапазона (30 сек, 1 мин 30 сек) в зависимости от количества изменений. Через что пришлось пройти, все неудачные варианты и результат — в докладе.
Видео
Слайды
10 августа 2023 г.
Встреча SpbDotNet №90
Photo
Николай Пьяников
Pure.DI
Будет немного теории по DI, этапы DI эволюции контейнеров: чистый DI, DI-контейнеры на основе Dictionary, LINQ Expressions и Reflection.Emit. Докладчик расскажет о своём pet-проекте — генераторе исходного кода Pure.DI.
Видео
Слайды
Демо
10 августа 2023 г.
Встреча SpbDotNet №90
Photo
Михаил Руковишников
Фича-флаги. Практический пример реализации
В докладе мы поговорим про то, что такое фича-флаги и какие проблемы они решают. Рассмотрим различные пути их реализации и подробно разберём подход который выбрала наша команда. В конце доклада выбранное решение будет продемонстрировано на практике.
Видео
Слайды
Демо
8 июня 2023 г.
Встреча SpbDotNet №89
Photo
Никита Маслов
Простая архитектура
Никита поделится своим опытом разработки enterprise-приложений. Расскажет и покажет, как можно верхнеуровнево организовать архитектуру, использовать давно известные паттерны, обрабатывать ошибки. Также поговорим о тестировании.
Видео
Слайды
Демо
8 июня 2023 г.
Встреча SpbDotNet №89
Photo
Никита Мошкалов
Прослеживаемость в ASP.NET Core
Как поймать за хвост своё приложение — учимся определять маршрут запросов, исследуем производительность и выпытываем прочие подробности процесса жизнедеятельности.
Видео
Слайды
25 мая 2023 г.
Встреча SpbDotNet №88
Photo
Роман Булдыгин
Анатомия Nuke
Разберёмся, как устроена система автоматизации CI/CD Nuke и соберём простую библиотеку с его помощью.
Видео
Слайды
25 мая 2023 г.
Встреча SpbDotNet №88
Photo
Анатолий Кулаков
Build as Code
Всё становится лучше, если оно код. За время эпохальных революций человечество развивалось в сторону удобной работы с кодом. Было придумано и внедрено бесчисленное количество инструментов, стратегий, практик, развивалось обучение, печатались книги, записывались курсы. Непростительно пренебрегать этим наследием. Долой кнопочки, менюшки, формочки и прочие пережитки прошлого. Настало время превратить в код процесс сборки ваших приложений. Чистый, тестируемый, изменяемый, поддерживаемый и понятный код. В докладе подробно рассмотрим процесс построения .NET-приложений с помощью кода. Особое место будет отдано сборке в docker-контейнере. Обсудим все неоспоримые плюсы и сомнительные минусы такого подхода. Затронем работу с артефактами, интеграции и безопасность полученных решений.
Видео
Слайды
Демо
10 апреля 2023 г.
Встреча MskDotNet №52
Photo
Роман Просин
Аутентификация и авторизация на платформе .NET и Keycloak
Платформа ASP.NET Core предоставляет всё необходимое для защиты приложений и данных. Но часто встречаются пользовательские решения, которые не удовлетворяют стандартам и не проходят тщательного тестирования. Спикер поделится опытом разработки защищенных приложений с использованием стандартизированных средств ASP.NET Core: Negotiate, OAuth 2.0, OIDC. Покажет как защитить клиенты различных типов Front/Backend/Job. Покажет различные модели авторизации. Расскажет, чего делать не стоит.
Видео
Слайды
10 апреля 2023 г.
Встреча MskDotNet №52
Photo
Андрей Парамонов
MediatR не нужен
В индустрии использование MediatR считается хорошим тоном. Поработав с большим количеством сервисов, в которых его применяли, спикер понял, что в 99% случаев он вреден. Почему так и этому есть доказательства — обо всем этом вы узнаете из доклада.
Видео
Слайды
21 марта 2023 г.
Встреча SpbDotNet №87
Photo
Игорь Лабутин
Что нового в .NET 7 и C# 11
Вместе с релизом .NET 7 вышел C# 11 с новыми возможностями: generic math, raw string literals и list patterns. В докладе рассмотрим, что интересного можно найти в новой версии .NET и сопутствующих фреймворках — ASP.NET Core, MAUI, Blazor и других. Обязательно затронем minimal APIs, source generators и WebAssembly. Обсудим какие фичи облегчают написание современных cloud-native приложений: интеграция с OpenTelemetry, автогенерация докер-контейнеров, rate limiting и прочее. И, конечно же, не забудем про улучшение производительности.
Видео
Слайды
21 марта 2023 г.
Встреча SpbDotNet №87
Photo
Евгений Пешков
Алгоритмы троттлинга запросов
Проблемы на бэкенде периодически случаются у всех. Части этих ситуаций можно избежать, если провести нагрузочное тестирование, определить пределы возможностей сервиса и заранее ограничить количество одновременно обрабатываемых запросов. Это позволяет сгладить неравномерность нагрузки и справиться с обработкой хотя бы части запросов, что гораздо лучше полного падения сервиса. Решить задачу Rate Limiting помогает примитив синхронизации под названием семафор. Он пропускает внутрь заданное количество потоков, а остальные ставит в очередь. Однако современные приложения — асинхронные, использовать в них обычный семафор неэффективно. И здесь у разработчиков фреймворков и highload-сервисов появляется необходимость выбора алгоритма реализации семафора, работающего не на уровне потоков, а на уровне асинхронных задач. Неудачно выбранный алгоритм еще больше нагрузит сервис, который и так работает под нагрузкой на пределе возможностей.
Видео
Слайды
16 февраля 2023 г.
Launch of .NET 7
Photo
Иван Кулага
Entity Framework 7 interceptors: что такое и с чем едят?
В докладе рассмотрим что такое interceptors и где их можно использовать, а так же какие изменения коснулись interceptors в новой версии EF 7.
Видео
Слайды
16 февраля 2023 г.
Launch of .NET 7
Photo
Андрей Порожняков
Minimal Web API на ASP.NET Core 7
В докладе Андрей расскажет о предпосылках появления и основных технических возможностях Minimal Web API. Отдельно отметит новые функции, связанные с выходом .NET 7. Приведёт примеры аналогичных технологий в других языках и поделится своими рекомендациями по использованию Minimal Web API.
Видео
Слайды
16 февраля 2023 г.
Launch of .NET 7
Photo
Антон Шевченко
.NET Интерактивно — Polyglot Notebooks
В научном сообществе привычно доминирует Python. И всё благодаря распростарнённому инструменту Jupyter Notebooks. Поговорим об его аналоге для .NET — Polyglot Notebooks. Что это такое, с чем едят. И вообще что может дать .NET-сообществу.
Видео
Слайды
16 февраля 2023 г.
Launch of .NET 7
Photo
Сергей Кузьмин
Кеширование в .NET 7
Сергей расскажет про новый тип кеширования в .NET 7, о его преимуществах перед существующими реализациями, про то, как его можно настроить, а также про новые метрики для кешей, которые теперь будут доступны из коробки.
Видео
Слайды
16 февраля 2023 г.
Launch of .NET 7
Photo
Александр Егорченков
Регионы в GC
Отличие новых регионов в сравнении со старыми сегментами при работе с памятью. Плюсы и минусы. Что мы получили в итоге.
Видео
Слайды
16 февраля 2023 г.
Launch of .NET 7
Photo
Валерий Никитин
.NET 7 user-jwts Tool
Обсудим аутентификацию, авторизацию, как для решения этих задач подходит JWT и посмотрим на новую утилиту dotnet user-jwts, на её возможности в локальной разработке.
Видео
Слайды
16 февраля 2023 г.
Launch of .NET 7
Photo
Александр Катин
Обобщённые атрибуты
Докладчик напомнит об ограничениях атрибутов и покажет, как их можно было обходить раньше с помощью рефлексии и как работать с ними теперь — с помощью обобщений.
Видео
Слайды
16 февраля 2023 г.
Launch of .NET 7
Photo
Николай Гущарин
Автогенерация клиента SignalR с использованием Source Generator
Познакомимся с новым способом создания клиентов для SignalR, который появился в релизе .NET 7. Сравним его с классическим подходом и разберём их плюсы и минусы.
Видео
Слайды
16 февраля 2023 г.
Launch of .NET 7
Photo
Георгий Круглов
Entity Framework 7: Table Per Concrete type
Обзор новой стратегии хранения иерархий, появившейся в Entity Framework 7 и сравнение её с ранее существовавшими решениями.
Видео
Слайды
26 января 2023 г.
Встреча SpbDotNet №85
Photo
Серафима Лебедева
Как подготовиться к выступлению (докладу)? Структура, логика, приёмы
Разберём основные вопросы возникающие при подготовке к выступлениям.
Clone this wiki locally