• Talk

    Asynchronous streams

    This talk will be dedicated to asynchronous streams in JS and C#. You will learn why asynchrony is important, how async/await has influenced modern languages and we will not forget about its common drawback. Also, we will consider differences between new asynchronous streams and existing frameworks, such as System.Reactive and RxJS.

  • Talk

    The debugging mindset

    A lot of developers underestimate and don't understand debugging and how it works. Kevin will show you the whole process of it: from the choice of the workflow to building a setup that allows you to iterate faster.

  • Talk

    Introduction to Event sourcing

    Jacob will tell how event sourcing and how it can help solve the functional and nonfunctional requirements that are often presented to modern applications.

  • Talk

    Code Review — the art of development

    Roman Prosin will speak about the art of reviewing, give some advises on developing a project and tell the audience about the different tools of reviewing.

  • Talk

    The Turkish gambit. Business application in half an hour

    How to save time at the beginning of the project by getting a reliable application framework out of the box? Alexey Merson will show it live. There will be several demos and as a result, you will see a working web portal with auditing, plugins, SignalR, localization and other opportunities.

  • Talk

    vvvv — visual programming for .NET

    The talk about the novelties in the .NET world — VL, new visual language and vvvv gamma, a development environment. Joreg and Elias will tell about the history of their creation, what they are consist of and why they are needed in visual programming.

  • Talk

    Distributed tracing in .NET

    Egor Grishechko will speak about why it's cool to use Jaeger, why we need OpenCensus, how to integrate it with Jaeger and why connection between OpenCensus and OpenTracing is inevitable.

  • Talk

    Mutation analysis

    Mutation analysis is a way to test applications and a set of tests to check robustness. Nikolay will explain how to check your tests for compliance with their main function — early detection of errors in your application. We'll discuss how this method of code analysis changes the developer's mind and how applicable it is in real life.

  • Talk

    .NET: Treating the dependences

    Evgeny will tell when errors with connected frameworks happen on .NET Framework and .NET Core and what approaches we can use to solve these problems.

  • Talk

    An in-depth look at the new features in C# 8.0 and .NET Core 3.0

    For developer it's important to keep track not only the news of language and frameworks but also what features have recently appeared. During this session, Raffaele will make out the most interesting features and how to use them in development.

  • Talk

    Machine learning for C# developers: Introducing ML.NET

    ML.NET is Microsoft's new open source ML and AI library for .NET developers. Join the fun as Jeff takes a deep dive into ML.NET, presents numerous real-world code samples, and demonstrates that C# programmers, too, can live on the cutting edge of ML and AI.

  • Talk

    Metaprogramming for the masses

    Building upon the low-level optimization primitives and techniques presented at "Patterns for high-performance C#" (DotNext Moscow 2017) and "Scratched metal" (DotNext Piter 2018), we'll explore advanced design principles to build configurable, composable and highly optimized code.

  • Talk

    Roslyn: Mastership of state analysis

    Vladimir will speak about how to improve the quality of the code, to cut down the time it takes to find a solution to the typical problems when working with frameworks and share examples from his own experience.

  • Talk

    Platform Wars

    Kirill will tell the success story of JetBrains in the IDE market and share the latest news about the world of development products.

  • Talk

    The power of composition

    We'll start by going over the basic concepts of functional programming, and then look at some different ways that composition can be used to build large things from small things. After that, we'll see how composition is used in practice, beginning with some basic examples, and ending with a complete (object-free!) web application.