Sessions

Hier geht es zu den Sprechern

ASP.NET Core und Docker (Alexander Schmidt)

ASP.NET Core steht in den Startlöchern! Die Session zeigt, wie eine einfache Webanwendung erstellt und in den Betrieb überführt werden kann. Die wesentliche Neuerungen, nämlich der Betrieb über etwas anderes, als IIS wird anhand einer Integration in einen Docker-Container mit nginx als Webserver gezeigt. Neben der reinen Technologie werden auch Tools zur effektiven Arbeit eine Rolle spielen. Die Visual Studio Integration von Docker sowie die notwendigen Erweiterungen auf der DevBox werden gezeigt.

ASP.NET Identity in service-orientierten Anwendungen (Alexander Schmidt)

In dieser Session wird anhand einer Live-Demo gezeigt, wie Web-Anwendungen auch dann über sichere Standards authentifiziert werden können, wenn keine Verbindung zwischen Web-Anwendung und Datenbank besteht. Vor allem benutzerdefinierte Ablagen von User-Informationen und die Kommunikation über REST stehen hier im Fokus. Es stehen vor allem die diversen Eingriffsmöglichkeiten bei der Entwicklung im Fokus und es wird gezeigt, wie durch sauberes Solution-Design auch das Unit-Testing ermöglicht wird.

„Wir sind agil“ (Alrik Schnapke)

Viele Firmen, Organisationen und Projekte wollen gerne an den Vorteilen der „agilen Entwicklung“ partizipieren. Sie wollen schnell und effektiv Software bereitstellen, oder Produkte „testen“. Doch nur wie?
Mittlerweile gibt es sehr viele Möglichkeiten, Methoden und Regeln! In dieser Session zeige ich, dass die „agile Entwicklung“ keine Raketenwissenschaft ist.

Cross-Plattform-App-Entwicklung mit Visual Studio 2017: Xamarin und Cordova (André Krämer)

Visual Studio bietet ab der Version 2015 eine umfangreiche Unterstützung für die Entwicklung hybrider Apps auf der Basis von Apache Cordova. Außerdem ist es nach der Übernahme der Xamarin einfacher und kostengünstiger als je zuvor, ein neues Xamarin-Projekt aus Visual Studio zu starten. Dieser Vortrag zeigt Ihnen, wie die Entwicklung von Cross-Plattform-Apps für Android und iOS unter Visual Studio sowohl mit Xamarin als auch mit Cordova funktioniert und welche Neuerungen Entwickler in der Version 2017 erwarten dürfen.

Was Java 9 bringt (Bernd Gronostay)

Aktuell ist die nächste Java-Version im (derzeit gültigen) Zeitplan, und im Juli soll sie endlich zur Verfügung stehen. Project Jigsaw war das Enhancement Proposal, welches wiederholt für Aufschiebung sorgte. Der Erscheinungstermin kurz nach den Magdeburger Developer Days gibt nun die Möglichkeit, vor General Availability die wichtigsten Neuerungen zu besprechen und deren Möglichkeiten aufzuzeigen.

funktionales C# praktisch demonstriert (Carsten König)

Funktionale Programmierung ist seit Jahren ein Trendthema und auch C# scheint mit jeder Version mehr funktionale Einflüsse zu assimilieren.

In dieser Session möchte ich euch ganz praktisch zeigen, wie sich eine einfache Parser-Kombinator Bibliothek in C# schreiben lässt. Dabei werden wir ganz nebenbei viele funktionale Techniken kennenlernen und etwas über den OO-Tellerrand hinaus blicken.

Data Platform für die Cloud (Constantin „Kostja“ Klein)

Daten stehen im Zentrum fast aller Anwendungen und im Cloud-Zeitalter gibt es nicht nur neue Regeln für Software – Stichwort Apps – sondern auch für die benötigten Technologien und Services einer Data Platform, die die Basis für diese modernen Anwendungen sein soll.
Kein Wunder also, dass sich kaum ein anderer Bereich in Microsoft Azure so schnell verändert wie die Cloud Data Platform. Und dabei geht es keinesfalls nur um “SQL Server in the cloud”. Ganz im Gegenteil. Im Bereich “Data & Storage” hat sich DocumentDB als NoSQL-Dokumentendatenbankdienst hinzugesellt. Neue Angebote wie Azure Data Lake haben das Licht der Welt erblickt und speziell der “Analytics” Bereich wartet mit Machine Learning, Stream Analytics, Data Factory und nicht zuletzt Event Hubs mit zahlreichen interessanten neuen Services auf. Gewinnen Sie in dieser Session einen Überblick über die Plattform und lernen Sie mögliche Einsatzszenarien kennen, damit Sie für Ihre nächsten Datenherausforderungen gewappnet sind.

SQL Server 2016 für Entwickler (Constantin „Kostja“ Klein)

SQL Server 2016 ist da und hat etliche Neuerungen in allen Bereichen im Gepäck. Doch vieles davon begeistert zwar den DBA oder den BI-ler, aber welche spannenden Features sind denn für den Entwickler dabei? Ich habe eine subjektive Auswahl getroffen und möchte dieser Frage mit Euch gemeinsam in meiner Session auf den Grund gehen.

HTTP/2 – how HTTP/2 comes to Java (David Delabassee)

It’s hard to overstate how much has changed in the world since HTTP 1.1 went final … 18 years ago! There were no smartphones, Google was a small-unknown startup, Java Swing was less than a year old and most of you were still at school… you get the idea! Yet for all that change, HTTP remains at version 1!

HTTP/2 has been finalized in May 2015 so it’s time to look in more details what HTTP/2 is bringing!

This session will introduce you to HTTP/2 and its new capabilities (Server Push, Binary Multiplexing, Flow Control, HPACK, etc.). We will then look at the plan to replace the old HttpURLConnection API with a new HTTP client API in Java SE. We will also talk about HTTP/2 on the server-side.

Java 8 EE (David Delabassee)

Quite a few things have changed since the original Java EE 8 proposal. This session will describe in details what Java EE 8 will be.

We will cover in details the new capabilities that are slated for inclusion in the Java EE platform, e.g.

  • JAX-RS 2.1’s new Reactive client API
  • Bean Validation 2.0 improvements
  • Servlet 4.0 HTTP/2 support
  • CDI 2.0 Asynchronous events
  • The addition of a new JSON Binding API, i.e. JSON-B 1.0
  • A new cross-platform security context
  • Etc.
  • Java EE 8 will be finalized in a few months so come to this session to understand what’s coming.

    Ping Me! A practical showdown of SignalR By Don Wibier, Technical Evangelist / DEVEXPRESS

    In HTTP-land, everything is supposed to be initiated from the client: the client requests, the server responds. But what if you wanted some other kind of communication, one that’s not limited by this protocol? One of the very cool additions to the ASP.NET web stack is SignalR, which allows real-time communication between your web apps and your client apps, even outside the browser.
    This practical session will guide you through a number of real-world coding examples on different platforms for web and desktop. You will also see how to add SignalR on an existing project, and you will get to know what needs to be done when your app needs to scale out.

    High-Frequency-Trading – Herausforderung bei der Umsetzung in C++ (Falko Löbner)

    Referent: Falko Löbner, Abteilungsleiter iQbonds, icubic AG
    Anhand unseres Produktes iQbonds werden unterschiedliche Performance-Herausforderungen aufgezeigt und Lösungsvorschläge diskutiert:

  • Thread-Pool – mal ein ganz anderer Ansatz
  • Warum Threads steuern (Priorität und Prozessoren einschränken)?
  • NUMA-Node-Problematik
  • Deadlock-Detection
  • Performance durch geeignete Datenstrukturen
  • Typische Bottlenecks
  • Viele Microservices – ein verbindendes Datenaustauschmodell (Dr. Florian Marquardt)

    In der Welt der Microservices besteht unternehmensinterne IT aus vielen, tendenziell kleinen und unabhängigen Komponenten. Im Zusammenspiel mit agilen Entwicklungsprozessen ist das Ziel, schnell und flexibel auf Kundenwünsche reagieren zu können und dabei langfristig wartbare IT-Komponenten zu behalten. Durch ihre separate Deploybarkeit erlauben Microservices eine sehr passgenaue Skalierung der IT-Infrastruktur.
    Allerdings wirft auch das Licht der Microservices Schatten. Die Komplexität großer heterogener IT-Landschaften verschwindet nicht durch die Verwendung kleinerer Komponenten. Fachliche Abhängigkeiten zwischen den Komponenten bleiben bestehen. Sie werden mit Microservices allerdings sichtbarer und im Grunde nur auf eine neue Ebene, die der Schnittstellen zwischen den einzelnen Microservices und damit auch vom Coding in Richtung Release, geschoben.
    Je mehr Microservices in einer IT-Landschaft zusammenkommen, desto dringlicher wird das Problem, eine einheitliche übergreifende Semantik von den systemischen Schnittstellen bis auf Code-Ebene zu bewahren. Ein verbindendes Datenaustauschmodell bietet dazu die Möglichkeit.

    Im Vortrag wird das Konzept eines verbindenden Datenaustauschmodells zur Abbildung von Schnittstellenkomplexität beschrieben. Es wird gezeigt, wie ein solches Modell aufgesetzt und gepflegt werden kann.
    Am JAVA-Beispiel wird exemplarisch veranschaulicht, wie eine nahtlose Integration des Modells in die Entwicklung von Microservices integriert werden kann. Interessante Aspekte wie bspw. Akzeptanz und Versionierung werden kritisch betrachtet.

    Database Life Cycle Management (Frank Geisler)

    In this session german Data Platfrom MVP Frank Geisler will show how to use the tools from Redgate to implement Database Lifecycle Management. In Application Development it is very usual to use an integrated approach for building and deploying applications. This is a little bit problematic for Database Development because of the data. Frank will not only show how it is done, he will also compare the state based approach with the migration based approach.

    Speed up your SQL Coding Skills with SQL Prompt (Frank Geisler)

    In his demo packed session Microsoft Data Platform MVP Frank Geisler will show how to use SQL Prompt for speeding up SQL Server Development. Besides all the nice features that help you to organize and code your SQL Server Application he will also show you how you can formalize your Development process by using Template driven Development.

    Mein IT-Dienstleister spricht nur Latein (Prof. Dr. Frank Ortmeier)

    Stetige Vernetzung und früher nicht vorstellbare Möglichkeiten zur Datenanalyse eröffnen aktuell in der gesamten Automatisierungstechnik viele neue Produkte, Möglichkeiten zu Prozessverbesserung und vollkommen neue Geschäftsmodelle. Diese Trends werden häufig unter den Schlagworten Industrie 4.0 oder Internet-of-Things zusammengefasst.
    Gemeinsam ist in allen Fällen, dass durch den Einsatz intelligenter IT neue, bessere oder flexiblere Funktionen geschaffen werden können. Bis auf wenige Großunternehmen mit komplett eigener Konzern-IT bedeutet das für die meisten mittelständischen Unternehmen, dass eine enge Zusammenarbeit mit einem externen IT-Dienstleister notwendig ist, um die gewünschten Resultate zielorientiert erreichen zu können. Die Wahl des richtigen Dienstleisters alleine ist schon schwierig, die effiziente und agil anpassbare Steuerung des Dienstleisters ist aber noch viel schwieriger. Dies liegt zu einem großen Teil an unterschiedlichen Sprach(interpretation)en und auch Denkmustern. Erschwerend kommt speziell im Kontext Industrie 4.0 hinzu, dass in der Regel vollkommen neue Innovationen und Geschäftsmodelle entwickelt werden soll. Deshalb ist es entscheidend, dass Dienstleister und Auftraggeber/Anwender äußerst flexibel und abgestimmt agieren. In diesem Vortrag greifen wir diese Thematik auf und berichten aus Sicht eines Dienstleisters wie ein Dienstleister am besten gesteuert werden kann. Dabei gehen wir genauso auf unterschiedliche Prozesse, Denkmodelle, Mitarbeitertypen und Mentalitäten wie auch konkreten Sprachgebrauch, Spezifikationen und Umsetzungen ein. Eine Reflektion wechselseitige Reflektion der eigenen und jeweils anderen Gedankenwelt, trägt nachhaltig zum besseren Verständnis bei. Als Konsequenz ergibt sich eine wesentliche Steigerung der Effizienz der Zusammenarbeit zwischen IT-Dienstleister und auftraggebendem Unternehmen.

    Aber schnell! Top Performance Tipps für Web-Apps (Gregor Biswanger)

    HTML5 ist langsam, oder? Nein, in der Tat zeigt sich die grundlegende Geschwindigkeit von Cross-Plattform-HTML5-Anwendungen heutzutage in einem sehr positiven Licht. Es gibt aber doch ein paar Fallstricke, in denen sich der Entwickler schnell verfängt, wenn er nicht auf ein paar Punkte achtet. Der Vortrag geht zuerst auf die Vorgehensweise der Performancemessung ein. Anschließend werden die top Performancetipps gezeigt, um nochmal einen ordentlichen Schub an Power herausholen zu können. Lasst uns Gas geben!

    Kuck mal, Node.js! Einstieg für .NET Entwickler (Gregor Biswanger)

    Das Jahr 2009 war die Geburtsstunde von Node.js. Dass hierbei JavaScript ebenfalls Serverseitig verwendet werden kann, ist nur ein Teilaspekt für den hohen Erfolg. Viel relevanter ist die extrem hohe Performance, Skalierbarkeit und Produktivität. Nicht ohne Grund wird ASP.NET komplett neu erfunden und basiert auf den gleichen Ideen wie Node.js. Namenhafte Firmen wie Microsoft selbst, Google, PayPal, New York Times, GitHub uvw., setzen bereits auf das leistungsstarke Node.js. Der Vortrag zeigt durch eine Reise der Node.js Architektur, woher die Vorteile kommen. Durch einen Vergleich von ähnlichen Funktionen, wird zudem der ideale Einstieg für .NET Entwickler geboten.

    Let’s get cracking! Wir schreiben einen Key-Generator… (Gregor Biswanger) -> Nightschool <-

    Bei dieser Abendveranstaltung lernen Sie, wie einfach eine Software mittels Reverse Engineering Techniken geknackt wird. Nach einer kleinen Einführung wird ein Übungsprogramm (Crack me) Schritt für Schritt analysiert und ein eigener Key-Generator geschrieben. Dabei gilt ganz klar Ethical Hacking! Wir möchten mit diesem Wissen niemanden schaden, sondern selbst lernen, wie wir unsere Software selbst gegen Hacker wappnen können.

    Entwickeln für die Cloud – Ein Beispielprojekt auf der Google Cloud Platform (Hendrik Pilz)

    Was bedeutet es eigentlich, eine Cloud-Anwendung zu entwickeln? Alle reden davon, aber wie funktioniert es? Diese und weitere Fragen werden geklärt, wenn in dieser Session Schritt für Schritt eine einfache Java-Anwendung auf der Google Cloud Platform entsteht. Dabei werden auch die Vor- und Nachteile der GCP besprochen. Der Code wird im Anschluss an die Session als Open Source Projekt veröffentlicht.
    Die Anwendung enthält ein Frontend und einen geschützten Administrationsbereich. Es werden u.a. Servlets, JSPs, Unit-Tests sowie Entitäten und Controller für den Google Cloud Datastore entwickelt.
    Wer schon immer ein Projekt in der Cloud starten wollte und noch nicht wusste, womit er anfangen soll, ist hier genau richtig.

    Neustart für das Web: ASP.NET Core 1.x (Dr. Holger Schwichtenberg)

    Microsoft hat sein Web-Framework neu implementiert: Plattformunabhängig, schneller und schlanker. Die Versionszählung beginnt neu bei 1.x, was auch ausdrückt: Man kann nicht einfach von der ASP.NET 4.x/MVC 5.x auf ASP.NET Core 1.x umsteigen, denn dort ist Vieles anders. Wozu ASP.NET 1.x zu gebrauchen ist und was besser und anders ist gegenüber ASP.NET 4.x/MVC 5.x, erklärt „DOTNET-DOKTOR“ Holger Schwichtenberg in diesem Vortrag. Auch die neuen Webtools in Visual Studio 2017 werden behandelt.

    Neustart für den Datenzugriff: Entity Framework Core 1.x (Dr. Holger Schwichtenberg)

    Microsoft hat seinen Objekt-Relationaler Mapper neu implementiert: Plattformunabhängig, schneller und schlanker. Die Versionszählung beginnt neu bei 1.x, was auch ausdrückt: Man kann nicht einfach von der Entity Framework 6.x auf Entity Framework Core 1.x umsteigen, denn dort ist Vieles anders. Wozu Entity Framework Core 1.x zu gebrauchen ist und was besser und anders ist gegenüber Entity Framework 6.x, erklärt „DOTNET-DOKTOR“ Holger Schwichtenberg in diesem Vortrag.

    CQRS auf Dope (Jan Fellien)

    In einer typischen CQRS Umgebung mit EventSourcing sieht auf den ersten Blick alles irgendwie verwirrend aus. Blickt man nicht auf die Domain, dann steckt überall Infrastruktur drin. Je nach Konfiguration stehen da zwei Datenbankserver, drei Web Server und mehrere Messaging Systeme. All das möchte durch fleißige Kohlenschipper ordentlich auf Druck gehalten werden. Die Kessel müssen dampfen und das Schwungrad muss sich stetig drehen.
    Da ist sie wieder die nervende Infrastruktur. Wie wäre es schön, wenn wir die sie einfach links liegen lassen könnten?
    Können wir mit serverless computing. Ich werde in diesem Vortrag zeigen, wie man die beiden top notch Technologien ganz einfach verbindet und so das Entwicklerleben dramatisch vereinfacht.

    Up in the air – Serverless Computing mit Azure Functions (Jan Fellien)

    Verteilte Systeme und Applikationen. Viele Entwickler reden davon, einige bauen es schon. Solche Systeme haben ihre Daseinsberechtigung, besonders da, wo es auf Skalierung und Performance ankommt. Jedoch egal wie gut verteilt wird, alle Systeme haben eine Schwachstelle – genau eine, die Infrastruktur. Wohingegen jeder Software Monolith so entwickelt ist, dass er die Beziehung zu einer einzelnen Infrastruktur wie Logging, Datenbank aber auch UI herstellt, sind verteilte System ganz anderen Anforderungen unterworfen. Welchen Sinn macht eine horizontal skalierbare Applikation, wenn sich alle Nodes eine einzige Datenhaltung, im schlimmsten Fall sogar eine relationale Datenbank, teilen müssen. Dann haben wir ein System entwickelt, das super auf Requests warten kann, aber auch nicht mehr – eine „Requestwartemaschine“. Wollen wir echte Skalierbarkeit erreichen brauchen wir eine Veränderung in der Verwendung von Infrastruktur. Serverless Computing geht seit wenigen Jahren einen revolutionären Schritt weiter. Es ermöglicht die Entkopplung von Applikationslogik bzw. -funktion und Infrastruktur. Stellen wir uns die Sache in etwa so vor, dass es uns egal sein kann, welche Datenhaltung in unserem System steckt, sie ist einfach da. Ja, keine Angst, wir bleiben trotzdem Herr der Daten und auch der dazugehörigen Systeme, wir brauchen sie nur nicht mehr explizit in unseren Source Code aufnehmen. Überraschend, nicht wahr? So schön das am Anfang klingen mag, so hat Serverless Computing auch seine Schattenseiten oder vielmehr Grenzen. Nicht jede Applikation lässt sich hiermit entwickeln. Jedoch werden eine ganze Reihe einfacher ständig wiederholender Aufgaben furchtbar schnell realisiert.

    Vorstellung der Dev-Test Labs auf Azure (Julia Jauß)

    Mit den Azure DevTestLabs lassen sich in kürzester Zeit komplexe Testumgebungen in Azure anlegen. Wie kann ich die DevTestLabs nutzen und welche Möglichkeiten habe ich? Wie lege ich die DevTestLabs mittels Azure Resource Manager Templates (ARM) an? Und wie behalte ich Kontrolle über meine Kosten?
    Anhand einiger Demos wird gezeigt, wie man die DevTestLabs für sich optimal nutzen kann.

    Angular ist kein Web-Framework (Julian Steiner)

    … Angular ist eine Plattform! Die konsequente DOM-Abstraktion im neuen Angular ermöglicht es Angular auch für die Entwicklung von Desktop-Applikationen, nativen Mobil-Apps oder sogar für die Programmierung von Microcontrollern zu nutzen.
    In diesem Vortrag wird von einer in TypeScript entwickelten Angular-Webanwendung eine native Mobil-App und eine Internet-of-Things-Applikation abgeleitet, welche ebenfalls in Angular implementiert sind. Es wird ferner gezeigt wie man Code zwischen diesen Implementierungen teilen kann und wie man seine Architektur gestalten sollte, damit ein solches Code-Sharing möglich ist.
    Durch die Vielzahl an Technologien wird es eine unterhaltsame und eher „geekige“ Session. Der spielerische Charakter der Session eignet sich aber hervorragend, um die Philosophie hinter Angular in der Tiefe zu verstehen und Best Practices für die Architektur von Angular-Anwendungen kennenzulernen.

    Big Data – Demystified – Showcase Stauerkennung (Kareem Amin)

    Thema ist eine Real Time Analyse von Floating Car Data auf einer Big Data Umgebung inklusive einer Visualisierung mit diversen Tools. Verwendet werden hierfür Simulationsdaten einer mittelgroßen Stadt. Diese Daten werden auf einem Big Data Cluster gestreamt und mit unterschiedlichen Modellen analysiert.
    In spielerischer Art und Weist zeigt der Showcase, wie ein Data Scientist unterschiedliche Modelle anwenden kann, um am Ende eine effektive Stauerkennung zu ermöglichen. Unterstützt wird der Showcase durch eine Visualisierung mit R-Shiny um zu zeigen, welche Wirkung unterschiedliche Clusteringverfahren erzielen.
    Der Showcase verknüpft sehr schön die eigenen Erfahrungen mit Stau und ermöglicht den spielerischen Umgang mit Daten, indem man Parameter variiert und die Ergebnisse auf der Landkarte sofort sehen kann, dadurch wird die Komplexität der Aufgabe versteckt. Gleichzeitig wird aber auch aufgezeigt, welche Möglichkeiten im professionellen Umgang mit Daten stecken.

    Domain Driven Design (Marco Heimeshoff)

    Lernen, Sprache und Empathie sind die wichtigsten Konzepte für erfolgreiches Domain Driven Design:
    Ein gutes Softwaremodell erlaubt dem Entwicklungsteam neue Anforderungen umzusetzen und durch neue Erkenntnisse die Effektivität und Wettbewerbsfähigkeit des Unternehmens zu steigern. Gute Code Qualität und elegante Architekturen sind dabei ein Nebenprodukt, aber der echte Wert von Domain Driven Design liegt in einem besseren Verständnis der Domäne, das zu einer pragmatischen und flexiblen Softwarearchitektur führt.
    Marco Heimeshoff leitet Sie in diesem Talk vorbei an den Fallen und Tücken um DDD und zeigt Ihnen, wie Sie das volle Potential dieser Methode ausschöpfen.

    IT-Wissensvermittlung in Schule – Ausbildung – Berufseinstieg: Wie meistert ein kleineres Bundesland diesen Dreisprung (Marco Tullner, Thomas Wünsch und Klemens Gutmann)

    Ein Wortwechsel mit denen, die Bildung verantworten.

    Einführung in React (Marius Schulz)

    React ist eine beliebte JavaScript-Library, mit der sich dynamische Benutzeroberflächen entwickeln lassen. Diese werden aus unabhängigen Komponenten zusammengesetzt, die jeweils ihren eigenen Zustand kapseln. Ändert sich irgendwo der Zustand der Anwendung, aktualisiert React nur diejenigen Teile der UI, die von der Änderung betroffen sind. Dieses Verfahren ist effizient und erleichtert das Debugging durch vorhersehbare Updates.
    In React-Anwendungen wird die gesamte UI per JavaScript implementiert. Mithilfe der JSX-Syntax können auf deklarative Art und Weise HTML-Elemente erstellt und in Komponenten organisiert werden. Die Flux-Architektur sowie das Prinzip des einseitig gerichteten Datenflusses geben dabei vor, wie diese Komponenten miteinander kommunizieren.
    Diese Session gibt eine Einführung in die UI-Entwicklung mit React, ES2017, Babel und Webpack.

    Identity- und AccessManagement (Markus Winkler)

    Immer komplexere IT-Landschaften und Softwareanwendungen, die als funktionale Basis einen User-Account benötigen,
    erfordern eine Standardisierung in der Verwaltung von Identitäten. Das Identity Management regelt dabei die Verwaltung
    des eigentlichen, zentralen User-Objektes mit seinen erweiterten Attributen und das Access-Management die zugehörigen
    Berechtigungen. In dieser Session wird dargestellt, wie man Identity-Management in eine zentrale Softwarekomponente auslagert
    und dieses in externe Softwareapplikationen mittels OpenID-Connect und oAuth2 integriert. Dabei werden ebenso die fachlichen
    Möglichkeiten dargestellt, welchen Nutzen diese Herangehensweise für personalisiertes Marketing bietet.

    Fuck Up! Was läuft hier denn falsch? (Michael Blume)

    Wir alle kennen die Situation: Ein bestimmter Kollege, ein bestimmter Auftraggeber, ein bestimmtes Projekt oder auch eine bestimmte Technologie… Allein die Erwähnung des Namens reicht aus und es legt sich einem eine imaginäre Hand um den Magen und quetscht ihn zusammen. Okay, bei manch einem mag es der Hals oder ein anderes Körperteil sein, aber die Situation bleibt die Gleiche. Am liebsten würden wir es dem Vogel Strauß gleichtun und den Kopf in den Sand stecken und warten bis alles vorüber ist. Nur ist das selten eine Option und wenn, dann mit Sicherheit keine Gute. Wie also gehen wir damit um?
    In dieser (Un)Session möchte ich mit Euch über derartige Dinge sprechen. Eine generell anzuwendende generalisierte Lösung wird es dabei nicht geben. Aber ich habe im Laufe der Jahre einiges an Erfahrungen gesammelt und war gezwungen mich immer wieder mit dem Fuck Up Problem auseinanderzusetzen. Dabei werde ich nicht die gesamte Session über reden, sondern versuche mit Euch in den Dialog zu kommen und auch Eure Erfahrungen im Umgang mit solchen Situationen dabei zu hören. Ein zweites Mikrofon ist also ein must have.

    Leichtgewichtige Architektur für’s Web – ASP.NET schlank & schnell (Michael Willers)

    Es ist unübersichtlich, ja fast chaotisch: ASP.NET Webservices, WCF, WCF Rest Services, ASP.NET MVC, ASP.NET Web API und SignalR und nun auch noch ASP.NET Core.
    Wer sich mit Architektur beschäftigt, muss auch Antworten auf nicht-funktionale Anforderungen haben. Dazu gehören Testbarkeit, Debugfähigkeit, Nachvollziehbarkeit und Performance und einige mehr.
    Nach vielen Jahren und Anwendungen lautet die Antwort für mich immer häufiger „back to the roots (of ASP.NET)“. Weniger Komplexität sorgt für weniger Fehler und damit für mehr Qualität.
    Michael Willers zeigt in seiner Session die praktische Umsetzung. Direkt live aus dem Projektalltag!

    Threat Modeling – Sichere Architektur von (Micro)Services (Michael Willers)

    Software ist kein Selbstzweck. Sie ist dazu da, fachliche Probleme zu lösen. Microservices sind der neue Hype in der Softwareindustrie, um dieses Versprechen (wieder einmal) einzulösen. Allerdings ist das alles nicht neu. Denn auch Microservices basieren auf den fundamentalen Prinzipien der Serviceorientierung aus den frühen 2000er Jahren.
    Aber viel wichtiger noch: Sind Ihre Services und Anwendungen sicher? Zugegeben, diese Frage verursacht Unbehagen. Ignorieren geht aber angesichts der jüngsten Entwicklungen rund um das Thema Sicherheit auch nicht. Was also tun? Oder wurden Sie sogar jüngst selbst Opfer eines Angriffs?

  • Wie können mögliche Bedrohungen rechtzeitig erkannt werden?
  • Wo bieten Ihre Applikationen Angriffspunkte?
  • Oder besser noch: Wie können Sicherheitsprobleme frühzeitig während der Design-Phase erkannt werden?
  • Threat Modeling kann Ihnen helfen, die passenden Antworten parat zu haben, um im Falle eines Angriffs gezielt und erfolgreich reagieren zu können.

    Michael Willers zeigt, dass Serviceorientierung und Sicherheit keineswegs staubtrockene Angelegenheiten sind und sogar höchst spannend bis amüsant sein können.
    Sie sind bereit für eine Expedition abseits der üblichen Pfade? Herzlich willkommen!

    Mit DevOps und Business Agility die Herausforderungen der digitalen Transformation meistern (Neno Loje und Thomas Schissler)

    Der digitale Wandel bietet für Unternehmen Chancen und Risiken zugleich. In diesem Vortrag geben Neno Loje und Thomas Schissler einen Überblick, wie sich Unternehmen optimal aufstellen können, was es mit ‘DevOps’ und ‘Business Agility’ auf sich hat und warum diese auch für Ihr Unternehmen hochgradig relevant sind. Holen sie sich wichtige Anregungen, wie Sie das Innovationspotenzial Ihrer Softwareentwicklung maximieren können.

    Die ganze Power von Machine Learning nutzen – mit Cognitive Services (Nicoleta Mihali)

    Die Microsoft Cognitive Services erlauben es Apps zu bauen, die auf mächtigen Algorithmen basieren und das mit wenigen Zeilen Code. Dabei sind sie nicht nur unter Windows, sondern auf allen Plattformen wie iOS, Android und im Web im vollen Umfang nutzbar.

    In diesem Vortrag wird ein Überblick über die Cognitive Services gegeben und Demos von aktuellen Szenarios werden gezeigt. Des Weiteren wird die Implementation einer Applikation genauer analysiert.

    C# 7 – Was gibt es Neues? (Rainer Stropek)

    Die neue Version von C# bringt eine Menge interessanter Sprachfeatures. Local Functions, Pattern Matching, Tuples und viele kleinere Verbesserungen, die uns das Leben leichter machen werden. In dieser Session stellt Rainer Stropek die C# 7 Neuerungen vor. Wie üblich bei Rainer gibt es keine Slides sondern nur Codebeispiele, mit denen wir uns die Sprachneuerungen im Detail ansehen.

    API First mit Swagger & Co (Rainer Stropek)

    Durch Microservices hat die Bedeutung von Web APIs dramatisch zugenommen. Egal ob intern verwendet oder an Kunden gerichtet, Web APIs findet man heutzutage in fast jedem IT-Unternehmen. Natürlich werden dadurch die Themen Spezifikation und Dokumentation wichtiger. Genau dabei hilft Swagger. In der Session stellt Rainer Stropek das API Beschreibungsformat vor und zeigt Anwendungsfälle aus der Praxis (z.B. API First, Dokumentation, Codegenerierung, Verwendung in Azure).

    Skalierbarkeit und Parallelisierung in Java-Herausforderungen und Tücken einer Banken-Handelssoftware (Dr. Ralf Helbing)

    Ausgehend von einem kurzen Einblick in Banken-IT für den Handelsraum beleuchten wir, welche Anforderungen an komplexe Handelssysteme bestehen, wie diese umgesetzt werden und welche Herausforderungen sich ergeben, wenn großes Datenvolumen, geringe Latenz und hohe Parallelität in einer Java-Umgebung zusammentreffen.

    Agile Feedback Kultur (Reginald Rink)

    Agile Softwareentwicklung bedeutet u.a. nicht nur, flexibel und dynamisch während des Entwicklungsprozesses auf Anforderungsänderungen reagieren zu können, sondern auch die Arbeitsweise selbst stetig zu verbessern. Doch der Umgang mit Feedback unterscheidet sich teils deutlich.
    Während auf Agenturseite oder in Startups alle Beteiligten nötige Anpassungen flexibel vornehmen können, fällt dies vor allem Konzernen weitaus schwerer – häufig auch mit Auswirkungen auf den “agilen” Dienstleister.
    Dieser Vortrag beleuchtet am Beispiel der Scrum Retrospektive unterschiedliche Feedback-Formen aus der Praxis und geht auf deren Vorteile und Risiken ein. Abschließend wird mit der “Lightning Retro” ein alternativer Ansatz vorgestellt.

    Nachhaltigkeit in der IT (Reiner Schlosser)
    Intelligente Bots – das Microsoft Bot Framework & Cognitive Services (Robin Sedlaczek)

    In der letzten Zeit gewinnen Conversational UIs und Bots immer mehr an Beliebtheit und Bedeutung. Microsoft begegnet diesem Trend mit dem Bot Framework. Mit dem Microsoft Bot Framework lassen sich eigene Bots implementieren und in der Microsoft Cloud betreiben. Benutzer können mit diesen Bots kommunizieren, um spezifische Aufgaben zu erfüllen. Die Kommunikation kann über die verschiedensten Kanäle erfolgen, z.B. via Email, Facebook Messenger, Slack Chat, Skype Chat oder sogar über Skype Calls. Eine unterbrochene Konversation kann später fortgeführt werden, sogar auf einem anderen Kanal. Der Bot erinnert sich, was zuletzt geschah, und es kann direkt an die letzte Konversation angeknüpft werden. Wirklich intelligent werden Bots aber erst, wenn man sie mit den Cognitive Services von Microsoft verbindet. Mit LUIS, dem Language Understanding Intelligent Service, lernt der Bot menschliche Sprachen zu verstehen, mit der SpracherkennungsAPI verschafft man ihm sogar Gehör. Die Computer Vision-API befähigt den Bot zu sehen, und mithilfe der Emotionen-API menschliche Gefühle zu verstehen. Daraus ergeben sich ganz neue Möglichkeiten und Anwendungsfälle. So kann z.B. körperlich beeinträchtigten Menschen ein alternativer Zugang zu einem Softwaresystem und ein barrierefreies Benutzererlebnis verschafft werden. Interaktionen mit einer Anwendung werden persönlicher und steigern damit die Benutzerpartizipation. In dieser Session wird live ein intelligenter Bot implementiert, der Gebrauch von den verschiedenen APIs macht. Ziel ist es, Anwendungsfälle und das Potential intelligenter Bots, anhand eines praktischen Beispiels aufzuzeigen.

    Spiel mir nicht das Lied von „House of Cards“! (Sabine Wojcieszak)

    Viele kennen die Serie „House of Cards“ und lieben sie! Doch oft verkennen wir, wie häufig das „House of Cards“ Game in Organisationen gespielt wird und damit den Erfolg gefährdet.

    Beim „House of Cards“ Game geht es darum, wie Entscheidungen im Hintergrund getroffen und Netzwerke benutzt werden, um persönliche Ziele zu erreichen. Und es geht darum, wie das Erreichen dieser persönlichen Ziele sich oft kontraproduktiv auf die Team- oder Unternehmensziele auswirkt. Es geht auch darum, wie sich solche versteckten Allianzen und Absprachen negativ auf die Teamkultur und die Atmosphäre auswirken. Und es geht darum, warum in modernen IT-Projekten keine Zeit mehr ist, um sich mit solchen Spielen abgeben zu müssen.

    Ein striktes Streben nach Offenheit, Transparenz und Vertrauen kann dem „House of Cards“ Game den Kampf ansagen. Doch wie wird Offenheit und Vertrauen geschaffen? Was muss getan werden, um dies zu erreichen? Welche Rolle spielt Kommunikation dabei? Was können wir von den Jedis aus Star Wars dabei lernen? Warum sind Leader in diesem Prozess so wichtig? Und welche Bedeutung hat das Thema Selbstreflexion hierbei?

    Dieser Talk ist für alle, die Erfolg im Team haben wollen, besonders aber für alle Leader unter euch! Dieser Talk ist auch ein Appell an alle, sich regelmäßig Gedanken zu machen, welche Ziele gerade verfolgt werden!

    Ein Einführung in Cross-Plattform-Entwicklung mit Xamarin (Sebastian Seidel)

    Mit der Übernahme der Firma Xamarin hat Microsoft sein Portfolio rund um die Entwicklung von Mobile-Apps um Apples und Googles Plattform erweitert.
    Lassen Sie sich zeigen wie Sie bestehendes .NET-Know-How zur Entwicklung von Cross-Plattform-Apps wiederverwenden können und erfahren Sie in diesem Vortrag was Xamarin so besonders macht. Dabei wird sowohl auf Xamarin.Android, Xamarin.iOS als auch Xamarin.Forms anhand einer kleinen Demo-Applikation eingegangen.

    Automatisieren von Alltagsaufgaben: Tuning von Visual Studio (Tobias Meier)

    Ist in der Java-Community schon lange eine komplexe Tool-Chain für die Lösungsumgebung notwendig, war die Visual-Studio-Welt bisher vergleichbar einfach: Mehr als Visual Studio, NuGet, Web Essentials, Resharper und TFS war nicht notwendig. Inzwischen können auch wir Visual-Studio-Nutzer mit weiteren Tools unsere Produktivität bei der Entwicklung nochmals erhöhen. Tobias Meier zeigt in seinem Vortrag, wie wir mit npm, GULP und Co. Routinetasks bei der Entwicklung erledigen können: Komplexe Toolchains: HTML-Datei wird beim Speichern automatisch nach TypeScript konvertiert, anschließend der TypeScript-Compiler gestartet, ….; Sass-Dateien bei Dateiänderungen nach CSS konvertieren, für verschiedene Browser optimieren und URLs für Zielplattformen optimieren; statische Codeprüfung der TypeScript-Dateien mit TSLint; Bundling und Minification.

    IoT in der Praxis: Elektroautos, Ladesäulen und Azure (Tobias Meier)

    Das Münchner Startup-Unternehmen eeMobility GmbH bietet intelligente Ladelösung für elektromobile Firmenwagen an und ermöglicht Kunden attraktive Gesamtlösungen, Tarife und Services aus einer Hand. Hierzu hat bridgingIT eine neue, intelligente Software für gesteuertes Laden entwickelt. Der Fahrer eines Elektrofahrzeugs hat nun, egal ob zu Hause oder unterwegs, nur noch einen Ansprechpartner, der neben der passenden Infrastruktur auch den Ökostrom und die Abrechnung aus einer Hand liefert. Das Thema „Abrechnung“ verliert dadurch deutlich an Komplexität und eine nahtlose Integration in bestehende Abrechnungs- und Fuhrparkprozesse wird ermöglicht. Das Praxisbeispiel zeigt wie auf Basis der hochskalierbaren und leistungsstarken Cloud-Plattform Microsoft Azure einerseits die Ladessysteme angebunden werden können und gleichzeitig Drittsystem, wie z.B. ein CRM-System auf Basis von Microsoft Dynamics CRM, mit einem Kundenportal gekoppelt werden können. Zusätzlich sind die Anwendungen auch via App abrufbar ist.

    TypeScript für Fortgeschrittene (Tobias Meier)

    TypeScript, das typisierte Superset von JavaScript, ist nun schon über 4 Jahre alt und vor kurzem ist die Version 2.0 erschienen. Die Bekanntgabe, dass auch Angular 2.0 auf TypeScript setzt, hat TypeScript endgültig zum Durchbruch verholfen und viele von euch konnten erste Erfahrungen mit TypeScript sammeln. In dieser Session zeigt Tobias Meier, der TypeScript sei der ersten öffentlichen Alpha-Version produktiv in Kundenprojekten einsetzt, anhand zahlreicher Praxisbeispiele die neuesten bzw. weniger bekannten Möglichkeiten von TypeScript, z.B.: – Asynchrone Programmierung wie in C# – „Null und undefined “ beherrschen – Bring your own IDE: Projektsetup zum parallelen Arbeiten in verschiedenen Entwicklungsumgebungen – Einblick in die verschiedenen Module-System – Importieren von Ressource-Dateien (Texte, Bilder) über Import-Statements …

    „Mehr Hirn im Team, bitte“ (Torsten Weber)

    Empathie galt lange als eine Wunderwaffe. Langsam kommen immer mehr Zweifel an dem Allheilmittel auf und nicht nur an diesem. Von „Human Ressource“-Objekten zurück zu Subjekten, Menschen mit unterschiedlichen Charakteren, Argumente für die Herausbildung einer guten Begegnungskultur im Privaten und Geschäftlichen: Ein Vortrag, in dem aus psychologischer und neurobiologischer Sicht herausgearbeitet wird, wie die Mitglieder eines Teams die in ihnen angelegten Potentiale endlich entfalten können. Etwas, was der Wettbewerb nicht kopieren kann.

    Gleichzeitig macht der Vortrag mit den Augen eines Profilers etwas mehr immun gegen die Fallen und Gefahren der „Psychoknoten“ im Hirn, der Energie-Vampire, der emotionalen Erpresser, der Neurotiker und Psychopathen – alles was einem das Leben selbst und das anderer schwer macht. Wie man sein Gehirn optimal nutzt zeigt Lösungsmöglichkeiten dafür, ebenso, wie Heranwachsende und Erwachsene in einer begeisterungslos gewordenen Gesellschaft Offenheit, Gestaltungslust und Entdeckerfreude wiederfinden können.

    Paul ist PO! Und Nun? (Ulf Mewe)

    Oh Mann! Was hat Paul sich da nur eingebrockt. Eigentlich hatte er doch nur eine Idee für ein neues Produkt. Aber als er seinem Chef im Fahrstuhl davon erzählt hat, war dieser sofort von der Idee angetan. Paul soll nun der PO, also der Product Owner, für das Projekt werden, aber er hat so etwas noch nie gemacht.
    Was muss Paul denn jetzt eigentlich machen? Und wie kann er dafür sorgen, dass das Produkt tatsächlich erfolgreich wird?
    In diesem Vortrag begleiten wir Paul durch sein erstes Projekt als Product Owner. Wir beleuchten, was die Rolle des Product Owners tatsächlich für Aufgaben beinhaltet und welche Fähigkeiten ein Product Owner mitbringen sollte. Es werden verschiedene Praktiken vorgestellt, die es dem Product Owner ermöglichen seiner Rolle gerecht zu werden und es wird darauf eingegangen, was besser zu vermeiden ist.