• Talk

    .NET Core 2.1: Intrinsics and other micro-optimizations

    This talk consists of interesting micro-optimizations, which were used in .NET Core by the developers and community members, and concentrates on newly minted API to the processor's SIMD instructions, such as SSE and AVX.

  • Talk

    Instant design

    Maxim will tell about the criteria of good and bad code, how and by what we should measure them. He will review the common tasks and approaches, advantages and disadvantages. In the conclusion he will give recommendations and best practices for web apps design.

  • Talk

    Dodo IS performance architecture

    Performance and stability of a distributed system are inextricably intertwined. We'll discuss how one influences another and how to attain good characteristics mainly by means of architecture, not runtime characteristics of specific components.

  • Talk

    Pragmatic unit testing

    Unit testing is a vast topic. The industry has accumulated a huge amount of information about it during the past two decades. However, not all unit testing practices yield equal results. It is important for you as a developer to know which practices provide the best return on your efforts.

  • Talk

    ValueTask: what and why

    Recently, in the new versions of language, ValueTask, task-like types and IValueTaskSource appeared. Most people don't even know they exist, and those who do know don't understand what to do with them. Egor will tell what are these new types, why we might need them and when it is and isn't reasonable to use them.

  • Talk

    Life of actors in clusters: why, when and how

    Vagif will talk about a system based on actor model with built-in scalability: frameworks like Akka let you seamlessly distribute the load between multiple cluster nodes, and actors have location transparency.

  • Talk

    Building your own debugging toolbox with ClrMD

    You have to investigate problems live or post-mortem on tens of GB of application memory by browsing complex structures, such as the threadpool or the timer queue and… you start to spend your life typing tons of SOS commands in WinDbg… and you abandon it. Here comes ClrMD to the rescue!

    Join us to learn how to write your own tools and WinDbg extensions in C# to automate your future investigations.

  • Talk

    Ctrl-Alt-Del: learning to love legacy code

    We'll talk about how to bring legacy code under control using continuous integration and managed deployments, explore creative ways to use common technologies like DNS to create more productive development environments, and talk about why good old Ctrl-Alt-Del might be the secret to unlocking the potential of your legacy codebase.

  • Talk

    Building integration test environment using Docker containers

    Aliaksei will offer an approach to writing integration tests using containerization technology, which allows us to create test environment of almost any degree of complexity. He will tell how this kind of integration tests can become a part of the development process and drastically improve the project quality, drawing on real-life examples.

  • Talk

    Generics

    Jeff focuses on .NET Generics, on how the CLR creates type objects of generic types and memory and performance issues when using generics with reference types versus value types, and on constraints and the odd behaviors they exhibit.

  • Talk

    Boosting memory management in interoperability scenarios

    We will dig into the new APIs, language features and runtime implementations in IoT and communication scenarios. The goal is showing how these tools give us the opportunity to manage memory efficiently with low complexity in code to improve performance, code maintenance and safety.

  • Talk

    Windows 10 internals for .NET developers

    Windows 10 is here and is progressing at a much faster cadence than in the past. This session is about Windows 10 internals features and how they impact and/or can be used by .NET developers.

  • Talk

    So you want to create your own .NET runtime?

    Running C#/.NET code is something we do all the time. But how does the .exe/.dll file produced by the compiler actually get executed? We'll explore some of what's going on inside the dotnet[core]/Mono runtime, giving some insight into the inner workings of .NET.

  • Talk

    Implementing IQueryProvider

    This talk covers the following topics:

    • what is IQueryProvider in .NET;
    • using IQueryProvider to expand IQueryable;
    • implementing your own ORM based on IQueryProvider;
    • building facade with the help of IQueryProvider.
  • Talk

    System metrics: learning to avoid pitfalls

    Evgeny will tell what are the differences between various system metrics, which mistakes in metric collecting do not allow you to see performance issues, which performance issues do Process and PerformanceCounter classes have, and what is the internal design of Performance Counters and how to work with them correctly and effectively.

  • Talk

    Yield and async-await: internals and uses

    Compiler turns methods with yield return and async methods into automata. We'll discuss what exactly they are turned into, some nuances and specific aspects, and examples of tasks where these automata can be used.

  • Talk

    Using Tarantool in .NET projects

    Anatoly will tell about using the Tarantool DBMS and writing a connector for it. He will also touch on connector optimization and practices of writing quick code, using Span< T> and others.

  • Talk

    Modern web development with SAFE-Stack

    You will learn about the full power of SAFE-Stack, a stack which includes powerful F# to JavaScript compiler, library that brings the popular "Elm architecture" to F#, and ASP.NET Core technologies.