Доклады конференции DotNext 2020 Moscow

Темы предварительные, в названиях возможны изменения.
Игорь Лабутин Ланит-Терком
Игорь Лабутин
Ланит-Терком 
Роман Неволин Контур
Роман Неволин
Контур 
Артём Акуляков OCS.LAB
Артём Акуляков
OCS.LAB 
День 1 / 18:45  / Зал 1 / RU /

Интервью «Что значит быть спикером на DotNext?»

Игорь Лабутин, Роман Неволин и Артём Акуляков поговорят о том, как стать спикером DotNext и как работать в Программном комитетом.

Юлия Цисык CUSTIS
Юлия Цисык
CUSTIS 
День 3 / 18:30  / Зал 1 / RU /

Как работают наши сообщества

Как живут .NET-сообщества в разных городах России? Как и зачем образовалось DotNetRu, и как вообще оно функционирует? Юлия расскажет философию и ответит на все вопросы.

Алексей Чиркин EPAM
Алексей Чиркин
EPAM 
Сергей Буянов Infotecs
Сергей Буянов
Infotecs 
Михаил Филиппов JetBrains
Михаил Филиппов
JetBrains 
Егор Богатов Microsoft
Егор Богатов
Microsoft 
Андрей Дятлов JetBrains
Андрей Дятлов
JetBrains 
Максим Сустретов Лаборатория Касперского
Максим Сустретов
Лаборатория Касперского 
День 4 / 12:00  / Зал 1 / RU /

Что? Где? Когда? с DotNetRu

Турнир по «Что? Где? Когда?» от сообщества DotNetRu. Правила похожие на телевизионную версию: ведущий задаёт вопрос, у команды есть минута на обсуждение, в конце которой нужно дать ответ.

Christophe Nasarre-Soulier Criteo
Christophe Nasarre-Soulier
Criteo 
День 4 / 12:30  / Зал 4 / EN /

How to easily measure CPU performance and allocation patterns with a few lines of C#

This session will show you how to very easily build your tool/monitoring system to measure CPU utilization (including call stacks) and discover your memory allocation patterns.

Андрей Дятлов JetBrains
Андрей Дятлов
JetBrains 
День 1 / 17:15  / Зал 3 / RU / Для практикующих инженеров

Source Generators в действии

В этом докладе вы узнаете не только о том, что скрывается за термином «Source Generators» и как его использовать, но и о том, как предоставить пользователю вашего генератора необходимую гибкость конфигурации и понятные сообщения о возникающих проблемах.

Maarten Balliauw JetBrains
Maarten Balliauw
JetBrains 
День 1 / 17:15  / Зал 2 / EN / Для практикующих инженеров

Building and generating a .NET client for a large API

In this session, you will see how to build the .NET SDK for Space, and how to make that massive API more digestible. You will see how to use code generation, and various C# language features, to incrementally make the API feel more like a real .NET SDK.

Риваль Абдрахманов Positive Technologies
Риваль Абдрахманов
Positive Technologies 
День 4 / 10:45  / Зал 2 / RU / Введение в технологию

Паттерны распределённых систем в традициях коренных малочисленных народов Севера

В этом докладе мы рассмотрим паттерны, которые используются при построении распределённых систем, на примере традиций и обычаев коренных малочисленных народов Севера.

Рустам Салимзибаров Macroscop
Рустам Салимзибаров
Macroscop 
Алексей Поздеев Macroscop
Алексей Поздеев
Macroscop 
День 2 / 10:45  / Зал 3 / RU / Для практикующих инженеров

Портирование 11-летнего Windows приложения на Linux

Рустам и Алексей расскажут о том, как 11-летнее enterprise-приложение для систем видеонаблюдения Macroscop было портировано на Linux.

Raffaele Rialdi Vevy Europe
Raffaele Rialdi
Vevy Europe 
День 4 / 12:30  / Зал 2 / EN / Введение в технологию

Discovering .NET 5

With Raffaele we will have an overview of all the major improvements in the .NET runtime and libraries, and dig into some of the most interesting new features and also into the new diagnostic tools.

Владимир Хориков Enterprise Craftsmanship LLC
Владимир Хориков
Enterprise Craftsmanship LLC 
День 3 / 17:15  / Зал 2 / RU / Для практикующих инженеров

Domain-driven design: Cамое важное

Доклад про основные принципы Domain-driven design.

Алексей Зимарев Ubiquitous AS
Алексей Зимарев
Ubiquitous AS 
День 3 / 19:00  / Зал 3 / RU / Введение в технологию

Event sourcing in a long run

В этом выступлении Алексей хочет вернуться к сути того, что такое event sourcing в контексте Domain-Driven Design, почему он полезен для определенных типов систем, чего обычно опасаются люди в отношении паттерна и как избежать распространенных ошибок.

Martin Ullrich Tieto Austria GmbH
Martin Ullrich
Tieto Austria GmbH 
День 3 / 19:00  / Зал 2 / EN / Для практикующих инженеров

Tips & tricks to improve your .NET build setup with MSBuild

This session introduces to MSBuild, explains common build customization techniques, helps avoid pitfalls when setting up your custom build logic and explores strategies to investigate build errors.

Михаил Ярийчук SAP/Gigya
Михаил Ярийчук
SAP/Gigya 
День 3 / 19:00  / Зал 4 / RU / Для практикующих инженеров

Воркшоп: Исследование утечек памяти в .NET с WinDBG (часть 2)

В этом воркшопе мы пройдемся по самым распространенным проблемам с памятью и на практике попробуем найти что не так в нескольких примерах. Черт не так страшен, как его малюют: исследования memory dumps трудоемки и могут занять много времени, но зачастую они незаменимы.

Mads Torgersen Microsoft
Mads Torgersen
Microsoft 
День 3 / 19:00  / Зал 1 / EN / Введение в технологию

What’s new in C# 9.0 and beyond

Let's have a look at C# 9.0's new features for immutability, records and pattern matching, as well as a peek at some things we are working on for future releases.

Максим Аршинов Хайтек Груп
Максим Аршинов
Хайтек Груп 
День 2 / 10:45  / Зал 4 / RU / Для практикующих инженеров

Воркшоп: Рефакторинг модели домена

В контексте обсуждения DDD зачастую возникает короткий и, казалось бы, простой вопрос «окей, я прочитал синюю и/или красную книгу(и), как мне начать писать код в DDD-стиле»? В ходе воркшопа спикер продемонстрирует с чего он сам начинает и как продолжает работу с унаследованным кодом веб-приложений.

Артём Акуляков OCS.LAB
Артём Акуляков
OCS.LAB 
День 2 / 10:45  / Зал 2 / RU / Введение в технологию

DDD, любовь, F#

В докладе Артем хочет рассказать и показать, как выглядит функциональный дизайн, как на F# реализуется DDD. Что получается в такой комбинации хорошо, что не очень и какие уроки С# разработчик может из этого всего извлечь, чтобы улучшить свои приложения уже сейчас.

Maoni Stephens Microsoft
Maoni Stephens
Microsoft 
День 2 / 10:45  / Зал 1 / EN / Для практикующих инженеров

What's new in the .NET 5 GC?

New performance and diagnostics improvements in the .NET 5 GC.

Bjørn Einar Bjartnes NRK
Bjørn Einar Bjartnes
NRK  
День 1 / 17:15  / Зал 4 / EN / Для практикующих инженеров

Workshop: Tuning services to deal with latency and errors

In this workshop, you will learn how to simulate latency and failures in your web application and how to add strategies to deal with this. We will learn how changing the different parameters change the behavior of our application under load, and what trade-offs we ultimately must make.

Miguel de Icaza Microsoft
Miguel de Icaza
Microsoft 
День 1 / 17:15  / Зал 1 / EN / Введение в технологию

Interview and Q&A with Miguel de Icaza

This is a live Q&A session where Miguel will answer as many of your questions as possible in the hour.

Станислав Сидристый ЦРТ
Станислав Сидристый
ЦРТ 
День 1 / 19:00  / Зал 3 / RU / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Делаем zero-allocation код на примере оптимизации крупной библиотеки

На примере оптимизации библиотеки SMBLibrary мы попробуем свести выделения памяти к минимуму, используя ряд выработанных техник, и увидим, насколько тяжелыми могут быть самые простейшие операции. Результаты оптимизации:

  • Использование памяти: -99%;
  • Срабатывания GC: -99,9%;
  • Время работы: -39%.
Jared Parsons Microsoft
Jared Parsons
Microsoft 
День 1 / 19:00  / Зал 2 / EN / Для практикующих инженеров

Nullability in C#

C# 9 continues to take on the billion dollar mistake by building on top of the nullable reference support added in C# 8. These changes to nullable reference types incorporate all the feedback we've gotten from our customers who've adopted nullable reference types into their code base. In this talk we're going to explore nullable reference types in C#, particularly the work done in C# 9, the progress in null annotating the .NET SDK as well as the challenges and techniques in adopting null annotations into existing code bases.

Aaron Stannard Petabridge
Aaron Stannard
Petabridge 
День 1 / 19:00  / Зал 1 / EN / Введение в технологию

When and how to use the actor model: An introduction to Akka.NET actors

In this talk, we will introduce the actor model through the use of Akka.NET, the most popular distributed actor model framework in .NET. We'll talk about what sorts of problems it solves well when you should use it, and what are some of the adoption costs and overhead involved in using a tool like Akka.NET.

Станислав Сидристый ЦРТ
Станислав Сидристый
ЦРТ 
День 2 / 12:00  / Зал 1 / RU / От партнера

На какие технологии обратить внимание, чтобы остаться в профессии надолго

Станислав поговорит про пути качественного развития в профессии, расскажет, как не упереться в «потолок» и заниматься интересными вещами, поделится личным опытом, на что обращать внимание в работе.

Marco De Sanctis Cloud Consult London Ltd
Marco De Sanctis
Cloud Consult London Ltd 
День 2 / 12:30  / Зал 3 / EN / Для практикующих инженеров

Deep down in Blazor authentication and authorization

During this talk, we'll do a deep dive into the security model of Blazor, understanding the components involved and the differences between Blazor Server and Web Assembly.

Bartosz Adamczewski SDI Media
Bartosz Adamczewski
SDI Media 
День 2 / 12:30  / Зал 2 / EN / Введение в технологию

Data-oriented design for business applications

Data-oriented design stands in direct conflict with object-oriented design principles.

While object-oriented design focuses on modeling the world using Objects, the data-oriented design focuses on the data and the algorithms that manipulate the data, where data dependency, alignment, and memory access patterns are the most important things.

This in turn, can increase performance when applied correctly.

Егор Богатов Microsoft
Егор Богатов
Microsoft 
День 2 / 12:30  / Зал 1 / RU / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Как устроен JIT-компилятор в CoreCLR

После релиза .NET Core все тайное, что было в JIT-компиляторе, стало явным. И об этом вам в своем докладе расскажет Егор.

Алексей Зимарев Ubiquitous AS
Алексей Зимарев
Ubiquitous AS 
День 4 / 10:45  / Зал 3 / RU / Введение в технологию

Воркшоп: Event sourcing в реальном времени

Присоединяйтесь к Алексею Зимареву, энтузиасту event sourcing и автору «Hands-On Domain-Driven Design with .NET Core» на воркшоп для разработчиков и архитекторов, которые хотят научиться практическим аспектам внедрения event sourcing в систему.

Konrad Kokosa Gritstep/Dotnetos
Konrad Kokosa
Gritstep/Dotnetos 
День 4 / 10:45  / Зал 4 / EN / Хардкор. Сложный низкоуровневый доклад, требующий от слушателя знаний технологии.

Mobius — writing your own .NET runtime running on .NET Core

.NET Frameworks/.NET Core runtimes are written in C++. But what if we write .NET runtime as... .NET application? Konrad has decided to try this out and this is how the Mobius project has been coined.

Aaron Stannard Petabridge
Aaron Stannard
Petabridge 
Sergey Bykov Temporal Technologies
Sergey Bykov
Temporal Technologies 
День 4 / 10:45  / Зал 1 / EN / Введение в технологию

Panel debate: Akka or Orleans? Ask their architects!

So we feel honored to announce an in-depth session to discuss the place of the actor model in modern development, criteria to choose an actor model framework that satisfies your project requirements, and of course to find out when Akka.NET or Microsoft Orleans will be your best bet.

Christophe Nasarre-Soulier Criteo
Christophe Nasarre-Soulier
Criteo 
День 4 / 12:30  / Зал 1 / EN / Для практикующих инженеров

How to easily measure CPU performance and allocation patterns with a few lines of C#

This session will show you how to very easily build your tool/monitoring system to measure CPU utilization (including call stacks) and discover your memory allocation patterns.

Михаил Филиппов JetBrains
Михаил Филиппов
JetBrains 
День 3 / 17:15  / Зал 1 / RU / Для практикующих инженеров

Объять необъятное: Инфраструктура сборки JetBrains Rider

JetBrains Rider — это огромный проект, который соединяет в себе два больших продукта с 20-летней историей Intellij IDEA и ReSharper. Михаил расскажет с какими вызовами приходится сталкиваться при таких больших объемах кода.

Андрей Цветцих EPAM
Андрей Цветцих
EPAM 
День 3 / 17:15  / Зал 3 / RU / Введение в технологию

Чистая архитектура на практике

Многие доклады про архитектуру раскрывают теоретическую сторону вопроса, при этом у авторов обычно нет практического опыта создания больших проектов. Два года назад EPAM начали 2 новых проекта, в которых применяли принципы чистой архитектуры. Андрей готов поделиться этим опытом.

Михаил Ярийчук SAP/Gigya
Михаил Ярийчук
SAP/Gigya 
День 3 / 17:15  / Зал 4 / RU / Для практикующих инженеров

Воркшоп: Исследование утечек памяти в .NET с WinDBG

В этом воркшопе мы пройдемся по самым распространенным проблемам с памятью и на практике попробуем найти что не так в нескольких примерах. Черт не так страшен, как его малюют: исследования memory dumps трудоемки и могут занять много времени, но зачастую они незаменимы.

Павел Кульбида Райффайзенбанк
Павел Кульбида
Райффайзенбанк 
День 1 / 18:30  / Зал 1 / RU / От партнера

.NET сообщество в вашей компании

Павел расскажет про то, как устроено сообщество .NET-разработчиков и как запустили платформу ViennaNET, в рамках которой получилось аккумулировать опыт различных команд банка в решении типовых инфраструктурных задач.