📜 ⬆️ ⬇️

Open broadcast of the main hall DotNext 2018 Piter



Tomorrow, hundreds of .NET specialists will gather in St. Petersburg to listen to the reports and communicate for two days in a row. But even if you are not in Petersburg these days, you can still listen to many reports. In addition to a paid online broadcast, which gives access to what is happening in all halls, we also do an open broadcast of the first hall that is open to all.

What reports are in open broadcast? A complete list with descriptions - under the cut, and before it we note a couple of things. According to the results of the two previous DotNext, Dylan Beatty turned out to be a clear spectator favorite, so he will open DotNext with a presentation on how the familiar technologies work. And just yesterday, when the report was already fully prepared and agreed upon, Dylan discovered for himself the subtleties of the KOI8-R encoding and now he enthusiastically redoes part of the presentation!
')
Andrei Aleksandrescu will replace him in the main hall - and this is a figure of such magnitude that we ourselves cannot keep from taking a selfie with him. And the next will be Sasha Goldstein , who is also not required to introduce him to the workers. In general, the line-up steal up stellar.

First day (April 22)


10:30 AM Apps, decoding our digital world


Imagine a picture: you are traveling in a train, your smartphone makes a sound, you take it out of your pocket and see: a new message! This is a video with a cat falling from a chair! You answer "LOL", put the phone back in your pocket ... But do you think what it took 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 by which our ordinary household items work, and we unearth algorithms and abstractions that create our new digital world. We will look at everything: network addressing algorithms, frequencies in cellular networks, optimization of the shortest distance search, wavelet-compression, fingerprint recognition, media encoding methods, and so on. After this report, you will no longer be able to relate to your mobile phone as before.

Dylan beatie
Dylan is a systems architect and developer who has been involved in many projects in his life, from small websites to huge distributed systems; from Legacy with a twenty-year history to the latest developments. He now works as an architect in Spotlight and is engaged in solving complex problems in modern distributed systems. In parallel with the main work, Dylan is actively involved in the community, is the organizer of the London .NET User Group and in 2016 participated in many conferences, including Oredev in Sweden, NDC in London, Sydney and Oslo, Tampere Goes Agile in Finland and BuildStuff in Lithuania and Ukraine .



12:00 Fastware


Optimization - that is, code acceleration - is one of the main ingredients of modern computing technologies. The speed of light is limited, so you can not overclock the frequency of the processors; On the other hand, matter consists of individual atoms, therefore it is impossible to make the schemes smaller than they are made now. So, for modern tasks such as self-managing machines or general artificial intelligence, methods of acceleration will have to be invented with our own brains.

This paper 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 sequential code than with unpredictable brunches, we will exploit this fact. The second example will be about the classical algorithm, which can be improved using statistical data on the distribution and localization of data, and this improves its theoretical and practical performance.

Andrei Alexandrescu
Andrei Alexandrescu is an expert on a variety of 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 desirable speakers at conferences.

Books and articles by Andrey left their mark on the history of the industry. He is the author of such bestsellers as “Modern C ++ Design”, “C ++ Coding Standards” (in collaboration with the Coat of Arms Sutter), “The D Programming Language”, and also articles like “Simplify Your Exception-Safe Code - Forever” (in collaboration with Petru Marginean) and Mojo: Move of Joint Objects. Full list of articles is on the link .




13:30 How containers work


In modern HYIP trends, containers stand next to the blockchain and machine learning, but nevertheless, few people still understand them well. In this report, the containers are shown as they really are: normal processes, but with some amount of isolation, a quota for resources, and all this is sprinkled with sandboxing on top of security. You will understand why containers are so interesting and useful, how neimspaces isolate containers from each other, how to fumble resources between containers, how throttling works, how it all relates to .NET runtime and how to write a minimal .NET Core application that won't drag with an unnecessary 500 megabytes of user-space libraries and utilities from Ubuntu.


Sasha goldshtein

Sasha Goldstein - 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, the author of numerous 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.




15:15 Distributed transactions are dead, long live distributed transactions!


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

The team working on the Orleans framework is no stranger to questioning generally accepted "truths." She has already shown that, if properly applied, distributed objects can be successfully used to build efficient scalable applications, offering a convincing alternative to the Erlang / Akka approach to the model of actors.

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

Sergey Bykov

Sergey Bykov started the Orleans project at Microsoft Research and continues to lead its development in open source in 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.




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


So, you wrote a bunch of code and spent half a year on learning, understanding and improving it over and over. The code is something living, and there is no documentation better than the code itself. Therefore, we are starting to use a bunch of tools that allow us to manually check the code and fully understand what is happening with 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 the more complicated the more code came to us from third-party developers.

The Roslyn platform gives us the opportunity to write tools to understand the source in terms of business rules, extract information from them that is sufficient to identify patterns of use and to apply security practices.

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


Raffaele Rialdi
Raffaele Rialdi - Senior Software Architect, working including 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 UGIdotNET board, president of DotNetLiguria and co-founder of the Italian C ++ User Group. He is currently working as an architect and developer of enterprise application backends with a special focus on generating application sources in the field of cross-platform mobile and IoT development, in C # and C ++.



18:15 Multi-threaded data structures in .NET: how does it work?


The report will discuss the algorithms behind the collections in System.Collections.Concurrent. Step by step, with examples we explain complex algorithms. Also consider the design API multithreaded collection. Let's get acquainted with the theory of non-blocking synchronization.

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

TechLid JetBrains Rider, developer of the core ReSharper: data structures, caches, multithreading. At JetBrains since 2011, he has previously led the development of server solutions at Yota. He graduated from mathematics SPbSU in 2006. Regular speaker DotNext.




Second day (April 23)


10:30 Expression trees in enterprise development


For most developers, the use of expression tree is limited to lambda expressions in LINQ. Often, we don’t attach any importance to how the technology works under the hood.

The purpose of the report is to demonstrate advanced techniques of working with expression trees:


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


Maxim Arshinov
Co-founder of Kazan outsourcing company "Hightech Group". In addition to doing business, he teaches at the Graduate School of Information Technologies and Information Systems of the Kazan Federal University and writes in Habré . For the query "How to write tests" in Google, the first result will be his article.

The total experience in programming and development management - 10 years. During this time, he has gone from a programmer in a 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 tools for achieving goals. Each - with its scope.



12:00 Interaction of microservices on HTTP / 2


HTTP / 2 not only accelerates the loading of web pages, but also optimizes the interaction of microservices in a distributed system. Our infrastructure team used HTTP / 2 in a new service and faced interesting problems. You will find an exciting 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 inter-service interaction in the .NET framework and Windows.

The report will be interesting to fans of detective stories about performance; microservice developers under .NET; people who are engaged in load testing HTTP-services.

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


Evgeny Zhirov
C # developer in SKB Kontur infrastructure team. It is engaged in the development and support of shared libraries, distributed trace 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 pumps public speaking skills and teaches several courses for students in UrFU.



13:30 Advanced .NET debugging techniques from a real world investigation


You know how painful it is: here you are releasing a new version, and the service began to behave very strange, and there is no one else to fix it. But where and how to start?

Criteo serves 150 billion requests per day, scattered across 4,000 front-end servers. As part of the performance team at Criteo, the speakers are very well versed in how to investigate critical issues in this kind of environments.

In this report, we will consider insights, mistakes, false traces that happen in reality.

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




Christophe Nasarre / Criteo

Christophe Nasarre, 25+ years old, has been working on developing and supplying software for the Microsoft stack, has been a technical editor at MSPress, Addison-Wesley and other publishing houses since 1996, participating in writing books like CLR via C # and the latest edition of Windows Internals .

He usually talks about tools and useful ideas about .NET and Windows and keeps a blog . He has experience of reports both inside Microsoft and at public events like Microsoft TechDays.

Kevin Gosse / Criteo

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



15:15 Scratched Metal


Micro-optimizations in the RavenDB vNext storage engine are critical for achieving 50K + write requests per second on an average server. In this report, we will look at the use of new intrinsics added in CoreCLR 2.1 in the context of real examples of bottlenecks on the critical execution path. Rather hardcore topics such as processor architecture and its influence on the behavior of caches (miss-hit ratio, poyoning), prefetching, etc. will be touched upon. The report is intended for engineers engaged in micro-optimizations in high-performance applications.

Federico lois
Federico is the co-founder of the R & D company Corvalius and the analytical company Coidealike. He has worked on the performance of algorithms over the past ten years, including both conventional processors and specialized hardware like GPUs. He has experience in various fields, ranging from the practice of improving the performance of banking applications, right up to the optimization of database engines.



16:50 Building microservices with .NET Core and Docker


.NET Core is a “new” way to build .NET applications that 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% of slides and 80% of code.

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



18:25 Prospective space technology


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

Vitaly Egorov

Specialist in public relations of the Russian private space company Dauria Aerospace. Blogger Zelenyikot, popularizer of astronautics on the Internet, founder of the Open Space communities on social networks with a total number of over 1 million subscribers. In 2013, he was able to detect the landing module of the Soviet automatic interplanetary station Mars-3 on the surface of Mars. The initiator of the project of creation of the lunar microsatellite for shooting the Apollo and Lunokhod landing sites.



At the end, we recall the link to the open broadcast. And if it so happens that just the most interesting DotNext reports are not held in the first hall, then you can still buy access to the full broadcast.

Source: https://habr.com/ru/post/353982/


All Articles