Konferenz

  • Keynote

    Beschreibung folgt ...
    Steve Carroll

  • Ihre API im Wandel der Zeit

    Wie sollte ein Web-Service eine API öffentlich zur Verfügung stellen und wie kann diese API im Laufe der Zeit überwacht, gepflegt und erweitert werden? Meistens stellt man sich diese Fragen erst, wenn der erste Meilenstein, die Veröffentlichung der ersten API Version, unter Stress geschafft ist. Dabei gibt es einige Problemstellungen, die man im Vorfeld zumindest einplanen sollten, um nicht später den wichtigen Zeitvorsprung vor der Konkurrenz durch Mehrarbeit zu verlieren.
    Dieser Vortrag entstand aus der Entwicklung von Microsoft‘s Cognitive Services - Speech Services API.
    Ralf Beckers

  • Real Time Communication mit ASP.NET Core SignalR

    Sind Sie ein Web Developer? Bestimmt wissen Sie, dass heutzutage viele Web Development Projekte die Anforderung haben, eine dauerhafte Verbindung zwischen Client und Server zur Verfügung stellen, ohne dabei ständig sich wiederholende Requests, vom Client an den Server, entgegennehmen zu müssen. Im Rahmen dieser Session soll gezielt gezeigt werden, wie mithilfe von ASP.NET Core SignalR, relativ einfach, eine persistente Verbindung zum Datenaustausch in Echtzeit, zwischen Client und Server hergestellt werden kann.
    Konstantin Kletzander

  • Modernisierung klassischer .NET Anwendungen

    Über die Lebenszeit einer .Net Applikation sammeln sich schnell einige technischen Schulden an, die aus Zeit- oder Budget-Gründen nie behoben werden. Dazu kommt, dass verwendete Technologien und Patterns gnadenlos veraltet sind. Irgendwann wird die Situation erreicht, dass praktisch niemand mehr eine solche Applikation erweitern oder ändern möchte. Wie geht man damit um? Neu entwickeln ist nur selten eine Option. Diese Session geht auf einige Möglichkeiten ein, solchen Situationen Herr zu werden.
    Roland König

  • Eigene Erweiterungen für Visual Studio entwickeln und anbieten

    Viele Firmen oder Projekte haben Richtlinien die von einfachen Regeln wie z.B. der Namensgebung bis hin zum Verbot spezieller Algorithmen wie z.B. MD5 als Hashfunktion reichen. Entstehender Code muss typischerweise manuell in Codereviews überprüft werden, was wiederum gerade unter Zeitdruck oder bei vielen Änderungen sehr fehlerträchtig ist.
    Mit der .Net Compiler Plattform und dem Visual Studio SDK lassen sich leicht Erweiterungen entwickeln, die neuen Code automatisch während der Entwicklung überprüfen, sowie den Programmierer dabei unterstützen die Tipparbeit zu verringern - und das maßgeschneidert für Ihre Umgebung
    Ralf Beckers

  • Building a DevOps Culture

    Our journey to adopt an DevOps culture.

    As SaaS provider we have learned a lot by adopting the DevOps lifecycle and operating Azure DevOps Services known as Visual Studio Team Services which is a 365x24 SaaS service being used by over 4 Mio users. To share our learnings we will give you insights on our journey to DevOps. We will explore how we transitioned from an Engineering dynamic which was focused on validation to a model which is focused on flow and continuous value delivery. See what practices are working for us - how we plan, how our Code flow works, how we deploy, how we operate.
    Christian Binder

  • Azure DevOps Build an extension to provide functionality which is missing in DevOps

    This session shows you how you can extend Azure DevOps (also Azure DevOps Server former Team Foundation Server). You see how to create an extension, what are the key points to manage and how to publish it to the Marketplace.
    Christian Waha

  • .NET Code Sharing

    Früher war alles einfach: In C# schrieb man .NET-Anwendungen, die unter Windows liefen. Heute gibt es eine Fülle möglicher Zielplattformen, auf denen .NET-Anwendungen lauffähig sind, von UWP oder Windows Store bis hin zu iOS, Android, macOS, Linux oder sogar Tizen. Um nicht jede Anwendung für jede Plattform neu zu entwickeln, gibt es verschiedene Code-Sharing-Strategien: Portable Class Libraries, Shared Projects, File Linking, .NET Standard, .NET Core… Welche Strategie ist die richtige für mich? Was lässt sich alles teilen? Und wie gestalte ich meine Architektur, um möglichst viel vom Code Sharing zu haben? In diesem Vortrag werden die verschiedenen Code-Sharing-Strategien mit ihren Vor- und Nachteilen auf verschiedenen Plattformen live gezeigt.
    Kerry Lothrop

  • Einstieg in Performanceoptimierung mit BenchmarkDotNet

    Im heutigen Alltag ist es für Softwareentwickler nicht nur wichtig, gut strukturierten, leicht wartbaren Code zu schreiben, sondern auch auf dessen Performance zu achten. In diesem Talk sehen wir uns die Grundlagen der Performanceoptimierung an: dabei schauen wir uns genauere Memory und CPU Cache an und sehen an praktischen Beispielen, wie die Performance der Library Light.GuardClauses optimiert wurde. Insbesondere gehen wir auch auf das Tool BenchmarkDotNet ein, mit dem man Performancemessungen automatisieren kann.
    Kenny Pflug

  • Wie funktioniert eigentlich der .NET Garbage Collector?

    Im .NET und .NET Core Bereich ist automatisches Memory Management ein Standardfeature der CLR. Doch wie arbeitet der Garbage Collector eigentlich intern und wie kann ich meinen Code so GC-freundlich gestalten, sodass ein Maximum an Performance erreicht wird? Basierend auf Konrad Korkosas neuestem Buch Pro .NET Memory Management werfen wir in diesem Talk einen genauer Blick auf Stack und Heap, die verschiedenen Phasen eines GC-Durchlaufs und verschiedene Einstellungsmöglichkeiten für den Garbage Collector.
    Kenny Pflug

  • Alles was .NET Entwickler über Machine Learning wissen müssen

    Ob Erkennung von Beschädigungen an Geräten, Einordnung von IT-Supporttickets in Kategorien oder Extraktion von Wissen aus einer Menge an Dokumenten: Machine Learning ist gerade das Zauberwort, um Lösungen für bis vor kurzem gar nicht oder nur sehr schwer lösbare Probleme zu konstruieren. Die Einstiegshürden in das Gebiet waren bisweilen jedoch nicht zu unterschätzen, braucht es neben einem gewissen Domänenwissen auch ein grundlegendes Verständnis, wie Machine Learning funktioniert, wie Daten dafür aufbereitet werden müssen und wie Modelle erfolgreich trainiert werden können. In dieser Session werfen wir einen Blick auf den kompletten Data Science Lifecycle, von der Identifizierung des Problems, über das Training des Modells bis zum Deployment einer Web-API. Viele dieser Schritte lassen sich in C#/.NET durchführen, speziell ML.NET bietet als Framework einen guten Orientierungsrahmen. Abgerundet wird der Vortrag mit einem Exkurs in die Welt von Python und TensorFlow um auch hochgradig spezifische Probleme abdecken zu können.
    Christian Vorhemus
  • Entwickeln im Zeitalter von Stackoverflow

    Das Handbuch ist schon lange out, das klassische Fachbuch mehr oder weniger auch. Für Schulungen ist keine Zeit da. Online-Lehrvideos sind oft zu allgemein, bieten zu viele Basics und sind zu wenig an der Praxis dran. Gleichzeitig wachsen die Anforderungen und werden vielfältiger. Oft müssen sich Entwickler in kurzer Zeit in völlig neue Themengebiete einarbeiten. Wo erhält der Entwickler heutzutage die Lösung für seine zahlreichen Programmierprobleme? Bei Stackoverflow.com, kurz SO. Das Portal ist seit über 10 Jahren ein enorm vielseitiger Hub für Know-how, bei dem es längst nicht mehr nur um IT-Probleme geht. Selbst Microsoft wickelt einen Teil seines Supports über SO ab. Genauso beeindruckender wie die Informationsdichte sind die Umgangsformen bei SO Fragen, die in jedem anderen Forum mit einem „LMGTFY" oder „RTFM" abgeschmettert würden, werden bei SO ausführlich beantwortet. Der Vortrag beleuchtet das Phänomen Stackoverflow und gibt ein paar Tipps für die Praxis und möchte dazu beitragen, die bei Entwicklern im deutschsprachigen Raum häufig anzutreffenden Hemmschwellen sich bei SO zu „outen" etwas zu senken.
    Peter Monadjemi
  • Visual Studio - Tipps and Tricks for .NET Developers

    Wollt ihr eure Effizienz in Visual Studio beim Editieren und Debuggen verbessern? In dieser reinen Demo-Session lernt ihr eine Reihe nützlicher Tipps, Tricks und Erweiterungen der Visual Studio 2017/2019 IDE kennen.
    Seid willkommen auf unserer Reise durch Visual Studio!
    Andreas Pollak
  • Threads lässt man nicht warten - The essentials of "async and await"

    Diese Session erklärt die Hintergründe zu "async and await" und zeigt warum es Sinn macht "async and await" konsequent in Anwendungen umzusetzen. Sie gewährt einen tieferen Blick "hinter die Kulissen" und bringt anhand praxisnaher Beispiele die elementare Funktionsweise näher. In der Session sind Grundkenntnisse zum Thema "async and await" von Vorteil aber nicht unbedingt nötig.
    Sebastian Achatz
  • .NET Core 3

    Moderne Anwendungen mit Actor Programming model (AkkaNet in Azure Containers)
    Beschreibung folgt.
    Damir Dobric
  • GraphQL – forget (the) REST?

    Spoiler Alert: In dieser Session geht es NICHT um Graph-Datenbanken, auch wenn es der Name vermuten lassen könnte. Es geht um die flexible Abfragesprache GraphQL die u. a. von Facebook, GitHub und Shopify als Alternative zu RESTful Web Services eingesetzt wird. Was ist GraphQL? Welche Vorteile ergeben sich durch dessen Verwendung? Wie kann man GraphQL server- bzw. client-seitig verwenden? Fragen über Fragen, die wir in dieser Session klären werden. Du verwendest RESTful Web Services zum Bereitstellen von Daten für deine Anwendung? Du denkst: „Ja klar, was denn sonst?". Dann sollten wir uns gemeinsam mal GraphQL näher ansehen. Du liebst REST? Sie hasst REST? Du befindest dich gefühlsmäßig irgendwo dazwischen? Wage den Blick über den Tellerrand! Und vielleicht verwendest auch du nach dieser Session GraphQL für deine nächste Anwendung.
    Christian Schwendtner
  • .NET Core 3.0 mit WinForms/WPF

    Beschreibung folgt.
    André Ruland
  • Die Zukunft der Windows Desktop Entwicklung

    Diese Session dreht sich um nichts weniger als: Hat .NET eine Zukunft auf Windows? Wie erstellen wir in kurzer Zeit Datenbank gebundene Anwendungen, die Geschäftsprozesse abbilden? Die Antwort wird Sie überraschen.
    Hannes Preishuber
  • High performance Coding mit .NET Core und C#

    .NET Core bietet eine Menge Vorteile, und wenn man diese Vorteile auflistet steht „Performance" meistens ganz vorne. Das ist kein Zufall, sondern das Ergebnis von sehr viel Entwicklungsarbeit. Microsoft und die Community wollte .NET Core für ein „High Performance Framework" machen – und dieses Ziel wurde erreicht! In diesem Vortrag werden wir hinter die Kulissen blicken um herauszufinden welche Technische Änderungen dazu geführt haben, dass .NET Core und ASP.NET Core deutlich schneller sind als das (klassische) .NET Framework und ASP.NET.
    Es werden 3 wichtige Werkzeuge detailliert behandelt: 1) ArrayPool, 2) Span, 3) das „ref" Keyword in C# und dessen Implementierung in der CLR.
    Zusätzlich werden wir konkrete Beispiele vergleichen und mit BenchmarkDotNet den Performance-Benefit dieser Tools messen.
    Gergely Kalapos
  • Entity Framework Core

    Wer Entity Framework nutzt, wird die Vorzüge genießen und die Magie fürchten.
    Weitere Details folgen...
    Raphael Schwarz
  • Memory Leaks, Thread Starvation - Debugging .NET Anwendungen

    Trotz modernster Tools und Programmiersprachen kommen wir auch heute noch früher oder später in die Situation wo wir eine Applikation analysieren und debuggen müssen. Oftmals sind Probleme erst später in Produktion sichtbar. Die Anwendung friert ein oder stürzt aufgrund von Memory Problemen ab. In der Session erfahren Sie, wie wir Probleme – auch in Produktion – analysieren und lösen können. Mithilfe von eines Process-Dumps, Visual Studio, WinDbg gehen wir diversenen Memory und Threading Probleme auf den Grund und werfen einen Blick auf potentiell problematischen C# Code.
    Bernhard Grojer
  • Nie wieder Missverständnisse - Language processing mit LUIS

    Schon die Kommunikation zwischen Menschen ist nicht immer einfach und führt nicht selten zu Missverständnissen. Wie soll dann erst eine Software verstehen, was wir von ihr wollen?! Mit dem Language Understanding Intelligent Service bietet Azure einen Dienst, der den Inhalt einer Aussage erkennen kann. Im Laufe der Session werden wir zunächst ein einfaches Modell anlegen und nutzen, um im Folgenden zu demonstrieren, welche Möglichkeiten LUIS uns beim Überwachen und Verbessern des Modells liefert.
    Jan Schweda
  • Chat Bot mit Azure Bot Services erstellen

    Was ist das Bot-Framework? Und was ist ein Bot? Das Bot-Framework gehört zum Azure Cloud-Angebot von Microsoft, mit einer Vielzahl von Lösungen. Das Bot-Framework gehört zu den Intelligence-Angeboten, zusammen mit den kognitiven Diensten von Microsoft und Cortana. Mit den Azure Bot Services erstellen Sie sehr einfach Programme, die menschliches Verhalten nachahmen können. In dieser Session erleben Sie die Geburt eines neuen Chat Bots und erfahren wie auch Sie in einfachen Schritten einem Chat Bot das Leben schenken können.
    Iwe Kardum
  • Hybride Infrastruktur - Site-To-Site zwischen Azure und On Premise

    Wie kann unser Unternehmen den Sprung in die Cloud schaffen, ohne bestehende Investitionen zu gefährden oder die On Premise IT Infrastruktur einer kompletten Restrukturierung zu unterziehen. Zum Einen unterstützt Microsoft durch das Azure Hybrid Benefit Programm die bestehenden, gekauften Server Lizenzen mit einem Preisvorteil von bis zu 40% zu nutzen. Zum anderen bietet Azure einige technische, sichere Möglichkeiten um das On Premise Netzwerk mit der Cloud zu verbinden. In diesem Vortrag wird auch die schrittweise Erstellung eines VPN Gateways gezeigt, das für kleine und mittelständische Unternehmen wirtschaftlich und effektiv den Weg zu einer schlankeren und kostengünstigeren IT in der Cloud ebnet.
    Iwe Kardum
  • Auf den Mund geschaut - Customized Speech to Text

    Sprache wird für die Interaktion mit Software immer wichtiger. Nicht nur im Auto oder unterwegs, sondern auch Zuhause in den eigenen vier Wänden. Jedoch sind aktuelle Sprachassistenten nur nutzbar, solange man eine der Norm entsprechenden Sprache spricht. Menschen nach einem Schlaganfall oder Menschen mit einem Sprachfehler (z.B. Stottern) werden ausgeschlossen. Aber gerade Menschen mit Einschränkungen würden von den günstigen und weit verbreiteten Diensten wie Google Assistant oder Amazon Alexa stark profitieren. Mit Custom Speech aus den Azure Cognitive Services können Sprachmodelle für spezielle Zielgruppen erstellt und in der eigenen Software genutzt werden.
    Jan Schweda
  • Xamarin – Best Practices und Performance

    Beschreibung folgt ...
    Sebastian Seidel


Workshops

  • Web App mit ASP.NET Core MVC

    ASP.NET Core ist Microsofts neues Cross-Plattform-Framework für Web-Applikationen und -Services.
    In diesem Workshop lernen Sie, wie sie eine vollständige ASP.NET Core Applikation aufsetzen, MVC und Web API nutzen und die neuen Razor Features einsetzen.
    Themen:
    • Configuration, Logging, Services & Dependency Injection
    • ASP.NET Middlewares
    • Auhorization & Autorization
    • Localization & Globalization
    • Controllers & View Models
    • Actions, Filters and Formatters
    • Razor Views mit Tag Helpers & View Components
    • Deploying

    Voraussetzungen:
    • Kenntnisse in C# und Web-Basiswissen (HTTP, HTML, CSS, JavaScript)
    • Computer Setup
    • Für Mac: Visual Studio Code, JetBrains Raider oder Visual Studio for Mac & .NET Core 2.0
    • Für Linux: Visual Studio Code oder JetBrains Raider & .NET Core 2.0
    • Für Windows: Visual Studio Code, JetBrains Raider oder Visual Studio 2017 15.3 & .NET Core 2.0
    Jürgen Gutsch

    Jetzt anmelden!

  • Web API Design - REST, OData und GraphQL

    Dass eine moderne Softwarearchitektur Web APIs beinhaltet, steht außer Frage.
    Auf HTTP und JSON einigt man sich schnell, dann wird es aber schwierig.
    Wie gestaltet man die API im Detail?
    Wie soll man umgehen mit Filtern, Blättern, Sortieren, Gruppieren, Aggregieren etc.? Wie veröffentlicht man API-Metadaten?
    In diesem Workshop widmen sich Rainer Stropek und Christian Schwendtner diesem Thema. Es spielt in nahezu allen Entwicklungsprojekten eine Rolle, da schließlich die Web APIs das Userinterface für die Microservices sind.
    Rainer und Christian zeigen, welche Antworten das REST-Architekturmuster im Vergleich zu OData und GraphQL haben.
    Sie stellen am Beginn des Workshops die drei Ansätze gegenüber und diskutieren mit den Teilnehmerinnen und Teilnehmern Vor- und Nachteile sowie Tipps aus der Praxis.
    Anschließend werden gemeinsam Beispiele auf Basis ASP.NET Core entwickelt.
    Voraussetzungen:
    • Basiskenntnisse über Web-Entwicklung sowie C# und .NET Core
    Christian Schwendtner

    Jetzt anmelden!

  • C++11/14/17 in Visual Studio 2019

    Das neue Visual Studio 2019 soll im ersten Halbjahr 2019 erscheinen. Aktuell zu diesem neuen Release werden in diesem Workshop die C++-Neuerungen seit C++11 sowie die Neuerungen in der Entwicklungsumgebung von Visual Studio 2019 vorgestellt. Weitere Informationen folgen in Kürze ...
    Richard Kaiser

    Jetzt anmelden!

  • .NET Architektur


    Der Workshop bietet einen Überblick über verschiedene Architekturimplementierungen und deren Testbarkeit.
    Themen:
    • Service Layer
    • Security
    • MVC und MVVM
    • Object Mapping
    • Best Practices
    • Modernisierung
    • Einbindung Azure
    Zielgruppe: langjährige .NET Entwickler
    André Ruland

    Jetzt anmelden!

  • ASP.NET Core für den Webforms Entwickler

    In diesem Workshop lernen Sie die Lösungen von üblichen Anforderungen eines Web Entwicklers mit ASP.NET core und der Razor View Engine kennen. Dabei legt der Referent als ausgewiesener ASP.NET Webforms Experte vor allem Wert auf die Analogien. Verzichtet wird dagegen auf alles was theoretisch möglich ist, aber vor allem zum Einstieg unnötige Komplexität erzeugt. So einfach wie möglich, so nah an Ihrer bisherigen Erfahrungen wie möglich, so viel wie nötig aus der neuen dotnet core Welt. Am Ende können Sie mit Visual Studio eine gängige LOB Anwendung mit ähnlicher Produktivität wie zu Webforms Zeiten erstellen.
    Hannes Preishuber

    Jetzt anmelden!

  • Modern Applications with PaaS and Serverless

    Themen:
    • Evolution of Compute Platform
    • Docker Containers Overview
    • .NET Core in containers
    • Azure Container Registry
    • Azure Container instances
    • AppService Container
    • Overview Orchestrators Overview (Overview Kubernetes, Service Fabric)
    • Service Bus (Hybrid computation, Point to Point, Pub Sub, Competing Consumer scenarios)
    • EventGrid
    • Azure Functions
    • Logic Apps
    Damir Dobric

    Jetzt anmelden!

  • Die IODA Architecture - Software verständlicher und testbarer strukturieren

    Softwarearchitekturen werden an bekannten und beliebten Mustern angelegt. Diese Muster wandeln sich, um Softwarearchitektur noch leichter zu machen. Früher war MVC, dann war Schichtenmodell, heute ist Clean Architektur. Programmiersprachen entwickeln sich und werden besser, Frameworks ebenso, Architekturmuster auch. Sollte man denken. Leider sind die Architekturmuster jedoch steckengeblieben. Sie haben zwei Schritte vorangemacht und das Entwicklerleben vereinfacht. Nun allerdings treten sie auf der Stelle oder erzeugen sogar mehr Komplexität, wo sie reduziert werden sollte. Der Workshop arbeitet funktionale Abhängigkeiten als Kernproblem hinter den klassischen Architekturmustern heraus und stellt den Teilnehmern eine grundlegende Lösung vor - die dann von allen anhand einer Anwendung selbst implementiert wird.
    Ralf Westphal

    Jetzt anmelden!

  • Parallel mit Microsoft Visual Studio

    In diesem Workshop lernen sie die Paralleltechnologien kennen, die Microsoft in seiner Entwicklungsumgebung Visual Studio bereit stellt. Im ersten Teil des Workshops beschäftigen wir uns mit den normalen C++11-Threads. Danach werden die beiden Bibliotheken OpenMP (Open Multi Processing) und PPL (Parallel Patterns Library) vorgestellt. Im letzten Teil geht es dann um die Programmierung von GPU's mit AMP (Accelerated Massive Parallelism). Alle Bibliotheken sind in Visual Studio 2012 (oder neuer) enthalten. Man hat also die Qual der Wahl. Der Workshop soll zeigen, welche Komponente wo eingesetzt werden kann und welche Performance-Gewinnen zu erwarten sind. Jeder Workshop-Teil wird mit einem Übungsbeispiel abgeschlossen, welches die Teilnehmer mit implementieren können. Wenn jemand die Demos mitmachen möchte, ist die Installation von Visual Studio 2012 oder neuer erfoderlich.
    Vorkenntnisse: Grundlagen in C/C++
    Bernd Marquardt

    Jetzt anmelden!