.NET Hardcore in Moskau

    Die DotNext- Konferenz 2015 in Moskau steht vor der Tür! Ich hatte das Glück, im Programmkomitee dieser wundervollen Veranstaltung zu sein, und bin jetzt mit den Aktivitäten hinter den Kulissen vertraut: Ich überwache die gesamte Organisation und helfe bei der Erstellung von Berichten. Die Organisatoren arbeiten wochenlang von morgens bis abends, sodass Sie die Gelegenheit haben, einen Tag lang in eine einzigartige Atmosphäre einzutauchen: coole Berichte zu hören, mit intelligenten Menschen zu chatten, nützliche Kontakte zu knüpfen, leckeres Essen zu sich zu nehmen, sich zu großartigen Erfolgen inspirieren zu lassen und einfach eine gute Zeit zu haben.

    Das Wichtigste auf der Konferenz ist jedoch nicht die Atmosphäre, sondern der Inhalt. Dieses Jahr ist das Programm sehr ereignisreich: 22 Redner (von denen 7 MVPs sind) werden Ihnen in 4 Threads den ganzen Tag über .NET berichten. Die Themen werden sehr unterschiedlich sein: Es gibt Berichte über die neueste .NET-Welt, über moderne Ansätze und Trends in der Softwareentwicklung, über den Einsatz guter Bibliotheken / Tools und vieles mehr. Aber mein Lieblingsthema ist das Innere von .NET, die Innereien der Laufzeit und andere Hardcore-Themen. Es scheint mir, dass jeder leitende Entwickler früher oder später zu der Erkenntnis gelangt, dass es für die Entwicklung wirklich komplexer Produkte nicht schaden wird, zu verstehen, was unter der Haube unserer Programme geschieht. Leider ist es oft lang und schwierig, alleine damit umzugehen: Es gibt zu viele Dinge zu lernen.

    Aufgrund offizieller Pflichten habe ich mir bereits fast alle Berichte angehört (jeder Redner wird einer Reihe anstrengender Auditions, Schulungen und Trainings unterzogen, um die Qualität des Materials und der Präsentation zu verbessern), sodass ich eine gute Vorstellung davon habe, was Sie in zwei Wochen erwartet. Heute möchte ich ein bisschen über Berichte mit dem Tag Hardcore sprechen. Wenn Sie sich mit der Laufzeit so beschäftigen möchten, wie ich es mag, dann empfehle ich Ihnen dringend, die folgenden sechs Berichte zu besuchen.





    Sasha Goldstein: Der Vektor in Ihrer CPU: SIMD für superskalare Leistung nutzen


    Ich bin sehr froh, dass wir dieses Jahr einen solchen Redner bekommen haben. Sasha ist der Autor eines sehr coolen Buches namens "Pro .NET Performance" , der Autor von coolen Kursen bei Pluralsight, ein Blogger (ein kurzer Blick auf seine Beiträge genügt, um zu erkennen, dass er etwas zu erzählen hat), MVP und einfach eine wunderbare Person. In diesem Jahr wird er uns gleich zwei Berichte vorlegen, von denen einer die Vektorisierung zum Thema hat. Das Thema in der .NET-Welt wird nicht so beworben, weil es bis vor kurzem keine normalen Möglichkeiten für genau diese Vektorisierung gab. Aber jetzt haben wir .NET 4.6 und RyuJIT, mit denen die Effizienz vieler Algorithmen dramatisch gesteigert werden kann. Dieses Wissen ist sehr nützlich, wenn Ihre Hände noch nicht den Punkt erreicht haben, mit dem Sie normal umgehen könnenSystem.Numerics.VectorsDann erfahren Sie in diesem Bericht ganz klar viel Neues und Nützliches.





    Karlen Simonyan: Atomare Operationen und Primitive in .NET


    In der Java-Welt diskutieren die Leute gerne das Java-Speichermodell. Zu diesem Thema gefallen mir die Reden von Aleksey Shipelev und die Berichte von Aleksei Fedorov sehr gut. Ich habe sehr lange darauf gewartet, dass in der .NET-Welt ein ähnliches Thema populär wird. Und schließlich habe ich gewartet! Karlen szKarlen Simonyan wird zu uns kommen und einen herrlichen Bericht zu diesem Thema lesen. Vor einer Woche schickte er mir seine Dias, seitdem öffne ich sie jeden Abend vor dem Schlafengehen, lese sie noch einmal und freue mich.

    Ich kann sagen, dass es viele Wörter gibt wie Race Condition, Acquiring / Release, Volatile, Store Buffer, Datenausrichtung, falsches Aufwecken, False Sharing, Lock-Free, Atomics.netund nicht nur. Während der Präsentation wird Carlen die Liste der wichtigen Begriffe mit gängigen Erklärungen ergänzen und anschauliche Beispiele für die Komplexität moderner Prozessoren liefern. Der Detaillierungsgrad des Materials und die Anzahl der faszinierenden Fakten sind nicht in den Diagrammen aufgeführt. Wenn Sie also mehr als einen Thread bearbeiten müssen, ist der Besuch des Berichts obligatorisch.





    Alexander Nikitin: .NET Generics unter der Haube und ein JITter-Bug zum Nachtisch


    Generische Klassen werden in fast jedem .NET-Projekt aktiv verwendet. Aber wie viele von Ihnen denken darüber nach, was sich hinter dem magischen Design verbirgt ? Wie viele von Ihnen schätzen die hervorragende Arbeit, die der JIT-Compiler täglich für uns leistet und die Tausende von Assembler-Anweisungen aus lesbaren und präzisen Syntaxkonstrukten generiert? Wenn nicht, empfehle ich, zu Alexanders Bericht zu gehen. Ich empfehle auch, seinen Blog zu lesen . Es wird sofort klar, dass diese Person viel über das Innere der allgemeinen Klassen erzählen kann.





    Mikhail Shcherbakov: WinDbg in den Händen eines .NET-Entwicklers


    Das Abhören und Lesen der Vorgänge in Ihren Programmen ist sicherlich nützlich. Umso nützlicher ist es jedoch, Ihren eigenen Code zu verwenden und mit dem Crawlen in sich selbst zu beginnen, Assembler-Listen, Methodentabellen und interne Strukturen des Garbage Collectors zu studieren. Dies ist eine komplizierte Angelegenheit, aber die im Debugger verbrachten Nächte bieten eine einzigartige Erfahrung, die auf andere Weise nicht erreicht werden kann. Wenn Sie dieser Lektion die nötige Aufmerksamkeit schenken, werden Sie später besser verstehen, was passiert, und Sie werden in der Lage sein, die Kernfehler der Laufzeit selbst in einer vernünftigen Zeit zu erfassen. Um .NET-Interna zu analysieren, benötigen Sie natürlich ein gutes und praktisches Tool. Leider wurde dies noch nicht erfunden, so dass Sie WinDbg verwenden müssen. Ich erinnere mich an das erste Mal, als ich dieses Programm traf. Ich öffnete WinDbg, schaute es an, WinDbg schaute mich an, danach ging jeder seinen eigenen Weg. Später musste ich zu diesem wunderbaren Werkzeug zurückkehren, aber in den ersten Tagen musste ich viel leiden. Schade, ich hatte keine Person, die mir alles erzählte und es mir zeigte.

    Aber du hast so eine Person! Mikhail Shcherbakov wird zu DotNext kommen und uns erzählen, wie man mit WinDbg umgeht und wie coole Dinge damit gemacht werden können. Misha hält regelmäßig Vorträge auf verschiedenen .NET-Konferenzen (spricht gerne über Anwendungssicherheit ), organisiert .NET-Meetings in St. Petersburg, ist Autor des IntelliDebugger- Projekts und ein cooler .NET-Entwickler. Wenn Sie während des Berichts nicht alle Feinheiten der Arbeit mit WinDbg erkennen, kann Mischa an den Rand gedrängt werden, um zu zeigen, was anhand von Beispielen gesagt wurde.





    Igor Yakovlev: Verwenden und DLR-Gerät


    Das DLR ist ein spezifisches Thema, mit dem sich nicht jeder befasst. Wenn Sie jedoch immer noch ein Schlüsselwort schreiben dynamic, kann es natürlich nicht schaden, zu wissen, was es bedeutet und woraus sich das Gewöhnliche entwickeln kann, a + bwenn Sie sich entscheiden, dem Pfad des dynamischen Tippens zu folgen. In diesem Fall müssen Sie unbedingt zu Igors Bericht gehen: Er wird über die innere Küche dieses Ansatzes sprechen und darüber, wie es sich im Leben als nützlich erweisen kann. Und wenn Sie im Laufe Ihrer Karriere noch nicht von der Idee angesprochen wurden, dass .NET dynamischen Code schreiben kann, sollten Sie trotzdem fortfahren: Das Thema ist interessant und informativ. Vor nicht allzu langer Zeit hat Igor in St. Petersburg über das DLR gesprochen , und er wird mit einer deutlich überarbeiteten und verbesserten Version seines Materials nach Moskau kommen.





    Andrey Akinshin: Wir sprechen weiterhin über Mikrooptimierungen von .NET-Anwendungen


    Ich werde auch einen Bericht erstellen und darüber sprechen, wie Sie Ihre Anwendungen superschnell gestalten können. Ich hatte die Gelegenheit, auf der letzten DotNext in St. Petersburg zu diesem Thema zu sprechen , und dieses Mal werde ich mein Lieblingsthema fortsetzen und eine ganze Stunde lang verschiedene lustige Geschichten über Produktivität vergiften.

    Alle Geschichten basieren auf realen Ereignissen: Dies sind Probleme, auf die ich persönlich, meine Kollegen und Programmierer aus dem Internet gestoßen bin. Ich spreche über alte Themen wie Benchmarks (hier gibt es ein neues Video darüber, warum Benchmarks kompliziert sind) und über neue Themen wie blittable Typen. Ich habe viele Geschichten, aber für den Bericht habe ich versucht, die einfachsten und aussagekräftigsten auszuwählen, damit ich in der vorgegebenen Zeit eine Vielzahl von Themen behandeln und Sie in die erstaunliche Welt der Mikrooptimierungen einführen kann.





    Fazit


    Zusammenfassend: Die Konferenz ist sehr cool und hardcore. Wenn Sie die Gelegenheit haben, empfehle ich Ihnen dringend, an der DotNext 2015 in Moskau teilzunehmen. Sie werden keine ähnlichen Konferenzen finden!



    Jetzt auch beliebt: