• Watch recording

    Talk type: Talk

    Pitfalls of relational DB access in .NET: rethinking micro-ORMs

    ADO.NET and Entity Framework (EF): one is 17-years-old and archaic; the other is painfully slow and barely functional for anything more complex than "select * from Foo". But you just use Dapper, or a similar micro-ORM. Have you chosen wisely?

  • Watch recording

    Talk type: Talk

    The cost of code

    Dylan Beattie will take a fresh look at the cost of the code we're shipping every day. What's the real cost of code — to our organisations, to our society, to our environment? How can we help our teams and users understand that cost? And what can we do to reduce it?

  • Watch recording

    Talk type: Talk

    Yield at me, 'cause I'm awaiting: Async streams in C# 8

    The C# programming language continues to rapidly evolve. Upcoming release adds support for async streams. What is it? Why do we need it? How does it work? We'll answer all these questions, review BCL changes, compare new features with existing ones and take a look under the hood of compiler.

  • Watch recording

    Talk type: Talk

    How to do in-app chaos testing

    Learn how to apply Chaos Engineering, directly in your .NET service or app! Cause orchestrated mayhem and verify if your app still functions when its dependencies start failing.

  • Watch recording

    Talk type: Talk

    Raspberry PI and .NET Core on Linux: the fast track to IoT

    We will deep dive into the design of an IoT application made of hardware sensors, the powerful and cheap Raspberry PI Linux-based computer and the power of .NET Core, including ASP.NET Core.

  • Watch recording

    Talk type: Talk

    Quantum computing with Q# language

    Introduction into quantum computing: what it is, what it's used for, perspectives and problems in the area. In addition, Q# language introduction: all elements required for the independent experiments.

  • Watch recording

    Talk type: Talk

    Why your architecture is functional and how to deal with it

    Popular architectural concepts are connected to functional programming, one way or another. How this came to be, how it's usually manifested, how you're supposed to deal with it and how understanding of functional architecture fundamentals can help you make your code better? That's what we're going to discuss.

  • Watch recording

    Talk type: Talk

    What's new in C# 8

    An overview of the latest and greatest features available in C# 8.

  • Watch recording

    Talk type: Talk

    The future of .NET desktop development

    Uncertain about your future as a desktop developer? Worry no more! .NET-based desktop development is here to stay, and is getting a major boost with .NET Core 3.0. Find out what's new in this talk.

  • Watch recording

    Talk type: Talk

    DDD in microservices: Complexity vs complexity

    You'll learn how we were implementing domain-driven design in our project, learning to communicate with clients, dividing our code base to bounded contexts, improving the code quality and, of course, what conclusions we drew from all this.

  • Watch recording

    Talk type: Talk

    NUKE — a modern build system for C#/.NET

    Come to this talk if you want to learn how to write maintainable and reliable builds with NUKE, which are also understood by everyone in your team!

  • Watch recording

    Talk type: Talk

    Serverless under the hood

    Function-as-a-Service offerings are advertised as the way to build applications in days or hours, and then scale them up to millions of users. But there is no magic. Join Mikhail for an in-depth journey to explore how serverless works, what are the benefits and caveats, and why you should care.

  • Watch recording

    Talk type: Talk

    API gateway made easy with Ocelot and containers

    We have a bunch of options today when implementing an API gateway for our APIs. The starting point is actually DOING THAT immediately, regardless of the underlying technology. In this session, we'll see how to go in production with an implementation of Ocelot, an open source project written in ASP.NET Core.

  • Watch recording

    Talk type: Talk

    Successfully decomposing your monolith

    From monolith thinking to distributed thinking, moving from one data model to multiple vertical bounded contexts. The talk is trying to offer a way to move from monolith design to distributed design (microservices). It is based on old design concepts like DDD and SOA and clean code.

  • Watch recording

    Talk type: Talk

    Cross-procedural data-flow analysis

    Using real-world examples, Andrey will tell how to write cross-procedural code analysis and why it is now necessary for C# code analyzers, no matter what they're based on — ReSharper, Roslyn or custom code model.

  • Watch recording

    Talk type: Talk

    Writing a custom, real-world .NET GC

    Learn how to write valid GC, which is one that not only allocates objects but also actually collects the memory after those no longer used.

  • Watch recording

    Talk type: Talk

    Multithreading in .NET: When performance is lacking

    We'll explore several cases when using methods from .NET standard library led to performance degradation and discuss solutions tailored specifically to certain cases and therefore free of such flaws.

  • Talk type: Talk

    Animals written correctly

    Sergey is going to deliver an entire talk about cybernetics patterns in biology: from every cell in the body, signed by an unique key — a major histocompatibility complex protein — to how a corn farm can influence evolution by brute force.

  • Watch recording

    Talk type: Talk

    ASP.NET Core 3.0: State of the art

    The talk addresses the concerns of architects and managers needing to build durable solutions on the Microsoft stack and lists facts about setting up a web backend and frontend and cross-cutting concerns such as caching, security, health checking, API, configuration.

  • Watch recording

    Talk type: Talk

    UI architectures: From imperative to functional through MVVM

    We will revive the journey from imperative UI frameworks, where the UI is represented by a big stateful object, revisit the MVVM pattern, where "proxy" objects communicate with the UI through bindings, and finally reach the functional style, where we describe the UI at a specific point in time and let the framework do the plumbing and translate it to actual pixels on the screen.

  • Watch recording

    Talk type: Talk

    ASP.NET Blazor programming 101

    Blazor is a client-side framework capable of running C# code. We'll see a few examples and glimpses of what it could be to take Blazor for development.

  • Watch recording

    Talk type: Talk

    Debugging asynchronous scenarios in .NET

    While debugging synchronous code can be straightforward, investigating an asynchronous deadlock or race condition proves to be surprisingly tricky. Follow us through real-life examples and investigations to cover the main asynchronous code patterns that can go wrong. You will tumble on deadlock and understand the reasons behind ThreadPool thread starvation.