Vorträge und Workshops

JavaLand 2017, 28.-30.03.2017 in Brühl

Asynchrone Anwendungen mit CompletableFuture

Für lange Zeit wurden die meisten Java-Anwendungen überwiegend oder vollständig blockierend/synchron implementiert. In den letzten Jahren zeichnet sich jedoch ein Trend zu vermehrtem Einsatz asynchroner Abläufe ab. Während die Entwicklung insbesondere mehrerer abhängiger asynchroner Aktionen jedoch früher kompliziert und tipp-intensiv war, vereinfacht CompletableFuture diese Aufgabe deutlich. In diesem Vortrag werden eingangs Gründe für den Einsatz von Asynchronität diskutiert und anschließend der Einsatz von CompletableFuture ausführlich erläutert.

Java 9 Meetup, 16.03.2017 in München

Java 9-Features: Alles außer Jigsaw

Java 9 hat noch viel mehr zu bieten als das Projekt Jigsaw. Der Talk zeigt die wichtigsten neuen Features, die man auf jeden Fall auf dem Schirm haben sollte, auch wenn man sich nicht gleich in die Untiefen der Modularisierung stürzen möchte.

JUG Hamburg, 08.03.2017, Hamburg

Microservices mit Java EE - Im Ernst? Wildfly Swarm, Payara & Co

Wer vorschlägt, Microservices mit Java EE zu entwickeln, erntet nicht selten zweifelnde Blicke. Denn schwergewichtige Application Server passen so gar nicht zu zeitgemäßen Deployment-Modellen. Stattdessen hat Spring Boot einige Popularität erlangt. Während dieses zwar Unterstützung für einige Java-EE-Standards wie JAX-RS mitbringt, entwickelt man damit letztlich jedoch immer eine Spring-Anwendung. Somit muss entsprechendes Spring Know-how mitgebracht oder aufgebaut werden. Aus diesem Grund stellt Boot nicht für jedermann die optimale Lösung dar. Entwickler, die es bevorzugen, komplett auf Basis des Java EE-Standards zu entwickeln, haben inzwischen jedoch einige Alternativen, wie etwa WildFly Swarm oder Payara Micro. In diesem Vortrag werden die unterschiedlichen Lösungen miteinander verglichen, der aktuelle Stand der Technik beleuchtet und an einem konkreten Beispiel demonstriert, wie Microservices auf Java EE Basis erstellt werden können.

Frankfurter Entwicklertag, 16.02.2017 in Frankfurt

Java EE - Quo vadis?

Der Bereich "Enterprise Java" befindet sich an einem Wendepunkt. Schon mehrfach totgesagt, dominiert Java weiterhin die Software-Entwicklung in vielen Unternehmen. Doch Themen wie Cloud oder Microservices bringen große Veränderungen mit sich: Der Application Server gilt vielerorts als überholtes Modell für das Deployment. Entwickler beklagen unzureichende Unterstützung für modernere Ansätze im Java EE-Standard. Und gleichzeitig finden schlanke Ansätze wie Wildfly Swarm oder Spring Boot zahlreiche Anhänger. In diesem Kontext wurden weitreichende Neuigkeiten für die kommenden Releases von Java EE angekündigt, mit denen die Plattform moderne Entwicklungsansätze besser unterstützen wird. Die ersten Neuerungen sollen bereits 2017 zur Verfügung stehen. Dieser Talk diskutiert den aktuellen Entwicklungsstand, wagt einen Blick in die Zukunft und zeigt, weshalb Java auch weiterhin eine gute Wahl für die Entwicklung moderner Unternehmensanwendungen sein wird.

Java Enterprise & Microservices Summit, 28.-30.11.2016 in Berlin

Und Action… Moderne Web-Anwendungen mit MVC und JAX-RS

Mit Java EE 8 wird der Standard ein neues Web-Framework namens MVC erhalten. Dieses wird den action-basierten Entwicklungsansatz unterstützen und damit eine Alternative für alle Entwickler darstellen, die sich mit JSF nicht recht anfreunden können. Zum Rendern der Views ist MVC nicht auf JSP oder Facelets beschränkt, sondern erlaubt die Verwendung beinahe beliebiger Technologien. Im Zusammenspiel mit JAX-RS entstehen moderne Web-Anwendungen mit REST-Backend, das gleichzeitig mobilen Apps oder Fremdsystemen einen Zugang zur Geschäftslogik bereit stellt. Dieser Workshop demonstriert it vielen praktischen Beispielen, wie solche Anwendungen mit MVC und JAX-RS entwickelt werden.

API Summit, 22.-23.11.2016 in Berlin

Fallstricke beim Design von Web APIs

Web APIs erfreuen sich seit geraumer Zeit großer Beliebtheit, bieten sie doch eine scheinbar perfekte Lösung zur Systemintegration. Jedoch gibt es auch einige Fallstricke, die unbedingt bedacht werden sollten. So führen Web APIs zu einer recht engen Kopplung, weshalb u.a. eine Strategie für den Umgang mit temporär nicht verfügbaren Endpunkten benötigt wird. Weitere Aspekte sind die fehlende Zuverlässigkeit von HTTP oder auch die Tatsache, dass SSL in vielen Produktivumgebungen keine ausreichende Sicherheit bietet. Dieser Talk diskutiert die wichtigsten Herausforderungen von Web APIs und zeigt Wege auf, wie diese zu meistern sind.

Der Application Server ist tot. Lang lebe der Application Server!

Klassische Application Server scheinen ausgedient zu haben, der Trend geht zu schlankeren Deployment Modellen wie Fat JARs und Embedded Servern. In diesem Zusammenhang hat Spring Boot einige Popularität erlangt. Während dieses zwar Unterstützung für einige Java-EE-Standards wie JAX-RS mitbringt, entwickelt man damit letztlich jedoch immer eine Spring-Anwendung. Somit muss entsprechendes Spring-Know-How mitgebracht oder aufgebaut werden. Daher stellt Boot nicht für jedermann die optimale Lösung dar. Entwickler, die es bevorzugen, komplett auf Basis des Java-EE-Standards zu entwickeln, haben inzwischen jedoch einige Alternativen, wie etwa Wildfly Swarm, KumuluzEE oder Payara Micro. In dieser Session werden die unterschiedlichen Lösungen miteinander verglichen, der aktuelle Stand der Technik beleuchtet und an einem konkreten Beispiel demonstriert, wie sich eine typische Web API auf diese Weise jeweils umsetzen lässt.

WJAX 2016, 07.-11.11.2016 in München

Eine MVC-Anwendung in 60 Minuten (JSR-371)

Java EE 8 wird ein neues Action-basiertes Webframework namens MVC erhalten. Es beruht sehr stark auf bestehenden Technologien wie JAX-RS oder CDI und bietet Entwicklern daher einen leichten Einstieg. Ein besonderes Feature ist die Möglichkeit, nahezu beliebige Technologien für die Views zu verwenden. Auch wenn es mit der Fertigstellung von Java EE 8 noch ein wenig dauern wird, kann man auf Basis der Referenzimplementierung von MVC bereits heute experimentieren. In dieser Session wird eine Webanwendung auf Basis von MVC per Live-Coding erstellt und die Konzepte des neuen Frameworks dabei veranschaulicht.

Java EE Microservices - Swarm, Payara Micro und KumuluzEE

Im Zusammenhang mit Microservices und modernen Deployment-Modellen hat Spring Boot einige Popularität erlangt. Während dieses zwar Unterstützung für einige Java-EE-Standards wie JAX-RS mitbringt, entwickelt man damit letztlich jedoch immer eine Spring-Anwendung. Somit muss entsprechendes Spring-Know-how mitgebracht oder aufgebaut werden. Daher stellt Boot nicht für jedermann die optimale Lösung dar. Entwickler, die es bevorzugen, komplett auf Basis des Java-EE-Standards zu entwickeln, haben inzwischen jedoch einige Alternativen, wie etwa Wildfly Swarm, KumuluzEE oder Payara Micro. In dieser Session werden die unterschiedlichen Lösungen miteinander verglichen, der aktuelle Stand der Technik beleuchtet und an einem konkreten Beispiel demonstriert, wie Java EE Microservices erstellt werden.

Java User Group Frankfurt, 28.09.2016 in Frankfurt

Und Action... Web-Anwendungen mit MVC (JSR-371)

Java EE 8 wird ein neues Action-basiertes Webframework namens MVC erhalten. Es beruht sehr stark auf bestehenden Technologien wie JAX-RS oder CDI und bietet Entwicklern daher einen leichten Einstieg. Ein besonderes Feature ist die Möglichkeit, nahezu beliebige Technologien für die Views zu verwenden. Auch wenn es mit der Fertigstellung von Java EE 8 noch ein wenig dauern wird, kann man auf Basis der Referenzimplementierung von MVC bereits heute experimentieren. In dieser Session wird eine Webanwendung auf Basis von MVC per Live-Coding erstellt und die Konzepte des neuen Frameworks dabei veranschaulicht.

Java Forum Stuttgart, 07.07.2016 in Stuttgart

MVC - Action-basierte Web-Anwendungen mit Java EE 8

Eine der spannendsten, aber auch kontroversesten Neuigkeiten des kommenden Java EE 8 ist ein neues Web-Framework. Es trägt den (etwas unglücklichen) Namen "MVC" und wird im Unterschied zu JavaServer Faces nicht komponenten- sondern action-basiert sein. Damit ermöglicht es einen Programmieransatz, den zwar viele Entwickler favorisieren, der vom Java EE-Standard jedoch bislang nicht unterstützt wurde. MVC basiert stark auf bestehenden Technologien wie CDI und JAX-RS, und bietet daher Entwicklern mit entsprechener praktischer Erfahrung einen besonders leichten Einstieg. In diesem Vortrag werden die Grundlagen von MVC, sowie der aktuelle Stand der Spezifikation vorgestellt. Teilnehmer lernen, wie MVC-basierte Anwendungen bereits heute auf Basis der Referenzimplementierung erstellt werden können, wie sich Web-Frontends mit REST-Backends verbinden lassen, und wie man eine Vielzahl von View-Technologien mit MVC kombinieren kann.

Java Enterprise & Microservices Summit, 15.-17.06.2016 in München

Kommunikationsmuster für Microservices

In einer Architektur, die auf Microservices basiert, stellt sich zwangsläufig früher oder später die Frage, wie diese miteinander kommunizieren sollen. Häufig kommt dabei REST zum Einsatz, eine gängige Alternative ist Messaging. Dieser Workshop diskutiert Vor- und Nachteile der beiden Ansätze und geht dabei insbesondere der Frage nach, wie das häufig formulierte Ziel der losen Kopplung am besten zu erreichen ist. Wir klären gemeinsam, was lose Kopplung eigentlich genau bedeutet, wie man sie messen kann, welche Varianten von Kopplung auftreten können und wo sie sich verbergen. So wird verdeutlicht, wie durch den Einsatz verschiedener Kommunikationsvarianten ganz unterschiedliche Grade von Kopplung erreicht werden können.

JAX-RS 2.1 und MVC: Ausblick auf Java EE 8

Mit JAX-RS enthält Java EE bereits sehr gute Unterstützung für die Implementierung von REST Services. Die API kommt immer häufiger auch als Backend für Web-Frontends zum Einsatz. Das kommende JAX-RS 2.1 soll diese Unterstützung nochmals deutlich erweitern. So sind spannende neue Features in Vorbereitung, wie etwa Server-Sent Events, verbesserter Support für Hypermedia, Declarive Security, ein Reactive Client-API oder die Integration mit JSON Binding. Eine andere interessante Neuerung in Java EE wird sein, dass die Plattform ein neues Web-Framework namens "MVC" erhält. Dabei handelt es sich um ein actionbasiertes Framework, das als Alternative zu JSF dienen soll. MVC wird sehr stark auf JAX-RS basieren und daher für viele Entwickler einen leichten Einstieg bieten. Dieser Workshop stellt MVC und die Neuerungen in JAX-RS im Einzelnen vor. Für beides stehen bereits erste Implementierungen bereit, auf deren Basis man erste Experimente machen kann.


JAX 2016, 18.-22.April 2016 in Mainz

Der glückliche Java-Entwickler

Nicht wenige Softwareentwickler sagen von sich, sie hätten ihren Traumberuf gewählt. Viele haben ihr Hobby zum Beruf gemacht. Da sollte man annehmen, dass die meisten auch große Freude an ihrer Arbeit haben. Doch ist das ein Trugschluss? In Gesprächen erfährt man häufig von Frust und Unzufriedenheit mit der Team- oder Projektsituation. Welche Voraussetzungen müssen also erfüllt sein, damit Softwareentwicklung Spaß macht? Welche Hindernisse gibt es regelmäßig? Welche Fehler werden verbreitet von Unternehmen gemacht? Als freiberuflicher Experte kommt man viel herum, sieht viele Teams und Projekte und erlebt so einige Anekdoten. In diesem Talk werden typische Beispiele aus fünfzehn Jahren Projekterfahrung vorgestellt, in denen Sie sich und Ihr Team sicher vereinzelt wiederfinden. Und es werden Wege aufgezeigt, um dem Ziel des glücklichen Java-Enwicklers ein großes Stück näherzukommen. Für Entwickler und Führungskräfte gleichermaßen geeignet.

Eine MVC-Anwendung in 60 Minuten

Java EE 8 wird ein neues Action-basiertes Webframework namens MVC erhalten. Es beruht sehr stark auf bestehenden Technologien wie JAX-RS oder CDI und bietet Entwicklern daher einen leichten Einstieg. Ein besonderes Feature ist die Möglichkeit, nahezu beliebige Technologien für die Views zu verwenden. Auch wenn es mit der Fertigstellung von Java EE 8 noch ein wenig dauern wird, so kann man auf Basis der Referenzimplementierung von MVC bereits heute experimentieren. In dieser Session wird eine Webanwendung auf Basis von MVC per Live-Coding erstellt und die Konzepte des neuen Frameworks dabei veranschaulicht.

Java Enterprise & Microservices Summit, 06.-11.12.2015 in Berlin

Kommunikationsmuster für Microservices

In einer Architektur, die auf Microservices basiert, stellt sich zwangsläufig früher oder später die Frage, wie diese miteinander kommunizieren sollen. Häufig kommt dabei REST zum Einsatz, eine gängige Alternative ist Messaging. Dieser Workshop diskutiert Vor- und Nachteile der beiden Ansätze und geht dabei insbesondere der Frage nach, wie das häufig formulierte Ziel der losen Kopplung am besten zu erreichen ist. Wir klären gemeinsam, was lose Kopplung eigentlich genau bedeutet, wie man sie messen kann, welche Varianten von Kopplung auftreten können und wo sie sich verbergen. So wird verdeutlicht, wie durch den Einsatz verschiedener Kommunikationsvarianten ganz unterschiedliche Grade von Kopplung erreicht werden können.

Blick nach vorn: JAX-RS 2.1 und MVC

Mit JAX-RS enthält Java EE bereits sehr gute Unterstützung für die Implementierung von REST Services. Die API kommt immer häufiger auch als Backend für Web-Frontends zum Einsatz. Das kommende JAX-RS 2.1 soll diese Unterstützung nochmals deutlich erweitern. So sind spannende neue Features in Vorbereitung, wie etwa Server-Sent Events, verbesserter Support für Hypermedia, Declarive Security, ein Reactive Client-API oder die Integration mit JSON Binding. Eine andere interessante Neuerung in Java EE wird sein, dass die Plattform ein neues Web-Framework namens "MVC" erhält. Dabei handelt es sich um ein actionbasiertes Framework, das als Alternative zu JSF dienen soll. MVC wird sehr stark auf JAX-RS basieren und daher für viele Entwickler einen leichten Einstieg bieten. Dieser Workshop stellt MVC und die Neuerungen in JAX-RS im Einzelnen vor. Für beides stehen bereits erste Implementierungen bereit, auf deren Basis man erste Experimente machen kann.


WJAX 2015, 02.-05.11.2015 in München

MVC (JSR 371) - Ein neues Webframework für Java EE

Der vielleicht am kontroversesten diskutierte JSR für Java EE 8 trägt den Namen "MVC". Dabei handelt es sich um ein Action-basiertes Webframework, das als Alternative (und nicht etwa als Ersatz) zum komponentenbasierten JSF dienen soll. In dieser Session werfen wir einen Blick auf den aktuellen Stand der Spezifikation von MVC und auch auf die bereits existierende Referenzimplementierung. Beides erlaubt einen guten Eindruck davon, wie MVC voraussichtlich aussehen wird. Zudem diskutieren wir gemeinsam, ob Java EE ein zusätzliches Webframework überhaupt benötigt.

Der glückliche (Java-)Entwickler

Nicht wenige Softwareentwickler sagen von sich, sie hätten ihren Traumberuf gewählt. Viele haben ihr Hobby zum Beruf gemacht. Da sollte man annehmen, dass die meisten auch große Freude an ihrer Arbeit haben. Doch ist das ein Trugschluss? In Gesprächen erfährt man häufig von Frust und Unzufriedenheit mit der Team- oder Projektsituation. Welche Voraussetzungen müssen also erfüllt sein, damit Softwareentwicklung Spaß macht? Welche Hindernisse gibt es regelmäßig? Welche Fehler werden verbreitet von Unternehmen gemacht? Als freiberuflicher Experte kommt man viel herum, sieht viele Teams und Projekte und erlebt so einige Anekdoten. In diesem Talk werden typische Beispiele aus fünfzehn Jahren Projekterfahrung vorgestellt, in denen Sie sich und Ihr Team sicher vereinzelt wiederfinden. Und es werden Wege aufgezeigt, um dem Ziel des glücklichen Java-Enwicklers ein großes Stück näherzukommen. Für Entwickler und Führungskräfte gleichermaßen geeignet.

JUG Darmstadt, 15.10.2015 in Darmstadt

MVC für Java EE

Mit Java EE 8 erhält die Plattform ein neues Webframework. Im Unterschied zu den JavaServer Faces (JSF) wird dieses nicht komponenten-, sondern actionbasiert sein. Eine Entscheidung, die durchaus kontrovers diskutiert wird. Während manche Entwickler eine jahrelange Hoffnung endlich erfüllt sehen, halten andere diesen Schritt für unnötig. Dieser Vortrag bietet einen Einstieg in die Thematik, skizziert Gründe für die Entscheidung und wirft einen ersten Blick auf die neue Spezifikation, die stark an JAX-RS angelehnt ist.

bedcon, 17.-18.09.2015 in Berlin

MVC - Actionbasierte Webentwicklung mit Java EE 8

Das kommende Java EE 8 beschert Entwicklern ein neues Web-Framework namens "MVC". Dabei handelt es sich um eine actionbasierte Alternative zum komponentenbasierten JSF. Das neue Framework wird unter anderem stark auf JAX-RS beruhen. Wer damit bereits Erfahrung gesammelt hat, sollte sich daher schnell zurecht finden. In dieser Session erfahren Teilnehmer alles Wissenswerte zu MVC. Mittels Live-Coding wird auf Basis des aktuellen Standes der Referenzimplementierung eine kleine Beispielanwendung erstellt.

Software Architecture Summit, 16.-18.09.2015 in Berlin

Sind Ihre (Micro-)Services lose gekoppelt?

Werden Anwendungs- oder Enterprise-Architekturen auf Basis von kooperierenden Services erstellt, zählt häufig die lose Kopplung dieser Services zu den genannten Architekturzielen. Interessanterweise stellt sich jedoch bei näherem Hinsehen oftmals heraus, dass die technische Umsetzung dieser Architekturen keineswegs zu einer besonders losen Kopplung geführt hat. Woran liegt das? Und was genau ist mit loser Kopplung eigentlich gemeint? Dieser Vortrag stellt mögliche Kriterien für die Beurteilung von Kopplung vor und zeigt auf, wie durch den Einsatz verschiedener Kommunikationsvarianten ganz unterschiedliche Grade von Kopplung erreicht werden können.