Vorträge

RSS
Geändert am Mo, 18 Mrz 2019 22:15 von Manuel Rohé Kategorisiert als Nicht kategorisiert

Hexagonale Zwiebeln - Application Architecture Essentials for .NET

Sebastian Achatz

Diese Session erklärt Architekturgrundlagen und Muster moderner Applikationsentwicklung wie z.B. "Hexagonale Architektur" und "Onion Architecture" anhand von praktischen .NET Code Beispielen und vermittelt zusammengefasst die wichtigsten Details und Fakten.

(Level 200, 60 min)

Serverless Workflows mit Durable Functions in Microsoft Azure

Sebastian Achatz

Diese Session bietet einen guten Überblick darüber, wie Sie Workflows "serverless" in Microsoft Azure mit Durable Functions umsetzen können. Bringen Sie "code-based" Workflows in die Cloud und profitieren Sie von "on-demand" Skalierung bei voller Kostenkontrolle. Anhand von Beispielen aus dem echten Leben wird ganz praktisch gezeigt wie das geht und worauf Sie achten sollten.

(Level 300, 60 min)

Heiter bis wolkig - Anforderungen an das Lizenzmanagement in der Cloud

Stefan Bamberg

Viele Anwendungen wandern heute in die vielbeschworene Cloud. Es ist schon nicht trivial, eine bisher als reine Clientanwendung auf den Markt gebrachte Applikation an die Anforderungen der Cloud anzupassen. Aber wie verhält es sich mit dem Lizenzmanagement, das man seinen Kunden bisher beispielsweise über einen Hardware-Dongle oder eine Softwareaktivierung angeboten hat? Kann man zumindest Teile davon übernehmen? Braucht man eine neue Lösung? Welchen neuen Herausforderungen muss man sich stellen? Oder braucht man doch noch einen Softwareschutz? Welche Lösungen gibt es heute schon?

Der Vortrag gibt einen tieferen Einblick in die Anforderungen von Softwareschutz und Lizenzmanagement in der Cloud und zeigt anhand von Demos den heutigen Stand der Technik.

(Level 100, 60 min)

Verteilte Anwendungen bei Azure mit Docker und Kubernetes

Gregor Biswanger

Kubernetes ermöglicht eine Automatisierung der Bereitstellung, Skalierung und Verwaltung von verteilten Docker-Container. Der Einstieg, die Umsetzung und Wartung hingegen ist eine extreme Herausforderung und kostet am Ende nicht nur viel Geld, sondern auch Ihre Nerven. Microsoft Azure bietet mit den Azure Kubernetes Services (Kurz AKS) die Erlösung, der soeben genannten Schmerzen. In dieser Session zeigt Ihnen der Docker- und Azure-Experte Gregor Biswanger einen Überblick von Kubernetes und wie einfach Azure für uns eine Kuberenetes-Landschaft herbeizaubern kann.

(Level 300, 60 min)

Fallstricke in Entity Framework für Architekten und Entwickler

Tim Borowski

Das Entity Framework (EF) ist ein gut bekannter, häufig anzutreffender Objekt-Relationaler Mapper, welcher uns .NET-Entwicklern das Arbeiten mit Datenbanken vereinfacht. Es bietet uns neben einigen wertgeschätzten Vorteilen auch unerwünschte Fallstricke. Das Verstecken der Komplexität einer Datenbank durch ein Framework wie EF stellt Softwarearchitekten vor Herausforderungen, weil großes Know-How sowohl in .NET als auch Datenbanken gefordert ist. Es fängt bereits bei der Entscheidung für Code- oder Database-First an, was zudem noch infrastrukturellen Faktoren abhängig ist. Weiterführende Fragestellungen wie die Wahl des richtigen Transaktions-Isolationslevels, ob Proxies oder Pocos genutzt werden sollen, ob Lazy-Loading verwendet werden darf und wie man mit Migrationen umgehen soll, kommen zusätzlich hinzu. Neben den Designentscheidungen gibt es auch für Entwickler Fragestellungen: muss ein DbContext immer disposed werden, darf ein nicht-materialisiertes Linq-Statement weitergeben werden, dürfen Events in einer Transaktion für die UI gefeuert werden, oder wie kann man Datenbankaufrufe effektiv debuggen?
In dieser Session möchte ich für Softwarearchitekten und Entwickler auf einige Fallstricke hinweisen, um teure Fehlentscheidungen zu vermeiden und fundierte Designentscheidungen zu treffen. Anhand einfacher Setups werden praxisrelevante Problemstellungen und Programmierfehler diskutiert und Alternativen aufgezeigt.

(Level 200, 60 min)

Zeitreihenanalysen mit dem Azure Data Explorer

Sascha Dittmann

Zeitreihen sind eine Herausforderung für viele Analysesysteme. Deshalb wurde der Azure Data Explorer (aka Kusto DB) entwickelt. Dieser Cloud-Dienst wurde für Ad-hoc Abfragen auf großen Protoll-Datenmengen optimiert.
Sascha Dittmann stellt in dieser Session die Grundlagen des neuen Azure-Dienstes vor und zeigt dabei Beispiele, die aus seinen aktuellen Projekten entnommen wurden.

(Level 100, 60 min)

Simple game in React Native

Anastasia Dvorkina

React Native allows you to build native mobile applications using only JavaScript and React. Let's discover this framework together and build a simple game. The lecture will cover the history and the basics of React Native. We will dive into the app architecture and core concepts of the framework. After the lecture you will know the step-by-step process of implementing a React Native app on your own. Some knowledge of JavaScript and React are welcomed but not required.

(Level 200, 60 min)

Alles systemisch oder?

Özgür Ergel

Agile Denk- und Arbeitsweisen halten in vielen Teams und Organisationen in ganz verschiedenen Fachbereichen Einzug. Der übergeordnete Wunsch von uns Allen: besseres und effektiveres Zusammenarbeiten um Probleme zu lösen und uns an Veränderungen anpassen zu können. Meiner Meinung nach steht auch die systemische Sicht- und Denkweise für diese Ziele. Ich möchte mit diesem Session zeigen, dass diese beiden Themen Hand in Hand gehen. Wir werden in diesem Session gemeinsam versuchen Antworten auf diese zwei Fragen zu finden:

  • Was haben die systemische Sicht- und Denkweise mit agilem Arbeiten und agiler Organisationskultur gemeinsam?
  • Und wie kann man systemische Grundannahmen nutzen um die Agile Arbeit zu fördern bzw. das Potenzial der agile Denk- und Arbeitsweisen voll auszuschöpfen?

(Level 300, 60 min)

"Watt haste jesaacht?"

Jan Fellien

Sprachassistenten in der realen Welt sind bei Weitem nicht so intuitiv, wie uns die Werbung glauben lassen möchte. Die Hürden sind nicht offensichtlicher Natur, sie stecken im Detail. Bei der Entwicklung dieser Assistenten ging die Industrie implizit davon aus, dass jeder Mensch auf der Welt klar und deutlich sprechen kann, was natürlich nicht der Wahrheit entspricht. Und so geschieht es, dass Alexa und Co mehr raten als verstehen, was gesagt wurde.
Zum Glück gibt es jetzt bezahlbares Machine Learning, mit deren Hilfe man die Barriere zwischen unklarer und erwarteter Aussprache dramatisch abbauen kann. Diese Session zeigt anhand einer ganz praktischen Implementierung, dass es möglich ist Menschen mit Sprachbeeinträchtigungen teilhaben zu lassen an den digitalen Sprachassistenten. Und ja, Alexa versteht dann auch Sächsisch.

(Level 200, 60 min)

DSGVO und CLOUD-ACT? Kein Problem!

Sia Ghassemi

DSGVO einfach gemacht

Die DSGVO hat viele Softwareentwickler und auch ganze Konzerne und Unternehmen vor ein paar schwierige Herausforderungen gestellt. Folgende 3 Punkte stellen viele immer wieder vor eine Schwierige Aufgabe:

  • Art. 17 - Recht auf Löschung
  • Art. 12 - Transparente Information, Kommunikation und Modalitäten für die Ausübung der Rechte der betroffenen Person
  • Art. 20 – Recht auf Datenübertragbarkeit

Diese Stellt Software vor schwierigen aufgaben. Oft werden die Daten vermischt – Personenbezogene Daten und die für die Sicherstellung des Betriebs relevanten Daten (für Berichte, Verarbeitung, etc.) sind zusammenhängend. Löschen ist nicht einfach. Transparenz von Informationen (Wann wurden weswegen welche Daten erfasst) erfordert ein vollständiges Auditing. Datenübertragbarkeit – Unsere struktur passt doch niemals zu der einer anderen Software. / Wie sollen wir die Daten einer anderen Software importieren?

Es ist nicht einfach mit der DSGVO!

Es gibt aber einen Silberstreif am Horizont, denn alles was wir brauchen um DSGVO-Konforme Software zu erstellen ist bereits bekannt.

Ich werde Zeigen, wie jedes Unternehmen und jeder Entwickler, sehr schnell umstellen kann um eine komplett DSGVO-Konforme Architektur aufzubauen und wie man Altdaten einfach migrieren kann und unter diese auch DSGVO-Konform macht.

(Level 200, 60 min)

C# 8.0 – Was gibt es neues?

Christian Giesswein

2017 und 2018 gab es einige Sprachupdates, 7-1, 7.2 oder 7.3 kamen zeitversetzt heraus, doch waren die „großen“ Neuerungen ausgeblieben. Viele Kleinere Sprachfeatures die ein tiefes, technisches Verständnis der CLR voraussetzen sind hineingewandert. Doch mit 8.0 ist nun Schluss damit, und es kommen einige brandneue Features in die Sprache die man alltäglich verwenden und auch benötigt. Zeit hier einen Blick darauf zu werfen.

(Level 200, 60 min)

WPF lebt – mit .NET Core 3.0!

Christian Giesswein

Es wurde sehr still um WPF, dennoch sind heute nach wie vor viele Desktopanwendungen mit dieser Technologie umgesetzt. Mit .NET Core 3.0 kommt nun ein neuer, frischer Wind in die Sache und es stellt sich nun natürlich für jeden Entwickler die Frage – was bringt´s? Das Framework bleibt das selbe, jedoch können nun die Vorteile aus der .NET Core Welt in die „klassische“ Anwendungsentwicklung miteinfließen – .NET Core CLI, Side-By-Side Installation, Self-Contained Package, .NET Core Native. Es gilt in dieser Session einen Blick darauf zu werfen, was sich dadurch nun ändert, welche neuen Möglichkeiten es gibt und vor allem – wo liegen die Stolpersteine in der Migration?

(Level 200, 60 min)

Was ist neu in ASP.NET Core 3.0?

Jürgen Gutsch

ASP.NET 2.0 ist seit Sommer 2017 verfügbar, aber was ist mit der neuen Versionen? Kann man diese nun ohne Bedenken und Einschränkungen in echten Projekten verwenden? In diesem Vortrag werde ich auch zeigen was für coole Neuerungen in ASP.NET 3.0 neu hinzugekommen sind.

(Level 200, 60 min)

Der flotte Dreier: Azure, Azure Pipelines und CAKE

Jürgen Gutsch

CAKE ist mein absolutes Lieblingswerkzeug um Builds zu automatisieren. Es läuft annähernd überall und lässt sich mit fast jedem Build-Server und es kann fast alles Bauen. In diesem Vortrag werden wir gemeinsam eine ASP.NET Core Applikation mit CAKE und Azure Pipelines nach Azure publizieren. Ihr werdet sehen, wie schön diese Tools zusammenarbeiten um Builds einfacher, schneller und vor allem auch komfortabler für Entwickler zu machen.

(Level 200, 60 min)

Continuous Everything - Ein Einstieg ins Microsoft Visual Studio App Center

Tobias Hoppenthaler

Spätestens seit der Akquise von Xamarin und HockeyApp gab es bei Microsoft einen nicht zu unterschätzenden Fuhrpark an Tools zur Unterstützung von App Entwicklern. Diese Tools waren allerdings etwas verstreut und man brauchte für eine komplette CI/CD Strecke mehrere Portale. Das App Center ist nun geschaffen worden, um eine möglichst einfache und durchgängige Lösung bereitzustellen.
Nach einer kurzen Einführung in die Thematik wird ein Live-Rundflug durch die Funktionalität gestartet: eine App gebaut, getestet, mit Telemetrie versehen uvm.

(Level 100, 60 min)

Visual Studio als Entwicklungstool für SQL Server basierte Datenbanken

Thorsten Kansy

Visual Studio bietet für SQL Server basierte Entwicklung mehr als mach ein Entwickler auf den ersten Blick erkennt: neben Git/SVN fähigen Datenbank Projekten, können leicht Änderungen zwischen Datenbank aufgespürt und geskriptet werden, es können Unit Tests für Stored Procedures und Funktionen genutzt werden um die Fehlerquote niedrig zu haben und auch ein anspruchsvolles Refactoring ist mit an Bord. Thorsten Kansy stelle alles wichtige aus Sicht der Praxis vor und erspart damit vielleicht die Ansaschagun eines kostenspielige Zusatztools.

(Level 200, 60 min)

SQL Server - Catch up für Entwickler

Constantin "Kostja" Klein

SQL Server 2016, SQL Server 2017, SQL Server 2019 – haben Sie was verpasst? Als Entwickler lebt man wirklich in harten Zeiten: Ständig neue Frameworks, Plattformen und Technologien. Neue Programmiersprachen, Paradigmen und Architekturen. Und dann gibt es da ja auch noch die Datenbank. Aber keine Sorge: In dieser Session bringen Sie sich wieder „up to date“ und bekommen einen kompakten Überblick über die spannendsten Neuerungen für Entwickler seit SQL Server 2016.

(Level 300, 60 min)

PWA-Update: Neue Webschnittstellen für noch bessere Progressive Web Apps

Christian Liebel

Progressive Web Apps funktionieren offline, können Pushbenachrichtigungen darstellen und laufen auf jeder Plattform von Android über Firefox bis Windows. Außerdem können Entwickler auf alle Funktionen zugreifen, für die es eine Webschnittstelle gibt. In der Vergangenheit waren dies etwa Gamepads oder der Standort des Anwenders.
Mit neuen Webschnittstellen will das World Wide Web Consortium (W3C) die Lücke zwischen nativen Apps und PWA weiter schließen: Mithilfe der Writable Files API sollen PWA auf einen Teilbereich des nativen Dateisystems zugreifen können, die Badging API erlaubt das Setzen von Notification-Badges und die Shape Detection API erlaubt das Erkennen von Barcodes, Gesichtern oder Text in Bildern. Christian Liebel zeigt Ihnen brandheiße Web-APIs, die Progressive Web Apps noch mächtiger machen.

(Level 100, 60 min)

Einführung in GraphQL mit .NET Core

Mark Lechtermann

REST in Peace!? Oder doch nicht? Mit GraphQL haben wir eine leistungsfähige alternative zu RESTful-APIs. Facebook nutzt GraphQL für die Kommunikation mit ihrer mobilen App. Auch github, Pinteres oder twitter nutzen GraphQL. Aber was ist dieses GraphQL eingentlich? Over-Fetching und Under-fetching können bei komplexen APIs problematisch sein. GraphQL verspricht uns dieses Problem zu lösen. Somit kann dies in der Praxis einen erheblichen Performancegewinn bedeuten. Roundtrips zwischen Client und Server werden reduziert und der Client bekommt nur das was er wirklich an Daten benötigt. Aber hatten wir das nicht schon mal mit OData gelöst? Wir diskutieren die Vor- und Nachteile. Anhand einer kleinen Beispielapplikation lernen wir GraphQL für .NET Core kennen.

(Level 200, 60 min)

Den Team Foundation Server gibt's nicht mehr – willkommen: Azure DevOps!

Neno Loje

Fast wäre er 13 Jahre alt geworden, der Team Foundation Server (TFS) – doch Microsoft hat scheinbar andere Pläne. Ab der Version 2019 soll er nun "Azure DevOps Server 2019" heißen. Trotz des Namens läuft dieser auch weiterhin tadellos "on-premises" und benötigt keine Cloud-Anbindung. Es sei denn man möchte. Dann könnte man seinen TFS samt aller Daten einpacken und in die Cloud-Variante umziehen: die "Azure DevOps Services" – und Microsoft übernimmt den Betrieb, sodass man sich um (fast) nichts mehr kümmern muss, außer dem eigentlichen programmieren.

In diesem Vortrag wollen wir das "wieso, weshalb und warum" klären. Wir schauen uns an, was der "TFS 2019" (dann unter neuem Namen) so drauf hat, wie es mit seiner Zukunft bestellt ist, ob man besser auf Git wechselt (vs. TFVC), und für wen es sich lohnt die Cloud-Variante (Azure DevOps Services) zu verwenden.

(Level 200, 60 min)

IaC Automatisierung mit Azure DevOps

Gregor Reimling

Um Cloud Infrastrukturen effektiv bereitzustellen und diese über Tenant- und Subscription Grenzen hinweg einheitlich zu verwalten, sind ARM Templates das erste Mittel der Wahl. Mit ARM Templates lassen sich Azure Infrastrukturen schnell und einfach erstellen und den Infrastructure-as-Code Gedanken realisieren. Um diese Templates wiederrum, einheitlich, nachvollziehbar und zentral zu verwalten ist Azure DevOps das zentrale Element. Diese Session gibt einen Überblick über die Möglichkeiten mit Azure DevOps und wird anhand von Beispielen zeigen, wie sich Azure DevOps eignet um zentrale Infrastrukturen in Azure bereitzustellen und zentral zu verwalten.

(Level 200, 60 min)

3, 2, 1 und Actor! Paralleverarbeitung mit Akka.NET

Tobias Richling

Code für die Parallelverarbeitung - aka Multi Threading - zu schreiben ist schwer. Dabei ist es fast egal ob man direkt mit Threads herumhantiert, oder sich einer höheren Abstraktion wie etwa der Task Parallel Library bedient. Die Probleme fangen immer da an, wo Daten gemeinsam von verschiedenen Threads genutzt werden. Dabei ist die Lösung doch eigentlich ganz einfach: keine Daten zwischen den Threads teilen!
Geht nicht? Geht doch, und wir zeigen wie. Hier kommt Akka.NET ins Spiel. Dabei handelt es sich um eine Implementierung des Actor-Model für .NET (Core). Die Grundidee ist simpel: eine Software besteht aus Aktoren, die einen privaten Zustand haben - Zugriff von außen: Access denied! Aktoren kommunizieren über Nachrichten miteinander die zunächst mal in einer Queue landen und dann sequenziell vom Aktor bearbeitet werden. Und einen Persistenz a la Event Souring gibt es gratis obendrauf!
In der Session werden anhand eines Beispielprojekts die Grundlagen und Vorteile von Akka.NET heruasgestellt, inklusive des Persistenzmechanismus der auf dem Prinzip des Event Souring basiert. Bei all der Lobhudelei werden aber auch die Implikationen auf die Anwendungsarchitektur erläutert, so das am Ende ein realistisches Bild über die Vor- und Nachteile von Akka.NET entstehen soll.

(Level 300, 60 min)

OSS Lizenzen Freund oder Feind?

Stefan Schukat

In der Zeit in der die großen Software Anbieter Open Source für sich entdeckt haben und immer mehr Bibliotheken in der Web als auch der Desktop Welt als Open Source angeboten werden stellt sich die Frage für kommerzielle Anbieter wie man diese Software korrekt nutzen kann. Damit wird neben der reinen Technik immer mehr auch die unterschiedlichen Lizenzen zu einem Entscheidungskriterium. Um in dem Spannungsfeld zwischen Jura und Informatik sich korrekt zu bewegen und als Architekt die passende Entscheidungen zu treffen, benötigt man Wissen von der Denkweise von Juristen und die Interpretation auf technische Gegebenheiten. Dazu wird ein Überblick über verschiedene Lizenzfamilien mit deren häufigsten Vertretern gegeben, sowie die Auflagen die man beachten muss, falls man eine Software mit einer bestimmten Lizenz einsetzt. An praktischen Beispielen wird dargestellt, wie schwierig es sein kann korrekt Lizenzenpflichten zu erfüllen, als auch zu Lizenzen finden.

(Level 200, 60 min)

Licht im ASP.NET Core-Dschungel: Was bringen Blazor und Razor Components im Vergleich zu MVC, WebAPI und Razor Pages?

Holger Schwichtenberg

Microsoft erweitert ASP.NET Core um immer neue Anwendungsmodelle: Erst gab es MVC und WebAPI, dann seit Version 2.0 auch Razor Pages mit "Page Model" als Code-Behind-Klasse. ASP.NET Core 2.1 brachte Razor Class Libraries. Nun in ASP.NET Core 3.0 kommen Razor Components und es gibt noch einen Preview auf die Zukunft nach Version 3.0: ASP.NET Blazor, bei dem der C#-Code nicht mehr auf dem Server, sondern im Browser auf Basis von Webassembly läuft. Bei so vielen Optionen fragt der Webentwickler sich: Was sind die Unterschiede? Wozu braucht man was? Macht Server-Side-Rendering überhaupt noch Sinn im Zeitalter von Angular, React & Co? Auf diese Fragen gibt ASP.NET-Experte Dr. Holger Schwichtenberg die Antworten in diesem Vortrag.

(Level 300, 60 min)

Xamarin Performance & Best Practices

Sebastian Seidel

Das Erstellen von Cross-Plattform-Apps ist mit Xamarin einfacher als je zu vor. Aber kennen Sie die Einschränkungen und Stolperfallen, wenn es um das Schreiben von performantem Code und schnelle Benutzeroberflächen für diverse Plattformen geht? Kennen Sie die Tools zur Analyse von Flaschenhälsen in der Laufzeit? In diesem Vortrag lasse ich Sie von meiner Erfahrung aus über 6 Jahren Xamarin-Entwicklung mit Xamarin.Android, Xamarin.iOS und Xamarin.Forms profitieren.
Dabei wird auf folgenden Themen besonders eingegangen:
  1. Projektarchitektur und Struktur
  2. User-Interfaces
  3. Dos and Don'ts im Code
  4. Profiler und native Tools zur Analyse von Laufzeitverhalten, Speichernutzung und App-Größe.

(Level 300, 60 min)

Chatbots bauen mit dem Microsoft Bot Framework

Jens Siebert

"Chatbots sind die neuen Apps!" - So liest man es dieser Tage in diversen Artikeln und Blogs. Doch was steckt eigentlich hinter dem Hype um die Chatbots? Was sind die Vorteile gegenüber herkömmlichen mobilen Apps? Und wie entwickelt man Chatbots überhaupt? Auf diese Fragen soll in diesem Vortrag eingegangen werden. Die Entwicklung eines Chatbots mit Hilfe des Microsoft Bot Frameworks wird anhand eines Beispiels demonstriert.

(Level 200, 60 min)

Container-as-a-Service in der Azure-Cloud

Rainer Stropek

Microsoft hat sich in Container verliebt. Docker-Unterstützung gibt es mittlerweile für alle wichtigen Entwicklungs- und Cloud-Plattformen von Microsoft. In dieser Demo-only Session zeigt Rainer ein durchgängiges Beispiel für Container-basierende Entwicklung in der Azure-Cloud, die ganz ohne VMs und IaaS auskommt. Eigene Container Registry, Automatisierung der Image Builds, Container in Azure PaaS-Diensten und Containerbetrieb im PaaS-Kubernetes Cluster - alle diese Dinge sieht man in Rainers Demo-Szenario. (Level 300, 60 min)

Spans Inside Out

Rainer Stropek

Das große Thema von C# 7.x war Speicherverwaltung. Mit Span und Memory kamen zwei neue Typen dazu, die sich durch die gesamte .NET Base Class Library ziehen und für eine Menge Performanceverbesserungen verantwortlich sind. Grund genug, der Sache eine Stunde Zeit zu widmen und einen Blick darauf zu werfen, wie sie genau funktionieren und man sie richtig einsetzt. Wie üblich verzichtet Rainer in dieser Session auf Slides und zeigt anhand von Codebeispielen her, was Spans leisten können.

(Level 300, 60 min)

Kochrezepte für pragmatisches GUI-Design

Roland Weigelt

  • Wie entscheidet man, was man sich von anderen GUIs abschauen sollte - und was nicht?
  • Wie stellt man Daten in Formularen und Detailansichten geeignet dar, wenn man von der Fachlichkeit eigentlich keine Ahnung hat?
  • Wie bändigt man GUIs mit vielen Funktionen?
  • Wie sorgt man dafür, dass Anwender sich nicht von der GUI "ausgebremst" fühlen?

Diese und weitere Fragen beantwortet Roland Weigelt in seinem Vortrag. Am Beispiel konkreter Lösungsansätze bietet er einen generellen Einstieg in eine abstrakte und doch praxisorientierte Denkweise in "User Interface Patterns". Roland greift dabei auf seine langjährige Erfahrung in der Produktentwicklung zurück, wo Pragmatismus und Weitsicht gleichermaßen gefragt sind.

(Level 100, 60 min)

7 Tipps für eine verständliche Git-Historie

Roland Weisleder

Software ist oft langlebiger als gedacht. Sie wird auch häufiger angepasst als gedacht. Irgendwann kommt der Punkt, wo sich ein Entwickler beim Blick auf den Code die Frage stellt: “Wie soll denn dieses Stück Code funktionieren?” Der Blick in die Git-Historie ist bei Nachrichten wie “fixed some bugs” auch nicht hilfreich. Dieser Vortrag zeigt, wie mit einfachen Mitteln eine verständliche Git-Historie entstehen kann und welche positiven Nebeneffekte sich daraus ergeben.

(Level 300, 60 min)

Dependency Injection in ASP.NET Core 2. Why and How?

Don Wibier

In this session Microsoft MVP Don Wibier will tell you why you should use Dependency Injection (DI) in your applications. He will next tell about how this is done in .NET Core 2 and by coding examples, he’ll show you how easy it is to start using this yourself.

(Level 300, 60 min)

Abusing the C# Compiler

Filip Wojcieszyn

In this session we will look at the delicate interplay between the C# (Roslyn) compiler, the CLR/CoreCLR and the C# Language Specification. Is it possible that simple C# code wouldn't work as expected? Could the compiler or the runtime violate the language specification? Can we force the compiler to do things it wasn't designed to do? We'll answer all these questions as we journey through the fascinating worlds of the C# compiler and the .NET/.NET Core runtime.

(Level 300, 60 min)

C# Scripting in the .NET Core world

Filip Wojcieszyn

While still being relatively niche, over the recent years C# scripting has grown to become a first class citizen in the Roslyn compiler and can now be enjoyed and applied in your applications in various ways. Together, we will dissect what’s going on under the hood in C# scripting and how you can make use of it in the cross platform, lightweight, .NET Core world (which, by the way, creates a perfect environment for low ceremony C# scripting). We'll also have a look at scripting via the new .NET CLI, how you can integrate it into your everyday development workflows and how you can debug the script assemblies.

(Level 200, 60 min)

Lightning Talks (20 Minuten)

Neue Horizonte mit DirectX Raytracing

Tim Borowski

Im September 2018 hat Nvidia eine neue Serie Grafikkarten mit dem Namen RTX herausgebracht. Das R in RTX ist in diesem Fall Programm und steht für Raytracing. Nvidia spendiert der RTX Serie mit der neuen Turing Architektur fürs Raytracing hardwareseitige Unterstützung. Mit der Microsoft Direct3D Erweiterung DXR (DirectX Raytracing) haben wir Entwickler die Möglichkeit diese Hardwareunterstützung auszunutzen.
Nicht nur im Spieleumfeld, sondern auch im GPGPU Bereich verschiebt dieses Feature die Betrachtung auf einige Probleme und Lösungsansätze.
In diesem Lightning-Talk zeige ich, wie einfach DXR mittels Visual Studio und C++ genutzt werden kann und präsentiere einige Beispiele in den Bereichen CAD/CAM, Simulation, und Machine-Learning, wo DXR meiner Einschätzung nach ein massiver Game-Changer sein wird.

(Level 100, 20 min)

Red-Hot, denn Hot ist nicht genug

Constantin "Kostja" Klein

Bereits zum 7. Mal möchte ich mit Euch in meiner Lunch-Session der Frage nachgehen, welche aktuellen Hypes und Megatrends wir als IT-ler und Entwickler nicht ignorieren sollten und warum. Zusätzlich werde ich ein paar Gedanken darüber teilen, mit welchen Themen ich mich als Arbeitnehmer in unserer Branche beschäftigen würde, um auch künftige Anforderungen zu erfüllen.
Ich freue mich, wenn Ihr in einer hoffentlich kurzweiligen Session darüber mit mir diskutiert.

(Level 100, 20 min)



dotnet Cologne - die Community-Konferenz des dotnet Köln/Bonn e.V.

!! | -- | ++ | ^^