DotNext 2018 Piter Conference Program Overview

    Conference : DotNext 2018 Piter
    Date : April 22-23, 2018
    Location : St. Petersburg, Park Inn by Radisson Pulkovskaya Hotel
    Only a couple of days left until the next DotNext. Huge work has been done on the program and reports - earlier we already wrote about this in the announcement of the conference and in a separate article .

    In this hub, we brought together the entire program in the form of one large list with descriptions of reports and speakers. You can now start thinking about what reports you should go for - you have to choose between three parallel tracks. In addition, there is still the opportunity to purchase tickets .

    A detailed description of the program - under the cut.

    The first day

    Apps, algorithms and abstractions: decoding our digital world

    Imagine the picture: you are riding a train, your smartphone is making a sound, you take it out of your pocket and see: a new message! This is a video of a cat falling from a chair! You answer “LOL”, put the phone back in your pocket ... But do you wonder what it was worth to make it all work? Inside even the cheapest smartphone, there are thousands of innovations, algorithms, inventions - but how do they work? How were they developed? What will the next generation of algorithms and applications look like?

    In this report, we will be able to immerse ourselves in the technologies thanks to which our ordinary everyday things work, and we will unearth the algorithms and abstractions that create our new digital world. We will look at everything: network addressing algorithms, frequencies in cellular networks, shortest distance search optimization, wavelet compression, fingerprint recognition, media encoding methods and so on. After this report, you will no longer be able to treat your mobile phone as before.

    Dylan Beattie  / Skills Matter

    Dylan is a systems architect and developer who has managed to participate in a variety of projects during his life, from small websites to huge distributed systems; from a Legacy with a twenty-year history to the latest developments. He currently works as an architect at Spotlight and addresses complex challenges in today's distributed systems. In parallel with the main work, Dylan actively participates in the community, is the organizer of the London .NET User Group and participated in many conferences in 2016, including Oredev in Sweden, NDC in London, Sydney and Oslo, Tampere Goes Agile in Finland and BuildStuff in Lithuania and Ukraine .


    Optimization - that is, code acceleration - is one of the main ingredients of modern computing technologies. The speed of light is limited, so you can no longer accelerate the frequencies of the processors; on the other hand, matter consists of separate atoms, therefore it is impossible to make circuits smaller than they are being produced now. So, for modern tasks such as self-driving machines or general artificial intelligence, acceleration methods will have to be invented with your own brains.

    This report talks about two new examples at different ends of the spectrum of optimization techniques. The first technique is related to iron: you can replace brunches with calculations. Modern processors work much better with serial code than with unpredictable brunches, we will exploit this fact. The second example will be about the classical algorithm, which can be improved using statistics on the distribution and locality of the data, and this improves its theoretical and practical performance.

    Andrei Alexandrescu  / The D Language Foundation

    Andrei Alexandrescu is an expert on many things, including the design and implementation of software systems, the design of programming languages, libraries, all aspects of C ++ and D, machine learning and the processing of natural languages. His creative approach to solving problems, deep knowledge and charisma made Andrei Alexandrescu one of the most desired speakers at conferences.

    Andrey's books and articles have left their mark on the history of the industry. He has authored such bestselling books as Modern C ++ Design, C ++ Coding Standards (co-authored by Herb Sutter), The D Programming Language, and articles like Simplify Your Exception-Safe Code - Forever (co-authored with Petru Marginean) and Mojo: Move of Joint Objects. The full list of articles is here .

    Explore the Cosmos (DB) with .NET Core 2.0

    CosmosDB is a NoSQL document-oriented database that makes it possible to work in a "real serverless" mode. It not only provides an easy way to connect geo-replication and guarantees low latency, but also allows you to choose the most convenient API with support for DocumentDB (SQL-like interface), MongoDB, Gremlin (graph), Table Storage and Cassandra. In the course of the report, we will get acquainted with the installation, configuration and writing of applications on .NET Core for CosmosDB. All this will happen using live coding and live demos.

    Jeremy Likness  / Microsoft

    Jeremy Likness is Microsoft's Cloud Developer Advocate for Azure. Jeremy has been doing enterprise software for two decades with an emphasis on business web applications and has made hundreds of technical presentations. He is the author of several good books, including Designing Silverlight Business Applications and Programming the Windows Runtime by Example.

    Building SSO with Identity Server 4.0 (.NET Core 2.0)

    In the report, we’ll tell you how to easily and easily build Signle Sign-On infrastructure using a set of pre-built components. Let us examine the details of the OAuth protocol and various authentication protocols depending on the architectures used.
    After the talk, you will know how to add SSO capabilities to your application using just a few lines of code.

    Vyacheslav Mikhailov  / DataArt

    Vyacheslav - solution architect at DataArt. Professional background in software development, has been involved in IT for 20 years. Major experience in the financial industry and information security. Vyacheslav has extensive experience in the development and design of various applications, ranging from iterative processing of legacy complex legacy systems to the design and development of modern scalable microservice applications with minimal downtime.

    How containers work

    In modern hype trends, containers are next to blockchain and machine learning, but nevertheless, few people are well versed in them yet. In this report, containers are shown as they really are: ordinary processes, but having a certain amount of isolation, a resource quota, and all this is sprinkled with security sandboxing on top. You will understand why containers so interesting and useful as namespaces isolate containers from each other, how to fumble resources between containers, how throttling works, how it all relates to the .NET runtime, and how to write a minimal application on .NET Core that will not drag with you unnecessary 500 megabytes of user libraries and utilities from Ubuntu.

    Sasha Goldshtein  / Sela Group

    Sasha Goldstein is CTO at Sela Group, Regional Director and MVP at Microsoft, author of books at Pluralsight and O'Reilly, international consultant and trainer. Sasha is the author of the books Introducing Windows 7 for Developers (Microsoft Press, 2009) and Pro .NET Performance (Apress, 2012), a well-known blogger and contributor to OpenSource projects, and the author of many training courses, including .NET Debugging,. NET Performance, Android Application Development, and Modern C ++. His work as a consultant is mainly related to distributed architectures, production debugging, performance diagnostics and mobile application development.

    Debugging as a process

    Debugging is the most interesting part of the development process, but this does not mean that we should spend 90% of our time on it. In the report we will tell you about the rules for effective debugging. On real examples, we will see how compliance with the process helps to find errors in the system faster. We’ll also talk about proactive debugging and how to use it. We show how debugging can become part of the application architecture.

    Sergey Shchegrikovich  / dotmailer

    Sergey is developing a globally distributed .NET application with a ten-year history. He actively talks about the company's experience at international and local conferences. Helps colleagues with debugging and performance optimization, previously also implemented DevOps and SRE practices.

    Pearless Pizzeria

    How not to lose quality when switching from a monolithic architecture to a service architecture? How to help tests find bugs: write tests or still generate them?

    The report will not have a “silver bullet” that would help you build your flexible team or make the UI regress differently. We will focus mainly on the problem of effective tests using the property based approach. The examples will show how you can use FsCheck in conjunction with C #.

    Surely you are faced with a situation where unit-tests for methods are written, testers have regressed, and bugs appear as if from nowhere. The Dodo IS system development team was no exception. When dividing the product into semantic parts, the question arose of who will check the services that have appeared and what to do with their integration.

    Close interaction between business, QA and developers, experiments with different approaches and practices, implementation of tests in CI is our way to fast feedback and improve the quality of the product delivered to customers.
    Service without bugs is the key to delicious pizza ...

    Julia Kovaleva  / Dodo Pizza

    Julia graduated from the magistracy at LETI, deciding that her Altai fundamental education should be made more applied. After graduating for 5 years, she has been working in the field of software testing for 5 years and does not regret it. Perhaps the search for the wrong solution or incorrectly posed problem conditions is a skill that has been inculcated since the time of school mathematical battles. Julia managed to go from a test analyst with tight management, where a step left and right and execution, to an automation engineer with lead responsibilities. She is not afraid of experiments, unfamiliar development languages ​​and frameworks: the main thing is to do the job efficiently and help the team. Julia hopes that the April DotNext will delight all participants not only with interesting reports, but also with her St. Petersburg emotional atmosphere.

    C # in browser - myth or reality?

    Every year, the world more and more moves from full-fledged installed applications to clients running in the browser to web services. Along with this transition, the requirements for the complexity of those continue to grow, which leads to the need to use languages ​​with strong typing and rich syntactic capabilities.

    Having successfully occupied niches of server, desktop and mobile development, C # now also moves to the browser. The report will consider means of compiling C # in JavaScript, providing seamless integration with the existing web ecosystem, as well as the ability to run programs in a full .NET environment using WebAssembly.

    Nikita Tsukanov  / MandarinBank

    He started in Navigator with development for WinCE / Mobile in C / C ++. Later, he was developing a VPN service with a cross-platform client on GTK #, a Promarket trading platform, Mono Maintain for Nokia N900, making tools for chip tuning of cars, a mobile messenger with End2End encryption, a payment system and a lot of other little things. He has extensive experience in developing everything for everything at the zoo of technology, which I am pleased to share.

    Bot-Tender: a .NET chatbot walks into a bar

    Chatbots are a growing new way to communicate and engage users, no matter who they are. Most likely, you already have a website, and maybe a mobile application, and the most serious comrades also have a desktop application. But do you have a chatbot? Your users are already on Slack, Skype, Facebook and many other places, why not give them the opportunity to communicate with your service directly, in a more “human” way?

    In this report, you will get acquainted with the Microsoft Bot Framework and Azure Bot Service and see how to build a waiter bot with their help, breaking through all sorts of tasks that arise. If you don’t have a bot yet, then is the time.

    Eran Stiller  / CodeValue

    Eran Stiller is an architect, consultant, instructor and just a person interested in new technologies. After many years of work, he became known as Microsoft MVP for Microsoft Azure for his contribution to technical communities around the world.

    As a co-founder of CodeValue Ltd., he practices various architectural approaches for different clients every day, works with various design options in various professional fields. As CTO, he is responsible for training and promoting technologies and platforms in CodeValue projects and solutions.

    He also leads training courses and workshops, often speaks at local and global conferences and meetings, and is even the founder of Azure Israel, the largest Azure meeting in Israel.

    Distributed transactions have died, long live distributed transactions!

    As “everyone knows”, distributed transactions died with the advent of the Internet era. Books on MTS, MSDTC, J2EE are gathering dust in museums while programmers write cloud services in the fight against eventual consistent data warehouses like Cassandra and Mongo. For financial transactions, immortal SQL remains.

    The team working on the Orleans framework is no stranger to cast doubt on generally accepted “truths.” She has already shown that distributed objects, when used correctly, can be successfully used to build efficient, scalable applications, offering a convincing alternative to the Erlang / Akka approach to the actor model.

    Support for scalable distributed transactions is one of Orleans' latest innovations to refute popular misconceptions. Sergey Bykov will talk about her, as well as about other advanced functions of the framework.

    Sergey Bykov  / Microsoft

    Sergey Bykov started the Orleans project at Microsoft Research and continues to lead its development in open source at the Xbox division. Prior to joining Research, Sergey worked in various Microsoft groups, from BizTalk and Host Integration Server to embedded operating systems for POS and Bing. The depressing situation with development tools for cloud services and distributed systems prompted him to take up the Orleans project in order to qualitatively increase the productivity of programmers in this area.

    Lightweight microservice collaboration using HTTP

    Using a microservice architecture, you break down functionality into many, many narrowly targeted microservices. Most of the functionality depends on how they interact with each other. In this report, we will see many ways of interaction between microservices, compare them with each other, understand when to use which service and how to do it all in the simplest way. In addition, we will learn how to use HTTP for various types of interactions, and how to use Nancy to implement them over ASP.NET Core.

    Christian Horsdal  / Horsdal Consult

    Christian Horsdal is an independent consultant with many years of experience in developing distributed systems on .NET. He is a committer at Nancy, Microsoft MVP, and author of Instant Nancy Web Development and Microservices in .NET Core.

    Using AOT Compilation Correctly

    Ahead-of-time compilation is the main topic of conversation.
    Let's talk about the advantages and disadvantages of AOT, how AOT differs from JIT, AOT and Ngen, AOT for Mono and CoreRT, as well as how and when to use AOT.

    Elizaveta Golenok  / MTS IT

    Elizaveta is a leading developer at MTS Information Technologies.
    He has experience in developing and designing systems in both C / C ++ and C # ASP.NET, Mono (from navigation systems to enterprise solutions).
    His area of ​​interest is route planning and multi-agent systems, compilation, LLVM, Clang, low-level application debugging, P / Invoke and Mono.

    Write your own C # static code analysis tool to drive business rules

    So, you wrote a bunch of code and spent six months studying, understanding and improving it, over and over again. Code is something living, and no documentation is better than the code itself. Therefore, we are starting to use a bunch of tools that allow us to do manual code verification and fully understand what happens to objects of a certain type, which parts of the code really need dependencies, or which APIs are used in which parts of the code base. This is all the more difficult the more code came to us from third-party developers.

    The Roslyn platform gives us the opportunity to write tools to understand the source from the point of view of business rules, to extract from them enough information to identify patterns of use and to apply security practices.

    The idea is to improve the quality of code analysis tools by independently creating such tools and analyzers for Visual Studio that will take into account the features of the developed product.

    Raffaele Rialdi  / Vevy Europe

    Raffaele Rialdi is a Senior Software Architect who also works as a consultant, speaker and trainer. Since 2003, he has been a Microsoft MVP in the Developer Security category. His passion for community affairs made him a member of the board of UGIdotNET, president of DotNetLiguria and co-founder of the Italian C ++ User Group. Currently, he works as an architect and developer of backends for enterprise projects with a special focus on generating application source codes in cross-platform mobile and IoT development, in C # and C ++.

    What is going on? Application diagnostics using the cloud

    We all like to write and deploy applications. But what happens when all this is done? How do we know that the application works the way we wanted? Of course, logging! But how will we delve into the results of diagnostics that look almost equally useless? How can we find correspondences in the logs with events in the code, such as uncaught exceptions or any specific user actions? How can we make sure that we are not sending too much data? And so on and so forth. In this talk, we’ll see how you can cope with the diagnostics of a .NET application — using structural logging and Azure Application Insights in order to produce more meaningful data.

    Maarten Balliauw  / JetBrains

    Maarten Balliauw loves making web and cloud apps. His core interests include ASP.NET MVC, C #, Microsoft Azure, PHP, and application performance. He is co-founder of MyGet and runs Developer Advocate at JetBrains. He is an ASP Insider and former MVP in the Azure category. Maarten often speaks at various local and international conferences, organizes the Azure User Group in Belgium.

    Multithreaded data structures in .NET: how does it work?

    The talk will focus on the algorithms behind the collections in System.Collections.Concurrent. Step by step, with examples, we explain complex algorithms. Also consider the design of the multi-threaded collection API.

    Important: to understand the report, you need to know the basics of parallel programming, including Monitors, Semaphores, read-write locks, atomic operations (Interlocked), etc.

    Dmitry Ivanov  / JetBrains

    Tehlid JetBrains Rider, developer of the ReSharper core: data structures, caches, multithreading. At JetBrains since 2011, before that, he led the development of server solutions at Yota. He graduated from St. Petersburg State University in 2006. Regular speaker DotNext.

    Second day

    12-factor apps in .NET Core

    You've probably already heard about Cloud Native: continuous deployment and easy scaling of server code. You heard about Docker and microservices. But what are the 12-factor applications that are mentioned in the title? This methodology, originally developed by Heroku deployment engineers, is a recipe for success when writing code for any cloud platform. This report describes the essence of the method and demonstrates how to write an application for .NET that meets all the requirements of this method. Absolutely surely there will be live examples using ASP.NET Core, the light and dark sides of applications built in this way are outlined; It will show how this can be deployed without a server or using Azure Service Fabric.

    Ian Cooper  / Huddle

    Polyglot Coding Architect, based in London, co-founder of #ldnug, speaker at conferences. He has been engaged in development for more than 20 years, and talks about patterns and practices on reports, trying to focus on architectural issues.

    Enterprise Development Expression Trees

    For most developers, the use of expression tree is limited to lambda expressions in LINQ. Often we do not attach any importance to how the technology works “under the hood”.

    The purpose of the report is to demonstrate advanced techniques for working with expression trees:
    - eliminating duplication of code in LINQ;
    - metaprogramming;
    - code generation;
    - transpilation;
    - test automation.

    After the talk, you will know how to use expression tree directly, what pitfalls the technology has prepared, and how to get around them.

    Maxim Arshinov  / High Tech Group

    Co-founder of the Kazan outsourcing company High-tech Group. In addition to doing business, he teaches at the Higher School of Information Technologies and Information Systems of Kazan Federal University and has a blog on Habré . At the query “How to write tests” in Google, the first result will be his article .

    The total experience in programming and development management is 10 years. During this time, he went from a programmer in the Kazan web studio to the head of the quality department in the financial industry. He worked in organizations from Kazan, Moscow, St. Petersburg and Antwerp (Belgium).

    He believes that technology is not a “thing in itself”, but a tool for achieving goals. Each with its own field of application.

    Programming quantum computers in .NET using Microsoft Q #

    Quantum computers are a very popular topic right now. Despite the fact that they continue to remain mainly a research topic and are limited to toy examples, we still have a clear understanding of the future. To help develop and understand quantum protocols, quantum algorithms, quantum error correction, and quantum devices, Quantum Architectures and Computation Group (QuArC) has developed a new Q # language. Q # extends the .NET Framework with special implementations and structures that ultimately allow you to emulate a quantum computer as a virtual processor.

    Rolf Huisman  / Info Support

    Rolf is working on an Info Support consultant for application lifecycle management (ALM), DevOps, and Continuous Delivery (CD). He is mainly engaged in Microsoft technologies (for example, Visual Studio, TFS, Release Management, Azure, Azure Stack, MTM), which can improve and speed up the development and delivery process. MVP in the category Visual Studio and Development Technologies. In addition, his interests include electronics, security systems and computational mathematics.

    Finding your service boundaries - a practical guide

    Quite popular is the separation of complex systems. We have already seen the specific benefits of modular deployment of microservices. Development focused on one small piece of code offloads the brain. But how do we understand where to draw the boundaries of services? In complex subject areas, it is often quite difficult to even figure out where to start. If we draw the boundaries incorrectly, the countdown starts: one day the time will come when it will become “easier to rewrite everything”.

    In this talk, Adam will provide some practical tips on how to correctly identify the hidden boundaries of systems. Adam built complex systems for twenty years in a row, and he had a bunch of opportunities to walk through all kinds of rakes. We will learn how to get around a rake that would ultimately lead to a complete rewrite of the system.

    Adam ralph / Particular Software

    Adam is interested in distributed systems and works for Particular Software, which made NServiceBus. He likes to deliver reports, support open source projects and replace tabs with spaces.

    Microservice Connectivity over HTTP / 2

    HTTP / 2 not only speeds up the loading of web pages, but also optimizes the interaction of microservices in a distributed system. Our infrastructure team used HTTP / 2 in the new service and faced interesting problems. You will find a fascinating fail story about performance, magic constants and unmanaged memory leaks.

    The purpose of the report is to share the experience of using HTTP / 2 to optimize interservice interaction in the conditions of the .NET framework and Windows.

    The report will be interesting to fans of detective stories about productivity; microservice developers for .NET; People who do stress testing of HTTP services.

    Keywords: .NET, C #, HTTP / 2, WinDbg, microservice architecture, long polling, load testing.

    Evgeny Zhirov  / Kontur

    C # developer in the infrastructure team of SKB Kontur. He is engaged in the development and support of shared libraries, distributed tracing systems, and other high-performance services.

    He is interested in creating reliable and scalable HTTP services, writing productive code, C # and .NET, robotics and IoT. Eugene likes to share knowledge with others, so he leverages the skill of public speaking and teaches several courses for students at UrFU.

    Pitfalls of high-level cryptography

    This report is a continuation of previous speeches on DotNext, which dealt with the problems of low-level cryptographic APIs in .NET and talked about high-level cryptography. The story is not over yet! High-level cryptography itself has many features. The most advanced part of the report will be about working with public keys.

    Stan Drapkin

    Stan Drapkin is a technical leader, manager and expert in security and compliance. He hires, educates, and guides the best engineering teams using .NET to develop highly secure cloud solutions for highly regulated environments.

    Stan has a degree in Computer Science and an MBA, and has been developing using the .NET Framework for over 16 years. He did this back in the days of .NET 1.0-beta in 2001, when he worked at Microsoft, and since then has remained immersed in this technology.

    Advanced .NET debugging techniques from a real world investigation

    You know how painful it is: here you have released a new version, and the service has begun to behave very strange, and there is no one to fix it besides you. But where and how to start?

    Criteo serves 150 billion requests per day across 4,000 front-end servers. As part of the Criteo performance team, speakers have a very good understanding of how to investigate critical issues in these types of environments.

    In this report, we look at insights, errors, false traces that are in reality.

    We will go through all phases of the study of the problem, starting with early detection and up to fixing the problem, and all the techniques used will be described in detail. Including but not limited to:

    • Using metrics to detect errors;
    • Что мы можем или не можем получить из профилировщика, на основании чего можно делать хорошие предположения;
    • Погружение в структуры данных CLR с помощью декомпилятора, WinDBG и SOS, для проверки предположений;
    • Автоматический анализ дампов памяти с помощью ClrMD, и то, как писать свои собственные инструменты, когда WinDBG оказывается несостоятельным.

    Christophe Nasarre  / Criteo

    Christophe Nasarre has worked on the development and delivery of Microsoft stack software for 25+ years, has been a technical editor at MSPress, Addison-Wesley and other publishers since 1996, participating in the writing of books such as “CLR via C #” and latest editions "Windows Internals."

    He usually talks about tools and good ideas about .NET and Windows and runs his blog . He has experience reporting both internally at Microsoft and at public events like Microsoft TechDays.

    Kevin Gosse  / Criteo

    Kevin Gosse has been using Microsoft .NET technology for 10 years and has been developing servers, clients and mobile applications. Now at Criteo, he deals with scaling, debugging, and optimization issues.

    Building real world production-ready web APIs with .NET Core

    So, you started making a new web API using .NET Core. You have already rolled it out into production. Have you thought about hosting, scaling, monitoring, versioning, documentation, elasticity, logging? Because rolling out only business logic into production is not enough. In this report, you will learn how to write developing web-APIs using .NET Core and the Microsoft technology platform, and how to get these things in a complex production environment on a large scale.

    Alex Thissen  / Xpirit

    Alex has been developing software since the 90s, he has been in the position of lead developer and architect in both large enterprises and small companies. Now he is engaged in teaching developers the details of working with the Microsoft platform and framework, teaching architects how to design and build modern distributed applications on a cloud-wide basis. It is a tenfold MVP in the Visual Studio and Development Technologies category.

    Natural Language Processing (NLP) in .NET

    Text is the main source of information in the world, speech is the main way of interaction between people, which is also becoming a popular way of interacting with a computer. Applications such as search engines, chat bots and personal assistants already use knowledge extracted from texts and speech. Can your application use this knowledge?

    During the talk, we will discuss the NLP features available to us from the box in the .NET framework, as well as those provided by cloud services such as Language Understanding Service (LUIS from Azure Cognitive Services) and IBM Watson. We will also consider the most popular NLP packages from NuGet (Stanford.NLP.NET, OpenNLP.NET and others)

    Sergey Tikhon  / EPAM Systems

    Solution architect at EPAM Systems, author of F # Weekly, Microsoft F # MVP, open source enthusiast - author of Stanford.NLP.NET, OpenNLP.NET, SwaggerProvider and some other fsprojects projects.

    Difficulties in migrating to ASP.NET Core and Docker

    Many developers, including us, have already tried ASP.NET Core, Docker, but few people use this in production. In our project, we decided to try these technologies, because this bunch is cheaper in content and easier to deploy, and the writing speed is almost unchanged.

    The purpose of the report was to talk about the difficulties that we had to face when creating new applications on ASP.NET Core 1.1 and 2.0 under Docker, having experience in ASP.NET development and not having any real experience with Docker.
    In addition, demonstrate how to solve these problems and show that the state and dynamics of the development of ASP.NET Core allow you to create ready-for-production applications.

    Technologies used: ASP.NET Core 1.1 and 2.0, Docker, GitLab CI, Amazon EC2 Container Service.

    Alexander Ivanov / Arcadia

    I came to .NET in 2008 from 1C, since then I have not enjoyed freedom in choosing architectural solutions and trying to try them out. He is currently interested in ASP.NET Core, Docker, and related technologies, promoting them whenever possible.

    Scratched metal

    Microoptimizations in the RavenDB vNext storage engine are critical to achieve 50K + write requests per second on an average server. In this talk, we will look at the use of the new intrinsics added in CoreCLR 2.1 in the context of real-life examples of bottlenecks on the critical path. Pretty hardcore topics like processor architecture and its impact on cache behavior (miss-hit ratio, poising), prefetching, etc. will be covered. The report is intended for engineers engaged in microoptimization in high-performance applications.

    Federico Lois  / Corvalius

    Federico is a co-founder of Corvalius R&D company and Coidealike analytic company. He has been working on algorithm performance over the past ten years, including both conventional processors and specialized hardware like GPUs. He has experience in various fields, from the practice of increasing the productivity of banking applications, up to the optimization of database engines.

    Reactive Extensions (Rx) 101

    Reactive applications are designed to handle asynchronous events so that it maximizes the responsiveness and elasticity of these applications. Reactive Extensions (Rx) is a library that abstracts event sources and provides tools for working with them in a reactive way.

    Using Rx, filtering events, combining sources, transforming events, handling errors, etc., is much easier than using traditional tools and paradigms.

    Reactive Extensions require a change in approach: you need to learn to think of the application as a message hub that knows how to respond to these messages. After the presentation, you will be able to better understand what Rx is and get a starting point on the path to effective use of Rx in your application.

    Tamir Dresher / CodeValue

    Tamir Dresher - Architect, Consultant, Instructor, Head of Cloud Division at CodeValue Israel. More than 10 years in the development and design of systems, both cloudy and installed on the user's infrastructure. Winner of the Microsoft MVP title in the Visual Studio and Development Technologies category, author of the book "Rx.NET in Action" by Manning.

    Special exceptions in .NET

    When developing .NET applications, you may encounter exceptions whose behavior is different from everyone else. These exceptions occur when operating system level and runtime errors occur, they can occur unexpectedly and cause the entire process to crash. For example, StackOverflowException, ThreadAbortException, AccessViolationException, OutOfMemoryException.

    In the report, students will learn about the features of handling such exceptions, the internal mechanisms of the platform, the differences between versions and implementations of .NET, as well as low-level ways to change the standard behavior of runtime.

    Evgeny Peshkov  / Contour

    .NET developer in SKB Kontur. The company is engaged in a common infrastructure: developing a cloud-based platform for application hosting. He is interested in the internal device of .NET and Windows and uses this knowledge in practice.

    Building microservices with .NET Core and Docker

    .NET Core is a “new” way to build .NET applications, works well with clouds and containers. In the report, we will see how these technologies can be used to build applications based on containerized microservices. 20% slides and 80% code.

    Edwin van Wijk  / Info Support

    Edwin has been working in IT since 1999, and now is a solution architect in Info Support. Microsoft MVP in the Visual Studio and Development Technologies category.

    Xamarin is not only harmful, but also beneficial

    We are developing a mobile application for entrepreneurs in C # and Xamarin. Two years ago, using these tools was problematic: a broken IDE, performance problems, cross-platform code, and binding to native platform capabilities. Xamarin.Forms is generally one big problem. Now the situation has changed for the better: AOT compilation - already working in production, productivity - has improved significantly, problems with binders and the environment have practically disappeared. We’ll tell you how to use Xamarin now to simultaneously release complex application releases on iOS and Android.

    Dmitry Moiseev  / Contour

    Dmitry has been professionally engaged in programming since 2009, and the development of mobile applications in SKB Kontur - since 2013. I am sure that the future of application software development lies in cross-platform solutions.

    Advanced Space Technology

    What technologies are developing in astronautics right now, how they contribute to space exploration, and what can we expect from astronautics in the next decade.

    Vitaly Egorov  / Cosmonautics popularizer, blogger Zelenyikot

    Public relations specialist at the Russian private space company Dauria Aerospace. Blogger Zelenyikot, a popularizer of cosmonautics on the Internet, founder of the Open Space communities on social networks with a total of more than 1 million subscribers. In 2013, he managed to detect on the surface of Mars the landing module of the Soviet automatic interplanetary station Mars-3. The initiator of the project of creating a lunar microsatellite for surveying the landing sites of the Apollo and Lunokhod.

    We remind you that this is the last opportunity to purchase tickets.
    You can do this on the official website of the conference

    Also popular now: