Java Libraries You Can’t Afford to Miss

Registration

Wir freuen uns über Eure Anmeldung (optional und unverbindlich) auf unserer Meetup-Seite.

Termin

Der Vortrag findet am 12.10.2017 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt (Anfahrtsbeschreibung).

Language

The talk will be held in English.

Abstract

The Java language has passed its 20th anniversary, and with it comes an incredible range of tools libraries to choose from; sometimes there are actually too many choices for the same task. This presentation covers those libraries that have risen to the top, having proved themselves to be worthy of a place in every developer’s toolbox, for both production and testing code. It also discusses some fairly new libraries that are bound to make a big impact in the ecosystem.

Bio

Andres is a Java/Groovy developer and a Java Champion with more than 17 years of experience in software design and development. He has been involved in web and desktop application development since the early days of Java. Andres is a true believer in open source and has participated on popular projects like Groovy, Griffon, and DbUnit, as well as starting his own projects (Json-lib, EZMorph, GraphicsBuilder, JideBuilder). Founding member of the Griffon framework and Hackergarten community event.

Datenbankzentrische Anwendungen mit Spring Boot und jOOQ

Registration

Wir freuen uns über Eure Anmeldung (optional und unverbindlich) auf unserer Meetup-Seite.

Termin

Der Vortrag findet am 28.09.2017 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt (Anfahrtsbeschreibung).

Abstract

In diesem Vortrag wird eine Variante datenbankzentrischer Anwendungen mit einer modernen Architektur vorgestellt, die sowohl in einer klassischen Verteilung als auch “cloud native” genutzt werden kann und dabei eine sehr direkte Interaktion mit Datenbanken erlaubt.

jOOQ ist eine von vielen Möglichkeiten, Datenbankzugriff in Java zu realisieren, aber weder eine Objektrelationale Abbildung (ORM) noch “Plain SQL”, sondern eine typsichere Umsetzung aktueller SQL Standards in Java. jOOQ “schützt” den Entwickler nicht vor SQL Code, sondern unterstützt ihn dabei, typsicher Abfragen in Java zu schreiben.

Spring Boot setzt seit 2 Jahren neue Standards im Bereich der Anwendungsentwicklung mit dem Spring Framework. Waren vor wenigen Jahren noch aufwändige XML Konfigurationen notwendig, ersetzen heute “opinionated defaults” manuelle Konfiguration. Eine vollständige Spring Boot Anwendung passt mittlerweile in einen Tweet.

Der Autor setzt die Kombination beider Technologien erfolgreich zur Migration einer bestehenden, komplexen Oracle Forms Client Server Anwendung mit zahlreichen Tabellen und PL/SQL Stored Procedures hinzu einer modernen Architektur ein. Das Projekt profitiert sehr davon, die Datenbankstrukturen nicht in einen ORM “zu zwängen”.

Der Vortrag demonstriert, wie Spring Boot genutzt wird, um den Kontext für jOOQ vorzubereiten (Datenbankverbindung, Transaktionen etc.) und anschließend fortgeschrittene, analytische Abfragen als HTTP apis zu veröffentlichen.

Auf dem Weg dorthin wird ebenfalls über Datenbankmigrationen gesprochen und wie auch an dieser Stelle die Magie von Spring Boot eingesetzt werden kann, um Entwicklungs-, Test- und Produktivdatenbanken synchron zu halten.

Kann Domain Driven Design von spezialisierten SQL-Abfragen profitieren? Die Gefahr ist groß, JPA-Entities mit Entitäten aus Evans’ DDD Buch zu verwechseln und zu meinen, man ist fertig mit DDD. Vielleicht ist es eine gute Idee, auch für DDD Entitäten und Value-Objekte spezialisierte Abfragen zu verwenden.

Bio

Michael Simons ist Software-Architekt (CPSA-F) bei ENERKO Informatik in Aachen und entwickelt dort GIS-, EDM- und Vertriebsmanagement-Systeme für Stromnetzbetreiber und Energielieferanten. Michael ist Mitglied des NetBeans Dream Team und Gründer der Euregio JUG. Er schreibt in seinem Blog info.michael-simons.eu über Java, Spring und Softwarearchitektur.

Auf Twitter unterwegs als rotnroll666, unter anderem mit Java, Music und den kleineren und größeren Problemen als Ehemann und Vater von 2 Kindern.

Serverless Computing

Registration

Wir freuen uns über Eure Anmeldung (optional und unverbindlich) auf unserer Meetup-Seite.

Termin

Der Vortrag findet am 27.07.2017 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt Anfahrtsbeschreibung. In Kooperation mit der DevOps Rhein-Neckar.

Abstract

Serverless Computing ermöglicht es, Anwendungen und (Micro-)Services zu bauen und zu betreiben, ohne eine dedizierte Infrastruktur verwalten zu müssen. Der Code wird natürlich noch auf Servern ausgeführt, aber das gesamte Server-Management wird vom Cloud-Anbieter übernommen. Dieser kümmert sich um Verfügbarkeit, Skalierung, Ressourcen-Management und die entsprechende Mutli-Tenancy-Fähigkeit der Systeme und Infrastruktur. Der Cloud-Benutzer kann sich voll und ganz auf die Ausführung und das Monitoring seiner Funktionen und Services konzentrieren und bezahlt nur das, was er wirklich nutzt. Serverless ist aber weit mehr als nur Function-as-a-Service (FaaS). Außerdem heißt “No Server” nicht gleich “No Ops” - der DevOps-Gedanke wird mit Serverless wichtiger als je zuvor.

In meinem Vortrag zeige ich Beispiele, wie zeitgemäße, aber serverlose Microsservice Cloud Architekturen am Beispiel der AWS Cloud schnell und agil aufgebaut und betrieben werden können. Hierbei beleuchte ich u.a. die Konzepte von AWS Lambda, Amazon API-Gateway und DynamoDB und baue mit dem Serverless-Framework eine lauffähige Anwendung während des Talks.

Bio

Niko Köbler (@dasniko, www.n-k.de) macht irgendwas mit Computern, oft im Web, meistens auf der JVM.
Er ist Co-Lead der JUG Darmstadt, Autor für Fachmagazine und Online-Portale und tritt als Sprecher auf internationalen Technologie-Konferenzen auf.
Zur Zeit schreibt er das “Serverless Computing” Buch (@serverlessbuch), welches im Herbst dieses Jahres im Verlag entwickler.press erscheinen wird.

Spring Data MongoDB Deep Dive

Registration

Wir freuen uns über Eure Anmeldung auf unserer Meetup-Seite.

Language

The talk will be given in English.

Termin

Der Vortrag findet am 05.07.2017 um 19:00 Uhr in der MAFINEX, Bauteil C, Raum C4 im Erdgeschoss, in Kooperation mit der MongoDB Mannheim User Group statt.

Abstract

Spring Data is a high-level project in the Spring project portfolio for relational and NoSQL data stores. Spring Data MongoDB provides Document-to-Object mapping, an abstraction to work with MongoDB data and means to use MongoDB features efficiently. I’ll walk you in the More-Code-Than-Slides session through Spring Data basics, we’ll have a detailed look on the MongoDB Aggregation framework and you’ll learn which Mongo 3.4 features you can use already today with Spring Data MongoDB.

Bio

Mark Paluch (@mp911de) is a Software Craftsman working as Spring Data Engineer at Pivotal. He co-maintains MongoDB, Redis and Apache Cassandra modules and he’s project lead of the Lettuce Redis driver. Mark speaks regularly at German and international conferences and publishes articles about his work.

Lightning-Talks

Registration

Wir freuen uns über Eure Anmeldung (optional und unverbindlich) auf unserer Meetup-Seite.

Termin

Der Vortrag findet am 01.06.2017 um 19:00 Uhr in der Uni Mannheim A5, 6 im Raum C013 statt (Anfahrtsbeschreibung).

Vorträge

19:00 Uhr: Serverless, auf dem Weg zu NoOps
Alex Krause

Auf dem Weg zu NoOps, für einen Euro im Monat Das Serverless Framework ermöglicht schnelle Entwicklung von Serverless Anwendungen, ein einfaches und automatisiertes Deployment auf AWS Lambda und die Integration mit AWS API Gateway. Aha und jetzt? Wir zeigen euch wie man mit wenig Aufwand und geringen Kosten Dienste in der Cloud betreibt.

Link zu den Folien.

19:30 Uhr: VersionEye Maven Plugin
Robert Reiz

Das VersionEye Maven Plugin prüft alle Abhängigkeiten zur Build Zeit und bricht den Build wenn eine Abhängigkeit eine bekannte Sicherheitslücke hat oder die Lizenz gegen eine vordefiniert Lizenz Whitelist verstösst.

Folien: Slideless, siehe github.com/versioneye/versioneye_maven_plugin.

20:00: Fehler als Werte - Ausnahmebehandlung in der funktionalen Programmierung
Mario Philipps

In imperativen Programmiersprachen erfolgt Fehlerbehandling in der Regel über das Werfen von Exceptions. Funktionale Sprachen hingegen betrachten Fehler meist als Werte, die ebenso wie andere Werte behandelt werden können.

Der Vortrag vergleicht den funktionalen mit dem imperativen Ansatz, und zeigt Vor- und Nachteile auf.

Link zu den Folien.