• Смотреть запись

    Тип доклада: Доклад

    Оптимизации внутри .NET Core

    Доклад состоит из интересных микрооптимизаций, примененных в самом .NET Core разработчиками и участниками сообщества, а также уделяет большое внимание новоиспеченному API к SIMD-инструкциям процессора, таким как SSE и AVX.

  • Смотреть запись

    Тип доклада: Доклад

    Быстрорастворимое проектирование

    Максим расскажет о критериях хорошего кода и плохого кода, как и чем мерить. Сделает обзор типовых задач и подходов, разберет плюсы и минусы. В конце даст рекомендации и best practices по проектированию web-приложений.

  • Смотреть запись

    Тип доклада: Доклад

    Архитектура производительности Dodo IS

    Производительность и стабильность распределенной системы неразрывно связаны. Рассмотрим, как одно влияет на другое и как добиться хороших характеристик в основном за счет архитектуры, а не за счет рантайм-характеристик отдельных компонентов.

  • Смотреть запись

    Тип доклада: Доклад

    Creating airplane mode proof Xamarin applications

    Creating offline-first, bandwidth-aware applications to enrich your user experience.

  • Смотреть запись

    Тип доклада: Доклад

    Extend the new WinDbg to build your own dream debugging tool

    You'll explore the various extension points provided by the new WinDbg and learn how to use them to improve the user experience by turning the app into a fully featured multi-window debugger with live C#/ClrMD scripting support.

  • Смотреть запись

    Тип доклада: Доклад

    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.

  • Смотреть запись

    Тип доклада: Доклад

    ValueTask: что, зачем и почему

    Недавно, в свежих версиях языка, появились ValueTask, task-like типы и IValueTaskSource. Многие даже не знают о том, что эти типы существуют, а большинство из тех, кто знает об их существовании, не понимает, зачем они. Егор расскажет, что это за новые средства, для чего они и когда их использование обосновано, а когда нет.

  • Смотреть запись

    Тип доклада: Доклад

    Test Last, Test First, TDD: когда применять тот или иной подход

    Вместо того чтобы продолжать войну Test Last vs TDD, мы выясним, в каких случаях выбор того или иного подхода даст максимальные преимущества.

  • Смотреть запись

    Тип доклада: Доклад

    Жизнь акторов в кластере: зачем, когда и как

    Вагиф расскажет о системе, разработанной на основе модели акторов, со встроенными средствами масштабирования: Akka позволяет распределять нагрузку на систему между узлами кластера, а сами акторы обладают прозрачностью местоположения.

  • Смотреть запись

    Тип доклада: Доклад

    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.

  • Смотреть запись

    Тип доклада: Доклад

    Building responsive and scalable applications

    Jeff will demonstrate the importance of performing asynchronous I/O to build responsive and highly-scalable applications that efficiently use system and application resources.

  • Смотреть запись

    Тип доклада: Доклад

    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.

  • Смотреть запись

    Тип доклада: Доклад

    Создание окружения для интеграционных тестов на основе Docker-контейнеров

    Алексей предлагает подход к написанию интеграционных тестов с применением технологии контейнеризации, позволяющей воссоздать тестовое окружение практически любой сложности. Опираясь на реальные примеры, он расскажет о том, как такие интеграционные тесты могут стать частью процесса разработки и серьезно улучшить качество проекта.

  • Смотреть запись

    Тип доклада: Доклад

    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.

  • Смотреть запись

    Тип доклада: Доклад

    Make your custom .NET GC — "whys" and "hows"

    Learn how you can customize or even completely rewrite the GC in .NET, as well as, why you may ever want to do it.

  • Смотреть запись

    Тип доклада: Доклад

    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.

  • Смотреть запись

    Тип доклада: Доклад

    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.

  • Смотреть запись

    Тип доклада: Доклад

    FAKE + Paket — PowerTools for .NET developers

    This talk will show you how to set up basic build scripts with FAKE and give you an overview about dependency management with Paket.

  • Смотреть запись

    Тип доклада: Доклад

    От монолита к микросервисам: история и практика

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

  • Смотреть запись

    Тип доклада: Доклад

    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.

  • Смотреть запись

    Тип доклада: Доклад

    Domain-driven design: рецепт для прагматика

    В докладе Алексей расскажет, что такое domain-driven design, зачем он нужен, в чем его суть и какие есть сложности с его применением.

  • Смотреть запись

    Тип доклада: Доклад

    Как выжить под нагрузкой: отказоустойчивый сервер, умный клиент

    Вы узнаете, как создавать устойчивые к нагрузке микросервисы и проводить нагрузочное тестирование, чтобы убедиться, что они выдерживают нагрузку.

  • Смотреть запись

    Тип доклада: Доклад

    Реализация своих поставщиков запросов

    В докладе будет рассмотрены следующие вопросы:

    • что такое поставщики запросов в .NET;
    • использование поставщиков запросов для расширения IQueryable;
    • реализация собственной ORM на основе IQueryProvider;
    • построение фасада с помощью поставщиков запросов.
  • Смотреть запись

    Тип доклада: Доклад

    Системные метрики: собираем подводные камни

    Евгений расскажет, чем отличаются различные системные метрики, какие ошибки при сборе метрик не позволяют заметить проблемы с производительностью, какие проблемы с производительностью есть у классов Process и PerformanceCounter, как устроены PerformanceCounters внутри и как работать с ними правильно и эффективно.w

  • Смотреть запись

    Тип доклада: Доклад

    Behind the burst compiler, converting .NET IL to highly optimized native code by using LLVM

    In this talk you will discover the work behind the burst compiler done at Unity Technologies: a solution to compile a subset of the C# language to highly optimized native code using the LLVM compiler infrastructure.

  • Смотреть запись

    Тип доклада: Доклад

    Yield и async-await: как оно все устроено внутри и как этим воспользоваться

    Методы с yield return и async-методы превращаются компилятором в автомат. Рассмотрим, во что конкретно они превращаются, некоторые нюансы и особенности, а также примеры задач, где эти автоматы можно использовать.

  • Смотреть запись

    Тип доклада: Доклад

    Использование Tarantool в .NET-проектах

    Анатолий расскажет о применении СУБД Tarantool и написании коннектора для него. Также он коснется оптимизации коннектора и практик написания быстрого кода с использованием Span< T> и не только.

  • Смотреть запись

    Тип доклада: Доклад

    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.

  • Смотреть запись

    Тип доклада: Доклад

    Помочь всем человекам: зачем мы написали свой движок чат-бота

    Мы написали свой движок для создания чат-ботов с полностью кастомизируемой системой сценариев. В докладе расскажем, почему мы решили писать собственный движок; какие вызовы стоят перед чат-ботом, который оказывает поддержку для крупного телеком-оператора; какие алгоритмы лежали в основе первых прототипов NLU и как он работает сейчас; какие приёмы и технологии мы используем в разработке.