• JUnit 5 - Platform & Jupiter API - Christian Stein

    eurodata AG

    An diesem Abend freuen wir uns wieder einen ganz besonderen Gast begrüßen zu dürfen: Christian Stein von der Firma Micromata GmbH wird uns in seinem Vortrag einen Überblick zu den neuen Möglichkeiten des bekannten Test-Frameworks JUnit 5 präsentieren. Darüber hinaus dürfen wir auch einen Blick hinter die Kulissen des JUnit 5 Open Source Projekts werfen, an dem Christian selbst tatkräftig mitarbeitet. Wie freuen uns auf einen interessanten Abend! /Abstract In diesem Vortrag wird über die Motivation für die Neuentwicklung sowie über kleine und große Designentscheidungen des JUnit 5-Teams berichtet. Weiter wird die neue, stark modulare Architektur vorgestellt, die mit besonderem Fokus auf Erweiterbarkeit und Integrierbarkeit in Tools entworfen wurde. So wird erstmalig explizit zwischen einer Basis-Plattform und einzelnen Testengines unterschieden. Dies ermöglicht die Koexistenz verschiedener Testengines, so können z.B. JUnit 4- und JUnit 5-Tests gemeinsam ausgeführt werden. Die Jupiter API stellt das neue Programmiermodell dar und bietet neben vielem Bewährten auch manche interessante Neuerungen für Entwickler wie etwa Parameter Injection, Dynamische oder Nested Tests. Hinzu kommt ein komplett neues Erweiterungskonzept: Extensions. /Bio Christian Stein entwickelt seit Version 1.0 mit Java und ist selbst Mitglied im JUnit 5 Team und in vielen Open Source Projekten als Committer aktiv, darunter Apache Maven und OpenJDK. Christian arbeitet als Software Entwickler bei der Micromata GmbH. github - /sormuras twitter - @sormuras

  • Apache IoT: A Trip from the Chip to the Cloud - Christofer Dutz

    Zum abschließenden Java User Group Treffen in 2019 können wir euch nochmal ein besonderes Highlight präsentieren. Diesmal dürfen wir Christopher Dutz bei uns als Gast begrüßen. Christopher ist VP des Apache PLC4X Projekts und wird uns einen Überblick über das IoT Ökosystem der Apache Foundation bieten und einige ausgewählte Projekte an Beispielen demonstrieren. /Abstract There’s currently a lot of momentum in the IoT sector of Open Source. Sometimes it’s difficult to keep track of all of the projects that are available and are currently evolving. In this talk I’ll take you on a ride through the projects the Apache Software Foundation (ASF) has to offer. We’ll start this journey on embedded hardware and go all the way up into the cloud. Projects we’ll be talking about (currently ... list is naturally subject to change): Apache MyNewt, Apache PLC4X, Apache NiFi, Apache Camel, Apache IoTDB ,Apache Kafka, StreamPipes. I hope after this session you’ll all know what tools are available in the ASF IoT toolkit and what you can use them for. /Bio Christofer Dutz arbeitet als Senior IT Consultant bei der codecentric AG und schwimmt gerne mal abseits des Mainstreams. Seine Leidenschaft ist es, neue Wege zu beschreiten – sei es, neue Technologien überhaupt erstmal für die Masse nutzbar zu machen oder Etabliertes neu zu kombinieren. Während seiner Arbeit, aber auch privat, investiert er fast seine komplette Freizeit in diverse Projekte bei der Apache Software Foundation.

    1
  • Chaos Engineering - Surviving in Production - Johannes Edmeier

    /Abstract Die Komplexität in modernen und verteilten Architekturen nimmt immer weiter zu. Wir haben es erfolgreich vollbracht, unsere Applikation in kleine und wartbare Komponenten zu zerlegen. Jede einzelne Komponente lässt sich automatisiert und zu jeder Zeit in Produktion bringen. Bei der Entwicklung wurde viel Aufwand betrieben, die Testabdeckung möglichst hoch zu halten. Jedes Release muss erfolgreich durch unsere Pipeline und unzählige Unit-, Integrations- und Akzeptanztests bestehen. Aber warum haben wir kurz vor der Ankunft am schönsten Ort der Welt (Produktion) dieses ungute Gefühl? Viele offene Fragen lassen sich nicht durch einfache Unit- oder Integrationstests beantworten. Hier kommt das Thema Chaos Engineering ins Spiel. Es hilft uns, des Chaos’ Herr zu werden und bitte behaupten Sie nun nicht, bei Ihnen herrsche kein Chaos! Es gibt eine ganze Industrie, die uns Ticketsysteme verkauft, mit denen wir das Chaos dokumentieren können. Wie man Chaos Engineering einführt, erfahren sie in diesem Talk. Anhand von praxisnahen Beispielen lernen Sie, was alles schief gehen kann. Zum Ende des Talks führen wir in einer verteilten Anwendung einige Chaosexperiment durch und ihr bekommt einen ersten Eindruck von den Möglichkeiten. /Bio Benjamin Wilms (@MrBWilms) arbeitet als Senior Developer & Chaos Engineer bei der codecentric AG. Seine aktuellen Schwerpunktthemen sind Skalierbarkeit und Resilience in verteilten Anwendungen. Er teilt und diskutiert seine Ideen regelmäßig als Speaker auf Konferenzen sowie als Autor von Artikeln und Blogposts. Im April 2018 hat er den Chaos Monkey for Spring Boot als Open-Source-Projekt veröffentlicht und verantwortet die weitere Entwicklung.

    2
  • Domain Driven Design in der Praxis - Michael Mirold

    eurodata AG

    Kaum zu glauben, aber wahr: Dies ist schon unser 50. Treffen der Java User Group Saarland! In den letzten Jahren und Monaten haben wir regelmäßig viele interessante Themen behandelt, neue Technologien erforscht und gemeinsam viel Spaß gehabt. Als Java User Group Saarland möchten wir uns bei allen Teilnehmern, Speakern und natürlich unseren Sponsoren, der eurodata AG und die infoserve GmbH, herzlichst für die großartige Zusammenarbeit bedanken! Mittels eurer Hilfe konnten wir bereits ein stattliches Speaker-Lineup auf die Bühne stellen und durch viele hochqualitative Vorträge und hohe Teilnehmerzahl eine beachtliche Java Community im feinen Saarland aufbauen. Wir wünschen uns, dass Ihr uns noch viele Jahre treu bleibt und wir weiterhin gemeinsam auf Entdeckungsreise durch den Java-Technologie-Dschungel mäandern können. Zu unserer Jubiläumsveranstaltung freuen wir uns euch wieder mal einen interessanten Vortrag bieten zu können. Michael Mirold, Gründer und Vorstand der Testfabrik AG wird uns das Thema Domain Driven Design mit vielen Beispielen aus der Praxis näher bringen. / Abstract Microservices sind in aller Munde. Und Leute, die über Microservices sprechen, betonen gerne, dass der Einsatz der Modellierungs-Methode "Domain Driven Design" (DDD) bei der Implementierung Vorteile bringen kann; denn DDD verspricht, in komplexen Anwendungsdomänen ein wartbares und verständliches Software-Design zu ermöglichen. Dabei ist DDD selbst ein umfangreicher Baukasten und es passiert schnell, dass dieser "Hammer" zu unreflektiert eingesetzt wird. Die resultierende Software wird dann schnell sehr komplex und die Arbeit mit ihr fühlt sich schwerfällig und "boiler-platy" an. Nach vielen Jahren als bekennender DDD-Fanboy weiß ich das genau ;-) In diesem Talk stelle ich kurz die Grundlagen von Domain Driven Design vor und zeige, wie und wo es sinnvoll eingesetzt werden kann. Ein wichtiger Bestandteil des Vortrags sind aber Beispiele, bei denen Praktiken von DDD (bzw. deren falsche Anwendung) mehr Leid als Freude hervorrufen, und wie man diese Situationen vermeiden kann. Wir werden unter anderem über folgende Themen sprechen: * Was sind DDD Bounded Contexts und warum bilden sie eine gute Grundlage für Microservices? * Muss alles so kompliziert sein? Meine Spring-Boot-Anwendung nutzt kein DDD. Geht auch! * Event-Sourcing und CQRS: Worum geht es und wann ist das sinnvoll? / Bio Michael Mirold ist Gründer und Vorstand der Testfabrik AG, die sich mit innovativen Produkten auf das automatisierte Testen von Webanwendungen spezialisiert hat. Vor seiner Zeit bei Testfabrik leitete er mehrere Jahre als CTO ein Unternehmen im Bereich IT-Security. Von 2007 bis 2012 war er als freier Mitarbeiter beim ZDF beschäftigt, wo er unter anderem die Entwicklung der Stream-Verwaltung der ZDF-Mediathek verantwortete und als technischer Architekt des ZDF den Relaunch der Medienportale zdf.de, heute.de und zdfsport.de begleitete. Michael Mirold hat in Saarbrücken Informatik mit den Schwerpunkten Netzwerkanalyse und Software-Engineering studiert.

    8
  • Domain Prototyping or "Design Is How It Works" - Tobias Goeschel

    Zu unserem Meetup Nr. 49 freuen wir uns sehr Tobias Goeschel von der codecentric AG als Gast begrüßen zu dürfen. Tobias wird uns die Entwurfsmethode “Domain Prototyping” vorstellen und aufzeigen wie man damit komplexe Domänen erfassen und inkrementell konzeptualisieren kann. /Ablauf Ab 18 Uhr gibt es einen 45 min Kurzvortrag zum Thema Java Keystores von Thomas Darimont. Da Tobias mit dem Zug aus Frankfurt anreisen wird, beginnt sein Vortrag erst um 19 Uhr. Der Vortrag wird auf Deutsch gehalten werden, die Folien werden auf englisch sein. /Abstract Gutes Design von Software Systemen benötigt - sehr ähnlich wie gutes Produktdesign - eine umfassende Kenntnis des Problemraums. Und doch optimieren wir Lösungsarchitekturen häufig für eine schnelle Auslieferung - und treffen dabei weitreichende Entscheidungen über Struktur und Technologiestack zu einem Zeitpunkt, an dem wir noch wenig bis gar nichts über die Probleme wissen, die es zu lösen gilt. Dieser Talk möchte eine Alternative vorstellen: Eine inkrementelle, evolutionäre Herangehensweise an den Aufbau komplexer Systeme, die - ausgehend von der Fachdomäne - von innen nach außen organisches Wachstum anstrebt und für schnelles Feedback und Lernen optimiert ist. /Bio Tobias begann seine Karriere 1997 als freiberuflicher Webentwickler und hat seitdem an hunderten von Projekten in vielen unterschiedlichen Rollen, Kontexten und Industriezweigen mitgewirkt. Seit er 2014 bei der codecentric AG ein Zuhause gefunden hat, hilft er als Principal Consultant und Trainer seinen Kunden dabei, nicht nur bessere Produkte zu entwickeln, sondern auch die Art und Weise zu verbessern, wie diese hergestellt werden. Er ist ein engagierter Fürsprecher für kollaborative Arbeitsumfelder, teambasiertes Wissensmanagement und Diversität, und ist Co-Organizer der SoCraTes Konferenz (https://socrates-conference.de)

  • Jenkins-X - CD for the Kloud - Gerd Aschemann

    eurodata AG

    Für dieses Event freuen wir uns Gerd Aschemann bei uns begrüßen zu dürfen. Gerd wird uns das Tool Jenkins-X vorstellen und zeigen wie man damit im Handumdrehen CI/CD Pipelines in der Cloud und On-Prem hochziehen kann. /Abstract Cloud schreibt man im Zeitalter von Kubernetes mit K! Alle Ressourcen werden dynamisch von Kubernetes verwaltet. Alle? Build und Deployment über verschiedene Stages liegt oft noch außerhalb, z.B. in einem Build-Server und verschiedenen Repositories (Artefakte, Docker-Images). Mit Jenkins-X wandert alles in einen Kubernetes-Cluster und gewinnt so die nötige Dynamik: - Setup der nötigen Infrastruktur in Kubernetes (Jenkins, Nexus, Docker-Registry, ...), - Aufsetzen von Build-Pipelines für jeden Branch und jeden Pull-Request, - Deployment in verschiedene Stages (mit Helm), - Mandantenfähigkeit (Builds und Environments nach Teams unterscheiden), - Steuerung von versionierten Deployment-Konfigurationen (GitOps), - Import von bestehenden Projekten, - Setup neuer Projekte auf Basis gängiger Microservice-Frameworks (z.B. Spring Boot), u.v.a.m. Jenkins-X kommt als Entwickler-freundliches Command-Line Tool und bündelt eine Vielzahl von Komponenten hinter einer einheitlichen (opinionated) Fassade. Der Vortrag erklärt die Architektur und Konzepte und führt an ein paar kleinen Beispielen typische Use-Cases vor. /Bio Gerd Aschemann berät seine Kunden freiberuflich als Entwickler und Software-Architekt. Sein Schwerpunkt sind dabei oft die Themen Build-/Konfigurations-/Versionsmanagement, der Aufbau von Continuous Integration-/Delivery-Plattformen und Transformation und Neu-Entwicklung von Java Enterprise-Anwendungen. Gerd hat an der TU Darmstadt Informatik studiert und als wissenschaftlicher Mitarbeiter über "Management Verteilter Systeme" geforscht. In den letzten Jahren hat er sich als Mitorganisator der JUG Darmstadt und der Javaland für die Community der deutschen JVM-Nutzer engagiert.

    5
  • Java After X - Neue Features in Java 11, 12, 13 - Thomas Darimont

    /Abstract Im Anschluss an den vorangegangen Vortrag “Java After Eight” von Frank Dietrich setzen wir unsere Erkundung des Java Ökosystems fort und wenden uns in diesem Vortrag einigen ausgesuchten Neuerungen aus Java 11, 12 und 13 zu. Dabei beleuchten wir sowohl neue JVM- und sowie Sprachfeatures als auch nützliche Ergänzungen der Standard APIs. /Bio Thomas Darimont arbeitet als Fellow bei der codecentric AG in Münster. Dort hilft er Kunden bei der Implementierung zentralisierter Identity-Management-Plattformen. Davor arbeitete er als Principal Software Engineer im Spring-Data-Team bei Pivotal. Er hat mehr als fünfzehn Jahre Erfahrung in der Entwicklung von Enterprise Applications und Open-Source-Projekten mit Java und .NET. Seine Arbeitsschwerpunkte liegen in den Bereichen Softwarearchitektur, Spring-Ökosystem, Performance Tuning und Security. In seiner Freizeit organisiert er gerne Community Meetups und arbeitet an Open-Source-Projekten wie Keycloak, Spring und Cloud Foundry mit.

    2
  • Java After Eight - Neue Features in Java 9,10,11,12

    eurodata AG

    Hallo zusammen, nach einer kleinen Pause haben wir wieder einen interessanten Vortrag für euch. Auch wenn im März 2019 die GA Version von Java 12 offiziell released wurde sind viele Teams in ihren Projekten immer noch mit Java 8 unterwegs. In den neuesten Versionen hat die Java Plattform einige neue nützliche Features erfahren, welche die Entwicklung von Anwendungen erleichtern können und einige performance Verbesserungen möglich machen. Daher freuen wir uns, dass Frank Dietrich uns in seinem Vortrag die Neuerungen der letzten Java Versionen näher bringt, sowie einige nützliche Tipps zum Einsatz zeigt. /Abstract Für alle, die derzeit noch Java 8 einsetzen, aber in naher Zukunft auf eine aktuelle Version umsteigen wollen. Der Vortrag soll eine kurze Übersicht über Änderungen und Neuerungen in den Java Versionen 9 bis 12 bieten. /Bio Frank arbeitet als Software Developer bei Clearstream Services S.A. in Luxembourg und beschäftigt sich mit EAI Fragestellungen und der Entwicklung von serverseitigen Java Anwendungen. In seiner Freizeit organisiert er die Java User Group Trier.

    2