Back to Home

DotNext 2016: Between the Present and the Future / JUG Ru Group Blog

dotnext · conference · .net · asp.net · .net core · dino esposito · jetbrains · luxoft · kaspersky lab · epam systems

DotNext 2016: Between Present and Future

    What should the .NET conference look like in 2016, when a tectonic shift occurs in the .NET world? Obviously, (ASP) .NET Core will greatly affect the lives of developers, but for most of them this will happen only after a tangible time. What to talk about in this case - large-scale innovations that will become relevant later, or more familiar topics that are important here and now?

    The St. Petersburg Summer Developer Festival, consisting of three conferences in a row, began with DotNext 2016 . How was the dilemma resolved there, and how did DotNext go? The snapshot of the organizing team shows that with all the hardcoreness, the event was not without its summer mood, and all other details are under the cut.





    It is difficult to expect that the name of the volunteer task will become the most memorable detail at the opening of the conference, but this is exactly what happened here. Program Director Andrei Dmitriev , saying that the speakers after their reports go to the “expert zone” (where they answer questions from interested viewers), said that volunteers even have a special role for the task of “taking the speaker after the report”. And it is called like this: "speaker tug."



    It sounds funny, but at the same time, it’s indicative: it answers the question “why go to conferences when you can find out everything on the Internet”. The opportunity to ask a question on the sidelines has always been an advantage of personal presence, and when all the conditions have been created for this, with a dedicated expert zone and boards for illustrations, you can get even more from the event.

    After the opening, there was a keynote from Dmitry Soshnikov (Microsoft)"How Many Lives Does .NET Have." Starting with nostalgia (even COBOL code appeared on the screen) and reaching the future (like local functions in C # 7), he arranged a show in the process: he measured his heart rate with the help of Microsoft Band (“it fell sharply, usually this indicates the speaker’s death , but not in this case ”), but with the help of Microsoft Cognitive Services I recognized my own emotions by the expression on my face (“ I’m better at being happy than sad, ”).



    Part of the talk was about “debunking the myths about Microsoft.” It is not surprising that the evangelist of the company defended its innocence in controversial issues, but the audience liked his arguments. For example, disputing the thesis “Microsoft makes developers constantly relearn”, he captivated the audience with the phrase “Not Microsoft is such, life is like that” (laughter with laughter, but you can’t argue: you don’t have to relearn only where there is no progress). And then I finished off with a slide “Meanwhile in a parallel universe”, which simply listed popular JavaScript frameworks: in comparison with this ever-changing zoo, the .NET world can indeed look like a safe haven.



    Then everything was divided into different halls, and it became clear how revolutionism and everyday life can coexist in the framework of one conference: they were simply given different tracks, so that everyone who came could choose for themselves what was more important to him.

    From the main stage, English speakers ( Maurice de Beyer , Dino Esposito , Adam Sitnik ) talked about what the transition to (ASP) .NET Core means for the .NET world. It turned out a room for those who want to be ready for tomorrow's challenges today.



    The third hall was initially occupied by speakers from JetBrains with a series of reports on their new IDE Rider (they recently briefly toldus about her, but here they were able to tell in more detail). Since the project has not yet reached the release, it turned out also about the future, but closer. Thanks to the Early Access Program, you can already use it if you wish, and among the first users there are JetBrains themselves, using Rider to develop Rider. This explains why their products are so fond of: is it possible to more effectively motivate the developer to improve the product than when he personally feels any shortcomings?



    And in the second room at this time there were reports on code generation, optimization and dynamic prototyping - that is, it was about how you can get practical benefit here and now, without waiting for a bright future.



    It is curious how differently the reports about ASP.NET Core sounded. Maurice de Beyer calmly stated the facts: .NET in its usual form has ceased to meet the demands of the times, so now everything will become more modular and cross-platform (it is not surprising: when Azure began to mean a lot to Microsoft, tight binding to Windows began to interfere with receiving clients).



    But Dino Esposito used his sarcasticity to the fullest, describing the situation: “Microsoft first makes a revolution, and only then it suddenly thinks about what problems loyal customers will have with legacy code”. In his performance, the hypothetical dialogue on the migration of a large project looked so vivid that the audience perfectly understood the essence of the last remark, which he depicted soundlessly:

    - How much do we need to invest?
    - A million dollars and a year of work.
    “And for what?”
    - To do the same as now.
    - ...!



    The sudden changes at the release candidate stage really look weird. But this does not mean that Microsoft is making a bad product, and Dino did not say that. He only stated that it would only reach a stage of “truly suitable for production” in a couple of years. As he sarcastically remarked at the end of his speech, “it goes well with Microsoft’s general policy: their products should not be used until the third version.” Judging by the volume of laughter in the hall, for so many of those gathered, Windows once started with 3.x.



    Esposito was replaced by Sasha Goldstein (Sela Group)with performance about PerfView. This was the third consecutive report in English, and in just a day there were as many as five in the main hall: at this conference, you could not get bored, even not knowing Russian at all. As the reviews of the audience about the Goldstein report showed, many gained practical benefit for themselves, having first become familiar with the tool and immediately wanted to use it.



    And later, in another room, he spoke with the theme “The C ++ and CLR Memory Models”, and in this case the reviews were even more enthusiastic: many noted the ability to “just talk about complicated things”. As a result, in the top 10 reports of DotNext (according to audience estimates), the same speaker took both “gold” and “bronze”:

    1. Sasha Goldshtein - The C ++ and CLR Memory Models
    2. Dino Esposito - ASP.NET Core 1.0: Challenges and Opportunities
    3. Sasha Goldshtein - PerfView: Measure and Improve Your App's Performance For Free
    4. Andrey Akinshin, Julia Tsisyk, Anatoly Kulakov - Let's talk about arithmetic
    5. Dmitry Soshnikov - How Many Lives Have .NET: We Think About the Fates of a Favorite Platform
    6. Sergey Shchegrikovich - ETW for .Net developers
    7. Igor Chevdar - Code Generation for Optimization
    8. Dmitry Ivanov - Reactive Multiprocess Communication: JetBrains Rider Framework
    9. Igor Labutin - Diagnosing WCF
    10. Vitaliy Baum - Practical Examples of Creating Microservices


    Meanwhile, in the second room, Romuald Zdebsky (Microsoft) talked about games, and the question arose "how relevant is the report specifically at this conference." Zdebsky used spectacular videos of the latest games like Deus Ex: Mankind Divided, but these are AAA titles, a big game dev, large Western companies - could an ordinary Russian .NET developer get something for himself? As it turned out, he could.



    Firstly, the report drew attention to the fact that simple games (for example, 2D) can be done using Xamarin - so you can try to do something right away for all mobile platforms, without encountering a high entry threshold. And secondly, it was said that even in a more ambitious project, you can cut corners: by taking the Unity engine and buying models in the official store, you can create a full-fledged game without mastering many things.



    In passing, Microsoft's decision to open the Windows Holographic platform (used in HoloLens) was mentioned. This is not affecting the developers right now, but the news is good in the future: if the VR / AR market turns out to be large, it will be great to write code right away for a large user base of AR devices from different manufacturers. By the way, during the breaks of the conference, it was possible to evaluate the prospects of VR / AR from our own experience and the vestibular apparatus: the attraction with the DK2 version of the Oculus Rift was not idle.



    The afternoon report in the main hall, although it was not about Core at all, also appeared in the format “hardly necessary for you for the current project, but actually it’s worth knowing”. Andrey Akinshin(JetBrains) introduced puzzles related to arithmetic, and opened the hall new in the seemingly most basic operations. The first example, “Write (0.1 + 0.2 == 0.3);”, hardly surprised many with the fact that the answer was false (it is widely known that floating-point operations throw such surprises). But there were many reasons to make mistakes; for example, it turned out that the seemingly obvious expression leads to unexpected results in a specific configuration. And what do you think, which of the options is right here?



    Then two reports in a row - from Nikita Tsukanov (ProMarket) and Maurice de Beyer- were dedicated to Docker. As Maurice noted, the project name and logo were chosen very well: the analogy with loading containers on ships perfectly explains its benefits. Once upon a time, everything was loaded onto the ships “as is” (for example, in separate barrels), and this led to “compatibility problems”: how to arrange them so that they fit in as much as possible, and at the same time everything did not crash? With the advent of transport containers of a strictly fixed size, guaranteed to be compatible with each other, life was noticeably simplified, and loading ships became much more efficient. Docker allows you to achieve approximately the same.

    And Tsukanov, listing the environment for the deployment, drew attention to the fact that the need for cross-platform already begins within the development team: "frontendors are sitting with their javascript behind their macbooks, they saw this Windows in our grave." I immediately wanted to wait for HolyJS and hear whether the "frontend workers with macbooks" themselves would mention Docker in their reports.



    Finally, in the last slot was a report by Roman Nevolin(WaveAccess) about machine learning. Here, as in the case of the report on the games, the question arose of “is it relevant for the audience”: even if the future lies with it, but does it have a specific meaning for the audience? And here the speaker also explained that he has: the range of tasks for which machine learning can come in handy is quite wide, and the entry threshold is lower than you might expect. In order not to be unfounded, Nevolin demonstrated its application - for example, for such an urgent task as recognition of spam in the stream of incoming messages. The phrase “the method of scientific poking is the basis of machine learning, it will save us” was especially memorable.



    According to Roman, machine learning is primarily useful in such cases:
    1. When the algorithm is difficult to describe in code, but easy to explain to a person.
    2. When you are trying to predict changes (for example, stock prices).
    3. When the algorithm should be improved due to the accumulation of data.

    It is curious to know in the comments: in what you are working on now, do you have to deal with tasks that fall under these descriptions and in which machine learning could help?

    This was the end of the conference (for those who want more, we are waiting in December at Moscow DotNext ). But the "Summer Festival of Developers" did not end: Mobius about mobile development and HolyJS about JavaScript remained ahead , and we will talk about them in the following texts.

    Read Next