• Reactive Relational Database Access - Mark Paluch

    Immer mehr Projekte setzen auf reaktive Programmierung. Auf ihrem Weg reaktive Systeme zu bauen, stellen Entwicklungsteams fest, dass sich sämtliche Vorteile dieser Umstellung nur dann einstellen, wenn der gesamte Stack reaktiv ist. Es gibt einige reaktive Messaging und NoSQL Integrationen, jedoch gehören die relationalen Datenbanksysteme nicht dazu. Dieser Vortrag stellt die Reactive Relational Database Connectivity (R2DBC) Initiative vor. Das Ziel dieses Projekts ist es, eine reaktives API für relationale Datenbanken zu definieren. Dieser Vortrag erklärt das R2DBC API, seine Funktionsweise und die Vorteile die sich aus der Nutzung ergeben. Wir schauen uns auch Gemeinsamkeiten und Unterschiede weiterer Initiativen wie ADBA, dem asynchronen Nachfolger von JDBC, an und wie diese sich mit R2DBC nutzen lassen. /Bio Mark Paluch arbeitet im Spring Data Team bei Pivotal an zahlreichen Open Source Projekten im Spring Ökosystem. Zu den neuesten Projekten aus seiner Feder zählt Spring Cloud Vault welches eine einfache Integration von Vault in Spring Anwendungen ermöglicht.

  • Funktionale Programmierung mit Clojure - Jochen Bedersdorfer

    Nach einer kurzen Pause melden wir uns wieder mit einem spannenden Thema zurück. Diesmal geht es um Funktionale Programmierung auf der JVM mit Clojure. Als Referenten konnten wir dazu den langjährigen IT Veteran und Java Experten Jochen Bedersdorfer für uns gewinnen. Wir freuen uns auf einen interessanten gemeinsamen Abend. /Abstract Eine der vielen Sprachen, die auf der JVM zuhause ist und einen völlig anderen Ansatz zur Erstellung von komplexen Programmen verfolgt heisst Clojure. Der Vortrag stellt euch die auf Lisp basierende Sprache vor und zeigt, wie man damit Anwendungen interaktiv entwickelt und testen kann. Clojure wurde erstmals 2007 vorgestellt und legt starken Fokus auf funktionale Programmierung und sicheres, lock-freies Multi-Threading und unveränderliche Datenstrukturen. Dabei werden einige Denkweisen und Ansätze aus der klassischen objekt-orientierten Programmierung über den Haufen geworfen und umgestülpt. Wir schauen uns die Vor- und Nachteile an und machen einen kleinen Abstecher in den Browser, da es inzwischen auch einen Compiler zu JavaScript gibt, der sich wachsender Beliebtheit erfreut. /Bio Jochen ist CTO von Sematell und ist seit über 20 Jahren mit Java vertraut. Als Software Architekt hat er in Unternehmen wie Intel, Saffron Technologies und Attensity agile Teams geleitet und Software im Bereich künstliche Intelligenz und NLP entwickelt

  • Generierung von Regressionstests für Legacycode - Felix Schumacher

    /Abstract Als Softwareentwickler bekommt man es im Alltag oft mit Legacy-Applikationen zu tun. Auch diese Anwendungen sollen noch mit neuen Funktionen versorgt werden. Da sie aber häufig "historisch gewachsen" sind, lässt der Code oft nur noch schlecht Erweiterungen zu. Ein Refactoring wäre nötig. Leider haben meistens genau diese Anwendungen sehr wenig oder gar keine Testfälle. Eine Möglichkeit, Refactorings abzusichern, ist in dieser Situation die Generierung von Regressionstest. Regressionstests gewährleisten, dass die Anwendung nach einem Refactoring noch genau so funktioniert, wie zuvor. Hierfür gibt es verschiedene Tools, die zur Generierung von Testfällen verschiedene Ansätze verwenden. In diesem Vortrag sollen einige Tools und ihre Ansätze vorgestellt und auf die Möglichkeit zum Einsatz zur Generierung von Regressionstests hin beleuchtet werden. /Bio Felix ist Consultant bei INNOQ. Er beschäftigt sich gerne mit Softwarequalität, testgetriebener Entwicklung und dem Betrieb und der Weiterentwicklung bestehender Syteme.

    11
  • Einführung in künstliche neuronale Netze mit Java - Jörg Endres

    /Abstract Klassische Algorithmen scheitern oft an “unscharfen” Problemstellungen wie Muster- oder Bilderkennung. Hier brillieren in den letzten Jahren vermehrt Methoden aus der künstlichen Intelligenz, allen voran künstliche neuronale Netze. Nach einer ersten Phase der Computerunterstützung in den 80er Jahren erleben die neuronalen Netze, v.a. in der Form von “Deep Learning”, seit einigen Jahren eine Renaissance. Durch höhere Verarbeitungskapazitäten moderner Computersysteme gepaart mit viel größeren Datenmengen haben sie signifikant an Leistung gewonnen. Nichtsdestotrotz hat sich an den Grundlagen nichts geändert. Zu diesem Zweck dürfen wir Jörg Endres als Vortragenden begrüßen, welcher sich privat mit Themen wie KI und insbesondere neuronalen Netze beschäftigt und uns dieses Thema in seinem Vortrag vorstellt. Der Vortrag beginnt mit einem historischen Überblick zu der Entwicklung der KI mit Fokus auf Neuronale Netze und stellt die Grundlegenden Strukturen und Mechanismen anhand ausgewählter Beispiele vor. Im Anschluss darauf werden die Grundlagen anhand eines speziellen neuronalen Netzes zur Erkennung von Ziffern mit einer Plain-Java-Referenzimplementierung verdeutlicht. /Bio Jörg Endres arbeitet als Softwareentwickler bei der eurodata AG und interessiert sich privat insbesondere für Themen wie KI und IT-Security.

  • Docs-as-Code, arc42, AsciiDoc, Gradle & Co. im Einsatz - Ralf D. Müller

    Die Architekturdokumentation zählt zu den wichtigsten Artefakten eines Softwareprojekts. Leider wird diese nur allzu häufig aus Zeitgründen vernachlässigt und ist oft ein gutes Stück von der Realität entfernt. Eine große Hilfe wäre es, wenn man Architekturdokumentation als Teil vom Quellcode ansehen und mit ähnlichen Mitteln organisieren, refaktorisieren und automatisch veröffentlichen könnte. Genau dies ermöglicht das Open Source Projekt docToolchain [1]. Wir freuen uns daher sehr, dass wir hierzu Ralf D. Müller, den Autor der docToolchain, für einen Vortrag bei uns gewinnen konnten. In seinem Vortrag “Docs-as-Code, arc42, AsciiDoc, Gradle & Co.” wird er zeigen wie man mit Hilfe der docToolchain sehr effizient eine professionelle Architekturdokumentation erzeugen und verwalten kann. /Abstract Der Vortrag zeigt, wie Sie die Qualität Ihrer Dokumentation erhöhen und gleichzeitig den Aufwand zur Pflege reduzieren, indem Sie Ihre Dokumentation genauso wie Ihren Code verwalten und in den Build integrieren. Anhand des Beispiels einer Architekturdokumentation, zeigt Ralf wie Sie mit dem arc42-Template im AsciiDoc-Format und Gradle als Build-Tool einfach Diagramme in Ihre Dokumentation integrieren, Stakeholderspezifische Dokumente erzeugen und verschiedene Ausgabeformate generieren. Reviewfähige PDF-Dokumente? Publishing nach Confluence? Integration einer Präsentation? Alles kein Problem! Einige Teile der Doku können Sie sogar automatisiert testen. Zwischendurch bekommen Sie zahlreiche Tipps, wie und wo Sie systematisch den Aufwand für Dokumentation reduzieren können und trotzdem lesbare, verständliche und praxistaugliche Ergebnisse produzieren. /Bio Ralf D. Müller arbeitet als Architekt und Entwickler und erlebt täglich die Notwendigkeit effektiver Dokumentation. Er ist erklärter AsciiDoc-Fan und Committer bei arc42 sowie Gründer des docToolchain Projektes. [1] https://github.com/docToolchain/docToolchain

    8
  • Double Feature: Spring Reactive and Spring Apps on Microsoft Azure Cloud

    Zu diesem Treffen freuen wir uns das Microsoft Java Cloud Developer Advocacy Team und Pivotal als Gäste begrüßen zu dürfen. Die Speaker werden uns die neuesten Entwicklungen im Bereich reaktive Anwendungen mit Spring Technologien vorstellen und uns den Betrieb von Spring basierten Apps in Azure basierten Cloud Umgebungen näherbringen. Der Vortrag wird in englischer Sprache gehalten werden. This time we have a special event: we’re proud to have the Microsoft Java Cloud Developer Advocacy team visiting us for their joint Microsoft & Pivotal JUG tour through Germany. We’ll have two awesome talks about the latest and greatest stuff in the Spring and Azure Cloud space. - Going Reactive with Spring Boot - Taking Spring Apps for a Spin on Microsoft Azure Cloud We’re looking forward to seeing you all :) Microsoft & Pivotal will be sponsoring this event and eurodata AG will generously provide us with the facility and infrastructure. /Abstract Going Reactive with Spring Boot Reactive programming offers Java developers a way to build message-driven, elastic, resilient, and responsive services...yet many Java developers don't know where to begin. The Reactive Streams initiative provides a baseline and Project Reactor provides a great way to become immediately productive, leveraging reactive capabilities from end to end. Whether you're coming from a Spring MVC environment or a functional perspective, Reactor empowers you to spin up fully reactive Spring Boot 2 applications quickly and efficiently. /Abstract Taking Spring Apps for a Spin on Microsoft Azure Cloud Found your app built and ready for deployment? It’s time to take them for a spin! Whether you pack and deploy as a Docker container, standalone or on Kubernetes, you will learn and see first-hand what open source tools and services are available for bringing your apps to the Cloud with ease and full DevOps pipeline. This talk will bring you up to speed with current best practices for Cloud Native deployment on Azure, and upcoming features. /Bio Bruno Borges Bruno Borges (@brunoborges): Bruno is part of the Microsoft Azure Cloud Developer Advocacy group leading a team of great Java advocates in a mission to help Microsoft engineers enhance and advance the Azure developer experience for Java developers. Conference speaker, open source contributor, Java influencer, Twitter junkie, beer sommelier. Before Microsoft, Bruno was Oracle’s Product Manager responsible of Developer Relations Strategy for Oracle Cloud, Java, governance of open source projects on GitHub, and all things related to application development with Oracle technologies. /Bio Mario Gray Mario Gray (@mariogray): Currently a Principal Technologist for Pivotal. Mario has worked in software for startups and large financial services enterprises alike working across the stack from server/network design to application design. He's professionally written software to entertain, bring people together, and drive businesses using technologies like Linux/Solaris,SQL/NOSQL,AWS/SALT,Spring/J2EE. Mario is confident that the future of cloud computing belongs to Pivotal and the Spring team for some time to come. A longtime open-source champion, Mario is co-author of Apress’ Pro-Spring Integration, as well as a contributor to the Spring and Integration projects.

  • Kubernetes für Entwickler - Thomas Darimont & Dr. Philipp Walter

    Kubernetes ist eine Open Source Plattform zum Betrieb von Container-basierten Anwendungen und ist mittlerweile die Grundlage zahlreicher Cloud-Infrastrukturen. Kubernetes unterstützt hochskalierbare, selbstheilende Systeme welche durch eine eingebaute Lastverteilung auch hohen Besucherzahlen standhalten können. Weiterhin bieten Features wie ein rollierendes Upgrade die Möglichkeit einer unterbrechungsfreien Aktualisierung des Systems. Auch für Java Entwickler stellt Kubernetes einige nützliche Features bereit, welche wir im Rahmen dieses Vortrags gemeinsam entdecken werden. Dieser Vortrag bietet einen Überblick zu Kubernetes und zeigt anhand von ausgewählten Beispielen, wie man Java Anwendungen für den Betrieb auf Kubernetes anpassen und integrieren kann. Anschließend wird gezeigt, wie Kubernetes einfach und in Produktionsqualität auf einer Menge von virtuellen Maschinen installiert werden kann. Als Beispiel dienen drei VMware-VMs, wie sie in fast jedem Unternehmen eingerichtet werden können, ohne besondere Netzwerkkonfiguration und unter Berücksichtigung der üblichen Einschränkungen virtueller Umgebungen. Auf dieser Kubernetes-from-Scratch-Installation werden dann die Demos aus dem ersten Teil noch einmal deployed, womit sich der DevOps-Kreis schließt.

    10