<?xml version="1.0" encoding="UTF-8"?><urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:news="http://www.google.com/schemas/sitemap-news/0.9" xmlns:xhtml="http://www.w3.org/1999/xhtml" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1" xmlns:video="http://www.google.com/schemas/sitemap-video/1.1"><url><loc>https://videos.ijug.eu/about/instance/home</loc></url><url><loc>https://videos.ijug.eu/videos/browse?scope=local</loc></url><url><loc>https://videos.ijug.eu/w/t2fgSzkcdGdQcr9AQiTKzx</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/596f696c-953d-46d2-a027-1a370c3ee9ad.jpg</video:thumbnail_loc><video:title>Microservices for the Masses with Spring Boot, JHipster, and OAuth</video:title><video:description>Speaker: Matt Raible
Recorded: 2020-03-11

microservices are being deployed by many java hipsters. if youre working with a large team that needs different release cycles for product components, microservices can be a blessing. if youre working at your vw restoration shop and running its online store with your own software, having five services to manage and deploy can be a real pain. this presentation will show you how to use jhipster to create angular + spring boot apps with a unified front-end. you will leave with the know-how to create your own excellent apps!

matt raible is a well-known figure in the java community and has been building web applications for most of his adult life. for over 20 years, he has helped developers learn and adopt open source frameworks and use them effectively. hes a web developer, java champion, and developer advocate at okta. matt is a frequent contributor to open source and a big fan of java, intellij, typescript, angular, and spring boot. he’s a member of the bad-ass jhipster development team and loves classic vws. you can find him online at @mraible and raibledesigns.com.

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/dad348b6-fa23-4ad9-9128-7575d734de2d/133ddbfa-ee1d-448a-b2f3-26b0668315b5-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/t2fgSzkcdGdQcr9AQiTKzx</video:player_loc><video:duration>4908</video:duration><video:rating>5</video:rating><video:view_count>9</video:view_count><video:publication_date>2025-12-19T14:12:12.208Z</video:publication_date><video:tag>Java</video:tag><video:tag>Microservices</video:tag><video:tag>Spring Boot</video:tag><video:tag>JHipster</video:tag><video:tag>OAuth</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/mNZdzCyAr7rLn9Zcttj5vJ</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/48c8175c-6538-4c53-961c-7d67e6ac2767.jpg</video:thumbnail_loc><video:title>Full Stack Reactive with React and Spring WebFlux</video:title><video:description>Speaker: Matt Raible
Recorded: 2020-03-12

You have streaming data and want to expose it as reactive streams with Spring Boot. Great! Spring WebFlux makes that pretty easy. But what about the UI? Can you stream that data to the UI and have it be reactive and constantly updating too? This session explores techniques for making your app fully reactive with Spring WebFlux and React. Mostly live coding, with plenty of time for Q &amp; A in the midst of it all.

matt raible is a well-known figure in the java community and has been building web applications for most of his adult life. for over 20 years, he has helped developers learn and adopt open source frameworks and use them effectively. hes a web developer, java champion, and developer advocate at okta. matt is a frequent contributor to open source and a big fan of java, intellij, typescript, angular, and spring boot. he’s a member of the bad-ass jhipster development team and loves classic vws. you can find him online at @mraible and raibledesigns.com.

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/a8863f6e-bb0c-4e95-b96f-3aaa2a53f7ec/654ab444-4434-42fe-a5bc-107191da66b7-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/mNZdzCyAr7rLn9Zcttj5vJ</video:player_loc><video:duration>5480</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2025-12-20T08:30:41.515Z</video:publication_date><video:tag>Java</video:tag><video:tag>Spring Boot</video:tag><video:tag>WebFlux</video:tag><video:tag>React</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/4tkbHjCPgN1F3499oqMmyc</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/bdabb134-e883-4c23-aeb8-05c7d87d8824.jpg</video:thumbnail_loc><video:title>Java &amp; Spring Boot im Container</video:title><video:description>Sprecher: Michael Vitz
Aufgenommen: 2020-04-15

Um Anwendungen zu deployen haben sich Container mittlerweile flächendeckend etabliert. Doch bevor wir einen Container deployen können müssen wir diesen erst einmal bauen. Hierzu gibt es innerhalb des Java-Universums mittlerweile eine große Anzahl an Möglichkeiten. Neben dem bauen gibt es zudem den ein oder anderen Fallstrick um einen Java-Prozess sauber innerhalb des Containers laufen zu lassen.

In dieser Session schauen wir uns deshalb mehrere Wege an eine kleine Spring Boot Anwendung in einen Container zu packen und diese anschließend sauber in diesem auszuführen. Die vorgestellten Tools und Tipps können dabei fast alle auch auf eine nicht Spring-Anwendung angewandt werden.

Michael verfügt über mehrjährige Erfahrung in der Entwicklung, Wartung und im Betrieb von Anwendungen auf der JVM. Aktuell beschäftigt er sich vor allem mit den Themen Microservices, Cloud-Architekturen, DevOps, Spring-Framework und Clojure.

Als Senior Consultant bei INNOQ hilft er Kunden wartbare und wertschaffende Software zu entwickeln. Nebenbei ist er Autor einer Kolumne im JavaSPEKTRUM, in der er alle zwei Monate einen Artikel zu den Themen JVM, Infrastruktur und Architektur veröffentlicht.

Twitter: @michaelvitz

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/1c1c521d-4e55-4992-a23a-ddd3a9b83563/fa3550d8-1c6e-43e8-9c3b-f08e51d6af6e-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/4tkbHjCPgN1F3499oqMmyc</video:player_loc><video:duration>4739</video:duration><video:rating>5</video:rating><video:view_count>11</video:view_count><video:publication_date>2025-12-21T09:44:28.451Z</video:publication_date><video:tag>Java</video:tag><video:tag>Spring Boot</video:tag><video:tag>Container</video:tag><video:tag>Docker</video:tag><video:tag>Podman</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/igZ5wDsiBswTUEDuPdabB1</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/73bb4097-48e2-47be-9f6a-e6f72090d4e3.jpg</video:thumbnail_loc><video:title>JUnit 5: Mehr Spaß und weniger Bauchschmerzen beim Entwickeln durch clevere Tests</video:title><video:description>Sprecher: Michael Inden
Aufgenommen: 2020-04-21

Viele Softwareentwickler*innen lieben Herausforderungen und das Austüfteln von Lösungen. In der idealen Welt funktioniert natürlich alles auf Anhieb, doch die Realität sieht leider häufig ganz anders aus. Wie erreichen wir gleich von Anfang an eine hohe Qualität?

JUnit 5 ist eine tolle Weiterentwicklung des weitverbreiteten Testframework JUnit und unterstützt uns dabei für eine hohe Qualität unserer Programme zu sorgen.

Dieser Vortrag zeigt, wie wir mithilfe von JUnit 5 passende und wartbare Tests erstellen, etwa indem wir Äquivalenzklassen und Grenzwerte prüfen. Dazu werden grundlegende Assertions vorgestellt. Ergänzend werden Time-outs sowie das Testen von Exceptions, aber auch parametrisierte Tests thematisiert. Diese erlauben es, auf einfache Weise viele Wertebelegungen bequem und verständlich zu testen. Dieses Feature sollte jeder Java-Entwickler kennen.

Abgerundet wird der Vortrag durch die Vorstellung von Test Smells, also Dingen, die wir beim Testen vermeiden sollten.

Michael Inden ist Oracle-zertifizierter Java-Entwickler mit über zwanzig Jahren Berufserfahrung bei diversen internationalen Firmen. Dort hat er in verschiedenen Rollen etwa als Softwareentwickler, -architekt, Consultant, Teamleiter und Trainer gearbeitet. Zurzeit ist er als CTO und Leiter Academy bei der ASMIQ AG in Zürich tätig.

Sein besonderes Interesse gilt dem Design qualitativ hochwertiger Applikationen mit ergonomischen GUIs sowie dem Coaching. Michael Inden hat diverse Schulungen und Vorträge geleitet, sowohl intern als auch extern, etwa bei Firmen, bei der Java User Group Switzerland sowie bei Konferenzen wie der JAX/W-JAX, CH Open und den IT-Tagen.

Darüber hinaus ist er als Fachbuchautor tätig. Seine Bücher „Der Weg zum Java-Profi“, „Java-Profi: Persistenzlösungen und REST-Services“, Java 9 – Die Neuerungen“ und „Java – Die Neuerungen in Version 9 bis 12“ sind alle im dpunkt.verlag erschienen.

Organisiert von:...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/8be6b07b-71c0-4b4c-bd18-0fad8b08e95e/28cead1a-c82c-4c64-a528-c0145310d77c-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/igZ5wDsiBswTUEDuPdabB1</video:player_loc><video:duration>5948</video:duration><video:rating>5</video:rating><video:view_count>18</video:view_count><video:publication_date>2025-12-22T08:31:41.159Z</video:publication_date><video:tag>Java</video:tag><video:tag>JUnit</video:tag><video:tag>Testing</video:tag><video:tag>Assertions</video:tag><video:tag>Exceptions</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/xjhdF7KoFw5kXEYse4Cx4M</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/053691bf-7c32-40bd-8ad7-7d131dc0a9e1.jpg</video:thumbnail_loc><video:title>Quarkus: The Black Swan of Java</video:title><video:description>Speaker: Max Rydahl Andersen
Recorded: 2020-04-30

Quarkus flips your assumption about how fast and small Java can be. It gives you super-fast start-up times and small memory and disk footprint. Perfect fit for usage in Cloud Native and Serverless applications.

Come to this talk to hear about an introduction to Quarkus, how it was made, what it does and why it makes Java relevant again. We will also cover the brand new features of Quarkus 1.4 and 1.5 that makes Quarkus go beyond just containers and microservices.

Max Rydahl Andersen, Distinguished Engineer working for Red Hat on the Quarkus project.

Max has been working in professional open-source the last 15 years being a contributor to core projects like Hibernate/Hibernate Tools, WildFly, Seam, and Ceylon. Max lead the team behind JBoss Tools and Developer Studio its first 10 years and been greatly involved in tooling especially around Eclipse and recently focused on developer experience around Kubernetes and OpenShift.

Twitter: @maxandersen

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/fd98ae6c-54c6-4ef0-949d-84470c29dca7/2e6f0727-a06e-4751-9359-926067cee945-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/xjhdF7KoFw5kXEYse4Cx4M</video:player_loc><video:duration>5218</video:duration><video:rating>5</video:rating><video:view_count>14</video:view_count><video:publication_date>2025-12-23T08:06:30.946Z</video:publication_date><video:tag>Java</video:tag><video:tag>Quarkus</video:tag><video:tag>Cloud Native</video:tag><video:tag>Serverless</video:tag><video:tag>Introduction</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/vK4bqPtDHhsfxmWE5STwWb</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/5313069f-31a2-4ce9-a6c9-386cc2a9946d.jpg</video:thumbnail_loc><video:title>Architekturoptionen für moderne Web-Frontends</video:title><video:description>Sprecher: Stefan Tilkov &amp; Lucas Dohmen
Aufgenommen: 2020-05-26

Eine moderne Web-Anwendung wird selbstverständlich in JavaScript implementiert, erzeugt ihr HTML clientseitig im Browser selbst und kommuniziert mit dem Server nur, um über ein HTTP/REST-API Daten im JSON-Format abzuholen – das, so scheint es, ist die gängige Weisheit. Aber haben die bewährten Ansätze wie serverseitiges HTML und „Progressive Enhancement“ tatsächlich ausgedient?

In diesem Talk möchten wir darüber diskutieren, welche unterschiedlichen Stile von Web-Anwendungen es gibt, welche Vor- und Nachteile diese haben und wieso teilweise als altmodisch angesehene Ansätze für viele Anwendungen eine gute Wahl sind.

Stefan Tilkov ist Geschäftsführer und Principal Consultant bei INNOQ, wo er sich vorwiegend mit der strategischen Beratung von Kunden im Umfeld von Softwarearchitekturen beschäftigt. Er ist Autor des Buchs „REST und HTTP“, Mitherausgeber von „SOA-Expertenwissen“ (beide dpunkt.verlag), Autor zahlreicher Fachartikel und häufiger Sprecher auf internationalen Konferenzen.

Twitter: @stilkov

Lucas Dohmen ist Senior Consultant bei INNOQ und beschäftigt sich mit der Architektur, Konzeption und Umsetzung von Web Anwendungen in Front- und Backend. Er programmiert in Ruby und JavaScript und hilft bei der Entscheidung und Einführung verschiedener NoSQL Lösungen. Lucas ist Autor des Buchs „The Rails 6 Way“. Seine Stimme ist regelmässig im INNOQ Podcast zu hören. Ausserhalb seiner Arbeit beschäftigt er sich mit Open Source und Community Arbeit (wie die Organisation und das Coaching beim lokalen CoderDojo).

Twitter: @moonbeamlabs

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/f0dbf67e-5fac-4879-a42f-d2e8839b7696/1897b5c5-8a44-4134-875e-a8faaf85dfff-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/vK4bqPtDHhsfxmWE5STwWb</video:player_loc><video:duration>5563</video:duration><video:rating>5</video:rating><video:view_count>7</video:view_count><video:publication_date>2025-12-24T09:00:15.061Z</video:publication_date><video:tag>Java</video:tag><video:tag>Architektur</video:tag><video:tag>Web</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/g2Q5WwYuYpwSsaC6WJn1oG</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/801e4004-09c9-44b6-8005-082ad8dc10e7.jpg</video:thumbnail_loc><video:title>Spring, Jakarta EE, CDI - The Good Parts</video:title><video:description>Speaker: Jarek Ratajski
Recorded: 2020-06-02

For few last years I was doing many presentations about problems caused by container based dependency injections and runtime aspects based on dynamic proxy. If You are not familiar with this I will quickly go through my arguments and explain why do I mostly avoid those solutions in favor of functional alternatives.

However, even though those “broken” concepts are fundumental to the platforms it does not mean I consider the platforms themselves are totally useless.

I will show the rarely used approach to Spring and that it actually can be used without Beans, aspects and all problematic parts – I sometimes call it “Spring without Spring” or “WebFlux ultimate” – but it does work well and makes a viable alternative to the regular Spring and alternative frameworks.

And maybe there are still places and ways it can make a sense to use it... lets discuss.

Jarek loves programming since his first line of code he did on the C64 in Basic. Somewhere in 90ties he has switched from C++ to java and spent then 20 Years developing mostly Java software working for various companies and projects.

Now he works for Engenius in Switzerland being Java/Kotlin developer during the days and Scala/Haskell open source hacker at nights.

Twitter: @jarek000000

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/79ba750b-e60d-4f95-b86d-d8ab94322d0c/1532d322-5a16-4632-8762-bd777c79e8dd-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/g2Q5WwYuYpwSsaC6WJn1oG</video:player_loc><video:duration>6057</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2025-12-25T09:00:15.634Z</video:publication_date><video:tag>Java</video:tag><video:tag>Spring</video:tag><video:tag>Jakarta EE</video:tag><video:tag>CDI</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/ksXzydwQkYp68iDgCCmhdH</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/801875f0-bb34-4390-a3df-2883d5e89bf7.jpg</video:thumbnail_loc><video:title>Modern Identity Management in the era of Serverless and Microservices</video:title><video:description>Speaker: Mercedes Wyss
Recorded: 2020-06-09

If you believe that Identity Management (IdM) is just related with the Authentication and Authorization processes, this is a talk for you.

IdM is an umbrella term for all of the core logic around identity. That means manage provisioning (assigning identities to users), account management (maintaining those identities), identity governance (assigning them to groups and roles and adjusting permissions as needed), authentication, authorization, identity federation (ensuring users can use the same identification data to access resources on related domains). A login is more than a Single Sign On, we can use Passwordless, Federated Identity (FB, GitHub), Multifactor Authentication, improving our users experience.

The main purpose of this talk is gain an in-depth knowledge of those terms, in addition explore some PaaS, that can help to achieve all that in our projects easier and faster.

Mercedes Wyss is a software engineer with more than eight years of experience in the backend, frontend and Android development using Python, Java and Kotlin. Currently, she is a CTO at Produactivity, a startup based in Guatemala.

She is focusing on increasing women’s participation in STEAM by running a JDuchess Chapter in Guatemala, which one she organizes a STEAM Women Day Conference and is the leader of a Google community (Devs+502). She also is a Mozilla Guatemala community member and Leader of WoMoz GT (Women Mozilla Guatemala), and Leader of Women in Data Guatemala. She was previously organizing meetings in Guatemala Java Users Group from 2012 to 2016.

She is an Oracle Groundbreaker Ambassador and an Auth0 Ambassador, she also has a Duke’s Choice Award in Educational Outreach.

Twitter: @itrjwyss

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/9da1395b-9096-4dc5-ac6c-0ad0fd2d5641/0c23e9da-489c-4640-ae6d-572803ce41e3-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/ksXzydwQkYp68iDgCCmhdH</video:player_loc><video:duration>5440</video:duration><video:rating>5</video:rating><video:view_count>10</video:view_count><video:publication_date>2025-12-26T09:00:16.134Z</video:publication_date><video:tag>Java</video:tag><video:tag>IdM</video:tag><video:tag>Identity Management</video:tag><video:tag>Authentication</video:tag><video:tag>Authorization</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/akVg4n3HxWGyZWRecQuZXg</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/48e9d1f1-4d38-4790-be7b-d012f8b63fcb.jpg</video:thumbnail_loc><video:title>Conway’s Law Extended</video:title><video:description>Sprecher: Peter Gfader
Aufgenommen: 2020-06-18

00:00 Intro
05:20 Peter's Talk
12:15 What is Conway's Law
15:00 Inverse Conway's Law maneuver - via Eberhard Wolff
17:00 What is Architecture 
30:00 Laws of Architecture - via Neal Ford
36:50 Work: 3. aspect of Team Collaboration
38:50 Deployed VS Released    • Can You Distinguish between Deployment and...  
43:00 How does Work come to teams - via John Cutler
50:00 Extended Conway's Law

Jeder kennt wahrscheinlich Conway’s Law und schlaue Software- und Organisatons-Architekten nutzen es zu ihrem Vorteil.
Es gibt jedoch einen 3. Baustein, der in Conway’s Law nicht vorkommt, den ich aber als sehr relevant sehe für Software Teams. Ich habe diesen 3. Baustein in verschiedensten Kundenbegegnungen mit skalierten Teams verwendet und jetzt in ein Modell gegossen: "Conway's Law Extended".

Es gibt Wechselwirkungen zwischen diesen 3 Elementen im "Conway’s Law Extended", das wirkt un-intuitiv und macht es spannend!

Ich erkläre das Modell, die herrschenden Effekte, was man tun kann, um einen positiven Effekt in Zusammenarbeit zu erzeugen, und was das mit Entscheidungen macht.

Peter Gfader arbeitet als Softwarearchitekt, Berater und Trainer für Beyond Agility, wo er Menschen, Teams und Organisationen bei der Findung und Realisierung spannender Produkte unterstützt.

Der Drang nach Verbesserung und der Geruch von Kaffee holen ihn morgens aus dem Bett.

Twitter: @peitor

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/4baa33b4-c632-4611-a43c-75f5ceb68a89/d03cd447-3284-490d-82eb-728cc39402b6-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/akVg4n3HxWGyZWRecQuZXg</video:player_loc><video:duration>5482</video:duration><video:rating>5</video:rating><video:view_count>15</video:view_count><video:publication_date>2025-12-27T09:00:16.674Z</video:publication_date><video:tag>Convey's Law</video:tag><video:tag>Architektur</video:tag><video:tag>Teams</video:tag><video:tag>Software-Entwicklung</video:tag><video:tag>Collaboration</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/8ZbxZJ7yb5B9eyxvWg5WqS</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/985ec596-6107-421d-bb5c-2745030ff747.jpg</video:thumbnail_loc><video:title>Suchen und Finden - Elasticsearch effizient einsetzen</video:title><video:description>Sprecher: Alexander Reelsen
Aufgenommen: 2020-06-23

Elasticsearch als verteilte Volltextsuchmaschine kann unterschiedlichste Anwendungsszenarien abdecken.

Heute beschäftigen wir uns mit der Integration von Elasticsearch in eine Spring Boot basierte Java Anwendung mit Spring Data Elasticsearch, und wie man eine relevante, einfach zu verwendende Suche erstellt. Dabei gibt es natürlich auch eine Einführung in Elasticsearch und eine Übersicht über die typischen Herausforderungen wie Scoring, Textanalyse und Skalierung. Im abschließenden Teil werden Strategien zum Monitoring der Anwendung aufgezeigt.

Alexander Reelsen ist Developer Advocate, Entwickler, Paaaapa, arbeitet seit 2013 bei Elastic, interessiert an Suche, Skalierung, JVM, crystallang, serverless und Basketball.

Twitter: @spinscale

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/40abde41-c040-4128-83c0-1cda40128c4a/fb7eaa80-8ed3-4340-b5d6-6a624518c8a5-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/8ZbxZJ7yb5B9eyxvWg5WqS</video:player_loc><video:duration>4662</video:duration><video:rating>5</video:rating><video:view_count>1</video:view_count><video:publication_date>2025-12-28T09:00:17.216Z</video:publication_date><video:tag>Java</video:tag><video:tag>Elasticsearch</video:tag><video:tag>Volltextsuche</video:tag><video:tag>Spring Boot</video:tag><video:tag>Spring Data</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/gNq926yPT98TVVZxSfok9E</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/305f280f-8a2e-4278-b2e6-7eae683d932e.jpg</video:thumbnail_loc><video:title>Web für Java Entwickler</video:title><video:description>Sprecher: Adam Bien
Aufgenommen: 2020-06-25

Je länger man wartet, desto mehr ähnelt JavaScript, CSS und Co. uralten Java Praktiken.
Bist Du Java Entwickler ohne jegliche Web Kenntnisse? Dann bist Du auch ein WebGuru... ohne es zu wissen.

In dieser Session werde ich modernes JavaScript, PWA, SPA, Offline Apps, Responsive Layout, Redux (...) Technologien und APIs anhand von (uralten) Java Beispielen veranschaulichen.

Developer, Consultant, Author, Podcaster and Java enthusiast Adam Bien uses Java since JDK 1.0 and JavaScript since LiveScript and still enjoys writing code.

Adam regularly organizes Java / Web / Architectures online live workshops https://airhacks.live and monthly Q&amp;A live streaming show: https://airhacks.tv

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/7ff42b46-cdff-43d3-9b06-00ea2ad97e72/a0ff2de2-a515-4a2a-8f59-d743335b4623-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/gNq926yPT98TVVZxSfok9E</video:player_loc><video:duration>4771</video:duration><video:rating>5</video:rating><video:view_count>4</video:view_count><video:publication_date>2025-12-29T09:00:17.784Z</video:publication_date><video:tag>Java</video:tag><video:tag>Web</video:tag><video:tag>PWA</video:tag><video:tag>SPA</video:tag><video:tag>JavaScript</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/v6zZbGBgyApJ61UyLQMbpg</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/17047a1e-f80e-4927-84ba-221052b31792.jpg</video:thumbnail_loc><video:title>AdoptOpenJDK - Make Java free again</video:title><video:description>Speaker: Hendrik Ebbers
Recorded: 2020-08-12

AdoptOpenJDK is the leading provider of OpenJDK™ binaries. With over 170 million downloads in the last year, it is successfully used by many enterprises and ready for your production usage of Java™. AdoptOpenJDK provides prebuilt OpenJDK binaries from a fully open-source set of build scripts and infrastructure. This talk will cover how we build on over 15 different platforms, execute over 87 million tests and distribute OpenJDK binaries to millions of users. We will also cover how AdoptOpenJDK binaries compare against the Java binaries that you use today. If you’re curious to understand the difference between OpenJDK, Oracle Java, AdoptOpenJDK and all the other distributions, then this is the talk for you!

Hendrik Ebbers is a co-founder of Karakun AG and lives in Dortmund, Germany. He is the founder and leader of the Java User Group Dortmund and gives talks and presentations in user groups and conferences. His JavaFX book “Mastering JavaFX 8 Controls” was released in 2014 by Oracle press. Hendrik is a JavaOne Rockstar, JSR expert group member and Java Champion. Hendrik is a member of the AdoptOpenJDK TSC.

Twitter: @hendrikebbers

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/eba0af3f-ea3f-4c31-bf65-7d55b040d835/f7e5cfac-976c-46dc-a5d0-4c8d3da104e7-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/v6zZbGBgyApJ61UyLQMbpg</video:player_loc><video:duration>5520</video:duration><video:rating>5</video:rating><video:view_count>3</video:view_count><video:publication_date>2025-12-30T09:00:18.280Z</video:publication_date><video:tag>Java</video:tag><video:tag>OpenJDK</video:tag><video:tag>AdoptOpenJDK</video:tag><video:tag>Open Source</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/7jxjKCftquzMAWxoN1W64h</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/720c7bd5-f78a-4387-89b1-fcf590d84eb4.jpg</video:thumbnail_loc><video:title>Es muss nicht immer Angular sein</video:title><video:description>Sprecher: Simon Martinelli
Aufgenommen: 2020-08-18

Single Page Applikationen (SPA) sind heute bei der Entwicklung von Webanwendungen zum Quasi-Standard geworden. Angular, React, Vue.js und Ember.js sind die bekanntesten Vertreter aus dieser Kategorie von Webframeworks. Aber passt diese Client-Architektur zu jedem Anwendungsfall? Oder gibt es Alternativen die eventuell besser passen und weniger aufwändig in der Entwicklung sind?

Im ersten Teil des Vortrags werden die Unterschiede zwischen SPAs und klassischen, serverseitigen Ansätzen erläutert und auf die jeweiligen Vor- und Nachteile eingegangen.

Der zweite Teil berichtet über ein aktuelles Kundenprojekt, bei welchem das Frontend eines grossen ERP Systems durch ein modernes Webfrontend ersetzt werden musste. Die Frameworkwahl fiel dabei auf Vaadin Flow, ein serverseitiges Webframework das verspricht, Webanwendungen vollständig in Java entwickeln zu können. Zuerst wird die neue Architektur von Vaadin Flow, welche mittlerweile auf Webcomponents basiert, erklärt. Dann wird aufgezeigt, wie durch die Zuhilfenahme von jOOQ als Datenbankzugriffsschicht konfigurierbare, formularbasierte und datenlastige Webanwendungen sehr effizient umgesetzt werden können.

Simon Martinelli ist Inhaber der 72 Services GmbH und seit 25 Jahren als Software Architekt, Entwickler, Berater und Trainer vor allem im Java Enterprise Umfeld unterwegs. Sein Spezialgebiet ist die Softwaremodernisierung. Er hilft seinen Kunden alten Applikationen neues Leben einzuhauchen. Durch seine Tätigkeit als Dozent an der Berner Fachhochschule in den Bereichen Software Architektur und Design sowie Persistenztechnologien kann er seine Interessen vertiefen und sein Know-How weitergeben.

Twitter: @simas_ch

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/332d8603-edd2-4160-a170-2dd4df513ea2/a4a5ac87-231f-40bb-9434-fc5b8e6ac6d5-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/7jxjKCftquzMAWxoN1W64h</video:player_loc><video:duration>4940</video:duration><video:rating>5</video:rating><video:view_count>4</video:view_count><video:publication_date>2025-12-31T09:00:18.659Z</video:publication_date><video:tag>Java</video:tag><video:tag>Vaadin</video:tag><video:tag>Flow</video:tag><video:tag>jOOQ</video:tag><video:tag>WebComponents</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/tgeW9aBUAze4RyUzFhSFG6</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/7f1df03c-6585-4a07-88f9-f73f854269b7.jpg</video:thumbnail_loc><video:title>Dynamic Proxies in Java</video:title><video:description>Speaker: Dr. Heinz M. Kabutz
Recorded: 2020-09-11

Java frameworks often need to dynamically create classes. One approach to do that easily in Java is dynamic proxies. In this talk, we will show how they compare to hand-written classes. We will then examine how we can use dynamic proxies to reduce the amount of code that we have to write.

Dr. Heinz M. Kabutz is the author of The Java Specialists' Newsletter, in which he explores all sorts of interesting nooks and crannies of the Java ecosystem. He is a Java Champion and a frequent speaker at all the best Java conferences, and at some of the worst.

Twitter: @heinzkabutz

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/dcc77cb7-380d-41d2-bfb7-ee0b3431b001/07ba720c-18fc-4ccd-ab9d-d67c0942fed0-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/tgeW9aBUAze4RyUzFhSFG6</video:player_loc><video:duration>4261</video:duration><video:rating>5</video:rating><video:view_count>3</video:view_count><video:publication_date>2026-01-01T09:00:19.162Z</video:publication_date><video:tag>Java</video:tag><video:tag>Proxies</video:tag><video:tag>Frameworks</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/1KxcTFCJnKPoUEhrCTbKns</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/a141744e-d357-4113-a1b0-d7137adff04d.jpg</video:thumbnail_loc><video:title>Testcontainers: The past, the present and the future</video:title><video:description>Speaker: Kevin Wittek
Recorded: 2020-09-15

Unit testing is fine, but without proper integration testing, especially if you work with external resources like databases and other services, you might not know how your application will actually behave once it has been deployed to the real production environment.

Before Docker, configuring the environment for integration testing was painful – people were using fake database implementations, mocking servers, usually it was not cross-platform as well. However, thanks to Docker, now we can quickly prepare the environment for our tests.

In this talk, I would like to show how you can use Testcontainers – a popular JVM testing library that harnesses Docker to easily, reliably, spin up test dependencies.

As a special focus, we want to have a deeper look at the development and the addition of new features to the Testcontainers library in the recent past. But that’s not all, we will also share an outlook at the horizon of the future of Testcontainers and might even get a glimpse at some brand new features that are currently in active development.

Kevin Wittek is Testcontainers co-maintainer and Testcontainers-Spock author, passionate about FLOSS and Linux. Oracle Groundbreaker Ambassador. Software Craftsman and testing fan. Fell in love with TDD because of Spock. Believes in Extreme Programming as one of the best Agile methodologies. Likes to write MATLAB programs to support his wife in performing behavioural science experiments with pigeons. Plays the electric guitar and is a musician in his second life.

After many years working in the industry as an engineer, Kevin is now doing his PhD at on the topic of verification of Smart Contracts and is leading the Blockchain Research Lab at the Institute for Internet Security in Gelsenkirchen at the Westphalian University of Applied Sciences.

Twitter: @Kiview

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/0614367f-b485-45f4-8119-e53480a6d668/99ffa02b-1437-447f-8383-84166534f3d6-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/1KxcTFCJnKPoUEhrCTbKns</video:player_loc><video:duration>5722</video:duration><video:rating>5</video:rating><video:view_count>11</video:view_count><video:publication_date>2026-01-02T09:00:19.712Z</video:publication_date><video:tag>Java</video:tag><video:tag>Testcontainers</video:tag><video:tag>Testing</video:tag><video:tag>Docker</video:tag><video:tag>Podman</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/vengBvKMcaP8NG8xhTnVTU</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/a1b39e85-db60-49d3-978d-a120437a9926.jpg</video:thumbnail_loc><video:title>Building data pipelines with Java and open source</video:title><video:description>Speaker: Rustam Mehmandarov
Recorded: 2020-10-06

A few years ago, moving data between applications and data stores included expensive monolithic stacks from large software vendors with little flexibility. Now, with frameworks such as Apache Beam and Apache Airflow, we can schedule and run data processing jobs for both streaming and batch with the same underlying code. This presentation demonstrates the concepts of how this can glue your applications together and shows how we can run data pipelines as Java code, the use cases for such pipelines, and how we can move them from local machines to the cloud solutions by changing just a few lines of Java in our Apache Beam code.

Rustam Mehmandarov lives and works in Oslo, Norway, working as a chief engineer and consultant specializing in Java platform, and a competency network coordinator at work.

In his spare time, he contributes to several local developer communities. Rustam is passionate about open source and sharing his knowledge with others. He is a Google Developer Expert (GDE) for Cloud and a Java Champion. Since 2017 he had been organiser of GDG Cloud Oslo, Norway. Previously, he has been leading JavaZone and the Norwegian JUG – javaBin.

He is a frequent speaker at both national and international conferences and events. You can find Rustam on Twitter as @rmehmandarov.

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/ecb6cc39-1558-4e58-b722-4e17f22880ee/83aa681e-72b9-44f9-8f23-64563d5e2dca-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/vengBvKMcaP8NG8xhTnVTU</video:player_loc><video:duration>3965</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-01-03T09:00:20.235Z</video:publication_date><video:tag>Java</video:tag><video:tag>Apache Beam</video:tag><video:tag>Apache Airflow</video:tag><video:tag>Data Pipelines</video:tag><video:tag>Cloud</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/isSrVztGWWjGnacH4KFngS</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/7fbba679-e3be-40ab-8857-a428e521e466.jpg</video:thumbnail_loc><video:title>New Features in Java 15</video:title><video:description>Speaker: Jonatan Kazmierczak
Recorded: 2020-10-22

What are the new features introduced in Java 15? Can they improve your development productivity? What has Java 15 borrowed from Kotlin, Scala, Groovy, JavaScript and ... Pascal?Through live demos using JShell, we will examine enhancements introduced in this Java release. So join this session and get ready for Java 15!

Jonatan Kazmierczak helps to improve the surrounding environment.
As a senior consultant at Trivadis Switzerland, he supports companies and individuals in efficient creation of very reliable and maintainable IT solutions.

He contributes to the community by creation of Class Visualizer and other solutions published on GitHub.

He started programming at the age of 12, uses many programming languages, is a top-rated algorithmist, and sometimes speaks at conferences.

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/8d6bc8c6-d9af-4aa8-aa1d-a96a459114f4/6a8fe23a-b880-47d1-a8a5-e14d16f68eaa-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/isSrVztGWWjGnacH4KFngS</video:player_loc><video:duration>4192</video:duration><video:rating>5</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-01-04T09:00:20.650Z</video:publication_date><video:tag>Java</video:tag><video:tag>Features</video:tag><video:tag>JShell</video:tag><video:tag>Java 15</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/9aVRKkLTE5FkDNxx1MN5op</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/0dcf069f-c3b4-4bee-9818-ec6c2cf7a7b1.jpg</video:thumbnail_loc><video:title>Unit Testing Architecture and Design</video:title><video:description>Speaker: Thomas Much
Recorded: 2020-10-29

Most projects probably have some kind of documentation of the architecture and code conventions. It's just a question of Where? And are these documentations up to date? Does the code really adhere to these standards? In the field, documentation is all too often "write-only" and bears an only faint resemblance to reality.

Wouldn't it be nice if your architectural and coding rules were checked automatically, as part of your continuous integration build? And if architecture wasn't just an occupation of some distant architect, but rather a team sport for all developers, like in an agile, cross-functional team?

With "ArchUnit" it's possible to code your architectural decisions as plain Java (or Kotlin) rules, using an easy to read fluent API. These rules can check for layered architectures, vertical slices, hexagonal (onion style) architectures, acyclic package dependencies, and for coding conventions like namings, containment of classes in packages and the use of annotations and exceptions. The rules can be checked by any unit testing framework, as for instance JUnit.

You'll see the basics of ArchUnit along with practical tips and tricks, including how to write custom rules. There will be some slides but mostly live coding.

As a technical agile coach and software developer, Thomas Much helps numerous teams to master their methodical and technical challenges. He’s working in projects from enterprise monoliths to e-commerce microservices, most of the time using the Java stack.

He is enthusiastic about people and teams that are eager to learn – learn new things, learn from mistakes that inevitably happen, and learn from each other.

Twitter: @thmuch

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/422bfe84-243d-411e-8fca-e457ca1573e3/9e96f875-8e18-4375-80c0-9f7c8cf5926a-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/9aVRKkLTE5FkDNxx1MN5op</video:player_loc><video:duration>4846</video:duration><video:rating>5</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-01-05T09:00:21.174Z</video:publication_date><video:tag>Java</video:tag><video:tag>ArchUnit</video:tag><video:tag>Architecture</video:tag><video:tag>Testing</video:tag><video:tag>CI</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/cj5cg8UuGieiiA3Bvqq47A</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/699442b3-b689-4282-8e58-79229a6ec020.jpg</video:thumbnail_loc><video:title>Adapting Java for the Serverless world</video:title><video:description>Speaker: Vadym Kazulkin
Recorded: 2020-11-04

Java is for many years one of the most popular programming languages, but it used to have hard times in the Serverless Community. Java is known for its high cold start times and high memory footprint. For both you have to pay to the cloud providers of your choice. That's why most developers tried to avoid using Java for such use cases. But the times change: Community and cloud providers improve things steadily for Java developers.

In this talk we look at the features and possibilities AWS cloud provider offers for the Java developers and look the most popular Java frameworks, like Micronaut, Quarkus and Spring (Boot) and look how (AOT compiler and GraalVM native images play a huge role) they address Serverless challenges and enable Java for broad usage in the Serverless world.

Vadym Kazulkin is Head of Technology Strategy at ip.labs GmbH, a 100% subsidiary of the FUJIFLM Group, based in Bonn. ip.labs is the world's leading white label e-commerce software imaging company.

Vadym has been involved with the Java ecosystem for over 20 years. His current focus and interests include the design and implementation of highly scalable and available solutions, Serverless and AWS Cloud. Vadym is the co-organizer of the Java User Group Bonn and Serverless Bonn Meetup, and a frequent speaker on various Meetups and conferences.

Twitter: @VKazulkin

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/5b9a7f73-b8d7-4654-94f4-baa91190f10a/6c94bb7d-d50e-4a47-ae72-d8659d07c039-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/cj5cg8UuGieiiA3Bvqq47A</video:player_loc><video:duration>4437</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-01-06T09:00:21.707Z</video:publication_date><video:tag>Java</video:tag><video:tag>Serverless</video:tag><video:tag>Cloud</video:tag><video:tag>AWS</video:tag><video:tag>Frameworks</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/u6HYd5gxnQ64yHEf1UNm9w</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/7de1b596-324e-4c69-adaa-f484261fcb35.jpg</video:thumbnail_loc><video:title>jbang, a better Java</video:title><video:description>Speaker: Vadym Kazulkin
Recorded: 2020-11-04

Java is for many years one of the most popular programming languages, but it used to have hard times in the Serverless Community. Java is known for its high cold start times and high memory footprint. For both you have to pay to the cloud providers of your choice. That's why most developers tried to avoid using Java for such use cases. But the times change: Community and cloud providers improve things steadily for Java developers.

In this talk we look at the features and possibilities AWS cloud provider offers for the Java developers and look the most popular Java frameworks, like Micronaut, Quarkus and Spring (Boot) and look how (AOT compiler and GraalVM native images play a huge role) they address Serverless challenges and enable Java for broad usage in the Serverless world.

Vadym Kazulkin is Head of Technology Strategy at ip.labs GmbH, a 100% subsidiary of the FUJIFLM Group, based in Bonn. ip.labs is the world's leading white label e-commerce software imaging company.

Vadym has been involved with the Java ecosystem for over 20 years. His current focus and interests include the design and implementation of highly scalable and available solutions, Serverless and AWS Cloud. Vadym is the co-organizer of the Java User Group Bonn and Serverless Bonn Meetup, and a frequent speaker on various Meetups and conferences.

Twitter: @VKazulkin

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/e38c7738-cc81-490e-9b8c-f042f7fea6ae/fffa562b-e559-4612-bdae-e17df07a5393-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/u6HYd5gxnQ64yHEf1UNm9w</video:player_loc><video:duration>4489</video:duration><video:rating>5</video:rating><video:view_count>4</video:view_count><video:publication_date>2026-01-07T09:00:22.129Z</video:publication_date><video:tag>Java</video:tag><video:tag>JBang</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/h2KBYGkoQdd3jbVPsPXie6</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/c6d87a47-cc11-434e-8f04-e0bd8fff0d30.jpg</video:thumbnail_loc><video:title>Eclipse MicroProfile - ein Überblick mit Livecoding</video:title><video:description>Sprecher: Tim Zöller
Aufgenommen: 2020-11-24

Eclipse MicroProfile umfasst momentan eine Vielzahl von APIs, die Entwickler bei der Implementierung von Microservices unterstützen: REST Services und -Clients, JSON Processing, Konfiguration und Monitoring der Applikation, Resilienz und Auth-Mechanismen über JWT. In dieser Livecoding-Session werden wir eine komplette Applikation schreiben, die jedes einzelne dieser APIs nutzt und lernen, wie man sie einsetzen kann, um seine Ziele schneller zu erreichen.

Tim arbeitet als IT-Consultant und Leiter des Java Teams für ilum:e informatik ag. Er hilft Kunden dabei, ihre manuellen Geschäftsprozesse mit Java zu automatisieren und ist Mitgründer der Java Usergroup Mainz. In seiner Freizeit häuft er neue Nebenprojekte mit Java und Clojure an, und beendet sogar ab und zu eines davon.

Twitter: @javahippie

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/81d0d823-c7f4-46ee-96b8-8f9efcbff163/edc4ac14-43d8-4382-8e71-a8c9a5b1a091-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/h2KBYGkoQdd3jbVPsPXie6</video:player_loc><video:duration>4605</video:duration><video:rating>5</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-01-08T09:00:22.693Z</video:publication_date><video:tag>Java</video:tag><video:tag>Eclipse</video:tag><video:tag>MicroProfile</video:tag><video:tag>Cloud</video:tag><video:tag>Live Coding</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/x1eBG2wRM2SmegqwrPCXrb</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/9e37d75b-c9d8-49ad-845d-2f7e39455e61.jpg</video:thumbnail_loc><video:title>Modern JVM Garbage Collection</video:title><video:description>Sprecher: Daniel Tschan
Aufgenommen: 2020-12-01

Die Wahl und Konfiguration des Garbage Collectors kann entscheidenden Einfluss auf Durchsatz und Latenz von Anwendungen haben. Mit der Aufnahme von Shenandoah und ZGC bietet OpenJDK ab Version 11 nun sieben verschiedene Garbage Collector an.

Im ersten Teil des Vortrags gebe ich einen Überblick über die aktuell verfügbaren Garbage Collector und gehe dann vertieft auf Shenandoah und ZGC ein. Diese sogenannten Low-Pause Garbage Collector eröffnen mit Pausenzeiten von wenigen Millisekunden neue Möglichkeiten und Anwendungsgebiete für die Java Virtual Machine.

Im zweiten Teil stelle ich Entscheidungshilfen für die Auswahl und Konfiguration der verschiedenen OpenJDK HotSpot Garbage Collector vor.

Daniel Tschan stiess 2001 als Java und C++ Software Ingenieur als einer der ersten Mitarbeiter zu Puzzle ITC.

2005 übernahm er die Rolle des CTO und trat in die Geschäftsleitung ein.

2016 wandte er sich wieder mehr der Technik zu und ist seither als technischer Berater in verschiedenen Projekten und Mandaten rund um Java, CI/CD und Kubernetes/OpenShift unterwegs.

Twitter: @d_tschan

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/fb13b070-689d-4609-b96a-c716e7793120/1bf775e8-4222-43ce-91c5-434e9c8764be-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/x1eBG2wRM2SmegqwrPCXrb</video:player_loc><video:duration>5558</video:duration><video:rating>5</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-01-09T09:00:23.166Z</video:publication_date><video:tag>Java</video:tag><video:tag>JVM</video:tag><video:tag>Garbage Collection</video:tag><video:tag>Shenandoah</video:tag><video:tag>ZGC</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/haV1qJfewBbhjtUieCnMmu</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/0271d1e7-5e0e-4591-81b3-5916af4c5cd9.jpg</video:thumbnail_loc><video:title>Beer Fondue, or how you can find vulnerabilities thanks to SonarQ</video:title><video:description>Speaker: Nicolas Peru &amp; Malte Skoruppa
Recorded: 2020-12-08

SonarQube is well known by Java Developers to assess code quality.

SonarSource, a Geneva-based company (the fondue !) developing and maintaining Sonarqube started two years ago to develop an analyser to detect vulnerabilities. In April 2020, SonarSource acquired RIPS, a german company based in Bochum (the beer !) specialized in security analysis, notably in PHP (but also Java, JS...)

This talk will let you discover what were the techniques that both editors were using and how, by combining them and getting the best of both worlds, SonarQube is now offering you an accurate analysis to find vulnerabilities in your Java code.

Nicolas is a software engineer born and raised in Grenoble with more than 15 years of experience. After a few years in a services company and enjoying briefly banking world, he joins SonarSource in 2013 and works a few years on the Java analyzer (chances are high, if you used SonarQube on Java, that you used part of his code) before starting, two years ago, to look at how static analysis can be applied to security. More recently, Nicolas is responsible to help SonarSource's development team to organize themselves to continue to deliver a high-quality product. When not behind a keyboard you can usually find him on a bike or hiking through the Jura.

Twitter: @benzonico

Malte has worked on web security and static analysis techniques for the better part of a decade. Before joining SonarSource with its acquisition of RIPS Technologies in 2020, he was a driving force behind the development of the Java security analysis engine at the latter company. Before that, he worked as a security researcher at CISPA, Saarland University, Germany, where he received his PhD in Computer Science with a focus on automated vulnerability detection in web applications in 2017. He is an enthusiastic software developer and now works as a static analysis engineer at SonarSource, currently focusi...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/82f49455-8e68-46ad-bf2b-f7552369a3e0/8f7e0f80-91b8-4e73-834d-6abebc1d8d44-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/haV1qJfewBbhjtUieCnMmu</video:player_loc><video:duration>5530</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-01-10T09:00:23.718Z</video:publication_date><video:tag>Java</video:tag><video:tag>Sonar</video:tag><video:tag>SonarQube</video:tag><video:tag>Quality</video:tag><video:tag>Analysis</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/69w9StCnt3eSA7aTMnnreb</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/502f383a-fc5f-4ee7-a332-c25581391c34.jpg</video:thumbnail_loc><video:title>A Change-Data-Capture Use-Case - Designing an Evergreen Cache</video:title><video:description>Speaker: Nicolas Frankel
Recorded: 2021-01-21

When one’s app is challenged with poor performances, it’s easy to set up a cache in front of one’s SQL database. It doesn’t fix the root cause (e.g. bad schema design, bad SQL query, etc.) but it gets the job done. If the app is the only component that writes to the underlying database, it’s a no-brainer to update the cache accordingly, so the cache is always up-to-date with the data in the database.

Things start to go sour when the app is not the only component writing to the DB. Among other sources of writes, there are batches, other apps (shared databases exist, unfortunately), etc. One might think about a couple of ways to keep data in sync i.e. polling the DB every now and then, DB triggers, etc. Unfortunately, they all have issues that make them unreliable and/or fragile.

You might have read about Change-Data-Capture before. It’s been described by Martin Kleppmann as turning the database inside out: it means the DB can send change events (SELECT, DELETE and UPDATE) that one can register to. Just opposite to Event Sourcing that aggregates events to produce state, CDC is about getting events out of states. Once CDC is implemented, one can subscribe to its events and update the cache accordingly. However, CDC is quite in its early stage, and implementations are quite specific.

In this talk, I’ll describe an easy-to-setup architecture that leverages CDC to have an evergreen cache.

Nicolas Frankel Developer Advocate with 15+ years experience in consulting for many different customers, in a wide range of contexts (such as telecoms, banking, insurances, large retail and public sector). Usually working on Java/Java EE and Spring technologies, but with focused interests like Rich Internet Applications, Testing, CI/CD and DevOps. Currently working for Hazelcast. Also, double as a trainer and triples as a book author.

Twitter: @nicolas_frankel

Organized by: Java User Group Switzerland
https://www.jug...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/29ae39d2-6a4a-4524-ab3b-b9b588035778/0beaeab3-6c31-4aa0-b44b-b8affbca5568-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/69w9StCnt3eSA7aTMnnreb</video:player_loc><video:duration>3916</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-01-11T09:00:24.258Z</video:publication_date><video:tag>Java</video:tag><video:tag>Cache</video:tag><video:tag>Performance</video:tag><video:tag>DB</video:tag><video:tag>CDC</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/6ayD97K5CgCHvB61m3SPtf</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/cf234e9d-55dd-4875-b8b6-0e5dd8ae0b52.jpg</video:thumbnail_loc><video:title>TDD seriously, try it!</video:title><video:description>Speaker: Nacho Cougil
Recorded: 2021-01-26

Have you heard of TDD? Are you interested or familiar with this practice but have never been able to understand it?

Join this session to see the benefits of Test-Driven Development (TDD), understand how it works and what the benefits are of using it. We will see in a more detailed approach this way of developing software, where our software is always built guided by tests.

We will go over some history about TDD, which is the main process we must follow when we work with this mechanic and the rules that surround it. We will also list the main advantages and disadvantages that most developers who practice TDD find and whether the arguments in favour add up to more than those that subtract. Finally, we will review some good habits and practices when applying TDD and see how to do it step by step with an example of "live" coding session with Java.

At the end of the session, I hope that you will have a wider understanding of what TDD is, what advantages it brings, why it is interesting to master it and also that you will take with you some tricks and good practices to be able to apply them in your day-to-day life when writing code.

Nacho is a software engineer from Barcelona, fan of TDD and XP practices that has been working with Java and other web technologies before the effect 2000. He had experience in different roles in the IT world ('guy-for-everything', developer, team leader, project manager and CTO) working in companies in many sectors: energy, e-commerce, startups (some unicorn) and technology consultancy companies now working at Dynatrace.

Always concerned with questions like "how does it work?" and "how can we make it better?", Nacho loves to share his knowledge with others and at the same time learn from others. As a natural progression to this attitude, he founded the Barcelona Java Users Group and co-founded the Java and JVM Barcelona Conference.

When he is not thinking in the next interest...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/29d380a7-8a6f-4505-8e05-98fac517d3b8/92516354-b41b-4dd5-aec9-584ba5bfee2c-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/6ayD97K5CgCHvB61m3SPtf</video:player_loc><video:duration>4491</video:duration><video:rating>5</video:rating><video:view_count>4</video:view_count><video:publication_date>2026-01-12T09:00:24.767Z</video:publication_date><video:tag>Java</video:tag><video:tag>TDD</video:tag><video:tag>Testing</video:tag><video:tag>Methodology</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/hnVUJpNGyXdr45L68CNhP7</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/6053c068-ecc6-4a62-b394-2f518f828bc2.jpg</video:thumbnail_loc><video:title>Kubernetes Operators in Java ... Hold my mouse and look</video:title><video:description>Speaker: Jonathan Vila
Recorded: 2021-02-01

Do you want YOUR app easily deployable in Kubernetes or Openshift ? Do you want to control how it scale, deploy and update in an automated way ? Do you want to have your app in a cloud market ? » Then Kubernetes Operators are for YOU.

In this session I will show you What’s a K8s Operator, How to create it with Java, Quarkus and native compilation, and how to deploy it on OperatorHub, from my own experience creating this production ready Operator for a FOSS application, including the testing GitHub action.

Jonathan Vila: Java Champion, Organiser at BarcelonaJUG and cofounder of the JBCNConf conference in Barcelona. Working at Red Hat as Senior Software Engineer on the Middleware area, but I have worked as a (paid) developer since the first release of The Secret of Monkey Island, about 30 years ago. PMP certified by the PMI in Project Management. Speaker at OracleCodeOne, DevNexus, DevConf.US, JConf Mexico, JConf Peru, VirtualJUG and other JUGs around the world. Very interested in simulated reality, psychology and Java along with management technologies.

Twitter: @vilojona

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/84a20f78-4d1c-4352-b4fd-29f5b541f0fc/c3070fcc-af48-4eee-b9bc-40c55e7fdad5-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/hnVUJpNGyXdr45L68CNhP7</video:player_loc><video:duration>5137</video:duration><video:rating>5</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-01-13T09:00:25.244Z</video:publication_date><video:tag>Java</video:tag><video:tag>Kubernetes</video:tag><video:tag>Operators</video:tag><video:tag>Cloud</video:tag><video:tag>Quarkus</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/cqDyVuhtFBQLaqqQ59Uv5n</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/490b2be3-62cc-4563-9f6f-47ebccd3ec1d.jpg</video:thumbnail_loc><video:title>jQAssistant Double-Feature</video:title><video:description>Sprecher: Dirk Mahler &amp; Stephan Pirnbaum
Aufgenommen: 2021-02-16

Bereits im Oktober hatten wir mit Thomas Much und seinem Vortrag zu ArchUnit ein Vertreter für Tools aus der Ecke Validierung von Softwarestrukturen. Es kam öfters die Frage auf, wie sich ArchUnit mit jQAssistant vergleichen lässt. Aus diesem Grund sind wir sehr erfreut, dass wir mit Dirk Mahler und Stephan Pirnbaum zwei Vertreter aus dem jQAssistant-Umfeld für einen Talk verpflichten konnten um diese Fragen zu klären.

00:00 Einleitung (Patrick Baumgartner)
04:30 Erster Vortrag (Dirk Mahler)
57:25 Zweiter Vortrag (Stephan Pirnbaum)

**jQAssistant: Analyse, Dokumentation und Validierung von Softwarestrukturen**

Ob Monolith, Modulith oder Microservices: der Umfang moderner Softwaresysteme wächst beständig und damit fast zwangsläufig deren Komplexität. Neue Technologien halten regelmäßig Einzug während die alten haften bleiben, Entwickler kommen bzw. gehen und mit ihnen wertvolles Wissen über das "Wie" und insbesondere das "Warum".

Mit jQAssistant steht ein äußerst flexibles Werkzeug zur Verfügung, welches die Analyse komplexer Softwarestrukturen unterstützt und beispielsweise wertvolle Informationen über den Umfang und mögliche Risiken geplanter Refactorings liefern kann. Darüber hinaus erlaubt es eine leichtgewichtige, code-nahe Dokumentation von Architekturkonzepten sowie deren kontinuierliche Validierung.

Der Vortrag gibt eine Einführung in jQAssistant und demonstriert Anwendungsfälle anhand von Beispielen - Interessante Aha!-Effekte können nicht ausgeschlossen werden!

Dirk Mahler ist Senior-Consultant bei der BUSCHMAIS GbR. Der Schwerpunkt seiner Tätigkeit liegt im Bereich Architektur und Entwicklung von Java-Applikationen im Unternehmensumfeld.

Er ist Autor des Software-Analyse-Werkzeugs jQAssistant und setzt seinen Fokus auf die Umsetzung von Lösungen, die sich im Spannungsfeld zwischen Pragmatismus, Innovation und Nachhaltigkeit bewegen.

Twitter: @dirkmahler

Dies...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/5c858711-816c-441a-a101-98ea43fe1731/c72453c9-c777-476a-8f44-dc85eeafdc20-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/cqDyVuhtFBQLaqqQ59Uv5n</video:player_loc><video:duration>6788</video:duration><video:rating>5</video:rating><video:view_count>3</video:view_count><video:publication_date>2026-01-14T09:00:25.741Z</video:publication_date><video:tag>Java</video:tag><video:tag>jQAssistant</video:tag><video:tag>Architektur</video:tag><video:tag>ADR</video:tag><video:tag>Dokumentation</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/qu7fU5Jmec8zKWgK2aThgQ</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/626fbb10-f23a-4331-a4ed-9d35d5270a5a.jpg</video:thumbnail_loc><video:title>(Remote) Mob Programming – Building Teams and Keeping Teams Together</video:title><video:description>Speaker: Thomas Much
Recorded: 2021-02-25

00:00:00 Intro
00:02:55 Polls
00:05:40 The Talk
01:11:53 Questions &amp; Answers

Mob Programming is a way of truly collaborating for whole teams. But - why should we care? We are a team already, aren't we? Well... Our aim with software development is to deliver the most important feature quickly and in good quality to our customers. Reality looks different, though: Individual workload is maximized, the developers work on too many tasks at the same time. Half-baked features annoy our customers. Developers are fixing bugs around the clock, there's just no time for feature development.

Some years ago, the idea arose of having the entire team carry out software development - together, task by task. "Mob Programming" was born. Blockages during development disappear because all the necessary specialists are in the same room. And if that room is a virtual one, this practice becomes Remote Mob Programming - quite important these days for distributed teams or when working from home.

In this talk I'll show the basics of (remote) mob programming. We'll discuss when working as a "mob" pays off. And I will offer insights and good practices from four years of programming "mob style" (and coaching it to various teams in all kinds of companies).

As a technical agile coach and software developer, Thomas Much helps numerous teams to master their methodical and technical challenges. He’s working in projects from enterprise monoliths to e-commerce microservices, most of the time using the Java stack. He is enthusiastic about people and teams that are eager to learn – learn new things, learn from mistakes that inevitably happen, and learn from each other.

Twitter: @thmuch

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/c6480263-4a2e-49d5-8950-9dd24499e13e/00686d78-84d2-4908-98b2-715e17879c32-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/qu7fU5Jmec8zKWgK2aThgQ</video:player_loc><video:duration>5510</video:duration><video:rating>5</video:rating><video:view_count>4</video:view_count><video:publication_date>2026-01-15T09:00:26.195Z</video:publication_date><video:tag>Java</video:tag><video:tag>Mob Programming</video:tag><video:tag>Teams</video:tag><video:tag>Collaboration</video:tag><video:tag>Remote</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/6PdEGrH8UD7y9nDteBwQMY</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/52f8f333-0796-45b9-a8a7-b2a07dec0b2b.jpg</video:thumbnail_loc><video:title>Drei Patterns für skalierbare Microservices</video:title><video:description>Sprecher: Thorben Janssen
Aufgenommen: 2021-03-09

00:00:00 Begrüssung
00:06:40 Der Vortrag
01:13:57 Fragen und Antworten im Livestream
01:23:40 Nachgereichte Fragen und Antworten

Wenn Sie skalierbare und unabhängige Microservices implementieren, wird der Datenaustausch zwischen diesen schnell zu einer Herausforderung. Sie müssen die Konsistenz sicherstellen, aber verteilte Transaktionen erzeugen eine enge Kopplung und sind keine Option mehr. Das Gleiche gilt für synchrone Service-Aufrufe.

Sie brauchen neue Ansätze, die es Ihnen ermöglichen, Daten asynchron auszutauschen und deren Konsistenz zu gewährleisten.

Die meisten Architekturen erreichen das mit 3 Mustern: Das Outbox-Pattern, das View-Database-Pattern und das SAGA-Pattern. Mit Hilfe des Outbox-Patterns werden Events in Kafka und Daten in der eigenen Datenbank des Microservice gespeichert. Darauf aufbauend können andere Microservices die Daten entweder in ihrer eigenen View-Datenbank speichern oder an einer komplexen SAGA teilnehmen, um einen verteilten Schreibvorgang abzusichern.

In diesem Vortrag werde ich genau zeigen, wie das alles funktioniert und worauf man achten muss.

Mein Name ist Thorben Janssen. Ich bin Berater, Trainer und der Autor des Amazon-Bestsellers "Hibernate Tips - Mehr als 70 Lösungen für häufige Hibernate-Probleme".

In den letzten 15 Jahren habe ich Hibernate und JPA in allen möglichen Projekten eingesetzt. Von kleinen mit sehr aggressiven Zeitvorgaben bis hin zu riesigen Projekten, die Tausende von Benutzern bedienen mussten. Die Anforderungen dieser Anwendungen waren sehr unterschiedlich und ich habe gelernt, dass Hibernate für alle gute Lösungen bietet. Man muss nur die Features mit ihren Vor- und Nachteilen verstehen.

Ich freue mich darauf, Ihnen zu zeigen, wie Sie Hibernate und verteilte Persistenzlösungen nutzen können, um hochperformante Anwendungen zu implementieren.

Twitter: @thjanssen123

Organisiert von: Java User Group Switzerland
https://ww...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/2f1574f9-1bc0-48a6-920c-29919027666a/f563e14c-1364-4a95-9f7a-859c027829bc-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/6PdEGrH8UD7y9nDteBwQMY</video:player_loc><video:duration>6447</video:duration><video:rating>5</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-01-16T09:00:26.752Z</video:publication_date><video:tag>Java</video:tag><video:tag>Microservices</video:tag><video:tag>Transaktionen</video:tag><video:tag>Kopplung</video:tag><video:tag>SAGA</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/5UNC5vMGFZi7V8VcfhtytF</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/3b01db74-39c0-4630-a3f1-c61b0ce7879e.jpg</video:thumbnail_loc><video:title>Time Travel Debugging Java Applications</video:title><video:description>Speaker: Greg Law
Recorded: 2021-03-24

00:00:00 Intro
00:03:10 The Talk
01:06:20 Q&amp;A

Time-travel debugging gives you programming superpowers. Capture a machine-level recording of the execution of a process, load the recording into your IDE to replay and rewind the tape, stepping or running backwards and forwards. Go to any line of code that executed, and see any piece of program state. The most difficult bugs - including race conditions, logic errors, and intermittent exceptions - can be tracked back to their root cause with ease. Perfect for fixing intermittent/non-repeatable test failures in CI ("flaky tests") or hard-to-reproduce failures in production, or collaborating with colleagues remotely and asynchronously. Fix in minutes what would have taken hours, or in hours what would have taken weeks or months.

This talk will cover the new breed of time-travel debuggers. Some are open source, some from the tech giants like Microsoft and some from startups. Having spent decades as a niche research topic, time travel debuggers now have the performance and completeness to be used on real-world, complex tech stacks with millions of lines of code.

Greg has spent 20+ years working on operating systems and development tools, in engineering and leadership roles at a variety of start-ups. He co-founded Undo.io - a venture backed start-up making time travel debugging a reality. He's still happiest when he's typing code into vim.

Twitter: @gregthelaw

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/27c3f668-364e-460e-b781-ef724fb556fd/8e48116d-a768-4ebe-a102-ff5a52e6d3ef-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/5UNC5vMGFZi7V8VcfhtytF</video:player_loc><video:duration>4151</video:duration><video:rating>5</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-01-17T09:00:27.214Z</video:publication_date><video:tag>Java</video:tag><video:tag>Debugging</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/pEtCFwAgkUg6MpFqqSzUtf</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/8c3046ac-5f53-45e2-9106-0ce541b342b8.jpg</video:thumbnail_loc><video:title>Good Habits for Developers</video:title><video:description>Speaker: Alex Bolboacă
Recorded: 2021-03-30

00:00:00 Intro
00:04:30 The Talk
01:10:40 Q&amp;A

The human brain is habit-driven. We know from recent research that habits are quasi-impossible to break; they can only be replaced by other habits. We also know that you are driven by habits for most of the time during the day, often without even noticing. Some of these habits are not helpful or even harmful. Many programmers I know only grow to 10% of their potential due to their bad habits.

This knowledge raises some important issues for developers who wish to become better, to adopt new practices, to be more effective, to grow in their careers, to make better technical decisions. Therefore, it should be an interesting topic for software crafters.

Let’s discuss therefore about programming habits:

learn about good and not-so-good habits
how to replace some of the bad habits with good ones
how taking responsibility will help you grow
finally, how deliberate practice, getting out of your comfort zone, and social programming can help you improve

Alex Bolboaca

Being deeply passionate about technology creation I am a continuous learner in the field. Between reading, trying out technologies and multiple programming languages, presenting and participating to developer communities and conferences, I have learned enough to write two books and teach hundreds of developers.

I love working with smart people who want to get better at what they do, whether it’s team work, communication, management or technical skill.

CTO at MozaicLabs, Trainer &amp; Mentor at Mozaic Works

Twitter: @alexboly

This talk is organized and brought to you in collaboration with our friends from the Software Crafts Romandie Meetup Group.

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/bfa17b45-ee64-4c36-8363-90d823e9a944/6ae9cc45-8edc-45a8-8235-85bfba9fd663-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/pEtCFwAgkUg6MpFqqSzUtf</video:player_loc><video:duration>5209</video:duration><video:rating>5</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-01-18T09:00:27.749Z</video:publication_date><video:tag>Java</video:tag><video:tag>Habits</video:tag><video:tag>Development</video:tag><video:tag>Practice</video:tag><video:tag>Methodology</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/aH3XTzaqgvCYzemNjXzBYC</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/2ef88609-8d4b-4a91-88c6-fb03a96daa61.jpg</video:thumbnail_loc><video:title>Docs-as-Code, Arc42, ASCIIDOC, Gradle &amp; Co. im Einsatz</video:title><video:description>Sprecher: Ralf D. Müller
Aufgenommen: 2021-04-13

00:00:00 Begrüssung
00:03:33 Der Vortrag
00:05:22 Problemstellung
00:06:30 Wer bin ich?
00:07:43 Setting the Scene
00:09:29 arc42
00:20:52 Docs-as-Code
00:28:50 Zwischenfragen
00:34:37 Diagramme
00:41:39 Nicht malen, modellieren!
00:44:16 Stakeholder
00:49:37 Zusammenarbeit
01:04:36 Testing
01:07:24 Static Site Generators
01:13:50 docToolchain
01:15:10 Abschluss
01:15:54 Fragen/Diskussion

Der Vortrag zeigt, wie Du die Qualität Deiner Dokumentation erhöhst und gleichzeitig den Aufwand zur Pflege reduzierst, indem Du Deine Dokumentation genauso wie Deinen Code verwaltest und in den Build integrierst. Anhand des Beispiels einer Architekturdokumentation, zeigt Ralf, wie Du mit dem arc42-Template im AsciiDoc-Format und Gradle als Build-Tool einfach Diagramme in Ihre Dokumentation integrierst, Stakeholder-spezifische Dokumente erzeugst und verschiedene Ausgabeformate generierst. Reviewfähige PDF-Dokumente? Publishing nach Confluence? Integration einer Präsentation? Alles kein Problem! Einige Teile der Doku kannst Du sogar automatisiert testen!

Ralf ist tagsüber Software Engineering Advocat bei DB Systel und liebt nach Sonnenuntergang alles, was mit Bits und Bytes zu tun hat. In den letzten Jahren seiner Karriere konzentrierte er sich auf die Dokumentation von Softwaresystemen mit arc42 und den Docs-as-Code-Ansatz.

Twitter: @RalfDMueller

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/4e9d91a3-3f3d-4519-9b82-980facc75418/83b2b231-7653-45ce-869a-34b1bf34bbb5-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/aH3XTzaqgvCYzemNjXzBYC</video:player_loc><video:duration>5322</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-01-19T09:00:28.278Z</video:publication_date><video:tag>Java</video:tag><video:tag>Dokumentation</video:tag><video:tag>AsciiDoc</video:tag><video:tag>arc42</video:tag><video:tag>Documentation</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/w9EUYrsDsArNrVZEC2r2by</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/6db8824d-2d91-4f4a-b760-336b7c405dd9.jpg</video:thumbnail_loc><video:title>Fireside chat with Sandro Mancuso</video:title><video:description>Speaker: Sandro Mancuso
Recorded: 2021-04-27

00:00:00 Welcome
00:00:56 About Sandro Mancuso
00:04:00 What is Software Craft/Craftsmanship? 
00:05:10 Short history until the agile manifesto in 2001
00:07:24 Agile took the world by storm
00:08:04 Different directions in the following years
00:08:50 The technical side of agile like TDD were left behind resulting in friction in the original community
00:09:35 A few years later agile was different than originally intended
00:09:57 Software Craftsmanship became a counter movement in 2008
00:12:47 When is someone a Software Crafter? Difference to developer / engineer?
00:16:35 A closer look at the Software Craftsmanship Manifesto from 2009
00:18:30 1) Not only working software, but also well-crafted software
00:21:40 Differences in culture between Brazil and UK
00:23:55 2) Not only responding to change, but also steadily adding value 
00:27:02 3) Not only individuals and interactions, but also a community of professionals
00:28:51 4) Not only customer collaboration, but also productive partnerships
00:31:50 How do you inspire your team to adopt that mentality?
00:34:57 Some people say "Agile is dead". Will this also happen with Craftsmanship?
00:37:33 What influences the attitude of a professional Software Engineer? And which one of these is the hardest to change?
00:40:44 Professional wall
00:44:35 Craftsmanship is more than just coding and TDD, but also about understanding the business and the needs of the people
00:47:30 Attitude vs technical skills when hiring
00:49:57 Attitude can't be teached. All you can do is to try to inspire.  
00:50:42 Apprenticeship, Journeyman, Master → not really
00:53:18 When people leave university... do they then have already the crafters mindset?
00:54:58 How do you respond to: "We are not an agile business. This model is not working for us."?
00:55:11 Trick: Stop using the terms agile, craftsmanship, TDD, ... 
00:56:35 Try to understand the underlying pr...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/f4281755-a83f-4285-9b9e-94cbc31b9800/9cfb1f9e-9bf8-49e0-985a-913e0a2797a6-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/w9EUYrsDsArNrVZEC2r2by</video:player_loc><video:duration>3892</video:duration><video:rating>5</video:rating><video:view_count>10</video:view_count><video:publication_date>2026-01-20T09:00:28.798Z</video:publication_date><video:tag>Java</video:tag><video:tag>Software Craftsmanship</video:tag><video:tag>Agile Manifesto</video:tag><video:tag>TDD</video:tag><video:tag>Methodology</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/iTGhY4c2X2bPpCS2qfQovi</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/ab80a2db-ae9a-45f1-a305-15d248d0eb63.jpg</video:thumbnail_loc><video:title>Die neue Schule der Softwarearchitektur</video:title><video:description>Sprecher: Stefan Toth
Aufgenommen: 2021-05-05

00:00:00 Begrüssung
00:03:54 Der Vortrag
01:05:23 Fragen und Antworten

In der heutigen Architekturpraxis sind unterschiedliche Denkschulen und Hintergründe anzutreffen. Vertreter der klassischen Architektursicht gehen dabei drastisch anders mit Architekturproblemen um, als es Vertreter der neuen Schule machen, die in Start-ups und „IT First“-Unternehmen groß geworden sind.

In dieser Session stelle ich die Sichtweisen, Konzepte, technischen und organisatorischen Prinzipien gegeneinander, diskutiere die Auswirkungen und wichtigsten Unterschiede. Evolutionäre Architekturansätze, Eventual Integrity, geringe Zähigkeit als Möglichkeit der weichen Governance, Servant Leadership Modelle für Architekten, breite Verantwortung und Crowd-Sourcing-Ideen für technische Teilaspekte sind ein Thema.

Stefan Toth ist Geschäfts­führer und Mitgründer der embarc GmbH. Seine Beratungs­schwer­punkte liegen in der Konzeption und der Bewertung mittlerer bis großer Softwarelösungen, der Weiterentwicklung von Systemlandschaften sowie der Verbindung dieser Themen zu agilen Vorgehen. Er ist Autor zahlreicher Artikel und des Buchs „Vorgehensmuster für Software-Architektur“.

Twitter: @st_toth

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/90e31ee2-5047-47b6-9cea-958d6743765b/43bff0b2-eb6e-4b1e-abf6-c76dba6ca8b6-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/iTGhY4c2X2bPpCS2qfQovi</video:player_loc><video:duration>5450</video:duration><video:rating>5</video:rating><video:view_count>7</video:view_count><video:publication_date>2026-01-21T09:00:29.311Z</video:publication_date><video:tag>Java</video:tag><video:tag>Architektur</video:tag><video:tag>Praxis</video:tag><video:tag>Konzepte</video:tag><video:tag>Prinzipien</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/w98iELvaZSKyZe3veKfije</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/52888895-807d-4f4d-afbf-41fb640f7dba.jpg</video:thumbnail_loc><video:title>Entwickle In-Memory Datenbank-Applikationen &amp; Microservices mit</video:title><video:description>Sprecher: Markus Kett &amp; Christian Kümmel
Aufgenommen: 2021-05-11

00:00:00 Begrüssung
00:03:12 Vortrag
00:46:55 Fragen und Antworten zum Vortrag
00:59:45 Demo
01:25:28 Fragen und Antworten zur Demo

Seit 20 Jahren ist Java die führende Programmiersprache. Dennoch wird Java den Ruf nicht los, kompliziert, schwergewichtig, träge und speicherhungrig zu sein. Und nun scheinen auch noch andere Sprachen und vor allem moderne Serverless-Ansätze Java mehr und mehr den Rang abzulaufen. Wie steht es tatsächlich um Java, wie gut eignet sich Java für die Cloud, wie geht es mit Java weiter und warum sollte man auch in Zukunft auf Java setzen?

Der heilige Graal ist bereits gefunden! Mit GraalVM und einer neuen Generation von Microservices-Frameworks wie Helidon entsteht gerade ein völlig neuer Java-Technologie-Stack, der Java wie wir es bisher kennen, ablösen und Java auf ein völlig neues Level bringen und in der Cloud etablieren soll. Mit Java native Anwendungen entwickeln, Java so schnell wie C, Anwendungsstart in Millisekunden, minimaler Memory-Footprint und bis zu 1000 Mal schnellere Datenbankzugriffe! Das ist keine Vision, sondern heute schon möglich.

Markus Kett entwickelt seit 20 Jahren mit seinem Team Developer-Tools für Java und alle wichtigen Datenbanksysteme sowie Individualsoftware für Endkunden. Er ist Product Owner der freien Eclipse Distribution und visuellen Java Entwicklungsumgebung RapidClipse sowie der Open Source Abfragesprache JPA-SQL. Markus ist Gründer und CEO von MicroStream, Chefredakteur des kostenlosen Java Magazins JAVAPRO, Co-Organisator der Java Konferenz JCON, freier Autor für verschiedene Fachzeitschriften sowie Speaker bei zahlreichen Entwicklerkonferenzen, User Groups und Meetups.

Twitter @MarkusKett

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/f4149c91-94b5-49b0-a0e8-7e6925b915c5/faec4c03-2f3b-4db7-992b-9b39ab25b4f8-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/w98iELvaZSKyZe3veKfije</video:player_loc><video:duration>6032</video:duration><video:rating>5</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-01-22T09:00:29.861Z</video:publication_date><video:tag>Java</video:tag><video:tag>DB</video:tag><video:tag>In-Memory</video:tag><video:tag>GraalVM</video:tag><video:tag>Helidon</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/cMGhiSJD5TqEbVn5JSNsd9</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/30abc4ba-fa57-4b6e-bda4-3e649bc6920b.jpg</video:thumbnail_loc><video:title>Real World Event-Driven Clean Architecture</video:title><video:description>Sprecher: Matthias Brun &amp; Florian Lüscher
Aufgenommen: 2021-05-19

00:00:00 Begrüssung
00:03:48 Vortrag
01:02:00 Fragen und Antworten

Event-Driven und Clean Architecture sind aktuell ziemlich populär, aber wie sieht die Umsetzung einer solchen Anwendung in der Praxis aus? Dieser Vortrag zeigt anhand der Steuerungssoftware eines automatisiertes Kleinteilelagers, wie diese Konzepte mit Java umgesetzt werden können. Kein Demo Beispiel sondern produktiver Code, welcher tausende von Lagerbewegungen pro Tag koordiniert.

Der Vortrag gibt eine Einführung in die Themen Event-Driven Architecture und Clean Architecture. Anschliessend wird die Umsetzung dieser Konzepte anhand produktiver Code Beispielen aufgezeigt und Vor- und Nachteile erläutert.

Matthias Brun ist Lead Software Engineer und Co-Founder bei der dsi engineering ag. Er unterstützt Kunden bei der Umsetzung von Microservice Architekturen. Zudem gibt er Talks sowie Kurse rund um die Themen Microservices und Cloud.

Florian Lüscher ist Solution Architect und Co-Founder bei der dsi engineering ag. Er berät Kunden in den bereichen Architektur, Cloud und AI. Er engagiert sich für die Nachwuchsförderung und gibt Talks sowie Kurse rund um die Themen Cloud und Machine Learning.

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/5f75d1ae-553d-4051-9df0-a6fa358a9b78/843023b6-02ce-410e-9aec-28df777185a0-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/cMGhiSJD5TqEbVn5JSNsd9</video:player_loc><video:duration>5547</video:duration><video:rating>5</video:rating><video:view_count>3</video:view_count><video:publication_date>2026-01-23T09:00:30.377Z</video:publication_date><video:tag>Java</video:tag><video:tag>Architektur</video:tag><video:tag>Events</video:tag><video:tag>Praxis</video:tag><video:tag>Event-Driven</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/cszRKBGNE4xKW3XnAVWjst</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/b9b4893e-3d65-4d09-9afc-8e68d0232525.jpg</video:thumbnail_loc><video:title>Triple JUG – 3 Länder, 3 Newcomer, 3 Sessions</video:title><video:description>Drei Kurzvorträge aus drei Ländern
Aufgenommen: 2021-05-20

00:00:00 Begrüssung
00:03:57 JUG Saxony
00:06:23 Vortrag 1: Release early, release often
00:29:35 Java Vienna
00:31:56 Vortrag 2: Spring Tricks
00:53:53 Java User Group Switzerland
00:55:34 Vortrag 3: Kubernetes Operators in Java
01:15:00 Abmoderation

Dieser Event ist etwas ganz besonderes! Zusammen mit zwei anderen Java User Groups, einer aus Deutschland und einer aus Österreich, führen wir ein gemeinsames Online-Event mit drei Kurzvorträgen durch. Jede der drei User Groups stellt dabei einen Redner. Wir möchten Mitglieder unserer User Groups fördern, selbst Vorträge zu halten und hoffen, damit Raum bieten zu können

für ein breiteres Spektrum an Themen
für Personen, die Erfahrungen als Speaker sammeln möchten
für eine leichtere Interaktion zwischen den Teilnehmern

Das Besondere an diesem Event ist, dass alle Speaker keine oder kaum Erfahrung mit der Präsentation vor Publikum haben. Diesem Umstand möchten wir besonders Rechnung tragen und alle Teilnehmer um konstruktives Feedback zu den einzelnen Rednern bitten. Dazu verwenden wir bei diesem Event ein modifiziertes Feedback Formular. Um die Hürde für unsere neuen Speaker möglichst gering zu halten, werden alle Talks auf Deutsch durchgeführt.

====================

Vortrag 1 aus Deutschland:
Release early, release often
(Alexander Rothe, Spread Group)

Release early, release often ist ein weit verbreitetes Konzept im Bereich der agilen Softwareentwicklung.

Grundsätzlich birgt jedes Release ein gewisses Risiko. Mit der Anzahl der Releases steigt somit auch die Gefahr von Downtimes. Daher ist es nicht sonderlich hilfreich, einfach nur das Release-Intervall zu verkürzen. Vielmehr werden darauf angepasste Tools, Abläufe und Infrastruktur benötigt.

Der Vortrag beschreibt anhand eines konkreten Praxisbeispiels, wie Release early, release often gelingen kann und die dabei entstehenden Risiken auf ein Minimum reduziert werden. E...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/5ccaba98-48ae-48df-9928-8831ef9d4147/1ad4b523-d995-4c76-8076-ade3d2ff4f52-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/cszRKBGNE4xKW3XnAVWjst</video:player_loc><video:duration>4673</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-01-24T09:00:32.780Z</video:publication_date><video:tag>Java</video:tag><video:tag>Release</video:tag><video:tag>Spring</video:tag><video:tag>Kubernetes</video:tag><video:tag>Operators</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/fDjZmSX44feABxCMyDyuUa</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/06d31282-2a45-491c-8fb4-dc6eab477386.jpg</video:thumbnail_loc><video:title>Connascence, beyond Coupling and Cohesion</video:title><video:description>Speaker: Marco Consolaro
Recorded: 2021-05-25

00:00 Intro
05:48 The Talk
42:52 Q&amp;A

There are many concepts, principles and rules to discuss the design of source code.
Like SOLID, Code Smells, Cohesion and Coupling, LCOM4, and so on...

What if there would be a single concept which covers it all?
“The Grand Unified Theory Of Software Development” as Jim Weirich said in 2009?

The concept of Connascence is simple, yet very powerful in the context of Object Oriented software development. It generalises the ideas of Cohesion and Coupling and combines them in a more exhaustive classification under three axis, using a proper taxonomy.

Sounds scary? It’s actually easy to grasp when we will look together at real life code examples. Step by step, will will discover the different kinds of Connascence.

After this talk you will have another nice tool for your toolbelt as Software Developer. Connascence will give you practical pointers about how to improve your code day by day. And maybe, you will fall in love with Connascence like I did some years ago.

Marco Consolaro

Software craftsman, technical coach, international speaker, Systems thinker, symmathecist, philosopher - all mixed with some Venetian humor. Co-author of the award-winning book "Agile Technical Practices Distilled - A learning journey in technical practices and principles of software design".

I self-learned Basic on a Commodore when I was 9 and my passion for programming has never faded since. I have been working for the past 20 years between Italy and UK, embracing ideas from Lean, Agile, eXtreme Programming, Domain-Driven Design, and Systems Thinking.

I recently co-founded ALCOR Academy with the mission of helping technical leaders to create a culture of engineering excellence through training on Agile Technical Practices.

Twitter: @consolondon

This talk is organized and brought to you in collaboration with our friends from the Software Crafts Romandie Meetup Group.

O...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/769629c0-9de2-4510-8683-6cce4f4a2851/b2db4a5b-e454-44f6-95c1-94dc8f077103-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/fDjZmSX44feABxCMyDyuUa</video:player_loc><video:duration>3002</video:duration><video:rating>5</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-01-25T09:00:33.206Z</video:publication_date><video:tag>Java</video:tag><video:tag>Coupling</video:tag><video:tag>Cohesion</video:tag><video:tag>Connascence</video:tag><video:tag>Architecture</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/bKbfNoXsXyfuiXcRQRedro</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/9e0d8716-d494-4a82-90d3-71f431ee0e8c.jpg</video:thumbnail_loc><video:title>Coffee to go mit einem Schäumchen aus der Cloud</video:title><video:description>Sprecher: Patrick Wachsmuth &amp; Jonas Alder
Aufgenommen: 2021-06-08

00:00:00 Begrüssung
00:03:10 Vortrag
01:28:25 Fragen und Antworten

Früh auf den Beinen - und kein Kaffee? Von wegen!

Dank der Integration mehrerer mobiler Bezahllösungen in eine autonome Kaffeemaschine könnt Ihr Euren Kaffee nun jederzeit mit Eurem Mobiltelefon holen: In diesem Vortrag erhaltet Ihr einen Einblick, was es bedeutet, mehrere tausend Kaffeemaschinen in einen hochverfügbaren und skalierbaren IoT-Stack auf Basis von Kafka und Kubernetes in der Cloud zu integrieren, damit Euer Kaffee zur richtigen Zeit und überall auf der Welt serviert wird.

Seit 2016 arbeitet Zühlke mit Schaerer, einer Schweizer Premium-Kaffeemaschinenmarke, zusammen, um deren Kaffeemaschinen mit der Cloud zu verbinden.

Was Ihr lernen werdet:
Warum wir eine Microservice-Architektur mit Spring und Kafka aufgebaut haben.
Wie wir verschiedene internationale Payment-Anbieter integrieren
Wie wir Testcontainer für aussagekräftige Integrationstests nutzen
Welche Lehren wir aus dem Betrieb von Kafka (und allem anderen) auf Kubernetes gezogen haben

Patrick Wachsmuth ist seit 3 Jahren bei der Schaerer AG als Softwareentwickler tätig und hat zusammen mit Zuehlke Engineering, das Vorgängerprojekt wie auch die aktuelle Lösung entwickelt. Dank seinem technisch breiten Rucksack aus Automation und Software ist er in der Architektur und Umsetzung federführend. Nebst dem Entwickeln von neuer Sofware, liegt Patrick das Turnen und der Wintersport am Herzen, wo er sich nicht nur geistig sondern auch körperlich auspowern kann.

Jonas Alder ist seit Juni 2017 bei Zühlke und hat knapp 15 Jahre IT Erfahrung. Durch die Grundausbildung als Systemtechniker und den Einsatz in verschiedenen IT Rollen besitzt er ein sehr breites Fachwissen von Applikationsentwicklung über Datenbanken bis hin zu System Engineering. Aktuelle Fokusgebiete sind Cloud, Kubernetes und Code Qualität. Privat ist er begeisterter Wintersportler und ge...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/5702b04d-92a4-4080-8dd0-60580ae35c48/2a9e6f51-aa13-4cd4-8f83-4629bd0eabb0-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/bKbfNoXsXyfuiXcRQRedro</video:player_loc><video:duration>5905</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-01-26T09:00:33.786Z</video:publication_date><video:tag>Java</video:tag><video:tag>Cloud</video:tag><video:tag>IoT</video:tag><video:tag>Kafka</video:tag><video:tag>Kubernetes</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/wQyosDC1dwY2TqtR6gmJ7p</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/76896447-4664-4bd9-ac76-8cc4b0dfa382.jpg</video:thumbnail_loc><video:title>The Future of Programming</video:title><video:description>Speaker: Robert C. Martin (Uncle Bob)
Recorded: 2021-06-22

00:00:00 Welcome and Intro
00:04:21 Start of the talk
00:05:30 1936 - Alan Turing 
00:08:22 1939 - Breaking the Enigma code 
00:09:55 1942 until 1945 - Colossus + ACE
00:14:38 1945 - Turing writes code in binary
00:17:40 1945 - Turing about programmers: "mathematicians of ability"
00:18:40 1945 - Turing about programming: importance of "appropriate discipline"
00:19:12 There are about in the order of 100 million programmers today
00:19:57 1945 - Only a few computers and programmers in the world -&gt; O(1)
00:21:10 1950s - Core memory was invented
00:23:37 1950s - Vacuum tubes mass production
00:24:20 1953 - Programming languages were invented like Fortran, Cobol, ...
00:27:22 1958 - LISP as first functional programming language
00:27:57 1954-1960 - IBM 70x computers and more than half of the programmers were women
00:29:22 Grace Hopper who invented the first compiler
00:30:34 1960 - Number of computers in the world: 100 - 500, number of programmers: 10x of that
00:31:35 Programmers were engineers, scientists, mathematicians
00:32:41 Transistors were invented
00:33:20 1965 - transistor based computers like the IBM 1401 were affordable for mid-sized companies
00:34:40 1965 - Number of computers in the world: tens of thousands, number of programmers: 10x of that
00:36:57 1965 - Programmers were still coming from other disciplines, were older and disciplined
00:37:36 1966 - IBM 360s every month 1000 pieces produced
00:38:50 1966 - The invention of object oriented programming (OOP)
00:40:00 1968 - GOTO statement considered harmful, invention of structured programming (Dijkstra)
00:40:36 1965 - C programming language and UNIX operating system
00:41:26 1970 - Mini computers like the DEC PDP-8 were available 
00:42:23 1970 - Number of computers in the world: hundreds of thousands, number of programmers: about 1'000'000
00:43:24 Universities started to crank out computer science gradua...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/f9b9d1f2-1cbe-49bb-801e-9fe4cfad5c4b/047abb29-4910-4eb5-801d-c2f5d3de6bf8-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/wQyosDC1dwY2TqtR6gmJ7p</video:player_loc><video:duration>6174</video:duration><video:rating>5</video:rating><video:view_count>11</video:view_count><video:publication_date>2026-01-27T09:00:18.331Z</video:publication_date><video:tag>Java</video:tag><video:tag>Uncle Bob</video:tag><video:tag>Robert C. Martin</video:tag><video:tag>Software Development</video:tag><video:tag>Software Craftsmanship</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/pSdVP6yU9spiXKKQ1e1fpW</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/1a7cc31e-b15c-4634-97a6-3d55c81558ef.jpg</video:thumbnail_loc><video:title>An Introduction to Residuality Theory</video:title><video:description>Speaker: Barry O’Reilly
Recorded: 2021-06-29

Residuality theory is a revolutionary new theory of software design that aims to make it easier to design software systems for complex business environments.

Residuality theory models software systems as interconnected residues - an alternative to component and process modeling that uses applied complexity science to make managing uncertainty a fundamental part of the design process.

This talk is recommend for everyone who is interested in the design and evolvement of software systems (e.g. distributed systems, cloud, ...) whatever your main role currently is: developer, architect, product manager, CTO, engineering manager, tester, requirement engineer, ...

Barry is a software architect with 20 years experience who has held Chief Architect positions at Microsoft and IDesign.

He has also been a startup CTO, the Worldwide Lead for the Solutions Architecture Community at Microsoft, and founder of the Swedish Azure User Group.

He is currently pursuing a PhD in the area of complexity science and software design.

LinkedIn: https://www.linkedin.com/in/barry-o-reilly-b924657/

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/c145583f-4349-4bc9-b166-9e091203b3b4/a97d62e4-649f-4ffd-90a8-38cb6214768b-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/pSdVP6yU9spiXKKQ1e1fpW</video:player_loc><video:duration>5173</video:duration><video:rating>5</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-01-28T09:00:54.073Z</video:publication_date><video:tag>Java</video:tag><video:tag>Residuality Theory</video:tag><video:tag>Software Design</video:tag><video:tag>Architecture</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/gHpgWguWav5mUktw6AVbqc</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/8a0fffd1-2ecd-4a22-bdae-22791a51e06f.jpg</video:thumbnail_loc><video:title>Java After 11</video:title><video:description>Sprecher: Nicolai Parlog
Aufgenommen: 2021-07-14

00:00:00 Begrüssung
00:02:56 Vortrag
01:15:06 Fragen und Antworten

Die meisten Projekte, die von Java 8 weg migriert sind, sind bei der LTS-Version 11 stehen geblieben. Der neue Release-Zyklus erweckte den Eindruck, dass danach nicht mehr viel passiert sei. Das Gegenteil ist der Fall: Mit neuen Sprachfeatures wie Switch-Expressions, Text Blocks, Records und Sealed Classes entwickelt sich Java schneller denn je.

In diesem Vortrag nehmen wir eine einfache Java-11-Codebasis, aktualisieren sie auf Java 16 und refaktorieren sie, um die neuen Sprachfeatures und APIs zu nutzen. Du wirst überrascht sein, wie stark sich der Code verändert.

Nicolai (auch bekannt als nipafx) ist ein Java-Enthusiast mit Fokus auf Sprachfeatures und Core-APIs und einer grossen Leidenschaft fürs Lernen und Weitergeben von Wissen – in Artikeln, Newslettern und Büchern; auf Twitter, in Videos und Live-Streams; in Demo-Repositories und auf Konferenzen. Mehr dazu auf [nipafx.dev](nipafx.dev). Er ist Java Developer Advocate bei Oracle und Organisator von Accento. Abgesehen davon ist er vor allem für seine Frisur bekannt.

Twitter: @nipafx

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/7f40eb05-0a5a-4183-98f0-9def875ded6b/76a40363-a636-435f-b439-c6eda1476488-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/gHpgWguWav5mUktw6AVbqc</video:player_loc><video:duration>4907</video:duration><video:rating>5</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-01-29T09:00:54.549Z</video:publication_date><video:tag>Java</video:tag><video:tag>LTS</video:tag><video:tag>Sealed Classes</video:tag><video:tag>Records</video:tag><video:tag>Switch Expressions</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/qnd19d3paHgkyLaFGtYm7c</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/a940c44a-e4cc-42b5-8b1d-f9648954a29e.jpg</video:thumbnail_loc><video:title>Application behaviour exposed</video:title><video:description>Speaker: Etienne Dysli Metref
Recorded: 2021-08-24

00:00 Intro
01:51 Talk
29:33 Q&amp;A

What's your application doing when you're not looking? It produces usage data that's just there, waiting to be brought to light! In this talk, we'll explore multi-dimensional monitoring tools and how they help us make sense of application metrics from an operational view as well as from a business perspective. We'll see how simple integrations like metrics from a Spring Boot application collected by Prometheus and visualised with Grafana can net you quick insights into what happens in production. Adding your own metrics is now easier with Micrometer, this allows us to measure what the business cares about and help inform their decisions. Instrument your code and run that dashboard you've been dreaming of!

Etienne is a passionate software engineer, driving code with tests and automating everything that comes near. He works for SWITCH and puts his experience into improving and running SWITCH edu-ID, the life-long identity for accessing academic services. He also contributes to various open-source projects.

Besides the digital world, Etienne enjoys playing games, woodworking, painting miniatures (for said games, of course), and embarking on the next crazy idea.

Links from the presentation:
- Micrometer: https://micrometer.io/
- Prometheus: https://prometheus.io/
- Grafana: https://grafana.com/
- Community dashboards for Spring Boot applications:
  - https://grafana.com/grafana/dashboard...
  - https://grafana.com/grafana/dashboard...
- SWITCH edu-ID: https://www.switch.ch/edu-id/

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/c5515801-b5dc-42d4-b784-7777b61494e7/40594723-4426-469d-a1e9-f95861d5c913-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/qnd19d3paHgkyLaFGtYm7c</video:player_loc><video:duration>2674</video:duration><video:rating>5</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-01-30T09:00:55.193Z</video:publication_date><video:tag>Java</video:tag><video:tag>Monitoring</video:tag><video:tag>Metrics</video:tag><video:tag>Grafana</video:tag><video:tag>Prometheus</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/miW4pJMt1HVCFJTeMFS5gw</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/08f0a98e-d983-42b8-b637-402a9b52d7c6.jpg</video:thumbnail_loc><video:title>Debugging distributed systems</video:title><video:description>Speaker: Bert Jan Schrijver
Recorded: 2021-09-02

00:00:00 Intro
00:01:36 Talk
1:16:45 Q&amp;A

Nowadays, most software projects are distributed systems: components are located on different networked computers which communicate and coordinate their actions by passing messages.

Debugging distributed systems is not easy. When two components don’t play nice together, the cause could be virtually anything: software, DNS, routing, firewalls, proxies, load balancers, TLS.. and more!

In this talk, I’ll share my experience with debugging distributed systems. We’ll look at typical issues and share ways to debug those issues and find their root causes. We’ll dive into networking, infrastructure, logging/tracing/metrics, testing, remote debugging and more. I’ll share lots of examples and war stories along the way. After this talk, you’ll have the practical knowledge on how and where to get started with debugging distributed systems yourself!

Bert Jan is CTO at OpenValue and focuses on Java, software architecture, Continuous Delivery and DevOps. Bert Jan is a Java Champion, JavaOne Rock Star speaker, Duke's Choice Award winner and leads NLJUG, the Dutch Java User Group. He loves to share his experience by speaking at conferences, writing for the Dutch Java magazine and helping out Devoxx4Kids with teaching kids how to code. Bert Jan is easily reachable on

Twitter: @bjschrijver

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/a477bb71-42cb-4df0-9b48-b7b2f01bef34/20b3bd90-5152-4e06-ac93-039d40e489cf-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/miW4pJMt1HVCFJTeMFS5gw</video:player_loc><video:duration>5351</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-01-31T09:00:55.641Z</video:publication_date><video:tag>Java</video:tag><video:tag>Debugging</video:tag><video:tag>Distributed Systems</video:tag><video:tag>Cloud</video:tag><video:tag>Network</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/c2wLYjeYDED3WNTJyfBA7b</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/bd98cb90-33d7-44e1-b285-457ef9a5e4c4.jpg</video:thumbnail_loc><video:title>Unlock Refactoring and Level Up Your Game</video:title><video:description>Speaker: Victor Rentea
Recorded: 2021-03-02

00:00:00 Intro
00:05:50 The Talk
01:03:34 Questions &amp; Answers

To survive in a codebase we have to refactor continuously, we know that since the Extreme Programming days. But what stops us from doing so? In this talk, Victor summarizes what he learned discussing Clean Code and Refactoring with hundreds of teams from many countries. You'll find ideas to tackle a surprisingly broad spectrum of factors: technical, cultural, psychological, emotional, social, and even political. Using these you might unlock the freedom to refactor for you or your colleagues.

After this roundtrip, the talk briefly overviews several of the most painful code smells in the projects today, highlighting various subleties to the common solutions: God Class, Duplicated Code vs Divergent Code, Temporal Coupling, Middle Man, Speculative Generality, Mutable Long-Lived State, Comments, and more.

Victor is a Java Champion and an Independent Trainer with extensive experience delivering intense webinars for dozens of companies worldwide. His passion is Simple Design, Refactoring, and Unit Testing, about which he regularly talks at top conferences. Victor founded the Bucharest Software Craftsmanship Community that he engages in monthly live webinars and discussions. On victorrentea.ro you can find his blog, talks, training curriculum, live masterclasses, and social channels.

Twitter: @VictorRentea

Organized by: Java User Group Switzerland and Software Crafts Romandie
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/594b3c2a-451f-4cec-92bd-69252cc21686/77a82423-d025-45b6-90dd-121e5d3b1901-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/c2wLYjeYDED3WNTJyfBA7b</video:player_loc><video:duration>4030</video:duration><video:rating>5</video:rating><video:view_count>3</video:view_count><video:publication_date>2026-02-01T09:00:56.287Z</video:publication_date><video:tag>Java</video:tag><video:tag>Refactoring</video:tag><video:tag>Clean Code</video:tag><video:tag>Code Smells</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/x7B7rSnZUfL1xApmzqsDkb</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/e76e8848-878b-4840-87d5-891bac8c73a7.jpg</video:thumbnail_loc><video:title>7 techniques to tame a Legacy codebase</video:title><video:description>Speaker: Nicolas Carlo
Recorded: 2021-09-29

00:00 Intro
05:51 Talk
57:32 Q&amp;A

We spend most of our time changing existing code. Often, there’s no test and the authors are long gone! It feels like a pain because you're always in a hurry, rushing to ship new features and bug fixes before the end of the Sprint… But what if you had a secret weapon? Let me share with you 7 concrete techniques that will help you regain control of any Legacy.

Nicolas is a web developer who loves building communities and maintainable software.

When he's not enjoying life with his family or working at Centered, he organizes the "Software Crafters Montréal" meetup and develops VS Code extensions.

He shares tips &amp; tricks to work with Legacy Code every week on his blog Understand Legacy Code.

Twitter: @nicoespeon

Link to the slides: https://understandlegacycode.com/asse...

This talk is organized and brought to you in collaboration with our friends from the Software Crafts Romandie Meetup Group.

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/fbf7662a-967c-44f2-8aa5-4e64565aec3c/429cdebd-f2b1-4ce0-8509-2644c48a67a9-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/x7B7rSnZUfL1xApmzqsDkb</video:player_loc><video:duration>4939</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-02-02T09:00:13.905Z</video:publication_date><video:tag>Java</video:tag><video:tag>Legacy</video:tag><video:tag>Refactoring</video:tag><video:tag>Code</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/uU7EVmgP55TWqjX9E91fNF</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/307a475a-825a-4766-b677-5d200bf5625e.jpg</video:thumbnail_loc><video:title>Architecturally-evident Java Applications with jMolecules</video:title><video:description>Speaker: Oliver Drotbohm
Recorded: 2021-10-19

00:00:00 Intro
00:03:26 Talk
01:07:44 Q&amp;A

Java applications are usually written using a certain framework or at least based on a particular platform. Some of them provide means to express architectural concepts, but usually, there's a gap between architectural and design patterns and the actual code. Closing that gap is a challenge, and it's hard to separate code from technology.

jMolecules is a framework independent library to express well-known architectural patterns in Java code and let technical integration with frameworks, compliance with implementation heuristics and documentation of the system's current arrangement be derived from that.

The talk gives an overview about the fundamental idea and the way jMolecules allows developers to make use of it. We then discuss a variety of optional technology integration into Spring, Jackson, JPA, and MongoDB as well as how to generate, high-level, structural documentation from that.

Oliver Drotbohm is engineer in the Spring team at VMware, Java Champion and member of the JPA 2.1 expert group. He has been into developing enterprise applications and open-source projects for over 15 years now. His work focused on software architecture, DDD, REST, and persistence technologies. Oliver is regularly speaking at German and international conferences and the author of technology articles. The new book “Modulithic Applications with Spring” is due to release late 2021.

Twitter: @odrotbohm

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/ea06ab70-ba5d-4d56-a668-be575cd6464b/7587b176-4797-4eba-bcbe-bd0a3dcadd2b-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/uU7EVmgP55TWqjX9E91fNF</video:player_loc><video:duration>6088</video:duration><video:rating>5</video:rating><video:view_count>10</video:view_count><video:publication_date>2026-02-03T09:00:14.470Z</video:publication_date><video:tag>Java</video:tag><video:tag>Architecture</video:tag><video:tag>jMolecules</video:tag><video:tag>Patterns</video:tag><video:tag>Documentation</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/fcUQg1m4vQC1xHVJWoPYHX</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/51fe7240-3e02-4e31-8f26-12f48559ab2c.jpg</video:thumbnail_loc><video:title>Remote Pair Programming</video:title><video:description>Speaker: Adrian Bolboacă
Recorded: 2021-03-02

00:00:00 Intro
00:04:51 The Talk
01:18:16 Questions &amp; Answers

Pair programming is great when done well and awful when done... not so well.

Adrian has been pairing remote for many years and he is here to tell you about his experiences. You can make remote pair programming a part of your daily life as a programmer. And even more: remote pairing is not just for programmers. You can pair with anyone, and the results of your work can be significantly better and faster. Adrian has paired for many activities: writing code, writing books or articles, organising conferences, writing documentation, and many others. So in fact you can use remote pairing in almost any type of activity, with great success.

Last year Adrian published a book called Practical Remote Pair Programming, where he goes in depth on all these topics.

Join Adrian to learn, chat with him and ask many questions.

With more than 15 years of experience in the technology world, Adrian shares about himself: “The continuous improvement paradigm is important for the people I work with and for myself; this is why I like helping people and teams reach their goals.”

International experience in technology for more than 15 years, in startups and large companies, with customers from Germany, Switzerland, Denmark, Finland, Sweden, Netherlands, Romania, Italy, France.

Experienced trainer - he likes to teach passionate people from dynamic organizations to exceed their potential by challenging their current activity model for better collaboration, increased performance and satisfaction.

Transformations: involved as trainer, coach &amp; consultant in various aspects of digital transformations including agile, lean and software craftsmanship transformations, in small and large organizations around Europe.

Involved in developing successful digital products and transformations in domains like: energy, ecommerce, banking, telecom, automotive, customs, e...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/7309ae7e-5c8c-4953-a56c-04224389a7d9/26aedc88-d3a3-40e3-afde-998896358ddd-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/fcUQg1m4vQC1xHVJWoPYHX</video:player_loc><video:duration>5352</video:duration><video:rating>5</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-02-04T09:00:15.317Z</video:publication_date><video:tag>Java</video:tag><video:tag>Remote</video:tag><video:tag>Pair Programming</video:tag><video:tag>Team</video:tag><video:tag>Methodology</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/n8daKhREhJF4TNTSXmdbEH</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/8e3f1cc4-3866-41c9-92c2-ba111ae09360.jpg</video:thumbnail_loc><video:title>Mistakes and Trade-offs when optimizing the hot-path</video:title><video:description>Speaker: Tomasz Lelek
Recorded: 2021-11-02

00:00 Intro
02:25 Talk
47:20 Q&amp;A

When we are building our systems, the performance requirements are essential.

Having SLA’s data, we can build performance tests in a way that allows us to reason about the system before production deployment. An important observation related to many systems is that the code that brings most of the business value often occupies a small percentage of the whole codebase. This observation is based on the Pareto principle and was validated in many business domains, not only software engineering.

Based on those observations, we can design a process that allows us to find the hot-path in our code. Hot-path is executed for almost all users’ requests. When we detect the hot-path in our code, we can optimize a small subset of our codebase, achieving substantial performance gains. Therefore, we can work more effectively. This presentation will focus on analyzing a system and applying a method based on the Pareto principle, SLA, and performance tests to find and optimize the hot path. Each step will be backed up with performance tests and data to verify that we are progressing with our optimizations in a good direction.

Tomasz currently works at Datastax, building products around one of the world's favorite distributed databases - Cassandra. He contributes to Java-Driver, Cassandra-Quarkus, Cassandra-Kafka connector, and Stargate.

Published author of "Software Mistakes and Tradeoffs: Making good programming decisions" that is focusing on real-world problems you may encounter in your production systems. It tries to analyze every situation in a variety of contexts and consider all its tradeoffs. It also presents some non-obvious mistakes that may significantly impact your systems from various perspectives (not only correctness).

It is available at: https://www.manning.com/books/softwar...

Previously worked at Allegro, working on streaming, batch, and online systems serving mi...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/ab119df8-679a-4aa9-a25c-12cde1e3a0ad/d058ae39-a330-4de4-aa2f-ac0082c1e0b9-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/n8daKhREhJF4TNTSXmdbEH</video:player_loc><video:duration>3669</video:duration><video:rating>5</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-02-05T09:00:15.921Z</video:publication_date><video:tag>Java</video:tag><video:tag>Performance</video:tag><video:tag>Optimization</video:tag><video:tag>Production</video:tag><video:tag>Pareto Principle</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/sVQvkGxypaQ3rtTw8xENAo</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/7e4b886b-de27-4c92-a678-49fae199c8ef.jpg</video:thumbnail_loc><video:title>javax.measure bringt verständliche Einheiten in die Software</video:title><video:description>Sprecher: Felix Schultze
Aufgenommen: 2021-11-09

00:00 Begrüssung
02:08 Vortrag
53:07 Diskussion &amp; Outro

Einheiten im Code bieten immer wieder Herausforderungen. Wofür stand nochmal der eine “double” Wert, wofür der andere “int”? Sind die Dinger “Metrisch”, im “U.S. customary system” oder was ganz eigenes? In diesem Vortrag soll ein Überblick über die Möglichkeiten ausgehend von der Java API javax.measure gegeben werden. Ausserdem soll darauf eingegangen werden, wie man die Werte persistiert oder auch in Frontend Clients (v.a. Angular, aber nicht nur) benutzen kann. Und die wichtigste Frage: Was hat das Ganze mit der Raumfahrt zu tun?!?!?!?

Felix Schultze arbeitet bei bridgingIT GmbH als Berater und Software Entwickler und treibt sich meist in Spring Applikationen mit Ausflügen ins Frontend herum. Nebenbei hilft er hier und da auch bei quarano e.V. aus, um unseren Gesundheitsämtern auf deren Wunsch hin das Leben etwas erleichtern zu können.

Twitter: @babubabubabo

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/da11eaf2-adb3-46e0-948e-29678d878282/ae6ac986-758b-43a7-b340-e37e116acd8f-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/sVQvkGxypaQ3rtTw8xENAo</video:player_loc><video:duration>3578</video:duration><video:rating>5</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-02-06T09:00:16.455Z</video:publication_date><video:tag>Java</video:tag><video:tag>javax.measure</video:tag><video:tag>API</video:tag><video:tag>Einheiten</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/57YbEUp9toAt6CByiaja5W</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/4ee45628-8a00-46df-b253-dea06b16cd94.jpg</video:thumbnail_loc><video:title>Viele Wege führen vom Source Code zum Container Image</video:title><video:description>Sprecher: Matthias Haeussler
Aufgenommen: 2021-11-18

00:00:00 Begrüssung
00:03:59 Vortrag Teil 1
00:39:29 Fragerunde 1
00:46:18 Vortrag Teil 2
01:11:45 Fragerunde 2

Ein typischer Workflow in moderner Software Entwicklung beinhaltet oft folgende Schritte: Den Code in eine git Repo, kompilieren, ein Container Image bauen, das Image in eine Registry und Deployment auf einen Kubernetes Cluster.

Jeder Schritt hat seine eigenen Anforderungen und Herausforderungen. Das grosse gemeinsame Ziel ist es zumeist, diese Schritte in eine wiederholbare Pipeline zu bekommen und so den Grad der Automation zu erhöhen.

Gerade in dem Bereich der Container Images scheinen Dockerfiles die Option mit der grössten Akzeptanz zu sein. Es gibt jedoch mittlerweile einige Alternativen, die ein paar Stolperfallen vermeiden und diesen Teil des Prozesses noch mehr standardisieren können.

Dieser Vortrag gibt tiefere Einblicke in diese Optionen und vergleicht (multi-stage) Dockerfiles mit Cloud-Native Buildpacks, Paketo und Google’s JIB anhand der Kriterien Geschwindigkeit, Grösse des Image, Standardisierung, Robustheit und Sicherheit. Die Beispiele und live Demo haben einen gewissen Fokus auf Java-basierte Frameworks, aber auch andere Programmiersprachen werden behandelt.

Das gewünschte "take-away" dieses Vortrags ist ein besserer Überblick über den Container Build Mechanismus und die verschiedenen Optionen hierbei sowie ein Verständnis der Anforderungen, Vorteile und Nachteile dieser Varianten.

Matthias Haeussler ist Chief Technologist bei der Novatec Consulting, Dozent an der Hochschule für Technik in Stuttgart im Fach "Verteilte Systeme" und Organisator des Cloud Foundry Meetups Stuttgart. Er berät Kunden bei deren Cloud Strategie, unterstützt aktiv Implementierungen und Migrationen. Davor war er über 15 Jahre bei der IBM R&amp;D beschäftigt. Er hält regelmässig Vorträge auf nationalen sowie internationalen Konferenzen und Meetups wie z.B. Open Source Summit, WJAX, OOP, d...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/215da451-6394-483e-84eb-d5d659dc2ce2/40051b14-9159-46c1-a866-b419f145b505-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/57YbEUp9toAt6CByiaja5W</video:player_loc><video:duration>4606</video:duration><video:rating>5</video:rating><video:view_count>3</video:view_count><video:publication_date>2026-02-07T09:00:17.186Z</video:publication_date><video:tag>Java</video:tag><video:tag>Container</video:tag><video:tag>Cloud</video:tag><video:tag>Docker</video:tag><video:tag>Registry</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/2VRPqad8NabMjcR729G6V6</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/046714a4-5a3e-43f2-9ea5-66a93a195d12.jpg</video:thumbnail_loc><video:title>Bug Free: 21 tricks to reduce the space available for bugs</video:title><video:description>Speaker: Johan Martinsson
Recorded: 2021-11-23

00:00:00 Intro
00:05:05 The Talk
01:31:33 Questions &amp; Answers

Get rid of whole families of bugs for good with 21 tricks to reduce the space available for bugs.

Bugs are not a fatality, they appear whenever the design allows for it. Learn how to fix the root-causes and how to give an intrinsic quality to your code.You'll look at static and dynamic typing in a different way. Learn about NoPrimitives, coupling &amp; cohesion, if-less. We'll talk about the feedback-funnel and how it all scales from micro design to micro-services and to macro-design.

With loads of concrete examples and some live coding.

This talk is organized and brought to you in collaboration with our friends from the Software Crafts Romandie Meetup Group. It will be broadcast live on the Internet. You do not need to install any software or plugins, everything runs in your web browser. The software used allows you to ask the speaker questions as usual.

Johan Martinsson is an inveterate crafter, passionate about design in code. When not coding he's a serial conference and meetup organizer.

He has spent many years helping teams adopt XP-practices, in particular TDD and Continuous Delivery.

Twitter: @johan_alps

Organized by: Java User Group Switzerland and Software Crafts Romandie
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/0f9e4275-e55e-4f05-8401-64e450f37d1b/f665396d-88d6-4650-8fe5-6ecdddcfa9e7-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/2VRPqad8NabMjcR729G6V6</video:player_loc><video:duration>5760</video:duration><video:rating>5</video:rating><video:view_count>3</video:view_count><video:publication_date>2026-02-08T09:00:17.671Z</video:publication_date><video:tag>Java</video:tag><video:tag>Bugs</video:tag><video:tag>Quality</video:tag><video:tag>Software Development</video:tag><video:tag>Feedback Funnel</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/qiFtkC9hjz7usvW5HqNnCA</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/e5aa48b0-b575-4be0-ae11-f7cf4c946c5b.jpg</video:thumbnail_loc><video:title>Java 17: Die relevanten Features der neuen LTS-Version</video:title><video:description>Sprecher: Falk Sippach, embarc Software Consulting GmbH
Aufgenommen: am 2021-11-24 in Luzern

Agenda
00:00:00 Vorstellung
00:06:21 Einführung
00:15:51 Was bisher geschah
00:20:33 Auf dem Weg zu Java 17
00:42:07 Neue Features im Blick
01:10:22 Ausblick

Seit einigen Jahren kommen nun schon halbjährlich neue Java Major-Releases heraus. Dieses Vorgehen hat sich etabliert und funktioniert erstaunlich gut. Natürlich dürft Ihr nicht den Funktionsumfang von den früheren Versionen (9 und älter) erwarten. Dafür bekommt Ihr als Entwickler aber viel regelmässiger die nächsten Änderungen mit. In den Preview-Phasen kann sogar Feedback gegeben und somit die aktive Weiterentwicklung von Java mitgestaltet werden. Alle drei Jahre erscheinen zudem Long-Term-Support-Versionen, die länger mit Updates und Patches versorgt werden. Im Herbst 2021 stand mit der Version 17 wieder ein solches LTS-Release an, für welches in den letzten 3 Jahren jede Menge interessante neue Funktionen entwickelt wurden.

Wenn Ihr es noch nicht getan habt, solltet Ihr nun einen Blick auf all die Neuerungen seit dem letzten LTS-Release (Java 11) werfen. Die Liste der Features ist lang:

Switch Expressions
Text Blocks
Pattern Matching für instanceof
Helpful NullPointerExceptions
Records
Sealed Classes
und noch einiges mehr

In diesem Vortrag betrachten wir ausserdem hilfreiche API-Verbesserungen und Änderungen an der JVM, z. B. bei den Garbage Collectoren. Falls Ihr noch nicht bei Java 11 oder höher angekommen seid, bekommt Ihr damit auch einen kompakten Überblick, wie sich Java aktuell anfühlt.

Falk Sippach ist bei der embarc Software Consulting GmbH als Softwarearchitekt, Berater und Trainer stets auf der Suche nach dem Funken Leidenschaft, den er bei seinen Teilnehmern, Kunden und Kollegen entfachen kann. Bereits seit über 15 Jahren unterstützt er in meist agilen Softwareentwicklungsprojekten im Java-Umfeld. Als aktiver Bestandteil der Community (Mitorganisator der JUG Darmstadt) t...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/c4d34c09-1863-407b-9b6b-7c06f9b0408e/a7dfa24c-85e7-473b-82bf-5693d1d05367-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/qiFtkC9hjz7usvW5HqNnCA</video:player_loc><video:duration>4745</video:duration><video:rating>5</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-02-09T09:00:18.377Z</video:publication_date><video:tag>Java</video:tag><video:tag>LTS</video:tag><video:tag>Features</video:tag><video:tag>Pattern Matching</video:tag><video:tag>Sealed Classes</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/7jS1UZWqK6Ltw8u3TvLPKQ</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/9505a3da-2f4c-40b3-a606-0f213e9afa62.jpg</video:thumbnail_loc><video:title>Async Code Reviews Are Killing Your Company’s Throughput</video:title><video:description>Speaker: Dragan Stepanović
Recorded: 2021-12-14

00:00 Intro
05:22 The Talk
59:14 Questions &amp; Answers

"Never had a PR over 300 LoC that didn't look good to me". We've all been there. The PR is so big you don't even bother commenting. It's already too late to build the quality in. You make a sad face, comment "LGTM", and click approve.

That's still the case in lots of teams but feels like after a long time the industry, on average, learned the value of the Small Batches idea from Lean applied to PRs. And that's a good thing; it's a step in the right direction.We do a bit of coding, raise a PR and then ask for feedback. People are more likely to engage on smaller PRs. It takes them less time to review it, and they have a feeling that they can still course-correct if something goes astray. PRs go sooner out of the door, and we feel productive as a team.

But, here's the surprise. What if I told you that teams doing small PRs (with async code reviews) actually have way lower throughput than teams doing big PRs.

"Wait, what?!" Yes.

I got this surprising systemic insight from analyzing PRs across a bunch of very active repositories and I'll present you with the results of the study.On the bigger PRs side of the spectrum, we tend to lose quality, while on the smaller PRs end of the spectrum we lose throughput. We're forced to make a trade-off between speed and quality.

But! There's a parallel universe of ways of working where you get to have your cake and eat it too. Where you can have both throughput and quality. That universe is called co-creation patterns (Pair and Mob programming).

Join me on a journey where I'll show you data invalidating the assumption that two or more people sitting at the same computer will hurt our throughput and why the opposite is actually the case.

Dragan is currently a principal engineer at HelloFresh, one of the unicorns of Berlin's thriving start-up scene. Before HelloFresh he helped Careem/Uber build the large...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/33390b0a-2c04-4092-b930-970bd36cbd9a/26f469b8-6a3e-4a40-b7d0-75a2fccc8cbd-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/7jS1UZWqK6Ltw8u3TvLPKQ</video:player_loc><video:duration>4523</video:duration><video:rating>5</video:rating><video:view_count>10</video:view_count><video:publication_date>2026-02-10T09:00:18.910Z</video:publication_date><video:tag>Java</video:tag><video:tag>Async</video:tag><video:tag>Code</video:tag><video:tag>Review</video:tag><video:tag>Quality</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/41KKZ5oVSsyGkMpuSTeHg3</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/cce096a4-645a-42a9-aea6-dcc35411b431.jpg</video:thumbnail_loc><video:title>TDD and Clean Architecture: Driven by Behaviour</video:title><video:description>Speaker: Valentina (Cupać) Jemuović
Recorded: 2022-02-01

00:00:00 Intro
00:05:20 The Talk
01:19:34 Questions &amp; Answers

How can we accelerate the development of high-quality applications?

We will review the foundations of approaches to unit testing (Classicist TDD &amp; Mockist TDD), specifically focusing on the structural and behavioural coupling between test code and production code, how to write more robust tests which focus on behaviour - making our tests less costly to maintain and enabling easier code refactoring without breaking tests.

We will then review how to built-in testability into architecture and how behavioural tests are the essence of use-case-driven approaches within Hexagonal Architecture &amp; Clean Architecture.

Finally, we will conclude with insights that driving tests and architecture with behavioural modelling helps us accelerate delivery and reduce long-term maintenance costs.

Valentina (Cupać) Jemuović is the Founder and Principal Consultant at Optivem, helping leaders of tech product companies to increase quality and accelerate delivery through technical agility. As a technical consultant and coach, she helps development teams adopt TDD &amp; Clean Architecture in order to release new features much faster, minimize software defects, and scale teams effectively. This enables IT companies to build and scale high-performance teams, improve customer satisfaction and drive market success. Prior to coaching, Valentina had extensive hands-on experience in software development - as a Senior Software Developer, Tech Lead, Software Architect and Solutions Architect. She has graduated with a dual degree from the University of Sydney, majoring in Computer Science, Advanced Mathematics and Finance.  

Organized by: Java User Group Switzerland and Software Crafts Romandie
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/1866620d-856d-4571-8f5d-e6b66c2e6124/faf3d747-0d94-46a1-80cb-b5857ba35dd7-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/41KKZ5oVSsyGkMpuSTeHg3</video:player_loc><video:duration>6072</video:duration><video:rating>5</video:rating><video:view_count>8</video:view_count><video:publication_date>2026-02-11T09:00:19.433Z</video:publication_date><video:tag>Java</video:tag><video:tag>TDD</video:tag><video:tag>Clean Architecture</video:tag><video:tag>Quality</video:tag><video:tag>Testing</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/x5x7tDbKWQNBQZc9LTCQV6</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/5dcc127f-169f-493a-b05b-0dded343283b.jpg</video:thumbnail_loc><video:title>Fuzzing Java with Jazzer</video:title><video:description>Speaker: Fabian Meumertzheim
Recorded: 2022-04-26

00:00 Intro
03:15 The Talk
57:46 Questions &amp; Answers

Large tech companies such as Microsoft and Google are relying on fuzzers more and more to automate finding security issues in their software. In 2019, Google found the majority of potential security issues in Chromium via fuzzing - over 18,000 bugs in total.

Here, a fuzzer is a tool that rapidly feeds generated data into a specified entrypoint of an application or library with the aim of triggering bugs and security issues. Modern fuzzers use sophisticated instrumentation techniques to receive information about the code they execute and mutate the input data accordingly. 

In this session, you will learn the basic concepts behind fuzzing and get to know Jazzer, a state-of-the-art fuzzer for JVM-based languages, via real world examples. Whether it’s bypassing an XSS sanitizer, making servers grind to a halt with very small protobuf messages, or even reproducing Log4Shell, you will see how easy it is to automatically search for security issues and bugs in open-source libraries.

Fabian is a software engineer at Code Intelligence, where he focuses on the development of fuzzing technologies with a special focus on memory-safe languages and OSS security. He led the efforts to open-source the company’s Java fuzzer Jazzer and has since been its lead maintainer. He is also an avid contributor to other open-source projects such as Bazel, Chromium, and the Android Password Store. A mathematician by education, he always enjoys speaking at conferences and workshops.

Twitter: @fhenneke

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/fbad7260-7797-4b70-b4ea-3bedd2babc97/8052f247-d71f-4807-92f2-d1f8c89904fe-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/x5x7tDbKWQNBQZc9LTCQV6</video:player_loc><video:duration>4545</video:duration><video:rating>5</video:rating><video:view_count>3</video:view_count><video:publication_date>2026-02-12T09:00:19.969Z</video:publication_date><video:tag>Java</video:tag><video:tag>Fuzzing</video:tag><video:tag>Jazzer</video:tag><video:tag>Security</video:tag><video:tag>Bugs</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/8Cs1AsXk65anKrM517VqYq</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/f9144ec3-48eb-4309-a125-c6ee4b2b2bc4.jpg</video:thumbnail_loc><video:title>Warum du dir keine Sorgen um die Skalierung deiner Webapp machen musst</video:title><video:description>Sprecher: Marco Behler
Aufgenommen: 2022-06-29

00:00 Begrüssung
03:54 Vortrag von Marco
52:31 Fragen und Antworten

Wenn man eine neue Java Webanwendung erstellt, hat man oft nervende Fragen im Hinterkopf: Wie viele Nutzer kann meine Anwendung denn gleichzeitig handeln? Wie schnell wird meine Anwendung ihre JSON-Antworten ausliefern? Wieviel Speicher braucht die Anwendung? Wieviel Geld muss ich für Hosting ausgeben, welchen Server brauche ich? Reicht nicht auch ein Raspberry PI?

Überraschenderweise gibt es relativ wenig handfesten Rat, wie man diese Fragen praktisch beantworten kann - ausser dem Bauchgefühl, dass ein auto-skalierender Kubernetes-Cluster schon alles richten wird.

In dieser #livecoding session nehmen wir eine IDE und ein paar Zeilen Code, um ein tiefes, praktisches Verständnis dafür zu bekommen, wie man herausfindet, wie die eigene Anwendung sich unter Load verhält und welcher Server, welches Budget und welche Performance-Erwartungshaltung zu ihr passen - so dass man wegen Skalierungsproblemen nie wieder den Schlaf verliert.

Marco arbeitet als Developer Advocate bei JetBrains, in München. Er verarbeitet komplexe Themen in der Softwareerstellung in einfach zu verstehenden Guides, Videos und Talks.

Twitter: @MarcoBehler

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/3dc6c695-c8e2-4e88-871f-2c3a841b6550/d821ccc6-d741-46b7-96cb-bd44772b16af-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/8Cs1AsXk65anKrM517VqYq</video:player_loc><video:duration>4150</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-02-13T09:00:20.634Z</video:publication_date><video:tag>Java</video:tag><video:tag>Skalierung</video:tag><video:tag>Web</video:tag><video:tag>Cloud</video:tag><video:tag>Performance</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/9WGnLkpvLXRZvpGLNfpJFv</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/f42b7cf8-bd31-437c-8376-cf021ed47326.jpg</video:thumbnail_loc><video:title>Remote Developer Environments</video:title><video:description>Speaker: Sven Efftinge
Recorded: 2022-09-12

00:00 Intro
02:35 The Talk
36:45 Questions &amp; Answers

Development Environments are fragile and hard to set up and maintain. Cloning repositories, installing an editor with the right extensions, and having everything set up to compile, build and debug the application under development is a tedious experience.

Gitpod is an open-source project that helps teams prepare ready-to-code, containerized development environments specifically for their projects. Such dev environments are described in code that is versioned in Git alongside your source code. Integrated with GitLab, GitHub, and Bitbucket, Gitpod automatically and continuously prebuilds developer environments for all your branches. As a result, team members can instantly start coding with fresh, ephemeral, and fully-initialized dev environments - whether you are building a new feature, fixing a bug, or working on a code review.

In this session, you will learn why we created Gitpod, how it works and how you can boost your development workflow using it - extensive demos included.

Sven has spent the last 15 years creating IDEs, compilers, and other developer tools and kicked-off open-source projects such as Open-VSX, Theia, and Xtext. In his spare time, Sven goes kite surfing on the Baltic Sea and enjoys life with his kids.

Twitter: @svenefftinge

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/486c27ad-7713-4309-aad6-d7ea50e72013/91ad97dd-02dc-445b-98d5-b70204dd6de1-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/9WGnLkpvLXRZvpGLNfpJFv</video:player_loc><video:duration>3028</video:duration><video:rating>5</video:rating><video:view_count>9</video:view_count><video:publication_date>2026-02-14T09:00:21.140Z</video:publication_date><video:tag>Java</video:tag><video:tag>IDE</video:tag><video:tag>Remote</video:tag><video:tag>Gitpod</video:tag><video:tag>Ona</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/vMREwAo3XKQn8wizyvmBTg</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/f58c7688-bdb1-4ca7-b29e-546898585f0e.jpg</video:thumbnail_loc><video:title>Kubernetes Developer Survival Kit</video:title><video:description>Sprecherin: Sandra Parsick
Aufgenommen: 2022-11-08

00:00 Begrüssung
04:39 Vortrag von Sandra
56:25 Fragen und Antworten

Immer mehr Entwickleri:nnen schreiben Anwendungen, die später in einem Kubernetes Cluster laufen sollen. Was kann dabei so schwierig sein? Angefangen “Wie strukturiere ich meine Repositories?”, “Wo lege ich meinen Code für das Deployment ab (Containerfiles, Helm Charts, Config Values)?”, “Was muss bei der Entwicklung der Anwendung beachtet werden?”, “Wie bekomme ich den Code lokal getestet?”, “Wie bekomme ich mit, was im Test-Cluster passiert?”

Dieser Vortrag geht am Beispiel einer Java-Anwendung die typischen Entwicklungsschritte von der Ablage im VCS bis hin zum Deployment auf einem Cluster aus Sicht einer Entwicklerin durch.

Ich bin als freiberufliche Softwareentwicklerin und Beraterin im Java Umfeld tätig. Seit 2008 beschäftigte ich mich mit agiler Softwareentwicklung in verschiedenen Rollen. Gerne unterstütze und berate ich Sie in den Bereichen der Java Enterprise Anwendungen, agilen Methoden, Software Craftsmanship und in der Automatisierung von Softwareentwicklungsprozessen.

In meiner Freizeit engagiere ich mich in der Open Source Community, etwa für die virtuelle Java-Konferenz CyberLand, mit Blogbeiträgen, dem Podcast “Ready for Review”, oder durch Code Contribution. Außerdem sitze ich in diversen Programmkomitees (JavaLand, IT-Tage, Continuous Lifecycle und Frankfurter Entwicklertage 2021). Seit 2019 bin ich Mitglied im Oracle Groundbreaker Ambassador Programm und seit 2020 Java Champion.

Twitter: @SandraParsick
Mastodon: @sparsick@mastodon.social

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/f14018f4-8b0c-4eaa-a6f3-87c8913aaa39/e7d0004e-9d78-4eec-ab5c-7308646b0c3c-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/vMREwAo3XKQn8wizyvmBTg</video:player_loc><video:duration>4461</video:duration><video:rating>5</video:rating><video:view_count>10</video:view_count><video:publication_date>2026-02-15T09:00:21.648Z</video:publication_date><video:tag>Java</video:tag><video:tag>Kubernetes</video:tag><video:tag>Cluster</video:tag><video:tag>Cloud</video:tag><video:tag>Container</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/9G7BFrtiXyzDunXn5vcSF1</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/9232cf76-e6b2-49f4-9080-7335adbf37f4.jpg</video:thumbnail_loc><video:title>Migration einer Anwendung von Jakarta EE zu Quarkus</video:title><video:description>Sprecher: Sebastian Hempel
Aufgenommen: 2023-09-14

00:00 Begrüssung
02:30 Vortrag von Sebastian

Viele neue Anwendungen werden so geschrieben, dass sie in der Cloud betrieben werden können. Beim Design und der Implementierung wird darauf geachtet, Vorteile einer Kubernetes Umgebung zu nutzen und die Anwendung ideal in einem Container zu betreiben. Was aber macht man mit einer - noch nicht so - alten Anwendung, die in einer Application-Server Umgebung läuft und fit gemacht werden soll für die Zukunft?

Vor dieser Aufgabe standen wir bei der Migration einer Jakarta EE Anwendung. Die vorhandene Anwendung wurde als EAR in einem Application-Server deployt. Die Migration sollte ohne die Nutzung eines Application-Servers erfolgen. Gleichzeitig sollten die bei einer cloud nativen Anwendung üblichen Techniken wir Health-Checks, Metriken, strukturiertes Logging verwendet werden.

Als gangbarer Weg erwies sich die Nutzung von Quarkus als "Laufzeitumgebung" für die Anwendung. Durch die Nutzung von Jakarta EE Spezifikationen wurde eine umfangreiche Umprogrammierung vermieden. Die neuen cloud spezifischen Techniken konnte leicht integriert werden.

In diesem Vortrag wird die Migration der Anwendung von Jakarta EE zu Quarkus beschrieben. Dabei gab es verschiedene Herausforderungen zu meistern. Was konnte bei der Migration übernommen werden und wo mussten (Design-) Anpassungen vorgenommen werden?

Bei der Anwendung handelt es sich nicht um eine klassische Enterprise Anwendung. Somit werden Themen wie Transaktionen und die Migration von Web-Oberflächen (JSP, JSF, ...) nicht behandelt.

Sebastian Hempel ist selbständiger IT-Consultant und Trainer aus dem Fichtelgebirge. Seit 2003 unterstützt er Kunden bei der Entwicklung und dem Betrieb von Enterprise Anwendungen. Seine Schwerpunkte liegen dabei bei Java EE auf Linux Systemen. In Projekten übernimmt er gerne die Konzeption und den Aufbau der Entwicklungs- und Build-Umgebung. Neben seiner Tätigkeit als Software-Ent...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/4662efd3-bcad-4bf3-88d3-0a7d3ef918a6/8733eb3f-dc47-4a7f-99e6-e95441538d1b-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/9G7BFrtiXyzDunXn5vcSF1</video:player_loc><video:duration>4520</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-02-19T09:00:23.696Z</video:publication_date><video:tag>Java</video:tag><video:tag>Migration</video:tag><video:tag>Jakarta EE</video:tag><video:tag>Quarkus</video:tag><video:tag>Java EE</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/bnWDd71ecEuCxysYGNeYcn</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/1771bb0b-1396-4af1-81f2-de1ff36312bd.jpg</video:thumbnail_loc><video:title>AWS Fargate in Aktion</video:title><video:description>Sprecherin: Nora Schöner
Aufgenommen: 2023-10-04

00:00 Begrüssung
02:59 Vortrag von Nora Schöner

Du hast schon einmal Containerisierung mit AWS Fargate ausprobiert: Der Webserver aus dem Tutorial ist aufgesetzt. Jetzt willst du einfach noch ein bisschen tiefer graben und deine Infrastruktur fit für Produktion machen!

In dieser Session zeige ich dir das Setup, das ich für meine Projekte aufgebaut habe, wie es sich entwickelt hat und was ich dabei alles so gelernt habe. Wir schauen dabei auf verbessertes Networking mit AWS Cloud Map, Observability mit AWS Cloudwatch, sowie den kosteneffizienten Einsatz und andere hilfreiche Tipps und Tricks.

Nora Schöner ist Cloud Engineer und seit 2012 in der Tech-Branche tätig. Sie konzentriert sich auf Cloud Computing mit AWS, Infrastructure as Code und DevOps, aber auch darauf, andere weibliche Entwicklerinnen zu unterstützen und zu empowern. Nora spricht auf verschiedenen Meetups und Konferenzen und ist Mitorganisatorin des She ’n IT Nürnberg Meetups und der AWS Usergroup Nürnberg.

X (vormals Twitter): @wolkencode
Instagram: @wolkencode

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/540bae07-ef85-450a-9c22-910df1f2955b/17f51f51-941d-4eab-aefc-b34af662cf24-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/bnWDd71ecEuCxysYGNeYcn</video:player_loc><video:duration>5250</video:duration><video:rating>5</video:rating><video:view_count>7</video:view_count><video:publication_date>2026-02-17T09:00:22.655Z</video:publication_date><video:tag>Java</video:tag><video:tag>AWS</video:tag><video:tag>Fargate</video:tag><video:tag>Cloud</video:tag><video:tag>Container</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/5noA6xuDZ5ysGCzA8HKiPk</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/4803f1d8-11e6-411b-b1a9-0310af62ea95.jpg</video:thumbnail_loc><video:title>Software Architektur für Menschen!</video:title><video:description>Sprecher: Eberhard Wolff
Aufgenommen: 2023-11-21

00:00:00 Begrüssung
00:03:35 Vortrag von Eberhard
01:04:46 Fragen

Software-Architektur ist nur scheinbar ein technisches Thema. Architektur soll zwar über Technologien entscheiden und eine Struktur vorgeben, aber im Mittelpunkt muss der Mensch stehen. Schliesslich sind die entworfenen Software-Systeme zu komplex, als dass ein einzelner Mensch sie verstehen kann - und das ist die Kern-Herausforderung.

Die Organisation und der Umgang mit Menschen können daher im Umfeld von Software-Architekturen sehr hilfreich sein. So zeigt der Vortrag die wechselseitigen Abhängigkeiten zwischen Architektur, Menschen und Organisation auf - und wie man sie nutzen kann, um erfolgreicher Software zu entwickeln.

Eberhard Wolff ist Head of Architecture bei SWAGLab und arbeitet seit mehr als zwanzig Jahren als Architekt und Berater. Er ist Autor zahlreicher Artikel und Bücher und trägt als Sprecher auf internationalen Konferenzen vor. Sein technologischer Schwerpunkt sind moderne Architektur- und Entwicklungsansätze wie Continuous Delivery, DevOps und Microservices.

Mastodon: @ewolff@mastodon.social
Twitter/X: @ewolff

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/23611814-f832-40b6-849e-83f503e2a8c5/7d8fc496-3375-400b-a4f8-3b6fdf0c03c6-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/5noA6xuDZ5ysGCzA8HKiPk</video:player_loc><video:duration>4613</video:duration><video:rating>5</video:rating><video:view_count>3</video:view_count><video:publication_date>2026-02-18T09:00:23.147Z</video:publication_date><video:tag>Java</video:tag><video:tag>Architektur</video:tag><video:tag>Team</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/rXcr7W7Z2M5sqhAoaJbSPA</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/56d33aee-921f-4dbf-98b1-cfda4d4971a1.jpg</video:thumbnail_loc><video:title>Hacking OpenJDK</video:title><video:description>Sprecher: Markus Karg
Aufgenommen: 2023-07-27

00:00 Begrüssung
03:16 Vortrag von Markus

Seit einigen Jahren bin ich Contributor bei OpenJDK und habe mich im speziellen darauf konzentriert, I/O zu beschleunigen, denn in der Hitliste, worin Java besonders schlecht ist, steht I/O ziemlich weit oben. In dieser Live-Hands-On-Session zeige ich Dir, warum das so ist, was ich gemacht habe, dass es besser wird, warum das funktioniert, und wie Du es in Deinen Anwendungen nutzen kannst.

Wenn Du schon immer mal wissen wolltest, wie Java "innen drin" eigentlich aussieht, ist diese Veranstaltung vielleicht der erste Schritt zu Deiner eigenen OpenJDK-Contribution!

Markus Karg ist Programmierer aus Leidenschaft seit fast 40 Jahren. Java Guru, JSR 339/370 Expert Group Member, Jakarta REST Committer, Jersey Contributor, Conference Speaker, Fachautor, Blogger, YouTuber, Metalhead, #JavaLandConference Co-Organizer

Mastodon: @markus@mastodon.headcrashing.eu

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/d2296b74-6adf-4f30-8172-9aa7300d0f20/7ef7beaa-85cf-4309-94de-75c5aeb62331-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/rXcr7W7Z2M5sqhAoaJbSPA</video:player_loc><video:duration>5847</video:duration><video:rating>5</video:rating><video:view_count>7</video:view_count><video:publication_date>2026-02-16T09:00:22.194Z</video:publication_date><video:tag>Java</video:tag><video:tag>OpenJDK</video:tag><video:tag>I/O</video:tag><video:tag>Contribute</video:tag><video:tag>Performance</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/3AVSiaZUd4nB4biRtY87DN</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/05c0fa46-5b22-4ddc-837d-ef08ff9d89f0.jpg</video:thumbnail_loc><video:title>Die goldenen Regeln</video:title><video:description>Sprecher: Andreas Monschau
Aufgenommen: 2025-01-22

00:00:00 Begrüssung
00:04:00 Vortrag von Andreas
00:58:10 Fragen

Software-Entwicklung ist hart und unfair. So soll es auch bleiben. Nun kommt jemand neues in dein Team – und du sollst dich um ihn kümmern! Einfach willst du es dieser Person nicht machen: Du hast gelitten, alle haben gelitten, warum sollte es jetzt anders sein?

Wie einfach es gehen kann, einem Neuling das Leben im Projekt ab dem ersten Tag zu vermiesen, zeige ich dir in zehn einfachen Schritten – die "goldenen Regeln für einen unsanften Start in ein Projekt". Sie entspringen nicht meiner Phantasie, sondern werden in vielen Projekten erfolgreich gelebt. Und das Beste ist – die meisten Regeln sind so nachhaltig, dass sie sogar noch lange nach dem Onboarding ihre Wirkung weiter entfalten. Nachdem du alle Regeln gesehen hast, kannst du am Ende entscheiden: Mache ich weiter so oder verändere ich etwas? Solltest du allerdings dazu inspiriert worden sein, die Regeln künftig anwenden zu wollen, sollten wir uns im Anschluss vielleicht mal unterhalten…

Andreas Monschau ist als Senior IT-Consultant bei Haeger Consulting in Bonn tätig. In Kundenprojekten hat er verschiedene Rollen ausgeübt, die vom Softwareentwickler über den Softwarearchitekten hin zum Testmanager, Teamleiter sowie Anforderungsmanager reichten.
Nebenbei leitet er das umfangreiche Traineeprogramm von Haeger Consulting und unterstützt andere Unternehmen beim Aufbau gleichartiger Prozesse.

Mastodon: @andreasmonschau@mastodon.social
LinkedIn: https://www.linkedin.com/in/andreas-monschau-544aa141/

Organisiert von: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/1512c327-bfe4-4efe-a879-569ab04af2a0/438e2999-92be-4396-b5b7-309c4db8222f-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/3AVSiaZUd4nB4biRtY87DN</video:player_loc><video:duration>3941</video:duration><video:rating>5</video:rating><video:view_count>3</video:view_count><video:publication_date>2026-02-20T09:00:24.083Z</video:publication_date><video:tag>Team</video:tag><video:tag>Methodology</video:tag><video:tag>Anti-Pattern</video:tag><video:tag>Onboarding</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/s7bdcdmFiA7oSVoU5fLg6p</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/e9e7fc07-3f31-4ac8-9d35-32a715a45d35.jpg</video:thumbnail_loc><video:title>Java build tooling could be so much better!</video:title><video:description>Speaker: Haoyi Li
Recorded: 2025-08-27

00:00 Intro
02:32 The Talk
59:16 Questions &amp; Answers

The Java language is known to be fast, safe, and easy, but Java build tools like Maven or Gradle have a reputation for being slow, fragile, and confusing. This talk will explore what "could be": where current Java build tools fall behind modern build tools in other communities, in performance, extensibility, and ease of getting started.

We will end with a demonstration of an experimental build tool "Mill" that makes use of these ideas, proving out the idea that Java build tooling has the potential to be much faster, safer, and easier than it is today.

Li Haoyi graduated from MIT, has built infrastructure for high-growth companies like Dropbox and Databricks, and has been a major contributor to the open source community with over 10'000 stars on Github. Haoyi has deep experience in the JVM and has used it professionally to built cloud infrastructure, distributed backend systems, programming languages, high-performance web applications, and much more.

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/d36a5c2c-b8c9-4d82-a724-fc60fe862f95/c7141dcd-fa97-4465-8e2d-4780bd2d4d2e-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/s7bdcdmFiA7oSVoU5fLg6p</video:player_loc><video:duration>4309</video:duration><video:rating>5</video:rating><video:view_count>12</video:view_count><video:publication_date>2026-02-21T09:00:03.757Z</video:publication_date><video:tag>Java</video:tag><video:tag>Build</video:tag><video:tag>CI</video:tag><video:tag>Mill</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/vdtC5amAoMSz2qDpcDKx9e</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/01dfe959-c851-4bae-bc11-14df79ac2cf8.jpg</video:thumbnail_loc><video:title>Multithreading under the lens: what is VMLens &amp; how can it help you? Marco Sussitz, Christian Lutnik</video:title><video:description>ultithreading under the lens: what is VMLens and how can it help you? - Marco Sussitz &amp; Christian Lutnik, dynatrace
I am sure that we all know how difficult it can be to write correct multithreaded code. Race conditions, deadlocks, and memory visibility issues can introduce bugs into your code that are nearly impossible to find in your unit tests. In this talk, we will see how VMLens can help you find those bugs in your program. And how you're able to write unit tests that can show you if your multithreaded code is incorrect. We will also take a look at how VMLens is even able to do so.

About Marco Sussitz
Marco Sussitz is an engineer at Dynatrace who lives at the boundary of Java and C++. He writes JVMTI agents, instruments bytecode, and digs into JIT, memory, and thread behavior. You'll often find him sorting out class loaders or, reading the spec longer than he should. Before Dynatrace, he worked on cloud video encoding with FFmpeg. Off hours he's bouldering or in the mountains.

About Christian Lutnik
Christian has been programming since his early teenage years. In this time, he has developed a passion for efficient code that does not crack under pressure. Starting with the most basic Android games even before Unity was cool, he quickly adapted to new technologies. He is now employed at Dynatrace, a company that is just as convinced as he is that software needs to work perfectly. There, he works together with the open-source community and an amazing team on making feature flagging fun for everyone with OpenFeature.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/ec96f810-2ce2-4cb2-93bc-702ee4a29961/b9910d4a-0c61-434e-b1b9-aaa51fe40a7a-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/vdtC5amAoMSz2qDpcDKx9e</video:player_loc><video:duration>3297</video:duration><video:rating>0</video:rating><video:view_count>11</video:view_count><video:publication_date>2026-01-20T15:31:22.668Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/java_vienna/videos">Java Vienna</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/eabLtKQEfZKM2iqESUA5J8</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/b84331c0-a5f0-49a6-bc61-b7690d4f6829.jpg</video:thumbnail_loc><video:title>Own Your Domain Before It Owns You - Philipp Seifert-Kehrer + Leo Bowen Wang</video:title><video:description>Own Your Domain Before It Owns You
It's bugs that make Software tumble, but it's blurred boundaries that make it collapse for good. In case of doubt, experts will simply slap the "Domain-Driven-Design" label around, but what does that even mean and how can we actually put something like that into practice?
In this talk we will take a look at what Modularity across your Domains actually boils down to, why it even is a necessity to stay sane and how to actually implement it into your Java systems. We'll take a look at how bounded contexts should be your best friends as a developer and why everything is an API. Expect fun anectdotes from mistakes we made in the past, a philosophical deep dive into organized coding and practical guidance for building systems that are not even that terrible to maintain.

About Philipp Seifert-Kehrer
Philipp is an Engineer with a knack for creating full-fledged Software solutions, always considering the bigger picture and never forgetting the human element. Having been around the block, covering industries from finance to retail and technologies from legacy to cutting-edge — Philipp has seen it all. That taught him that ‘fancy’ is hardly ever better and solidified his no-BS approach to problem-solving. Outside of work, he loves spoiling his cats and carrying his baby-daughter around town.

About Leo Bowen Wang
Leo is one of the newer additions at Posedio bringing profound experience as a Java Software Developer with him. Equipped with a next-man-up mentality almost to a flaw there is no issue he won’t tackle immediately by rolling up his sleeves and getting at it. Neither Spring, Containers, CI/CD nor scalable systems such as microservice architecture are foreign concepts to him and he is adding to his relatively young skillset on a daily basis. In any case keep a close eye on him or even an ear when he’s on his side hustle as a DJ.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/6a8f21bf-9fb9-401e-a5f8-60073047486b/952c37c4-d535-4aaf-916d-eadce8a07925-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/eabLtKQEfZKM2iqESUA5J8</video:player_loc><video:duration>4000</video:duration><video:rating>0</video:rating><video:view_count>16</video:view_count><video:publication_date>2026-01-20T15:39:04.090Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/java_vienna/videos">Java Vienna</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/3RmMTNhBE2BvxTgeFHxVhF</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/75f930b5-a007-417a-ad57-20ef92ece250.png</video:thumbnail_loc><video:title>Consistency and Coordination Patterns in Event-Driven Architecture</video:title><video:description>Speaker: Emanuel Trandafir
Recorded: 2026-05-20

00:00 Intro
02:46 The Talk
40:41 Questions &amp; Answers

In this session, we’ll tackle the dual-write problem, explore the Saga pattern, and compare orchestration vs. choreography strategies for managing distributed workflows.

We’ll also dive into the Transactional Outbox and Inbox patterns, showing how we can achieve at-least-once delivery and build idempotent consumers that make our event-driven microservices more resilient, consistent, and reliable.

Emanuel Trandafir is a Software Craftsman from Romania. He values simplicity and intentionality over blindly applying patterns and abstractions. He cares deeply about the design and testability of the software he creates. He also values communication and collaboration and enjoys sharing his knowledge through open-source contributions and technical articles.

Organized by: Java User Group Switzerland
https://www.jug.ch/</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/171688fd-9096-407a-b7bd-7d53a74a4dc3/f8b8b619-8266-491c-bbe1-5cf0b9065f5e-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/3RmMTNhBE2BvxTgeFHxVhF</video:player_loc><video:duration>2962</video:duration><video:rating>5</video:rating><video:view_count>5</video:view_count><video:publication_date>2026-05-31T08:00:26.080Z</video:publication_date><video:tag>Java</video:tag><video:tag>Architecture</video:tag><video:tag>Lessons learned</video:tag><video:tag>Services</video:tag><video:tag>Patterns</video:tag><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jugch/videos">Java User Group Switzerland</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/1zbE9Jp6vyS326hK6hpFNc</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/0b4b38b3-fe3c-4cd3-8434-117b1844892a.jpg</video:thumbnail_loc><video:title>C1: JUnit Tests? Excellent! – Die Eigenschaften guter Tests</video:title><video:description>Automatisierte Tests haben viele Vorteile. Sie helfen unter anderem die Fehlerzahl zu reduzieren, geben Sicherheit bei Änderungen, dienen als "Documentation as Code", helfen die Codequalität zu verbessern etc.

Doch wenn du nicht aufpasst können deine Tests dich auch mal in falscher Sicherheit wiegen. Und nicht selten kommt es vor dass Tests zum Ärgernis oder gar zum Wartungs-Alptraum werden. Worauf du achten solltest damit das nicht passiert, und was gute Tests allgemein ausmacht, erfährst du in dieser Session.

[Präsentation](https://www.java-forum-stuttgart.de/static/cbfd35cf9a88942afa68d9e58109b70f/1_C1_Waldmann_JUnit_Tests.pdf)</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/04a21ccc-53dd-45bd-9fbe-50b753670d6b/76aeca9f-1eeb-472c-8107-aadb597b5f8a-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/1zbE9Jp6vyS326hK6hpFNc</video:player_loc><video:duration>2179</video:duration><video:rating>0</video:rating><video:view_count>4</video:view_count><video:publication_date>2026-06-18T14:52:54.741Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/9K2vYwrDhiqmjSQy1qrwvw</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/736015d9-ec88-4e45-a903-d29fdc12a641.jpg</video:thumbnail_loc><video:title>C2: GraalVM 21.2 Feature Update der universellen VM</video:title><video:description>Die GraalVM ist eine universelle Virtuelle Maschine (VM) für Anwendungen, die in JavaScript, Python, Ruby, R oder mit den JVM-basierten Programmiersprachen Java, Scala, Kotlin, Clojure und LLVM-basierten Sprachen C/C++ geschrieben wurden. Im Juli 2021 wurde die GraalVM 21.2.0 freigegeben, mit Performance-Verbesserungen und polyglotter Unterstützung für verschiedene Programmiersprachen und sie ermöglicht damit die Interoperabilität in einer gemeinsamen Laufzeitumgebung. GraalVM kann eigenständig oder im Kontext von OpenJDK, Node.js und Datenbanken betrieben werden. Mit GraalVM Ahead-of-Time-Fähigkeit kompilierte Native Images verfügen über eine optimierte Startup-Zeit und sie verringern den Memory-Verbrauch von JVM-basierten Applikationen. Die GraalVM kann wahlweise als Open Source Community Edition (CE) oder als Enterprise Edition (EE) mit OTN Lizenz innerhalb der Java SE Subscription verwendet werden. Im Vortrag wird die GraalVM-Architektur im Java Eco System dargestellt und die Einsatzgebiete werden erläutert, beispielsweise der in Java entwickelte C2 JIT Compiler oder die Verwendung von GraalVM Native Images. GraalVM und OpenJDK können auch für Microservices-Frameworks verwendet werden.

[Präsentation](https://www.java-forum-stuttgart.de/static/d66d0a449f558f50528b3a2ebc5b7aca/1_C2_Weigend_GraalVM.pdf)</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/46cb06b1-f4aa-4a26-844f-da81ab7b5e50/17786d15-5801-4c5e-adbd-a01e8e7b1445-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/9K2vYwrDhiqmjSQy1qrwvw</video:player_loc><video:duration>2412</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-06-18T18:00:26.665Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/aCWcgrq67svoLhVxB6Uvex</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/c3a8ac3b-3ceb-4ea0-8597-5f23bea20ef5.jpg</video:thumbnail_loc><video:title>B3: The Process Automation Map</video:title><video:description>Automating processes enables business agility and digitalization. But there are so many ways to automate processes. Developers could use workflow engines, event-driven choreographies, batch jobs, or other possibilities. And there are also low code tools, such as robotic process automation (RPA), which are a big hype. You need to understand the tooling landscape in order to select the right kind of tool for your problem.

This talk will introduce the process automation map. This map will help you categorize the type of process you want to automate, which in turn will help you identify which tool categories are interesting to look at. As part of this, I will walk you through the highs and lows of various tool categories using practical examples.

Afterward, you are enabled to make better architecture and tool stack decisions – aside from opinionated conceptions that “nobody needs developers anymore” or that “low code is nonsense and can never work”.

[Präsentation](https://www.java-forum-stuttgart.de/static/9eecfbf57293e0f3d72b9af9306d169e/1_B3_Ruecker_Process_Automation.pdf)</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/4e0a6c0b-72a8-422f-aed3-23a13b6c3cb5/5d2506ae-0e95-4b24-9abb-260f90684165-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/aCWcgrq67svoLhVxB6Uvex</video:player_loc><video:duration>2549</video:duration><video:rating>0</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-06-18T18:14:40.147Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/6QUPsE7y7ussRpL7gLjDpv</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/e1e917b4-58ec-4294-9ac6-92f6af95d20d.jpg</video:thumbnail_loc><video:title>B1: Container hinter Schloss und Riegel</video:title><video:description>B1: Container hinter Schloss und Riegel</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/2f51f1d6-34e5-40e5-92a9-c9fc7f88a1f7/f77e81d0-b8a2-47b5-a0a1-4995e3b78ebf-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/6QUPsE7y7ussRpL7gLjDpv</video:player_loc><video:duration>2542</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T08:58:36.153Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/oJzDpVPV1sU47vzarrzK8Q</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/892cc5de-bf12-4c12-bffc-129e0461cfa4.jpg</video:thumbnail_loc><video:title>D2: HTML over the wire</video:title><video:description>D2: HTML over the wire</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/b81b05fa-9518-4012-aba0-4c18f56470ea/91c6a733-e629-477a-8dfe-412ac802f30d-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/oJzDpVPV1sU47vzarrzK8Q</video:player_loc><video:duration>897</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-03T09:48:33.098Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/97X14tpFZyi5v6k3RXvXYW</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/9fb5b38a-51d7-4669-9b58-ba41ea39eefc.jpg</video:thumbnail_loc><video:title>B2: Reaktive Datenbank Zugriffe – eine Einführung (R2DBC)</video:title><video:description>B2: Reaktive Datenbank Zugriffe – eine Einführung (R2DBC)</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/41c177ad-731f-4f44-84ea-3b0d8f30ab3a/9378b09c-f1c2-4759-8724-a2a4cbb133e1-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/97X14tpFZyi5v6k3RXvXYW</video:player_loc><video:duration>2300</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-03T10:07:36.343Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/aLfqy92diG5J9rWkqZmh2L</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/e7a5212f-9f2f-4c4a-b7e1-75c0658316ca.jpg</video:thumbnail_loc><video:title>A4: Der Datei-Browser als GUI?</video:title><video:description>A4: Der Datei-Browser als GUI?</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/4f0fdcce-50ab-4260-9b08-ea128a036c16/87f61479-a974-441f-a40f-2b9af3b8a4e1-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/aLfqy92diG5J9rWkqZmh2L</video:player_loc><video:duration>2106</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-03T10:19:53.546Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/bH3dshHhorb2AeY2pMHH7y</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/9419a225-d83d-4cdf-9428-3e36c0743d81.jpg</video:thumbnail_loc><video:title>A3: Von DAX-Konzern bis Kirche: Erfahrungen aus 10 Jahren Analyse komplexer Softwaresysteme</video:title><video:description>A3: Von DAX-Konzern bis Kirche: Erfahrungen aus 10 Jahren Analyse komplexer Softwaresysteme</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/56b63efc-1720-4261-ac3c-26714d504118/39f445e4-2d5b-4ce7-b806-820fa36e1476-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/bH3dshHhorb2AeY2pMHH7y</video:player_loc><video:duration>2374</video:duration><video:rating>0</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-07-03T10:30:57.353Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/dZet1ZqC7AJTV1aUe5uoPf</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/c85f984d-f2ae-49b1-8d59-030b063dfd63.jpg</video:thumbnail_loc><video:title>D1: Supersonic Subatomic Mocking: Testen einer Quarkus-App mit Kotlin, JUnit und MockK</video:title><video:description>D1: Supersonic Subatomic Mocking: Testen einer Quarkus-App mit Kotlin, JUnit und MockK</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/692b5b7f-4b01-49f5-8227-abd87a82170c/ea3977e8-41dd-4bbd-9e34-0aaf12681c96-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/dZet1ZqC7AJTV1aUe5uoPf</video:player_loc><video:duration>2561</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-03T10:44:39.703Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/iefcYpzTWqch6FAFfZcp1q</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/ab5fcc1c-b467-4b5f-8834-6d65f0999200.jpg</video:thumbnail_loc><video:title>D3: Wie sollten Java-Entwickler heute Front-Ends für Web, Mobile &amp; Desktop bauen?</video:title><video:description>D3: Wie sollten Java-Entwickler heute Front-Ends für Web, Mobile &amp; Desktop bauen?</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/8b84c7ff-ef2a-48c1-b4ed-b422bbdb3f1c/91bd639a-447a-4d03-95c9-a745bfa913cf-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/iefcYpzTWqch6FAFfZcp1q</video:player_loc><video:duration>2284</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-03T10:56:42.732Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/3jAhtbsU4aRc2vJDQiPYEq</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/1b41cdd4-929b-4c20-a0a9-f59f88f31c12.jpg</video:thumbnail_loc><video:title>D4: Rules Engine – Was? Wie? Wo?</video:title><video:description>D4: Rules Engine – Was? Wie? Wo?</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/12cacb1c-e858-4501-b20e-c2b45471bd3c/45ea449b-ac88-4c6d-b7c4-1234059f0a9e-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/3jAhtbsU4aRc2vJDQiPYEq</video:player_loc><video:duration>1940</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-03T11:06:56.081Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/unM7gKMAu1UYCoigxLGQWR</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/abb15486-bec4-4d4b-9d32-43f36968bf98.jpg</video:thumbnail_loc><video:title>C3: 1000 Ways to Run Java in the Cloud</video:title><video:description>C3: 1000 Ways to Run Java in the Cloud</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/e5ca4cef-1c77-4dbe-bcf4-cbdc4944e4cd/60cf4a77-1eb4-4efc-96bd-3f45fad8ecb2-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/unM7gKMAu1UYCoigxLGQWR</video:player_loc><video:duration>2565</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-03T11:20:26.156Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/dtx5ULyNUt6XxgRFaPPPgB</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/45d2241f-6045-4db3-9a70-c74fa2f37cb6.jpg</video:thumbnail_loc><video:title>C4: Pimp my k8s</video:title><video:description>C4: Pimp my k8s</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/6505e6fd-99a8-4612-b6b0-297a9df4624d/044d7588-c49d-4696-a688-d99b656b4628-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/dtx5ULyNUt6XxgRFaPPPgB</video:player_loc><video:duration>2526</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T11:33:59.314Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/fGG2k7EdS3KW4eg9Z7h1N4</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/7d2f88a1-95db-4bd5-8c7a-755a06a0774d.jpg</video:thumbnail_loc><video:title>A2: Team-Oriented-Architecture bei Breuninger</video:title><video:description>A2: Team-Oriented-Architecture bei Breuninger</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/770e5b67-28dd-4eaa-bd97-601dc30b266f/3501aa06-bdd9-41e7-bc98-6e3753628441-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/fGG2k7EdS3KW4eg9Z7h1N4</video:player_loc><video:duration>1956</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T11:45:13.022Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/iRuKPctyJ1kV9cXaqdtqKV</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/2a8f8343-425a-4ec2-9482-0bfae0a7d3f8.jpg</video:thumbnail_loc><video:title>A1: Open-Source - Open Doors, Open Potential</video:title><video:description>A1: Open-Source - Open Doors, Open Potential</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/909485e9-ebea-429c-b4a1-2ece2e612c0b/059706ae-d457-45bd-80e8-fd577479d620-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/iRuKPctyJ1kV9cXaqdtqKV</video:player_loc><video:duration>2615</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-03T11:58:59.558Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/oJ2WjmfKKnq5yUDo3nMe3s</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/fd43569d-33af-45c1-ba6e-58b0cbac1841.jpg</video:thumbnail_loc><video:title>Begrüßung JFS 2021</video:title><video:description>Begrüßung JFS 2021</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/b8077b75-9fa3-4cf8-81d6-f3387b7763fa/66fba5d9-9947-4f24-aa70-8a2796b4be92-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/oJ2WjmfKKnq5yUDo3nMe3s</video:player_loc><video:duration>179</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-03T12:02:10.862Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/qxndaT6aYcReAKnUWmzdGM</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/c4c75f19-4e6b-4f88-9404-97a634a24c50.jpg</video:thumbnail_loc><video:title>B4: Schreibt Tests in Markdown!</video:title><video:description>B4: Schreibt Tests in Markdown!</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/c6bc74aa-ff8f-46d2-adda-eba361992795/a0dfc7ca-2d27-423d-924c-5d9d97eda14a-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/qxndaT6aYcReAKnUWmzdGM</video:player_loc><video:duration>2647</video:duration><video:rating>0</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-07-03T12:14:22.293Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/fQ62JuHFUL2ST7jBX7dsqz</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/5a563291-c9b6-4127-a178-da9007e51650.jpg</video:thumbnail_loc><video:title>A1: Agile-Driven Integrationstests</video:title><video:description>A1: Agile-Driven Integrationstests</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/7816bdf1-b911-4874-ad41-d56cde2fa499/9e4053ba-10aa-4ba4-af36-80531d6a0131-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/fQ62JuHFUL2ST7jBX7dsqz</video:player_loc><video:duration>2402</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-03T16:20:30.069Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/6Pvy6hiZvNvQHFagaNXfs9</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/fc1fdc29-bfc6-4812-aa99-8625237ce26e.jpg</video:thumbnail_loc><video:title>A2: Das fehlende Puzzle für richtiges DevOps von Prozessautomatisierten Anwendungen</video:title><video:description>A2: Das fehlende Puzzle für richtiges DevOps von Prozessautomatisierten Anwendungen</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/2f1fdd04-cd31-4a80-a4d5-15a243f3cd3c/8229900c-5b4c-4455-a1e0-880fa4b6cb93-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/6Pvy6hiZvNvQHFagaNXfs9</video:player_loc><video:duration>2509</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-03T16:35:01.302Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/x59RNfwrxf4e3zfwEb7ALP</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/fb4ead5f-f56b-42bb-8d89-d82b52fec080.jpg</video:thumbnail_loc><video:title>A3: Entwicklung einer typischen Spring Cloud-Architektur-Anwendung</video:title><video:description>A3: Entwicklung einer typischen Spring Cloud-Architektur-Anwendung</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/fb9fbb9a-d3f5-43de-b9db-f91608e52dbf/2488f48b-7093-4228-9bc3-239ef004a692-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/x59RNfwrxf4e3zfwEb7ALP</video:player_loc><video:duration>2480</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T16:47:55.987Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/6xTKhwXfXg8H1Ecy3U3rtt</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/1e240a51-e7b1-490b-9964-2ae8ec46732b.jpg</video:thumbnail_loc><video:title>A4: UnitTests? Ja, aber richtig!</video:title><video:description>A4: UnitTests? Ja, aber richtig!</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/2cf1a3d4-3581-4731-8327-4291068e830d/13e70306-84dc-4fc6-986e-132c7cf9c972-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/6xTKhwXfXg8H1Ecy3U3rtt</video:player_loc><video:duration>2570</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T17:02:41.225Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/cL9T6JmVQyCtCh3KsyhBLW</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/21a73abb-a5c0-44b4-9437-b1182d26cb9d.jpg</video:thumbnail_loc><video:title>B1: Viele Wege führen vom Source Code zum Container Image</video:title><video:description>B1: Viele Wege führen vom Source Code zum Container Image</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/5f3eb969-0b03-4c60-a6b6-2b4e45fcb29a/3eee57be-7620-4d3a-b844-3b5f4b464ceb-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/cL9T6JmVQyCtCh3KsyhBLW</video:player_loc><video:duration>2049</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T17:13:02.125Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/9ioJo4bFYXwBeWhRvn4kvA</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/6376de7e-b947-493f-a096-c353928f01ab.jpg</video:thumbnail_loc><video:title>B2: Designing an evergreen cache</video:title><video:description>B2: Designing an evergreen cache</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/4336c2fc-0281-4b6b-8d3e-d665fb7ea288/71eab186-8945-418a-8d0b-7743665dadd7-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/9ioJo4bFYXwBeWhRvn4kvA</video:player_loc><video:duration>2507</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T17:27:10.926Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/5UNsQ9nkJ1T4nRppMnhKbq</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/0c72f7fa-3ad2-41d5-b4ea-45498c05623d.jpg</video:thumbnail_loc><video:title>B3: Porsche Drive – Microservices gone wrong</video:title><video:description>B3: Porsche Drive – Microservices gone wrong</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/27c3dd40-97a2-418d-bb1c-db99be277198/28205eca-b1e6-4dd9-8611-739d2f93fbee-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/5UNsQ9nkJ1T4nRppMnhKbq</video:player_loc><video:duration>1984</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T17:37:58.034Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/kHo866Gd9vfaGQc7NupXWs</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/88ae57b7-e8fc-4c84-8577-181cc54cbe43.jpg</video:thumbnail_loc><video:title>B4: Continuous Delivery – aber wie?</video:title><video:description>B4: Continuous Delivery – aber wie?</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/9fa4c32c-d9c8-492c-a653-b747a6e0262a/231195ff-945c-4712-b226-d1d50e3675e2-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/kHo866Gd9vfaGQc7NupXWs</video:player_loc><video:duration>2327</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T17:46:15.933Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/jzm6xvmoaV9w3zfsjMF7Ec</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/a7e1dfec-e91a-424b-9a62-672e34faf99e.jpg</video:thumbnail_loc><video:title>C1: Erfolgreich online Architektur-Katas durchführen</video:title><video:description>C1: Erfolgreich online Architektur-Katas durchführen</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/966c6cb4-50f5-4b80-9d36-3581b0b37727/05fdaace-912f-44b9-8438-f16655d8d452-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/jzm6xvmoaV9w3zfsjMF7Ec</video:player_loc><video:duration>2306</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T17:55:35.388Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/nsVi4K8nXuf1Me77QUKgbD</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/2e90aacf-d788-4f02-9d99-8ef7ad53de5c.jpg</video:thumbnail_loc><video:title>C2: Hello Smartphone</video:title><video:description>C2: Hello Smartphone</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/add217f6-a972-4484-a8fd-417abe1794fd/43c048db-daf2-41d0-a891-e97c11e821a7-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/nsVi4K8nXuf1Me77QUKgbD</video:player_loc><video:duration>2571</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T18:09:08.848Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/kK92zt9rZ8ASRSGHS1dy3j</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/806fe65f-d7b4-431e-a460-55e82d8010c7.jpg</video:thumbnail_loc><video:title>C3: Wirklich so schnell? Performance von Native Images auf der GraalVM</video:title><video:description>C3: Wirklich so schnell? Performance von Native Images auf der GraalVM</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/9fe39046-e16c-4721-8fea-8e2b164c1066/c7dbb6c1-3540-44fd-8fab-488ab2b5971b-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/kK92zt9rZ8ASRSGHS1dy3j</video:player_loc><video:duration>2418</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T18:34:41.396Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/nY41gXoftvZAsK3XCEkwgA</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/d65ad96c-4dea-4972-a75c-f7c76aa8aa17.jpg</video:thumbnail_loc><video:title>C4: Jakarta REST 3.1 Live und in Farbe: Neue Features direkt vom Erzeuger</video:title><video:description>C4: Jakarta REST 3.1 Live und in Farbe: Neue Features direkt vom Erzeuger</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/b1e36a2a-faf5-4703-b1b3-e8cb65043558/d02d04ef-5624-44f3-a6d9-0e9d8e565177-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/nY41gXoftvZAsK3XCEkwgA</video:player_loc><video:duration>2478</video:duration><video:rating>0</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-07-04T09:28:12.420Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/5tjMtHRHRf44iiWtAiM8Qw</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/c3e03442-54a3-42c9-8bc8-250afcc321d3.jpg</video:thumbnail_loc><video:title>D1: Mehr Dynamik bitte</video:title><video:description>D1: Mehr Dynamik bitte</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/24353669-5262-4d5d-a437-c66f0cd66c12/379c5ec3-e100-482a-80a9-268fdd94eee9-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/5tjMtHRHRf44iiWtAiM8Qw</video:player_loc><video:duration>2299</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T18:47:51.435Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/caYYgoMAST2jXrzdwocVos</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/780d60c4-1740-4883-bbc4-425f56f168d3.jpg</video:thumbnail_loc><video:title>D2: microzoo</video:title><video:description>D2: microzoo</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/5a795408-a8f9-4a87-9a7a-2d54c61d79e2/e5ae333f-fc5a-459e-a3a5-1ec21a58e434-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/caYYgoMAST2jXrzdwocVos</video:player_loc><video:duration>2115</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T09:50:17.632Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/beqkqoHtf75LaXRzdqChtM</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/f6f87759-5d0e-4955-9525-6b0deea38a3b.jpg</video:thumbnail_loc><video:title>D3: Der Kafka-Hype – und sonst nix?</video:title><video:description>D3: Der Kafka-Hype – und sonst nix?</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/52db0d6f-b989-4dd7-9557-b74b316e64eb/33739253-98f7-4f91-9b9b-bb05f36bf7bd-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/beqkqoHtf75LaXRzdqChtM</video:player_loc><video:duration>2336</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T09:51:24.526Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/vVHuX9BdXkDaMSNm2g9hcE</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/37ddd481-c252-4fcf-9cb4-a79744b1fe7f.jpg</video:thumbnail_loc><video:title>D4: Lessons Learned: arc42 in einem DevOps Team</video:title><video:description>D4: Lessons Learned: arc42 in einem DevOps Team</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/f2590405-a28b-4304-bc10-ee12e81e1fb4/827ca333-b143-4e4e-93a6-f46e5b748b64-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/vVHuX9BdXkDaMSNm2g9hcE</video:player_loc><video:duration>2313</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T09:48:49.531Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/hN6wo3AAPBJYPJjFR4EiRn</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/2743cdb7-f01f-46d7-88a5-b3e2e69555ad.jpg</video:thumbnail_loc><video:title>JFS 2020 Begrüßung</video:title><video:description>JFS 2020 Begrüßung</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/8801d60d-3708-46e1-9728-9a0e49597813/c54f6547-5a4e-4b5c-8c68-78f3824a5f6d-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/hN6wo3AAPBJYPJjFR4EiRn</video:player_loc><video:duration>128</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-03T19:25:26.112Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/g831zXxXwKGUo6uSdnLeyB</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/4536c05f-845e-4fd0-9a57-a43dc440f5e5.jpg</video:thumbnail_loc><video:title>Modellbahnsteuerung per WiFi mit Arduino und Java</video:title><video:description>Mit dem OpenSource-Projekt "PI-Rail" leutet die PI-Data eine neue Genration Modellbahnsteuerung ein. In den Loks und Weichen werkelt ein leistungsfähiger 32Bit Prozessor (ESP32). Dank WiFi-Kommunikation werden die Limitierungen digitaler Modellbahn bezüglich Bandbreite und Rückkanal aufgehoben. Da das System sich komplett selbst organisiert entfällt auch die teure Digitalzentrale. Was bleibt sind WiFi-Module in Loks und Weichen und die App auf PC, Android oder iOS. Der Vortrag stellt das technische Konzept und die Architektur der auf PI-Mobile basierenden Software vor und macht hoffentlich auch Appetit auf Mitarbeit am Projekt.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/7a748669-f9d6-45e4-a54d-5cbb64c86667/d398d1e0-99d3-472c-8566-cbfcc19de1f1-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/g831zXxXwKGUo6uSdnLeyB</video:player_loc><video:duration>1877</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-04T09:52:56.031Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/bLbZYaSrztoohBatRFjTNU</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/71bbdbae-83bf-4274-9992-044a58863e6a.jpg</video:thumbnail_loc><video:title>Security Test Driven Company - Learning by Pain</video:title><video:description>Unternehmen stehen zunehmend vor der Herausforderung nicht nur ihre IT-Entwicklung zu beschleunigen, sondern auch das Thema IT-Security stärker zu verankern. Keiner möchte in der Presse stehen und sich in die Reihe Derer einreihen, die von Hackern unter die Lupe genommen oder gar erfolgreich angegriffen wurden.

Während die Auslieferung neuer Softwarestände durch das DevOps-Mindset und Infrastructure-as-Code Pattern zunehmend beschleunigt wird, hinkt das Thema IT-Security oft noch hinterher. Wer nimmt sich wirklich die Zeit dafür und berücksichtigt sie in seiner tagtäglichen Routine?  Welches Unternehmen stellt sich nicht die Frage wie es die Verankerung von IT-Security in den Griff bekommt? In Zeiten von DevOps funktionieren klassische Governance-Prozesse schlichtweg nicht mehr. Jeden Tag einen System-Pentest oder Code-Audit durchzuführen oder manuelle Quality Gates zu bedienen ist ein aussichtsloses Unterfangen. DevSecOps verspricht dieses Problem zu lösen und Projektteams zu unterstützen, doch reicht das aus?

Wir haben in unserem Projektgeschäft viel im Bereich automatisierter Security Test gelernt und deshalb unser eigenes OWASP Projekt secureCodeBox[1] ins Leben gerufen. Jetzt rollen wir das Feld von hinten auf und testen einfach alles kontinuierlich. In diesem Vortrag werden wir aus der Praxis berichten wie wir diese Herausforderungen gemeistert haben.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/5726e421-753b-4c04-8453-5250fe83a2ec/9761dfb3-f577-4f4e-b023-1cbdb2ceee9a-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/bLbZYaSrztoohBatRFjTNU</video:player_loc><video:duration>2720</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T09:54:46.452Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/hFjiJeiZhHLaEtU4tMyi4V</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/3c688c22-c069-4146-bd84-7cfecca85d98.jpg</video:thumbnail_loc><video:title>Hacking for Security</video:title><video:description>Welche Anwendung braucht sich vor Angreifern nicht zu verstecken und ist durch und durch sicher? Diese Frage ist gemein, denn eines ist sicher: dass nichts absolut sicher ist. Um dennoch die Barrieren so hoch wie möglich zu legen, muss man die Angriffe kennen sowie ihre Verteidigung. Secure Coding wird immer mehr zum Standard, womit man als Entwickler bereits frühzeitig dafür sorgt, sichere Anwendungen zu schreiben. Leider gibt es aber immer noch sehr viele Anwendungen, bei denen schwerwiegende Sicherheitslücken bestehen, die mit etwas Geschick gehackt werden können.

In diesem Talk wollen wir einige Schwachstellen bei Webanwendungen vorstellen und live demonstrieren, wie diese gehackt werden können. Außerdem zeigen wir, wie man dies hätte verhindern können und worauf zu achten ist. Macht Euch auf einige Überraschungen gefasst und freut Euch auf gute Unterhaltung bei unserem Live-Hack.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/870f81c1-07b5-408d-a133-ac4fdcee58b7/dd138e1f-7751-43aa-b2fb-099913f7d183-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/hFjiJeiZhHLaEtU4tMyi4V</video:player_loc><video:duration>2564</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T09:56:14.463Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/oZ2wH3Kb4mURQ4DBToVcwW</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/a3fbd360-cf95-489a-bc2f-6fa96c0de355.jpg</video:thumbnail_loc><video:title>Vom Code in die Cloud mit Maven, Spring Boot, Docker und Kubernetes</video:title><video:description>Im DevOps-Alltag werden aktuelle Änderungen durch Continuous Delivery und Continuous Deployment schnell und ohne manuellen Aufwand direkt ausgeliefert. Zumindest sollte es so sein. In der Realität sind die Entwicklungszyklen oft sehr lang und schwerfällig an und die DevOps-Erfahrung ist nicht wirklich angenehm. Aber das muss nicht sein. Im Ökosystem von Java, Maven und Docker gibt es viele Werkzeuge, die helfen, die den DevOps-Alltag zu verbessern und schnellere Entwicklungs- und Bereitstellungszyklen zu ermöglichen.
In diesem Vortrag werden wir eine produktionserprobte Toolchain vorstellen, die von der Entwicklungsumgebung bis zum Deployment in einem Kubernetes-Cluster reicht. Diese Toolchain besteht unter anderem aus Java, Maven, Spring Boot und Dekorate zur Generierung von kubernetes Deployment-Deskriptoren. 
Wie werden zeigen, wie diese Build-Pipeline konfiguriert wird, um die resultierenden Artefakte, Docker-Images und Kubernetes-Deskriptoren zu erstellen und einen automatischen Rollout (und Rollback) der Änderungen durchzuführen.
Vom Commit bis zum Rollout in der Produktion in wenigen Minuten ist möglich und nicht sehr kompliziert.
Der Vortrag ist mit vielen praktischen Beispielen gefüllt und bietet eine gute Blaupause für viele Situationen im Alltag.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/ba1f6351-85c6-410b-9df2-d6e35dc63656/1ba70c3e-3e16-4026-80c2-8ca2a7ba225a-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/oZ2wH3Kb4mURQ4DBToVcwW</video:player_loc><video:duration>2250</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T09:57:46.787Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/v4f1KfxinYWkx4A2fJjCid</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/b56e6e50-49b1-4252-9da2-0b007a777801.jpg</video:thumbnail_loc><video:title>JFS_2020_09_Track_A_14_35</video:title><video:description>Docker! Docker! Docker! - Dieses Wort kommt wohl aktuell in jedem zweiten Vortag vor, doch was ist Docker genau. Es ist daher höchste Zeit Docker nicht nur als Beiwerk für automatisierte Tests oder Deployments  etc. zu betrachten, sondern für sich selbst sprechen zu lassen.
Was genau bietet uns Docker und was nicht? Auch in der Entwicklung und im Betrieb von Java Applications kann Docker sehr hilfreich sein. Grund genug, dass die technischen Interna auch Java-Entwickler interessieren sollten.
Zunächst werden wir uns genauer ansehen, was sich hinter den Begriffen Docker Container, Docker Image und Docker File versteckt, aber auch die Kommunikation zwischen einzelnen Instanzen über ein virtuelles Netzwerk und die Verwendung von temporären und persistenten Speicher werden thematisiert.
Um Docker die Magie zu nehmen, sehen wir uns anschließend an, wie einzelne Instanzen gekapselt werden und wie die Prozessstruktur dahinter aussieht.
Diese Bestandteile werden anhand eines praktischen Java Beispiels demonstriert.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/eb4ce35f-bcf5-44cd-958f-90f7642d3766/0e64e139-c979-415a-b2f3-39455409e129-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/v4f1KfxinYWkx4A2fJjCid</video:player_loc><video:duration>2574</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T09:59:31.326Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/fA9LUCNZVbEU8bxUdrxrhX</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/cb0ac66e-082a-4825-ac8e-611caf5a50d5.jpg</video:thumbnail_loc><video:title>JFS_2020_09_Track_A_15_30</video:title><video:description>In Moment befinden wir uns in einem Digitalisierung-Zeitalter, in dem viele Unternehmer auf Microservices und Domain-Driven-Design setzen. Dabei erhoffen die Unternehmen sich eine verbesserte und schnellere Time-to-Market Strategie um entweder mit der Produkte der Konkurrenz mitzuhalten oder im besseren Fall sich dadurch sogar Vorteile zu verschaffen. Gerade in solchen Umfelder gewinnt Prozessautomatisierung mittels BPMN an Bedeutung, denn dadurch kann eine schnellere und solidere Kontrolle in diesem komplexen Umfeld geschaffen werden. Dies wird häufig als die Orchestrierung von Microservices bezeichnet.
Ich diesem Vortrag wollen wir euch die aktuellsten und "heißesten" Cloud-Prozess-Architekturen vorstellen die auf der Standards Business Prozess Management Notation (BPMN) und Case Management Model and Notation (CMMN) von der Object Management Group (OMG) basieren. Wir geben euch einen Überblick, wie ihr mit Flowable die aktuellsten Cloud-Prozess-Architekturen an Kafka, REST und andere Schnittstelle anbinden können und dabei die Vorteile einer Microservice-Architektur ausnutzen könnt. Darüber hinaus werden wir auch kurzen Einblick in Themen wie Lambda und Cloud Function gewähren.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/7624a302-50fa-446d-b110-a60d58f44bc3/0ee94511-c654-425b-acae-6e4f696fbbed-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/fA9LUCNZVbEU8bxUdrxrhX</video:player_loc><video:duration>2273</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T10:01:27.530Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/rRr8p68nTjWhURTcpYzZaX</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/8b4ae52f-b419-461a-a2d1-5b39597bf628.jpg</video:thumbnail_loc><video:title>Machine Learning with Java? Deeplearning4j!</video:title><video:description>In the last few years, we have seen a rise in the demand for artificial intelligence, and specifically machine learning. For some people, getting to know this paradigm represents a double challenge: get familiar with the machine learning theory plus learn a new programming language, but if you already know java and want to break into machine learning, deeplearnig4j is for you!

In this talk, I will present deeplearning4j: what it is, its current state, its capabilities, possible integrations with other systems, and which are its pros and cons.
I will also show the approach to solve some common use cases, like image classification and sentiment analysis, and how to export and deploy the trained model to production. All the code will be publicly available for download.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/d15b6589-d669-4876-a44e-b5aae4de808d/61356d98-5b93-4878-b01f-24042bf6e662-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/rRr8p68nTjWhURTcpYzZaX</video:player_loc><video:duration>2618</video:duration><video:rating>0</video:rating><video:view_count>3</video:view_count><video:publication_date>2026-07-04T10:04:37.160Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/pSJToa7sXNPNKrFD9raGyU</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/9767393d-44eb-438f-867d-1d5d1b8562fa.jpg</video:thumbnail_loc><video:title>Codeballast über Bord?! Erfahrungen aus der Identifikation von nutzlosem Code und dem Umgang damit</video:title><video:description>Viele historisch gewachsene Systeme sammeln über die Jahre Code an, den niemand mehr braucht und der deshalb nutzlos ist. Ein Grund dafür ist beispielsweise, dass bereits implementierte Anforderungen obsolet werden und der Code, der diese Anforderungen implementiert, in der Codebasis verbleibt. Da meist unbekannt ist, welcher Code nutzlos ist, verursacht er oft Kosten ohne Wert zu stiften: Er erhöht Wartungsaufwände, da er bei querschnittlichen Änderungen unnötig mitgewartet wird. Und er verteuert Migrationen wenn er migriert aber nicht gebraucht wird. Deshalb ist es wünschenswert, nutzlosen Code zu kennen und diese unnützen Aufwände einzusparen.

In diesem Vortrag stellen wir drei statische und dynamische Analyseansätze vor, die wir in den letzten Jahren bei der Analyse von Kundensystemen und im Rahmen von Forschungsarbeiten entwickelt haben: Wir haben basierend auf statischer Unerreichbarkeit nicht ausführbare und damit nutzlose Programme identifiziert; basierend auf den statischen Codeeigenschaften Stabilität und Dezentralität nutzlose Klassen erkannt; und basierend auf der Aufzeichnung von Codeausführung auf mehreren Produktivsystemen Code gefunden, der mehrere Jahre nicht ausgeführt wurde. Jeder Analyseansatz wurde an einer oder mehreren realen Anwendungen erprobt und die Analyseergebnisse zusammen mit dem Entwicklungsteam evaluiert. Wir stellen die Ergebnisse im Vortrag vor. Da keine der Analysen nutzlosen Code zweifelsfrei erkennen kann, skizzieren wir wie mit dieser Unsicherheit in der Praxis umgegangen werden kann und wie Herausforderungen bei der Interpretation der Analyseergebnisse adressiert werden können. Schließlich beschreiben wir konkrete Handlungsoptionen zum Umgang mit nutzlosem Code bei Migration und Wartung.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/c157ce9b-023f-4d13-94f6-a4246617bbcc/6b667b58-caeb-4983-b675-e85c69f1cb76-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/pSJToa7sXNPNKrFD9raGyU</video:player_loc><video:duration>2343</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T10:07:28.717Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/g4exxvwZwiaEPQrPqhaUyv</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/5dd49790-4dd9-4369-a635-c1f06c757152.jpg</video:thumbnail_loc><video:title>Technische Schulden wirksam kommunizieren</video:title><video:description>Die typischen Beispiele für technische Schulden sind uns allen bekannt. Trotzdem werden diese in den meisten Projekten nicht ausreichend adressiert, da es nicht gelungen ist, die Entscheidungsträger von ihrer Relevanz zu überzeugen.
Es ist einfach nicht damit getan, technische Schulden zu vermessen und in Form von Code-Kennzahlen hochzuhalten. Um Kollegen zu überzeugen, müssen wir die Konsequenzen von technischen Schulden für unseren eigenen Projektkontext greifbar machen. Das ist insbesondere wichtig zur Überzeugung der Kollegen, die nicht (mehr) selbst entwickeln.
Wir müssen seriös vermitteln, welche Kosten durch technische Schulden verursacht werden. Und zwar konkret, als Anzahl aufgetretener, aber vermeidbarer Fehler oder zusätzlicher Entwicklungsaufwände. Aber eben auch nicht in Form von magischen Kostenzahlen, die aus einem generischen Werkzeug fallen und durch mangelnde Seriosität wenig Vertrauen erwecken. 
Ich sammele seit 15 Jahren in Forschung und Praxis Erfahrungen, wie sich technische Schulden effektiv interpretieren und kommunizieren lassen. In diesem Vortrag stelle ich anhand von Kundenprojekten die Analysen, Visualisierungen und Kostenmodelle vor, die hierfür am besten funktionieren.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/79eca86c-5e2f-4caa-bfd6-1c053c596855/ea5ce08a-37f3-4372-ab48-7c06f42ffb60-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/g4exxvwZwiaEPQrPqhaUyv</video:player_loc><video:duration>2620</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T10:09:22.524Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/e63bGLP7mfag5KKnoW2UKV</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/e2917c67-c782-4fdd-8260-2e8c3edf447d.jpg</video:thumbnail_loc><video:title>Unit Tests - geschenkt?</video:title><video:description>Unit Tests werden oft stiefmütterlich behandelt. Wieso? Weil Tests Zeit und Geld kosten, die man in der Regel nicht hat. Doch ist dem wirklich so? Dieser Vortrag zeigt, wieso das ein Irrglaube ist, und welche Vorteile eine gute Test-Suite bringt, durch die man am Ende eine Menge Zeit und Geld sparen kann. Vor allem aber wird ganz konkret gezeigt, wie man testbaren Code schreibt, eine hohe Code Coverage erreicht, und "ganz nebenbei" sogar das Code-Design verbessert.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/69fade21-60e6-46e7-a916-e038d54aea4b/8072eaf2-622e-4909-98cd-bd975296e527-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/e63bGLP7mfag5KKnoW2UKV</video:player_loc><video:duration>2784</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T10:11:15.287Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/r43XfAdHCjX4MS5iu6T2DL</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/c5c110f7-85e3-4d3c-8f42-7da365d79d85.jpg</video:thumbnail_loc><video:title>JFS_2020_09_Track_B_14_35</video:title><video:description>Der Betrieb von Enterprise Software verlagert sich in Clouds und zwingt den JEE Entwickler gewohnte Modularisierungspraktiken und damit einhergehende Deploymentformen zu überdenken. Lange Startzeiten, speicherhungrige Applicationserver oder Fat Jars machen Enterprise Java im Vergleich zu anderen Stacks nicht zur optimalen Entwicklungs- und Betriebsumgebung für die Cloud. Das Open Source Projekt Quarkus unternimmt den Versuch hier Abhilfe durch ein "Supersonic Subatomic Java" zu schaffen. Es handelt sich dabei um einen Kubernetes-nativen Java-Stack, der insbesondere auf GraalVM zugeschnitten ist, um cloud optimierte Deployments per Precompilation zu ermöglichen. Die Ergebnisse sind dadurch viel kleiner und viel (10x?) schneller beim Start bzw. in der Ausführung. Besonderen Wert legt die Community dabei auf die Nutzung bzw. Verfügbarkeit etablierter Enterprise Java APIs. Hier soll und kann sich der Enterprise Java Entwickler schnell zurechtfinden und in der Cloud produktiv werden. Neben einem Architekturüberblick der grundlegenden Ideen und Konzepte in Quarkus erläutert und diskutiert der Vortrag verschiedene Nutzungsszenarios aus der typischen JEE Entwickler Perspektive.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/cae18475-c69d-4313-adc0-92cdc693a6ba/7e956ecd-3f95-4fd9-99a1-3a76943a09d6-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/r43XfAdHCjX4MS5iu6T2DL</video:player_loc><video:duration>2434</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T10:13:21.543Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/cPU59ecs9TEujzdaxBra6d</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/d510857b-cb74-4a1f-bded-3dda9a0d5265.jpg</video:thumbnail_loc><video:title>JFS_2020_09_Track_B_15_30</video:title><video:description>Das noch recht junge JVM-Framework Micronaut entwickelt sich zunehmend als Konkurrenz zu etablierten Microservice-Frameworks wie Spring Boot oder Eclipse Microprofile.

Das liegt maßgeblich daran, dass das leistungsstarke und dennoch schlanke Framework es schafft, Startzeiten und Speicherverbrauch von Anwendungen erheblich zu reduzieren. Dies macht es nicht nur für die Entwicklung von Microservices in containerisierten Cloud-Plattformen wie Kubernetes interessant, sondern auch für Serverless Computing, da hier eine geringe Kaltstartzeit ein ganz entscheidender Faktor ist.

Ein weiterer Grund, der zum aktuellen Erfolg beiträgt, ist, dass Micronaut neben Java und Groovy auch Kotlin als first-class language unterstützt. 
Die ausdruckstarke und prägnante JVM-Sprache hatte ihren ersten Durchbruch in der Android-Entwicklung. Inzwischen finden aber auch immer mehr Backend-Entwickler Gefallen an Kotlin, da es sich auch bei der server-seitigen Entwicklung als effiziente Java-Alternative erweist.
 
Darüber hinaus vereinfacht Micronaut die Entwicklung für die GraalVM – Oracles neuer polyglotten Virtual Machine. Diese erlaubt unter anderem die Erzeugung von nativen Executables, mit denen sich Startzeit und Speicherverbrauch nochmals drastisch senken lassen.

Die Session umfasst eine praktische Einführung in das Micronaut Framework. Dazu wird – nach einer Vorstellung der grundlegenden Technologien – live ein Microservice mit Kotlin codiert. Anschließend wird der Service per GraalVM in ein natives Binary kompiliert.
Die Teilnehmer erwartet somit neben einem technischen Überblick auch ganz praktische Anregungen, wie sie selbst mit der Micronaut-Entwicklung starten können und welche Möglichkeiten die GraalVM dabei bietet.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/5fc49295-bbde-4490-96e7-87d7f63ac82a/129bd594-7b10-40c1-ada3-35ed9482cac1-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/cPU59ecs9TEujzdaxBra6d</video:player_loc><video:duration>2762</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T10:15:14.789Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/95qunmBxh4skvvtVAiy3tK</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/29ca3d74-ec81-406d-82f8-ec65dae0c585.jpg</video:thumbnail_loc><video:title>Just-In-Time-Patching Java Applications</video:title><video:description>Die Analyse und Behebung von Fehlern in produktiven Anwendungen ist häufig erschwert, weil Eingriffe mit temporären Unterbrechungen oder dem Verlust von User-Sessions einhergehen. Darunter fallen z.B. das Einfügen von zusätzlichen Logs, Debugging oder Patches.

Relativ unbekannt ist, dass eine JVM Mittel bereit stellt, mit dem man Änderungen am Code zur Laufzeit anpassen kann: Java-Agents und Runtime-Attachement.

In diesem Vortrag zeigen wir am Beispiel einer Java-Webanwendung den typischen Ablauf einer Fehleranalyse und -korrektur zur Laufzeit (Loggen von Informationen, Reproduzieren von Testfällen, Patchen von Code) - und zwar ganz ohne Neustart der Anwendung.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/41672d22-8934-430f-b912-8f7fc157a4a1/636fed9d-2c78-4481-b319-7662b55190fc-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/95qunmBxh4skvvtVAiy3tK</video:player_loc><video:duration>2628</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T10:17:16.361Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/aFDEWnS2E6jYCPViLc3M9m</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/0b92dce3-a10c-4269-9882-2ce3c9413205.jpg</video:thumbnail_loc><video:title>Mit Micronaut auf iOS &amp; Android - Moderne Java-basierte Mobile-Apps am Beispiel der Java Forum App</video:title><video:description>The Java Forum app is a cross-platform mobile application for Android and iOS written in Java. It applies reactive programming, object-relational mapping, Micronaut-based dependency injection and a platform agnostic GUI framework with native interfaces. The corresponding Java-backend reuses the app's data model, mappings and DI techniques 1:1.

How is the architecture of such a full-stack solution designed today? Which pros and cons do exist? And which best practices can be followed, if mobile frontends are to be developed in parallel with a backend solution?

Daniel Thommes discusses these questions by example of the Java Forum App. He talks about different approaches for code reuse and details challenges and solutions for the implementation.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/4e6b7883-781e-43b2-9f94-5ef7a5a77a78/dabcc092-e0df-4a64-bf83-5ea2460b16c9-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/aFDEWnS2E6jYCPViLc3M9m</video:player_loc><video:duration>2562</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T10:19:29.143Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/7tVEpT8un754yi7gQWNjB2</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/96795ec8-4521-489d-8bdb-961c2e5e1e36.jpg</video:thumbnail_loc><video:title>The Beginner's Guide to Functional Programming</video:title><video:description>Die Bedeutung funktionaler Programmierkonzepte nimmt im Entwickleralltag immer weiter zu. Spätestens seit Java 8 sind funktionale Konstrukte zunehmend präsent. Was früher noch als "zu akademisch" oder "nice-to-have" abgestempelt wurde, bietet heute in der Praxis unverzichtbare Mehrwerte. Unveränderliche Datenstrukturen, Funktionen höherer Ordnung, Funktionskomposition und weiterführende Konzepte fördern Testbarkeit, Modularität und Wiederverwendbarkeit. Das sind alles unbestreitbare Kriterien für sauberen Code.

Die Adoption funktionaler Patterns ist jedoch nicht immer ganz einfach. Oftmals fehlt es an der praktischen Erfahrung mit funktionalen Patterns, um diese an geeigneten Stellen korrekt zu verwenden. Zudem fällt es vielen Entwicklern anfangs schwer, sich selbst von den in der objektorientierten Programmierung bekannten imperativen Mustern zu lösen. Dahinter stecken eingefahrene Denkmuster, die erst einmal überwunden werden müssen. Natürlich fallen auch initiale Lernaufwände an und es wird teilweise ein Umdenken erforderlich. Plötzlich wird die Unterscheidung zwischen Statement und Expression relevant, ebenso die Bedeutung von seiteneffektfreier Programmierung und referentieller Transparenz. Vor dieser ersten Lernhürde schrecken viele Entwickler zu Unrecht zurück. Die Belohnung ist eleganter und prägnanter Code, der sich leichter warten lässt.

In diesem Talk lernen die Teilnehmer verschiedene typische Patterns aus der funktionalen Programmierung kennen. Der Fokus liegt darauf, den Nutzen dieser Patterns zur praktischen Verwendung im Daily Business des Entwicklers zu vermitteln. Für die Code-Beispiele wurden die beiden JVM-Programmiersprachen Kotlin und Scala gewählt. Jedoch können auch Java-Entwickler unmittelbar von den vorgestellten Konzepten profitieren.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/347cfbfb-1257-4aae-ad65-e91e3b2a30c7/a24f00e6-f229-4cd9-9d5e-a79d38097425-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/7tVEpT8un754yi7gQWNjB2</video:player_loc><video:duration>2627</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T10:21:32.479Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/w1LKqVt7HSGUkrkHP3Xwdk</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/d8f4a35a-2403-4b27-8477-b03cdf506c23.jpg</video:thumbnail_loc><video:title>JFS_2020_09_Track_C_13_40</video:title><video:description>With a new Java release every six months, developers are now being provided with new features at a faster pace than at any time in its 25-year history.
Several of the recent new features relate directly to the Java language.  In this session, we’ll explore in detail what these changes are and how best to use them (as well as advice on when not to use them).  We’ll also explain the significance of preview features.
We’ll cover all of the following features:
• Local variable type inference (JDK 10)
• Switch expressions (JDK 12)
• Text blocks (JDK 13)
• Records (JDK 14)
• Pattern matching for instanceof (JDK 14)
At the end of this session, you’ll be all set to write modern Java code!</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/f30dbcba-7247-438d-8118-a9f6a5225cdb/69382116-bf89-4271-b53d-07d5dfbbee09-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/w1LKqVt7HSGUkrkHP3Xwdk</video:player_loc><video:duration>2857</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T10:23:57.470Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/vaZXyH8ai4cNotp7phdPRX</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/de505d1c-d874-484c-bef0-c3945bb4e341.jpg</video:thumbnail_loc><video:title>JFS_2020_09_Track_C_14_35</video:title><video:description>Stellen Sie sich das mal vor: Sie stehen vor einem Spiegel, sehen aber nicht mehr in Ihr eigenes Gesicht, sondern in das von Barack Obama oder Angela Merkel. In Echtzeit wird Ihre eigene Mimik auf das fremde Gesicht übertragen.

Dem TNG Innovation-Hacking-Team ist es gelungen, einen solchen Prototypen zu erstellen und in Echtzeit das Gesicht einer Person auf beliebige andere Gesichter zu übertragen. Die Grundlage hierfür ist der sogenannte "Deep Fake"-Ansatz. Durch die Anwendung neuronaler Netze werden hier Gesichter in der Videoeingabe erkannt, übersetzt und zurück in die Videoausgabe integriert. Durch diese Technik ist es möglich, täuschend echte Imitationen auf andere Personen zu projizieren. Zum Einsatz kamen dabei in Keras trainierte Autoencoder-Netze, sowie verschiedene Algorithmen zur Gesichtserkennung.

In diesem Vortrag geben Thomas Endres und Martin Förtsch eine unterhaltsame und sehr anschauliche Einführung in die Welt der Deepfakes in Echtzeit. Dabei gehen sie insbesondere auf die Techniken im Bereich des Deep Learning ein, die bei dieser Anwendung zum Einsatz kommen. Mehrere Live-Demonstrationen runden das Erlebnis ab.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/ec3e6ed6-2fa5-4eca-89a5-624b9d6e3f2d/1a6b72b5-ac3c-4876-ab97-9afd0526fe52-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/vaZXyH8ai4cNotp7phdPRX</video:player_loc><video:duration>2719</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T10:26:09.474Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/5XwcqDFppjwjRtZod6tYCV</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/06bc22dc-2302-4d54-b440-2b8707e81255.jpg</video:thumbnail_loc><video:title>JFS_2020_09_Track_C_15_30</video:title><video:description>AdoptOpenJDK is the leading provider of OpenJDK™ binaries. With over 170 million downloads in the last year, it is successfully used by many enterprises and ready for your production usage of Java™. AdoptOpenJDK provides prebuilt OpenJDK binaries from a fully open source set of build scripts and infrastructure. This talk will cover how we build on over 15 different platforms, execute over 87 million tests and distribute OpenJDK binaries to millions of users. We will also cover how AdoptOpenJDK binaries compare against the Java binaries that you use today. If you’re curious to understand the difference between OpenJDK, Oracle Java, AdoptOpenJDK and all the other distributions, then this is the talk for you!</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/28251250-8ed3-4a0e-901e-36bceecbbc45/fb3ee008-9f23-4b20-a775-18fde092fb5a-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/5XwcqDFppjwjRtZod6tYCV</video:player_loc><video:duration>3007</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-04T10:28:03.042Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/4CN4TM8QrxGRYjoyjji3D5</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/536a216c-c98c-4009-8542-2609633b474b.jpg</video:thumbnail_loc><video:title>A2: TLS und weiter?</video:title><video:description>HTTPS und damit TLS wird überall eingesetzt, aber TLS ist mehr als nur das Zertifikat auf dem Server einspielen. Wie funktioniert eigentlich TLS und die darauf aufbauenden Sicherheitsmechanismen? Welche Informationen gebe ich trotz TLS preis? Life Hacking Session TLS, Zertifikat, CLR und OCSP. Welche Unterschiede zwischen den Use-Cases gibt es, und wie kann man darauf reagieren? Antworten auf diese Fragen gibt es in diesem Talk.

Nils Bokermann ist als freiberuflicher IT-Consultant unterwegs und berät seine Kunden in Architektur- und Methodik-Fragen. Er stellt gerne Hype-getriebene Entscheidungen infrage und ist daher als Advocatus Diaboli bekannt.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/1d6e94e1-b311-40ce-a8df-d506bdf6d4b6/7e3e73fd-ff91-4e39-94f8-58f7d942d072-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/4CN4TM8QrxGRYjoyjji3D5</video:player_loc><video:duration>2750</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T12:53:44.931Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/mg1zyc6vPJvxbh8TQBCCWn</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/1a6592a3-e718-41a0-8857-0531af58acc8.jpg</video:thumbnail_loc><video:title>A3: Kontrollverlust in Softwaresystemen?</video:title><video:description>„Bis wir uns das Unbewusste bewusst machen, wird es unser Leben lenken und wir werden es Schicksal nennen.“ – so C.G. Jung. N. Bolz postuliert hingegen: „Komplexität ist unser postmodernes Schicksal.“. In Kombination betrachtet, können diese drei Ausprägungen: Unbewusstes (nicht im Detail Verstandenes oder nicht bewusst Wahrnehmbares), Chaos (die neue Unübersichtlichkeit), und Blackbox (etwas, das benutzt aber nicht im Detail verstanden wird) zu einem unmittelbaren Kontrollverlust über unsere Systeme und Services führen. In diesem Talk greifen wir diese Sichtweise über die neue Unübersichtlichkeit und über zu Teilen unbewusste, verborgene Aspekte in der Softwarearchitekturarbeit auf. Wir werden einige Leitprinzipien und -muster für moderne Softwarearchitekturen betrachten. Dabei werden wir erfahren, wie wir diese einordnen und anwenden können und erhalten somit einen Werkzeugkasten mit Möglichkeiten, die einem modernen Trend in verteilten Systemen folgen: Die fachliche Komplexität wird aus den Systemen und Services entkoppelt und in die Infrastruktur ausgelagert. Die Teilnehmer:innen lernen, den Kontrollverlust zu vermeiden und die Komplexität von Systemen zu beherrschen. Ebenso mit der Unendlichkeit der Software umzugehen. Für das tiefere Verständnis schauen wir hinter die Kulissen des CAP-Theorems, sehen die Trennung zwischen ACID und BASE und fokussieren insbesondere den Aspekt der Eventual-Consistency und damit zusammenhängende Architekturmuster, sowie dessen Anwendungs- und Umsetzungsmöglichkeiten in service-orientierten Systemumgebungen.

Verantwortung, Pragmatismus, Fachwissen um die Domäne und Professionalität. Dieses sind die grundlegenden Werte und Attribute, die erfolgreiche Software-Architekt:innen kennzeichnen. Basierend auf langjährigen Projekterfahrungen vermittelt Holger Tiemeyer diese Fähigkeiten und Kenntnisse in seinen Trainings, spricht darüber auf Konferenzen und publiziert Artikel in Fachmagazinen. Als studierter Informatiker mit Nebenfach P...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/a40f4949-f1ed-4c73-bde6-6477c0aa0a71/f7df78f4-ebba-48b0-a156-022ac680046b-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/mg1zyc6vPJvxbh8TQBCCWn</video:player_loc><video:duration>2327</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-04T13:17:55.660Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/nGPMmXRiSZLZvUitWhdknd</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/d390b004-59a0-4158-be9b-b9248ecb5469.jpg</video:thumbnail_loc><video:title>A4: Wind Him Up – Mit Saga verteilte Transaktionen in einer Kafka-Architektur verwalten</video:title><video:description>In modernen Microservice-Architekturen mit eigener Datenhaltung besteht immer wieder das Problem der Datenkonsistenz bei Fehlerfällen innerhalb verteilter Transaktionen. Anstatt Distributed Transactions zu verwenden wird mittlerweile hauptsächlich auf die Verwendung des Saga-Patterns gesetzt. In diesem Vortrag möchte ich gerne auf die Problemstellungen und Lösungen dazu im theoretischen wie auch im praktischen Beispiel darauf eingehen.

Thomas Müller ist Senior Software Developer der sidion GmbH aus Stuttgart. Er ist seit 2003 passionierter Java-Entwickler und dort auch in sämtlichen Backend- und Middleware-Systemen unterwegs. Seine beruflichen Lieblingsspielplätze sind Apache Kafka, Hazelcast sowie Spring-Boot-Applikationen. Und wenn dann mal noch etwas freie Zeit übrig bleibt, ist das Raspberry-PI-Umfeld eine nette Abwechslung.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/afc31c03-0778-435c-9bf9-e364d992ae5a/7d651eaa-98be-421b-aa22-b7a5e0c015cd-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/nGPMmXRiSZLZvUitWhdknd</video:player_loc><video:duration>2563</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T13:19:42.576Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/cyZ82Dx6SoqxyXZsxoC727</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/d1dbedde-e86b-43f3-98e7-5c3829bbeeae.jpg</video:thumbnail_loc><video:title>A5: Loosely or lousily coupled? Understanding communication patterns in modern architectures</video:title><video:description>In a microservices architecture, services shall be as loosely coupled as possible. Still, they need to communicate with each other in order to fulfill business requirements. Now there are so many questions around this communication: – What are the general possibilities to communicate? For example synchronous, asynchronous, or event-driven communication. What are the tradeoffs and which communication style should you prefer? – What is the influence on the coupling of your services? For example, asynchronous communication reduces temporal coupling between services. – What do I have to consider when selecting a certain communication style? For example, you need to apply certain resilience patterns if you want to use synchronous communication. This talk will help you answer these questions for your project. You will better understand not only the architectural implications but also the effect on the productivity of your teams.

Ich entwickle seit über 15 Jahren Software und habe zahlreichen Kunden dabei geholfen, Kernprozesse zu automatisieren, so z.B. der Bestellprozesse bei Zalando, Auftragsprozesse bei T-Mobile oder Patenanträge in der Schweiz. Ich habe aktiv an der Entwicklung verschiedener Open Source Workflow Engines mitgearbeitet und bin Mitgründer der Camunda, ein Open Source Unternehmen das Prozessautomatisierung neu erfindet. Ich bin Autor von „Practical Process Automation“ und Co-Autor des „Praxishandbuch BPMN“, spreche regelmäßig auf Konferenzen und schreibe für verschiedene Magazine. Seit geraumer Zeit beschäftige ich mit Process Automation Paradigmen die in moderne Architekturen rund um Microservices, Domain Driven Design, Event Driven Architecture und reaktiver Systeme passen.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/5daf8730-143b-4977-945a-176d64888678/4083aa58-9f00-4437-be7a-60b9de0aef3e-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/cyZ82Dx6SoqxyXZsxoC727</video:player_loc><video:duration>2873</video:duration><video:rating>0</video:rating><video:view_count>2</video:view_count><video:publication_date>2026-07-04T13:36:46.389Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/iU8P8SB3xK7YT2vVM5WGLd</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/f21e9b8b-d327-4278-bfc5-42b0598f2881.jpg</video:thumbnail_loc><video:title>A6: Log4Shell: Ein Blick ins Sicherheits-Desaster</video:title><video:description>2021 hätte eigentlich ganz entspannt ausklingen sollen. Wäre da nicht eine Serie an Sicherheitsproblemen in der Log4j 2 Bibliothek für Java gewesen, die gravierendste Schwachstelle ist auch als Log4Shell bekannt. Der Vortrag gibt einen Überblick wie die Schwachstelle funktioniert, aber auch warum es relativ trickreich ist das Problem überall richtig zu erkennen. Zusätzlich sehen wir uns an, wie man sich generell dagegen hätte schützen können und was (nicht) funktioniert.

Philipp lebt für technische Vorträge und Demos. Nachdem er mehr als zehn Jahre als Web-, Infrastruktur- und Datenbank-Entwickler gearbeitet hat, ist er mittlerweile Developer Advocate und EMEA Team-Lead bei Elastic, dem Unternehmen hinter dem Elastic Stack, bestehend aus Elasticsearch, Kibana, Beats und Logstash.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/90f2d916-6637-45f3-bbe7-a734888b0834/9215c712-58aa-4daf-b799-860452b98d98-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/iU8P8SB3xK7YT2vVM5WGLd</video:player_loc><video:duration>2707</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T14:04:48.661Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/2nPfJuu5BUV7ZFSQanVnPy</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/a992f03a-c936-44b3-85da-3e0978de64d0.jpg</video:thumbnail_loc><video:title>A7: 5 Freunde und der verlorengegangene Gleiswechsel</video:title><video:description>Eine komplexe Software-Architektur ohne Bugs ist wohl Utopie. Das ist bei dem Projekt der Reisendeninformation der Deutschen Bahn nicht anders. Wir begeben uns auf Spurensuche nach verlorengegangenen Gleiswechseln und präsentieren, wie wir in unserem Projekt einen Softwarebug aufdecken. Wir geben einen Einblick in eine moderne eventverarbeitende Microservice-Architektur und stellen euch dabei unsere 5 Freunde zur Überwachung der Produktionsumgebung vor: – Alerting (Alertmanager) – Metrik-Monitoring (Prometheus + Grafana) – Log-Darstellung (Kibana) – Individuelle Tools (Datenspeicher) – Aktueller Zustand der Microservices (k9s)

Julian Schmidt ist agiler Software-Entwickler bei andrena objects und seit derzeit drei Jahren mit viel Freude in einem Backend-Projekt für die Reisendeninformation der Deutschen Bahn tätig. Neben der Weiterentwicklung der Java-Anwendungen im Microservice-Umfeld gehört zu seinen täglichen Aufgabengebieten auch die Überwachung der produktiven Anwendung. Für ihn gehören die Entwicklung von geeigneten Alarmen und die Gestaltung von Metrik-Dashboards genauso zu einem erfolgreichen Software-Projekt, wie die Entwicklung von Unit-Tests. Ist Julian Schmidt gerade nicht auf der Suche nach Lösungen von Software-Bugs, kombiniert er gerne seinen Weg aus Escape-Rooms oder lenkt sich leidenschaftlich in der Boulderhalle und draußen am Fels ab.

Christine Schreiber ist agile Softwareentwicklerin bei andrena objects. Aktuell unterstützt sie die Deutsche Bahn dabei, die Reisendeninformation konsistenter zu machen – mithilfe eines Microservice-basierten Softwaresystems, das Event-getrieben Millionen Echtzeitdaten am Tag verarbeitet. Ihr besonderes Interesse gilt dabei der Überwachung der Services, um Fehler in Produktion schnell bemerken und eingrenzen zu können.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/0b24e10f-e23a-4139-bd70-2a9d585467f2/2a0bd83b-38e6-42e0-b652-03162c28d34c-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/2nPfJuu5BUV7ZFSQanVnPy</video:player_loc><video:duration>2426</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T14:19:24.751Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/tsWaK6zqexveCje1dHWMah</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/b7f6b005-b283-4419-9241-ed6b9ed56da0.jpg</video:thumbnail_loc><video:title>C1: Der Application Server ist tot (?) - es lebe Jakarta EE!</video:title><video:description>Die Zeit großer monolithischer Enterprise-Anwendungen auf Applikationservern ist vorbei. Moderne Anwendungen sind kleiner, vielfach in mehrere Microservices aufgeteilt, und laufen in Container-Infrastrukturen on-prem oder in der Cloud. Ein Application Server wirkt da deplatziert wie ein Schlachtschiff, wo eher kleine Schnellboote gefordert sind.

Ist damit die Geschichte von Java EE zu Ende?

Ich zeige in diesem Vortrag, dass dies nicht so ist. Wir schauen dabei auf den häufig zitierten "Lackmus-Test" für Cloud Readiness - 12 Factor App - und prüfen, ob und wie die geforderten Eigenschaften mit Jakarta EE und MicroProfile zu erreichen sind. Wir werfen einen Blick auf die Runtimes und stellen fest, dass es neben der rasanten Umgebung Quarkus durchaus noch Anwendungsfälle für klassische Server wie WildFly oder Payara gibt. Das alles kommt mit einigen Slides und viel Live Demo.

Dirk Weil ist seit 1998 als Berater im Bereich Java tätig. Als Geschäftsführer der GEDOPLAN GmbH ist er für die Konzeption und Realisierung von Informationssystemen auf Basis von Java verantwortlich. Langjährige Erfahrung in der Entwicklung anspruchsvoller Unternehmenslösungen machen ihn und sein Team zu kompetenten Ansprechpartnern und anerkannten Experten auf dem Gebiet Java und JEE. Er ist Fachbuchautor, schreibt Artikel für Fachmagazine und  hält Vorträge auf Konferenzen und für User Groups. Für GEDOPLAN IT Training leitet er anspruchsvolle Seminare und Workshops zu diversen Java- und JEE-Themen.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/de6976cb-b0a5-4005-9f75-e9b2bd00df6e/f696e05a-8500-4c40-a8fa-99f7bee581fd-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/tsWaK6zqexveCje1dHWMah</video:player_loc><video:duration>2911</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T14:31:46.650Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/q2v6EUcxrBfLfPLGgVPvQw</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/87760fcd-b7c3-4c15-842f-037548fd4859.jpg</video:thumbnail_loc><video:title>B1: Ersatzvortrag: Apache Kafka Meets Workflow Engines</video:title><video:description>Apache Kafka is an interesting technology with quite impressive use cases lately. One of its core promises is scalability. Over the last years, process automation and orchestration technology also progressed massively and can handle modern scalability and resiliency requirements (so it is not the dinosaur some people think it is). Time, to quickly recap what different tools and technologies bring to the table . Especially, as there are super interesting combinations between Kafka and a workflow engine possible, such as starting or influencing process instances upon certain events in a stream, orchestrating microservices by writing commands as Kafka records, or using Kafka to collect information about decentralized process executions.

In this talk, I will briefly introduce the technologies and walk you through these possibilities presenting real-life use cases and some sample code using open-source tools.

Ich entwickle seit über 15 Jahren Software und habe zahlreichen Kunden dabei geholfen, Kernprozesse zu automatisieren, so z.B. der Bestellprozesse bei Zalando, Auftragsprozesse bei T-Mobile oder Patenanträge in der Schweiz. Ich habe aktiv an der Entwicklung verschiedener Open Source Workflow Engines mitgearbeitet und bin Mitgründer der Camunda, ein Open Source Unternehmen das Prozessautomatisierung neu erfindet. Ich bin Autor von „Practical Process Automation“ und Co-Autor des „Praxishandbuch BPMN“, spreche regelmäßig auf Konferenzen und schreibe für verschiedene Magazine. Seit geraumer Zeit beschäftige ich mit Process Automation Paradigmen die in moderne Architekturen rund um Microservices, Domain Driven Design, Event Driven Architecture und reaktiver Systeme passen.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/c29100f5-a045-425f-9121-5fbbbff8611a/e4b64db4-c848-4853-b882-eaee31b8c8e5-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/q2v6EUcxrBfLfPLGgVPvQw</video:player_loc><video:duration>2770</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T14:33:56.000Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/tAFsraNqdQCtDdP4q35BaJ</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/b882ce3c-c699-414b-a760-697d8773bbc1.jpg</video:thumbnail_loc><video:title>B2: Applikationen besser skalieren mit Micro Frontends</video:title><video:description>Wächst ein Softwareprojekt und die zugrundeliegende Applikation, so vergrössert sich meist sich auch die Anzahl der involvierten Teams bzw. die Zahl ihrer Mitglieder. Irgendwann ist dann der Punkt erreicht, an dem die Weiterentwicklung der gesamten Software nur durch zusätzlichen Abstimmungs- und Koordinationsaufwand möglich ist. Verantwortungen verschwimmen und bei jedem neuen Release müssen interne Abhängigkeiten berücksichtigt werden. Viele dieser Probleme werden heute mit Hilfe von Microservice Architekturen adressiert. Die monolithische Applikation wird aufgetrennt und das Backend in kleine, gut handhabbare und eigenständige Services zerlegt. Doch wie sieht es mit dem zugehörigen Frontend aus? Auch hier wäre eine Auftrennung in kleinere Module wünschenswert. Idealerweis entlang der Businessfunktionalität und der User Journey. Denn auch hier ist das Ziel neue Funktionalität schnell und möglichst ohne grossen Aufwand bzw. Risiko an die Benutzer auszurollen. Mit Micro Frontends soll uns hier geholfen werden. Sehr einfach ausgedrückt überträgt man die bekannten Konzepte von Microservices vom Backend auch auf die Frontend Welt. Anstatt einer großen Single-Page-Application baut man mehrere unabhängige Teilapplikationen, die miteinander kommunizieren und am Ende eine Gesamt-Experience liefern. Unser klares Ziel ist Skalierbarkeit, Robustheit, Einfachheit und Flexibilität. In diesem Vortag veranschauliche ich den Einsatz einer Micro Frontend Architektur anhand einer Single-Page-Application (Angular). Das Beispiel soll zeigen wie eine Umsetzung mithilfe von Tools und Libraries erfolgen kann und auch einen Eindruck vermitteln wann der Einsatz von Micro Frontends sinnvoll ist oder wann evtl. Nachteile zu erwarten sind.

Mario Goller ist als System Architect bei der Swisscom AG in der Schweiz tätig und hat in den vergangenen 20 Jahren als Software Engineer vielerlei Erfahrungen in unterschiedlichen Softwareprojekten und den dazugehörigen Agilen Organisationen sammeln dü...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/df7e58f4-1419-4b37-86f5-e047694d7220/378c394a-2b64-4e21-b644-88d387a1c92b-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/tAFsraNqdQCtDdP4q35BaJ</video:player_loc><video:duration>2975</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T14:48:02.515Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/74PCgpEgF1ddypa2SuCJwF</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/1d427d83-04e0-4c87-a067-cb0bdb26feb6.jpg</video:thumbnail_loc><video:title>B3: Jetbrains Compose – New GUIs for the desktop and beyond</video:title><video:description>Im Juli 2021 wurde von Google das neue, moderne Toolkit zur Erstellung von nativen UIs für Android in der Version 1.0 vorgestellt. Parallel dazu hat die Firma Jetbrains dieses OSS Toolkit für die Verwendung auf dem Desktop und auch im Web angepasst. Damit steht nun ein weiteres plattformübergreifendes UI Toolkit zur Verfügung, das eine ähnliche Zielrichtung hat wie das bekannte JavaFX. Im Gegensatz zu JavaFX stehen hinter Compose jedoch zwei große Firmen, die ein erhebliches Eigeninteresse am Erfolg dieses Toolkits haben. Schon allein deshalb lohnt es sich ein Auge darauf zu werfen. In meinem Vortrag werde ich zunächst die Grundlagen von Compose vorstellen. Dabei werde ich zeigen, dass für die Verwendung von Compose ein völliges Umdenken gegenüber JavaFX notwendig ist, da Compose nur in Kotlin programmiert werden kann und einen modernen, deklarativen Ansatz verfolgt, wie man ihn auch in React, Flutter oder SwiftUI findet. Dieses Umdenken lohnt sich aber, da es ganz neue Möglichkeiten eröffnet, z.B., hinsichtlich der Anbindung plattformunabhängiger Modelle. Der Vortrag spiegelt die konkreten Erfahrungen wieder, die ich bei der Umstellung einer JavaFX-basierten Anwendung auf Compose gesammelt habe. Diese werde ich im Vortrag präsentieren und werde dabei auch auf Erfahrungen hinsichtlich Performance, Handling und mit der Entwicklungsumgebung eingehen. Der Schwerpunkt des Vortrags wird auf der Desktop-Entwicklung liegen aber ich werde auch über die neuesten Entwicklungen bzgl. Android/iOS und Web berichten.

Dr. Michael Paus is Aerospace engineer Developer, Consultant, Compose- and JavaFX-enthusiast OpenJFX author Chairman of the Java User Group Stuttgart e.V.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/311f69d3-9f16-4450-8dcc-1291617f4f3b/a642780e-ac16-44c6-b33d-ce7c8e0fb212-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/74PCgpEgF1ddypa2SuCJwF</video:player_loc><video:duration>2634</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T15:03:40.321Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/kG3igUJBRLP41A6op7acQ1</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/ae112330-74a6-47d3-b3ae-4599ea8c4dc9.jpg</video:thumbnail_loc><video:title>B4: TypeScript – Starke Typen für JavaScript</video:title><video:description>Typescript ist eine beliebte Sprache (bzw. eher JavaScript Dialekt) für Full Stack Entwickler:innen. Da Server Applikationen häufig in statisch typisierten Sprachen geschrieben werden, möchte man auf dieses Feature bei der Entwicklung von JavaScript Frontends nicht verzichten. Typescript bietet hier Abhilfe, es erweitert JavaScript um neue Syntax und einen Transpiler, welcher TypeScript Code in JavaScript Code übersetzt und dabei Prüfungen zur Typisierung und einigem mehr vollzieht. In diesem Vortrag werden wir uns die Grundlagen der TypeScript Programmierung und die umfangreichen Typisierungsmöglichkeiten im Gegensatz zu Java in einem Live Coding gemeinsam anschauen.

Sebastian Greiner studierte Angewandte Informatik an der Dualen Hochschule Baden-Württemberg und ist seit ca. 6 Jahren als IT-Consultant bei der aformatik Training &amp; Consulting GmbH &amp; Co. KG in Sindelfingen tätig. Im Kundenauftrag entwickelt er dort Web Applications auf Basis von Angular in Kombination mit einem Java EE oder Spring Boot Backend, sowie CI/CD Prozesse und containerbasierte Architekturen.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/9f74cd2a-7bf2-4dbb-8235-a943b664aa94/13f22bd5-1f11-40d0-9f4b-430dd232e2d2-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/kG3igUJBRLP41A6op7acQ1</video:player_loc><video:duration>2654</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T15:31:20.834Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/h2TMTJ9ErowZpjcQmuusqn</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/a05d4675-660f-4f4c-b064-a676cccb5f80.jpg</video:thumbnail_loc><video:title>B5: Ersatzvortrag: Über Bit-Frickeleien und andere Vergnügen</video:title><video:description>Auch wenn Bits die Basis unserer digitalen Welt bilden, fristen sie doch für sich genommen eher ein Schattendasein. Während sie als int oder float weitgehend verstanden werden, geben sie nämlich einzeln eher Rätsel auf und werden deshalb von vielen Programmierern – völlig zu Unrecht – verschmäht. Dabei lassen sich mit der Bit-weisen Manipulation von Maschinenwörtern nicht nur sehr effiziente Funktionen implementieren, sondern auch überraschend kompakte Datenstrukturen realisieren.

Dieser Vortrag gibt einen kleinen, vergnüglichen Einblick in das Leben der Bits, wie sie sich zu Maschinenwörtern zusammensetzen und so besonders einfach nutzen lassen. Dabei lernt man, sie positiv wie negativ zu interpretieren und Bit-weise miteinander zu verknüpfen, um so die wunderbarsten Effekte zu erzielen. Nebenbei wird für diejenigen, die es wirklich eilig haben, erklärt, warum Bit-Frickeleien unumgänglich sind, aber auch allen anderen veranschaulicht, wie man mit Bits eine Menge Rechenzeit und Speicher sparen kann.

Michael Wiedeking ist Gründer der MATHEMA GmbH und Java-Programmierer der ersten Stunde. Er schreibt Artikel und spricht auf Konferenzen. Am liebsten aber „sammelt“ er Programmiersprachen und beschäftigt sich mit ihrem Design und ihrer Implementierung — besonders mit seiner eigenen: Aalgola.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/81d5e13b-88d9-48d2-994b-13d6a114514d/b1c25024-d1f5-4652-a24d-d20279a48b72-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/h2TMTJ9ErowZpjcQmuusqn</video:player_loc><video:duration>2830</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T15:38:16.304Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/8ixXPDosMn8XDRWTyA4ZSm</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/34b0d122-2290-4b42-9824-c0a0cc62f8a8.jpg</video:thumbnail_loc><video:title>B7: Autism in Tech</video:title><video:description>Are all software developers the same? Do all software developers make the same choices? Or are some of them having more worries or just think in a unique way? Yes! of course. There is a group of software developers who are autistic. It can be people with an ASD (Autism Spectrum Disorder) diagnose. But there are also a lot of people with autism missing an official diagnose. Some people are just fighting more than others for getting things done. In this talk, I try to cover how the tech world is for me, as a person with autism. I am in tech for about 10 years. In fact, sometimes I feel differences between me and other people in tech. Besides my tech roll in life, I am responsible for a self — a support group of people with autism.

Dennie is Microsoft MVP Developer Technologies and has experience in accessibility with Microsoft technologies. In daily life Dennie is president and developer at DDSoft, a nonprofit that connects IT to People who are less tech-savvy. Dennie invented technical solutions and systems to help people with disabilities to participate in their daily life. Thanks to his autism he’s the right man at the right spot to contribute as a volunteer in function of people with disabilities.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/3b234ff0-743d-4be3-9bf4-e439e8dde3c4/063efd33-1b50-4fdc-b8a8-10d23b9bcf04-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/8ixXPDosMn8XDRWTyA4ZSm</video:player_loc><video:duration>2839</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T15:52:45.394Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/pkan5oryU35GDMjAvbfNY7</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/b9ba50dc-a26a-44fe-8dcf-cc25ce0fa000.jpg</video:thumbnail_loc><video:title>C3: Javas neue Gesprächskultur: ganz wie in Panama</video:title><video:description>Java- und C-Anwendungen können sich über das Java Native Interface (JNI) unterhalten. Das geht ganz gut, Spaß macht es aber sicher nicht und wartungsunfreundlich ist es obendrein. Das Panama-Projekt versucht bereits seit 2019 beginnend mit dem JEP 370 und vielen Nachfolge-JEPs die Gesprächskultur zwischen Java und C auf ein neues Niveau zu heben. Diese neue Kommunikationsart erlaubt es, nativen Code mit pure Java, ganz ohne zusätzlichen C-Code, aufzurufen und funktioniert auch in die andere Richtung. In Java 17 ist der Foreign-Function-Access zwar immer noch im Inkubator-Modus, aber das API stabilisiert sich langsam. Es ist an der Zeit, sich damit zu befassen. Dieser Vortrag führt in die grundlegenden Konzepte des Foreign-Function-Access ein und zeigt an kleinen, einführenden Beispielen, wie sich die neue Art der Kommunikation anfühlt.

Nach seinem Studium der Informatik und der Promotion arbeitete Bernd Müller für die IBM und die HDI Informationssysteme. Er ist Professor, Geschäftsführer, Autor mehrerer Bücher zu den Themen JSF und JPA, sowie Speaker auf nationalen und internationalen Konferenzen.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/bcef1758-738c-4cfe-bd8d-672d270e4d9e/da471733-a952-412f-9a3f-503026c37870-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/pkan5oryU35GDMjAvbfNY7</video:player_loc><video:duration>2751</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T15:54:22.320Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/wgWww1rC1qhvoimw8WTrLc</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/5a00645b-51af-4ba3-afca-6855c7e2148a.jpg</video:thumbnail_loc><video:title>C4: Pattern Matching in Java</video:title><video:description>Pattern Matching ist ein Mechanismus, um Werte gegen Muster abzuprüfen. Bei einem Treffer können diese Werte dann in ihre Bestandteile zerlegt und somit leicht und sicher weiterverarbeitet werden. Dieses in erster Linie aus funktionalen Programmiersprachen bekannte Konzept ist damit eine sehr mächtige und flexible Alternative zu klassischen Switch Statements bzw. if/else-Anweisungskaskaden. Seit einigen Jahren wird nun schon im JDK-Inkubatorprojekt Amber an der Einführung von Pattern Matching in Java gearbeitet. Ein Teil der Implementierungen haben mittlerweile den Weg in das OpenJDK gefunden. Sie versprechen kürzeren und verständlicheren Quellcode, der zudem vom Compiler auf Korrektheit geprüft werden kann. Er ist einfacher zu lesen und lässt sich somit leichter warten und erweitern. Begleitet von Codebeispielen werden wir den Ist-Zustand des Musterabgleichs in Java näher beleuchten. Ihr lernt die neuen Features wie Switch Expression, Pattern Matching for instanceof, Sealed Classes und Pattern Matching for switch näher kennen und erfahrt, wo sie sinnvoll eingesetzt werden können. Anschließend werfen wir einen Blick auf alternative Pattern-Typen, die sogar eine Destrukturierung von Records und Arrays ermöglichen.

Falk Sippach ist bei der embarc Software Consulting GmbH als Softwarearchitekt, Berater und Trainer stets auf der Suche nach dem Funken Leidenschaft, den er bei seinen Teilnehmern, Kunden und Kollegen entfachen kann. Bereits seit über 15 Jahren unterstützt er in meist agilen Softwareentwicklungsprojekten im Java-Umfeld. Als aktiver Bestandteil der Community (Mitorganisator der JUG Darmstadt) teilt er zudem sein Wissen gern in Artikeln, Blogbeiträgen sowie Vorträgen auf Konferenzen oder User-Group-Treffen und unterstützt bei der Organisation diverser Fachveranstaltungen.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/f52beb56-a287-4ac2-8cff-0b0cea8a2fbf/50325f96-32a2-414a-8e01-723646f4b7dc-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/wgWww1rC1qhvoimw8WTrLc</video:player_loc><video:duration>2668</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T16:11:37.446Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/rUnX3QciBx5C2eN82ka5it</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/5dd79747-e118-405d-9dab-57320b1d3c51.jpg</video:thumbnail_loc><video:title>C5: Virtual Threads</video:title><video:description>Java wird in naher Zukunft ein alternatives Concurrency-Modell zur asynchronen Programmierung erhalten. Das Kernkonzept sind sogenannte virtuelle Threads, die von der JVM und nicht vom Betriebssystem koordiniert werden. Virtuelle Threads sind leichtgewichtig und können quasi in beliebiger Anzahl erzeugt und verwaltet werden. In dem Vortrag werden die bis jetzt ausgearbeiteten neuen Sprachkonzepte erläutert und Anwendungsfälle diskutiert. Wir werden besprechen, wann der Einsatz virtueller Threads sinnvoll ist und in welchen Fällen eher auf herkömmliche Threads zurückgegriffen werden sollte.

Jörg Hettel war als Berater bei nationalen und internationalen Unternehmen tätig. Er begleitete zahlreiche Firmen bei der Einführung von objektorientierten Technologien und übernahm als Software-Architekt Projektverantwortung. Seit 2003 ist er Professor an der Hochschule Kaiserslautern am Standort Zweibrücken.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/d1c4ab4e-53ce-4160-8705-b9ad1a88a77d/15cb09a0-a2e7-4551-b4f4-f158d4b1dc8e-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/rUnX3QciBx5C2eN82ka5it</video:player_loc><video:duration>2953</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T16:39:43.070Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/bXgYbz1JV3zYBruVrzZrKJ</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/1e2969af-2504-4cf5-9210-1fa6eed10685.jpg</video:thumbnail_loc><video:title>C6: OpenJDK Contributor: Ein Erfahrungsbericht</video:title><video:description>Wir allen nutzen Java, aber nur wenige arbeiten daran mit. Warum ist das so, OpenJDK ist doch ein offenes Projekt? Ist es schwer sich zu beteiligen? Was sind die Herausforderungen? Welche Chances bietet eine Mitarbeit an OpenJDK? Der Sprecher ist selbst seit einigen Monaten Contributor bei OpenJDK und gibt Einblick in die Erfahrungen, die er in diesem Projekt gemacht hat – positive wie negative.

Markus beschäftigt sich seit den 90er Jahren mit Java, und hat den JAX-RS-Standard von Anfang an als Co-Autor mit definiert. Neben weiteren Open-Source-Projekten ist er seit kurzem Contributor zu OpenJDK. Auf seinem YouTube-Kanal veröffentlicht er regelmäßig Videos zu Java in Deutsch und Englisch.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/58b3228e-6c58-4475-80bf-f35728505144/f6ab8459-13e9-43b8-8377-28119872dd02-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/bXgYbz1JV3zYBruVrzZrKJ</video:player_loc><video:duration>2416</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T16:45:33.699Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/s8JvdjtqvEJKQizesxCkjb</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/bee8b2a7-60e5-42cb-b62e-78933af1e7ac.jpg</video:thumbnail_loc><video:title>C7: Funktionale Architektur mit Kotlin</video:title><video:description>Kotlin wirbt zwar mit der Unterstützung funktionaler Programmierkonzepte, in der Praxis muss man sich aber schon anstrengen, um sie in der Praxis auch einzusetzen. (Immerhin ist es in Kotlin leichter als in Java.) Dabei sind einige von ihnen durchaus nützlich bei der Entwicklung einer sauberen Architektur: Bei der zuverlässigen Organisation und Validierung von Daten und der flexiblen Dependency Injection mit Monaden zum Beispiel. Diese Techniken sind eine ideale Ergänzung für ein DDD-Projekt und können auch nachträglich noch eingebaut werden. Der Vortrag zeigt, wo funktionale Programmierung am meisten bringt in Kotlin, und wie sich damit die Architektur verbessern lässt.

Dr. Michael Sperber ist Geschäftsführer der Active Group GmbH. Er ist international anerkannter Experte für funktionale Programmierung und hat zahlreiche Fachartikel und Bücher zum Thema verfasst. Michael Sperber ist Mitbegründer des Blogs funktionale-programmierung.de und Mitorganisator der Entwicklerkonferenz BOB. Außerdem ist er einer der primären Autoren des iSAQB-Advanced-Curriculums „Funktionale Software-Architektur“.

Leidenschaftlicher Software Architekt, Full-Stack-Entwickler und Speaker mit Begeisterung für Technologie, Architektur und Organisation. Entwickelt und betreibt Software, datengetrieben mit Fokus auf Kundenmehrwert. Bildet sich und andere gern aus und weiter. Stolzes Gründungsmitglied der Hacker-School.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/d3a2015f-67d1-4d89-850c-2435887a2b5a/b56fd2b9-50e3-49ca-88d3-159d179a400f-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/s8JvdjtqvEJKQizesxCkjb</video:player_loc><video:duration>2714</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T16:58:21.872Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/8ajDueWtWFgPBxThbmFCwd</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/5dba8423-8062-4772-b854-0ca377594ca4.jpg</video:thumbnail_loc><video:title>D1: Deepfakes am Limit: Fake-Videocalls mit Künstlicher Intelligenz</video:title><video:description>Stellen Sie sich das mal vor: Jemand nimmt mit einem digitalen Ebenbild Ihrer Person an einem Live-Videoanruf teil. Heutige Echtzeit-Deepfake-Technologie erlaubt es, mit bloßem Auge kaum noch unterscheidbare „Doppelgänger“ einer Person zu erzeugen. Das TNG Innovation Hacking Team forscht seit dem Jahr 2019 intensiv an der künstlichen Intelligenz rund um Echtzeit-Deepfakes und entwickelt diese ständig weiter. Das Endergebnis und die einzelnen Schritte hin zum Fotorealismus werden in diesem Vortrag vorgestellt. Seit ihrer Entstehung im Jahr 2017 haben sich Deepfakes von einer KI-Spielerei zu einem mächtigen Werkzeug weiterentwickelt. Auch Medienformate wie Leschs Kosmos, Galileo und anderen Sendungen arbeiten inzwischen mit TNG-Deepfakes. In dem Vortrag zeigen wir die verschiedenen Evolutionsschritte der Deepfake-Technologie, beginnend mit dem „Ur“-Deepfake und endend mit Echtzeit-Deepfakes des gesamten Kopfes. Mehrere Live-Demos bringen dem Publikum einzelne Bestandteile der Software näher. Dabei gehen wir insbesondere auf verschiedene neue Technologien zur Verbesserung der Deepfake-Erzeugung wie zum Beispiel Tensorflow 2 und MediaPipe und die Unterschiede zu unseren früheren Umsetzungen ein.

Thomas Endres arbeitet in der Rolle eines Partners als IT-Consultant für TNG Technology Consulting in München. Neben seiner „normalen“ Tätigkeit für die Firma und die Kundenprojekte entwickelt er zusammen mit dem TNG-Hardware-Hacking-Team veschiedene Prototypen – darunter ein Telepräsenz-Robotik-System, mit dem man die Realität aus den Augen eines Roboters erleben kann, oder aber eine Augmented-Reality-KI, die die Welt aus der Perspektive eines Künstlers zeigt. Er arbeitet an Anwendungen im Bereich der AR/VR, KI sowie der Gestensteuerung, um damit beispielsweise Quadrokopter autonom fliegen zu lassen oder berührungslos zu steuern. Darüber hinaus ist er in verschiedenen Open-Source-Projekten in Java, C# und allen Spielarten von JavaScript involviert.

Thomas ist studierter In...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/39fd27df-a948-4451-9f21-1e9a7f588600/d7d568e7-ac3c-41b2-909b-386323f687f7-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/8ajDueWtWFgPBxThbmFCwd</video:player_loc><video:duration>2769</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T17:29:33.125Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/gMuUwYEYirhrVqK47EU1tH</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/910874d1-85b9-4803-a5be-a64400b0c2bd.jpg</video:thumbnail_loc><video:title>D2: Hibernate Reactive und Kotlin: elegant und performant</video:title><video:description>Um eine bessere Performance und eine bessere Ressourcen-Nutzung zu erzielen, findet „Reactive Programming“ in den letzten Jahren eine zunehmende Beachtung. Gleichzeitig hat sich Kotlin als moderne und elegante Programmiersprache für die JVM etabliert. Darüberhinaus ist angesichts der Marktdominanz von relationalen DB-Systemen das OR-Mapping nach wie vor eine Herausforderung, wobei Hibernate dafür sicherlich das bekannteste Werkzeug ist. Mit „Hibernate Reactive“ gibt es Hibernate nun auch in einer Variante für Reactive Programming, wobei die bekannten Annotationen für die Entity-Klassen, wie z.B. @Id oder @OneToMany, unverändert genutzt werden können. Was bei Hibernate Reactive aber geändert und ausgetauscht werden musste, ist die Programmierschnittstelle mit der Klasse EntityManager, die nämlich an einen Thread gekoppelt war. Das neue API bietet eine Reihe neuer Java-Interfaces, wie z.B. Session oder Query, die auf Basis der Bibliothek Mutiny implementiert sind, um Reactive Programming zu ermöglichen. Gleichzeitig werden asynchrone Treiber für alle gängigen relationale DB-Systeme unterstützt, indem Hibernate Reactive mit den Clients von Eclipse Vert.x integriert ist. Wenn man nun neue Anwendungen zwar reactive, aber mit Java entwickelt, so haben diese den gleichen „Charme“ wie die Anwendungen von vor 20 Jahren. Mit Hilfe von wenigen „Extension Functions“ lassen sich dagegen neue Anwendungen so in Kotlin entwickeln, dass man sie als ästhetisch und elegant empfindet. Der Vortrag wird begleitet von Live-Demos, die nach einer spontanen Umfrage unter den Zuhörern wahlweise mit PostgreSQL, MySQL oder Oracle gezeigt werden.

Seit 2001: Professor für Softwarearchitektur und Software Engineering, Hochschule Karlsruhe 2000 – 2001: Manager des neu gegründeten Java Center bei Sun Microsystems, München 1998 – 2000: Senior Consultant bei Capgemini, München 1996 – 1998: Consulting Manager bei Object Design für ObjectStore (objektorientiertes DBS) 1991 – 1996: Wissenschaftlicher...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/7fd35d04-fe70-4117-aeb4-515247d1ecc7/7e204b9c-e3b0-4970-95cb-6aa91e1457de-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/gMuUwYEYirhrVqK47EU1tH</video:player_loc><video:duration>2671</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T17:35:19.896Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/cPLGkobEFW9vAB1dq7URpZ</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/ed611dfb-dc62-4165-8329-5077d721d005.jpg</video:thumbnail_loc><video:title>D3: Ein Herz für Entwickler – Die Developer Experience in Kubernetes verbessern</video:title><video:description>Kubernetes hat sich von einem Werkzeug zur Orchestrierung von Containern, welches ursprünglich für den internen Gebrauch bei Google entwickelt wurde, zum lebendigen Ökosystem entwickelt und erfreut sich großer Beliebtheit. Das rasante Tempo der digitalen Transformation zwingt Unternehmen dazu, qualitativ hochwertige Software schneller und agiler bereitzustellen. In Zeiten von Microservices und DevOps möchten Entwicklerteams Anwendungen schnell aufbauen und betreiben. Nutzt man hierbei Kubernetes, muss der Entwickler plötzlich neben dem Konzept des Containers u.a. verstehen, was ein Pod ist und wie ein solcher durch ein ReplicaSet gesteuert wird, das wiederum von einem Deployment erzeugt wurde. In diesem Vortrag soll aufgezeigt werden, wie die Developer Experience durch Einsatz von Tools wie Skaffold oder Epinio signifikant erhöht werden kann, damit Entwickler schneller und effizienter Anwendungen auf Kubernetes betreiben können. Es werden unterschiedliche Konzepte beschrieben und wie diese mit anderen Tools aus dem GitOps-Umfeld sinnvoll kombiniert werden können.

Baris is a software engineer at mimacom with more than 10 years of experience in developing and architecting enterprise software applications – mostly in highly regulated environments like the financial industry. Eager for a new challenge, Baris transitioned to the infrastructure side of the things to expand his knowledge in building holistic software solutions, including areas like automation and cloud operations. As he’s always striving to improve, Baris likes spending time exercising. He also has a passion for monochrome street photography.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/5fc006e8-1c2b-4ac5-b54a-049c1a0a84d3/9cf9c520-2046-47ad-9f3c-5d1969d8e17e-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/cPLGkobEFW9vAB1dq7URpZ</video:player_loc><video:duration>2440</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T17:46:46.092Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/jQimFTdcWh68CSwG74w9he</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/9663f67c-6ded-40e3-b1f8-4fee15eaeef1.jpg</video:thumbnail_loc><video:title>D4: Simulierte Evolution: Hands-On-Starter Kit</video:title><video:description>Evolution ist ein erstaunlich mächtiger und kreativer Prozess. Dieser hat aus Einzellern komplexe und erfolgreiche Lebewesen und uns Menschen hervorgebracht. In biologischen Systemen dauert die Entwicklung zur nächsten Generation oft Monate oder Jahre. Evolutionäre Prozesse finden nicht nur in der Natur, sondern in vielen Umgebungen statt. Wäre es nicht sinnvoll, dieses mächtige Werkzeug selbst zu nutzen? Dieser Vortrag zeigt im Live-Coding wie sich simulierte Evolution für Optimierungsaufgaben in Java implementieren lässt.

Heiko Spindler ist seit vielen Jahren als Softwarearchitekt und Softwareentwickler in vielen Projekten unterschiedlicher Branchen als Freelancer tätig. Seine Aufgaben umfassen das Aufsetzen von Projekten sowie die Betreuung über den gesamten Entwicklungszyklus. Er ist zertifizierter ScrumMaster (CSM ScrumAlliance), zertifizierter Softwarearchitekt und schreibt regelmäßig Artikel.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/9882e4ad-bc3c-4ee1-a94b-7e6d30bf596d/933be166-d3cd-4147-a202-a3c27eb0ba3b-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/jQimFTdcWh68CSwG74w9he</video:player_loc><video:duration>2731</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T18:01:59.244Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/6B3o4GHPwqoyqFCkURLC8w</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/d839305c-ddb4-47d5-b242-bb1cbf166b5a.jpg</video:thumbnail_loc><video:title>D5: Wie CMMN die Welt der Prozessautomatisierung revolutioniert</video:title><video:description>Heutzutage ist es kein Geheimnis mehr, dass mit guten Kern-Prozessen ein erheblicher Wettbewerbsvorteil gegenüber der Konkurrenz geschaffen werden kann. Wir sehen und spüren den Erfolg von Unternehmern wie Amazon (Verkaufsprozesse), Uber (Vermittlungs- und Transportprozesse), Lieferando (Bestell- und Lieferungsprozesse) und anderen. Mit BPMN wurde bereits vor einiger Zeit ein Standard ins Leben gerufen, der gut strukturierte Prozesse nicht nur verständlich darstellen, sondern auch automatisieren kann. Der grundsätzliche Gedanke, Business (Prozessowner) und IT (Softwareentwickler) zusammen zu bringen und dabei mit einem Artefakt – BPMN Modell – zu arbeiten hat die Welt der Prozessautomatisierung revolutioniert. BPMN als neutraler Standard der OMG hat alle proprietären Prozessmodellierungsnotationen der Tool-Hersteller aus dem Markt verdrängt. Aber wie bereits „Law of the Instrument“ (oder Maslows Hammer) sagt: „Wer als Werkzeug nur einen Hammer hat, sieht in jedem Problem einen Nagel“, so ist es auch mit BPMN. Nachdem wir einige „perfekte“ (oder gut geeignete) BPMN Prozesse automatisiert haben, sind einige gekommen, die eher mehr Flexibilität benötigt haben. Und leider genauso wie in dem Zitat machen es auch viele mit BPMN. Durch Versuche, hoch-flexible Prozesse mit BPMN zu automatisieren, sind extrem komplexe und unlesbare BPMN Modelle entstanden, die man sehr wahrscheinlich noch automatisieren kann, aber über die Verständlichkeit brauchen wir nicht mehr reden… Aber OMG hat auch ein anderes Standard im Portfolio – CMMN. Und genau darüber und über die BPM Trilogie würde ich gerne in diesem Vortrag reden… (Belegt mit Demo und realen Beispielen unserer Kunden)

Matúš Mala hat Mathematik und Computer Science an der UMB in Banska Bystrica studiert und arbeitet seit 15 Jahren als Full-Stack Software Engineer in verschiedenen Branchen wie beispielsweise Automotive, Banking oder Versicherung. Seit 10 Jahren liegt sein Fokus auf den Themen rund um das Business Process Man...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/2d623136-005d-488d-a3c4-a2542ece15f4/62fe726b-341a-4eca-8563-3ccd898a5a64-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/6B3o4GHPwqoyqFCkURLC8w</video:player_loc><video:duration>2370</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T18:31:24.965Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/quPekNNmqUGW2PvQKhw3DT</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/82a9ec91-93e6-41bc-8070-7df639e4c0bd.jpg</video:thumbnail_loc><video:title>D6: Jewel Java</video:title><video:description>Java’s language features are considered aged and very ceremonial. Verbose source code and workarounds for missing features are the results. It reduces the readability, comprehensibility, and – last, but not least – the productivity of Java developers. The OpenJDK project Amber attacks these weaknesses of Java with unspectacular JEPs. They only show their full potential in combination and are significant steps for developer productivity. In this talk, I will show you the results of project Amber and upcoming features. I demonstrate the potential of the new language features in combination.

Merlin is Java Developer for 10 years now. He has a fable for the power of new language features and small technology stacks. But his true love remains gliding and roof gardening with his child.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/c661428b-40ac-4be3-b25d-c5ea2929e3ed/2f50d260-ec6b-4f35-8119-205bac70971a-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/quPekNNmqUGW2PvQKhw3DT</video:player_loc><video:duration>2591</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T18:32:51.752Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/26cKKYvKdpq4e7ghre5uAz</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/5df7eb77-c14f-44f3-b2f5-6c7ede36c214.jpg</video:thumbnail_loc><video:title>D7: Constraint Satisfaction Problems – Never code this at home!</video:title><video:description>Es ist Montag, der 13. Dezember 2021. Es läuft die Auslosung des Achtelfinales zur UEFA Champions League. Plötzlich ereignet sich eine folgenschwere Computerpanne, die letztendlich zur Wiederholung der gesamten Auslosung führt. Aber woran ist die UEFA (oder deren externer Dienstleister) gescheitert? Es handelt sich dabei um ein Bedingungserfüllungsproblem oder – etwas weniger hölzern -um ein Constraint Satisfaction Problem (CSP). Obwohl nicht in aller Munde, sind CSPs weit verbreitet. So finden sich Anwendungen dafür in der Künstlichen Intelligenz, im Operations Resarch, bei der Terminplanung, bei der Lösung von Spielen (8-Damen-Problem, Sudoku, …) oder eben bei der Erstellung von Spielplänen von Sportligen. Dieser Talk möchte dieses Thema sichtbar machen und die damit verbundenen Probleme aufzeigen. Am Ende sollte jeder erkennen können, dass er es mit einer solchen Aufgabe zu tun hat. Abschließend möchte ich dafür werben derartige Probleme nicht „zu Fuß“ zu lösen, sondern auf ein Framework wie Choco-Solver zu vertrauen.

Matthias Koch ist seit mehr als 8 Jahren als Expert Software Developer bei der sidion GmbH tätig. Seit über 25 Jahren setzt er unterschiedlichste Kundenprojekte um – vor allem mit Java. Bei seinen Code – und Architekturreviews setzt er auf das Prinzip „Clean Code“. Spannend findet er funktionale Programmierung und den Einsatz von Kreativitätstechniken wie „Code Katas“. Ferner interessiert er sich für Secure Coding und Continuous Delivery. Als Dozent an der Hochschule für Technik in Stuttgart hat er ein starkes Interesse an praxisrelevanten Algorithmen.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/08d319f8-7f4f-4a81-9d0a-4784cdb09c55/2cf61422-c1cc-49f5-8a4a-b2c453da331a-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/26cKKYvKdpq4e7ghre5uAz</video:player_loc><video:duration>2846</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T18:56:20.755Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/4jY9fiPGdJfkuyoJ6mGxEq</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/2a054eec-db1a-4381-a941-22c1aa02aa53.jpg</video:thumbnail_loc><video:title>E1: Apache Maven survival guide</video:title><video:description>In vielen Projekten kommt Apache Maven zum Einsatz und macht irgendwas. In diesem Talk packen wir die Best Practises aus über 10 Jahren in eine pom.xml. Anhand von praktischen Beispielen schauen wir uns an: *wie man Probleme im Build löst *das Build reproduzierbar macht *Sicherheitslücken im Code findet *Sicherheitslücken im Build findet *die Rechtsabteilung glücklich macht *das Build schneller macht *die Kosten für das Build reduziert *weniger CO2 ausstößt Das alles schaffen wir ohne kommerzielle bzw. zusätzliche Produkte – nur mit Maven Standardplugins.

Richard Fichtner ist ein passionierter Java Entwickler mit mehr als 15 Jahren Erfahrung in der Softwarebranche. Er engagiert sich in der Open Source Community, um das Wissen über Java-Technologien zu verbreiten. Er spricht auf Konferenzen wie Oracle Code / JavaOne / JCON/ Clean Code Days und vielen anderen und leistet einen Beitrag zu verschiedenen Open Source Projekten wie https://www.rapidclipse.com/. Richard ist Gründer der Java User Group Oberpfalz, anerkannt als Oracle ACE und hält einen Master of Science in Angewandter Informatik. Er setzt sich leidenschaftlich dafür ein, Entwicklerproduktivität zu ermöglichen und unterstützt Teams beim Einsatz von Cloud-Lösungen. Seine Interessenschwerpunkte sind Clean-Code, Cloud, neue Technologien und alles was agil ist.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/1af16716-b4f9-4f4f-9b62-82b7320ea930/5916c4c5-9ce1-45bd-ae19-0df8ea0a8b58-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/4jY9fiPGdJfkuyoJ6mGxEq</video:player_loc><video:duration>2818</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T19:40:36.156Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/8Cz8KYfH1TzZaC75ZQyowr</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/11b58134-9ef2-486e-8234-f8737cddcb9c.jpg</video:thumbnail_loc><video:title>E2: Von Null auf Kotlin in 400 Sek.</video:title><video:description>Kotlin ist kool – bloß, wie finde ich den Einstieg? Dieser Talk zeigt in 20 Episoden, wie man von einem Java-Projekt zu einem Kotlin-Projekt migriert und welche Fallstricke dabei lauern können. Nebenbei lernst du dabei das eine oder andere Feature von Kotlin kennen und lieben. Für den Umstieg auf Kotlin verwende ich IntelliJ als IDE.

Oliver Böhm studierte Informatik an der Universität Stuttgart. Nach C++-Entwickung im Unix-Bereich beschäftigt er sich seit 1999 mit Java-Entwicklung unter Linux und Aspekt-Orientierte SW-Entwicklung. Er ist u.a. Autor der Bücher „JavaSoftware Engineering unter Linux“ (millin Verlag) und „Aspekt-Orientierte Programmierung mit AspectJ 5“ (dpunkt.verlag). Neben seiner hauptberuflichen Tätigkeit als Java-Statiker und -Archäologe beim Optica Abrechnungszentrum gibt er AOSD-Vorlesungen und ist Board-Mitglied der JUG Stuttgart.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/3dcb2a6e-480e-402c-a7c5-bf2d22c8729d/f5354cd2-7eee-4951-89ba-6de663c12ea0-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/8Cz8KYfH1TzZaC75ZQyowr</video:player_loc><video:duration>2625</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T19:42:36.162Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/wFvWeftqXvRPZas6fSRZyA</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/b2366d59-785e-4920-a057-71c09d14622e.jpg</video:thumbnail_loc><video:title>E3: Bootiful Spring Tooling for the Masses</video:title><video:description>This hands-on, live-coding session will show you how to use Spring-specific tooling in Eclipse and Visual Studio Code to be super productive when working on Spring Boot applications. We’ll demonstrate all the additional help to create, understand, and navigate your Spring code, including super-fast navigation across Spring definitions, deep understanding of your Spring code, and more. We’ll dive into the details of how information from live running Spring Boot apps will appear in your IDE and cover working with Docker and the container image support from Spring Boot for a unique and seamless experience in your day-to-day coding work. The live coding will feature Eclipse, Visual Studio Code, and GitHub Codespaces — including the most sophisticated Spring tooling available for those IDEs — to make every attendee more productive implementing applications on top of Spring Boot.

Martin leads the work on development environments for Spring and Spring Boot and is Sustainability Ambassador @ VMware</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/f8769d6a-e4cd-419e-a5ee-0d3ac583e92e/a768e483-9c6f-4d0e-8deb-a664eac329e7-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/wFvWeftqXvRPZas6fSRZyA</video:player_loc><video:duration>2800</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-04T19:44:49.822Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/eA9xya789aKdEtteGeFxPq</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/570be915-97a2-4dbf-9c1b-2c373de1f370.jpg</video:thumbnail_loc><video:title>E5: Readable Code</video:title><video:description>Als Entwickler erwarten wir von fremdem Code, dass er lesbar ist und hoffen, dass wir diesen Erwartungen selbst auch nahe kommen. In aller Regel bedienen wir uns dabei Best Practices, von denen wir gelesen haben oder die uns ein erfahrener Kollege vermittelt hat. Doch manchmal kommen wir auch in anstrengende Diskussionen, z.B.

– warum man jetzt eine Methode mit 3 Argumenten bei der Review noch durchgeht, eine mit 4 Argumenten aber nicht
– warum man das Objekt auf dem man aufruft verändern darf, dass Argument jedoch eher nicht
– warum die Methoden nur 4-5 Zeilen lang sein dürfen
– warum manche Namen besser als andere sind

Das Problem ist, dass die meisten Best-Practices nicht mit Argumenten, sondern Erfahrungen begründet werden, was es insbesondere jungen Entwicklern sehr schwer macht sie zu verstehen.

In diesem Vortrag möchten wir „Lesbaren Code“ von einer anderen Perspektive beleuchten. Readable-Code-Best-Practices ergeben sich fast automatisch, wenn man sich klar macht wie menschliches Lesen, Denken und Lernen funktionieren. Wir werden ein Modell des Code-Verstehens vorstellen, und anhand dessen die Lesbarkeit und Verständlichkeit von Code begründen. Der Inhalt ist gut geeignet um das Portfolio von Best Practices zu härten und um als Basis für neue Best Practices zu dienen.

Der Vortrag richtet sich an Entwickler aller Erfahrungslevel. Das vorgestellte Modell ist aber universell anwendbar und so auch für andere Berufsgruppen interessant.

Stefan Mandel ist Full-Stack-Entwickler bei andrena objects und beschäftigt sich seit fast 20 Jahren mit Programmiersprachen, Prinzipien, Clean Code und Refactoring.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/6e0b5b30-c288-4aed-8624-bc542fd1a4c2/3fffa674-1383-4097-aa78-6b9b7ad12735-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/eA9xya789aKdEtteGeFxPq</video:player_loc><video:duration>2607</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-04T20:10:04.806Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/52bVF9KnfE4zz7rjNWtFLp</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/357f01eb-f818-4d72-a4c1-1d12a16bb603.jpg</video:thumbnail_loc><video:title>E6: Der Weg zum guten API Design</video:title><video:description>Heutzutage sind APIs aus der IT-Landschaft nicht mehr wegzudenken. Viele der zeitgemäßen internen und externen Dienste bieten eine solche Schnittstelle zur Benutzung und Integration in eigene Anwendungen an. Hierzu hat sich der RESTful Ansatz etabliert. Ein API zu programmieren ist nicht schwer, ein gutes API zu designen aber umso mehr. Möglicherweise hast Du auch schon das Vergnügen gehabt eine schlechte API anzubinden. Es sind viele Gründe die zu einer schlechten API führen können. Die Endpunkte sind irreführend designed und führen möglicherweise zu falschen Annahmen, HTTP Methoden werden inkonsistent und entgegen der gängigen Definition verwendet, Statuscodes und Rückgabewerte werden wild durcheinandergeworfen, etc. Um an der Stelle nur mal ein paar Beispiele aufzuführen. All diese Punkte können auch ganz schnell zu einem Bumerang werden und zu einem eigenen erhöhten Supportaufwand führen. Deshalb sollte das Ziel immer sein, eine gute API von Anfang an zu designen. Wie so vieles in der Softwareentwicklung ist auch das API Design bis zu einem gewissen Grad Geschmackssache. Daher ist es sehr empfehlenswert im Unternehmen oder dem Projekt eine API-Guideline zu definieren. In unserem Vortrag zeigen wir wie die API Guideline nicht nur dokumentiert, sondern auch automatisiert und nachhaltig im Buildprozess gegen das definierte Regelset überprüft werden kann. Das dabei verwendete Toolset ist vergleichsweise einfach und lässt sich daher in nahezu jedem Projekt einsetzen. Willst auch Du zukünftig gute APIs erstellen? Dann bist Du in dieser Session genau richtig! Wir zeigen Dir in Theorie und Live-Demo ein effektives Tooling, welches Dich beim künftigen guten API Design unterstützt.

Sebastian Lohr hat einen Bachelor of Science in angewandter Informatik und arbeitet seit seinem Abschluss als Software Developer. Er beschäftigt sich leidenschaftlich mit Themen wie Domain Driven Design, Event Driven Designs, DevOps, Cloud und Microservices.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/208f080c-dbe2-40fc-a690-64e56be2e3e3/7c1b2205-6010-454b-9f6b-c54666b73809-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/52bVF9KnfE4zz7rjNWtFLp</video:player_loc><video:duration>1979</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T20:19:19.164Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/m2DmDygDkTrAoN9xEeMqPk</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/132d6369-7022-4e13-ab19-8e091a9f7805.jpg</video:thumbnail_loc><video:title>E7: BDD – Brauchst Du Das?</video:title><video:description>SZENARIO: Java Forum Stuttgart 2022
ANGENOMMEN DASS du wenig über Behaviour Driven Development weißt
WENN du zu diesem Vortrag kommst DANN lernst du das Grundprinzip kennen
ANGENOMMEN DASS du BDD bisher als Testmethode nutzt
WENN du zu diesem Vortrag kommst
DANN siehst du, dass noch viel mehr dahinter steckt

Dieses Problem kennen wir alle: In Softwareentwicklungsprojekten führt eine unzureichende Kommunikation häufig dazu, dass das Produkt am Ende nicht so umgesetzt ist, wie die Auftraggebenden es sich am Anfang vorgestellt hatten. Behaviour Driven Development (BDD) setzt von Anfang an darauf, alle Stakeholder an einen Tisch zu holen und früh ein gemeinsames Verständnis über das gewünschte Verhalten der Software herzustellen. Daraus entsteht eine ausführbare Spezifikation, die außer dem richtigen Produkt ganz nebenbei noch automatisierte Tests und eine lebendige Dokumentation liefert.
Klingt super? Oder doch nur wieder nach einer dieser agilen Methoden, die am Ende nicht so richtig funktionieren? Der Teil mit den Tests scheint ja ganz gut zu sein, aber von Anfang an das Verhalten der Software ausschließlich mit Beispielen beschreiben und daraus entwickeln? Kann das überhaupt funktionieren?
In diesem Talk gehen wir einmal gemeinsam den Weg vom ersten Beispiel zur Beschreibung der Software bis zur Umsetzung im Code.

Katrin Rabow hat viele Jahre als selbständige Beraterin kleine Unternehmen in ihrem kaufmännischen Alltag unterstützt, ehe sie sich 2015 für ein Studium der Wirtschaftsinformatik an der TU Darmstadt entschied. Sie sucht immer wieder nach Wegen, „harte“ Themen wie Software Engineering mit „weichen“ Themen wie der Unternehmenskultur zu verbinden. Seit ihrem Masterabschluss arbeitet sie als IT-Consultant in Frankfurt.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/a23189d5-bde5-4412-b03e-7ce0d551de71/64119121-f84b-4fb4-bb31-fbd49750b8b6-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/m2DmDygDkTrAoN9xEeMqPk</video:player_loc><video:duration>2711</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T20:23:39.800Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/5NShjhG18v9u7oJevdY167</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/73a299d2-b18c-4647-9c88-917c495aabb0.jpg</video:thumbnail_loc><video:title>F1: Mutation Testing in Theorie und Praxis</video:title><video:description>Unit Tests sind ein integraler Bestandteil im heutigen Entwicklungsprozess und niemand wird das wohl ernsthaft in Frage stellen. Wenn es jedoch darum geht, wie man die Qualität der Unit Tests messen kann, wird es schwieriger. Wann weiß ich, dass meine Tests gut sind und was heißt denn eigentlich ‚gut‘ in diesem Kontext? Metriken, wie die Test Coverage, sind sehr hilfreich, geben aber nur Hinweise und keine richtigen Antworten. Dies führt sogar manchmal zu sinnlosen Unit Tests, die nur geschrieben werden, um die Quality Goals zu erfüllen. Man kann sogar eine Situation konstruieren, in der ein Projekt eine Test Coverage von 100% hat, jedoch kein einziger Unit Test asserts oder ähnliches verwendet. Das Qualitätsziel ist hier übererfüllt und doch wird man so keinen einzigen Bug im Produktivcode finden. Aber wie steht es denn nun mit der Qualität der Unit Tests? Gibt es eine Möglichkeit, sie zu messen? Mutation Tests können uns hier wertvolle Antworten liefern. Sie detektieren sinnlose, unvollständige und auch fehlende Unit Tests. Ein HTML Report gibt einen tieferen Einblick in die Ergebnisse der Mutation Tests und man kann bis zu den betroffenen Codestellen navigieren. Die Einstiegshürde ist niedrig und man kann mit Mutation Tests jederzeit beginnen. Dennoch gibt es einige Dinge zu beachten. Idealerweise sollten Sie am Ende dieses Talks Lust haben, Mutation Tests sofort in Ihr erstes Projekt einzuführen. Ich möchte Ihnen mit einem Überblick zum Thema, Praxistipps und weiteren Hinweisen das entsprechende Rüstzeug dazu mitgeben.

Alexander John-Anacker ist als Senior Softwareentwickler bei sidion am Standort Frankfurt am Main tätig. Er hat langjährige Erfahrung mit Big Data sowie verteilten Anwendungen auf AWS. Aktuell unterstützt er Kunden beim Design und der Implementierung ihrer Geschäftsprozesse mit Microservices im Cloudnative Microservices Umfeld.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/26efc148-67ad-4305-8ea8-35594153e608/4619b3e6-45ba-4724-af5d-ff7c21cb568b-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/5NShjhG18v9u7oJevdY167</video:player_loc><video:duration>2592</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T20:35:04.311Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/wtifNeRxR7XuK6HSAMtCie</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/1f804b3f-bf14-4a48-a168-4b34d744d8f4.jpg</video:thumbnail_loc><video:title>F2: Agile for the masses</video:title><video:description>Aus meiner beruflichen Erfahrung (Programmierer) gibt es drei Gruppen von Entwicklern in Bezug auf agiles Arbeiten (in Scrum):

Die die nicht mehr anders arbeiten wollen und können.
Die für die es alter Wein in neuen Schläuchen ist, bzw. denen es egal ist (sie arbeiten so wie sie immer gearbeitet haben).
Die die es hassen. Sie können das Wort agil nicht mehr hören. Scrum fühlt sich schwergewichtig und unflexibel an.

Der Vortrag wird versuchen insbesondere mit letztere beiden Gruppen ins Gespräch zu kommen und Vorurteile zu klären. Das beginnt damit zu klären was agil in „unserem“ Sinne bedeutet: möglichst volle Kontrolle über alle Aspekte unserer Arbeit. Unter anderem: Arbeitsmenge, benutzte Werkzeuge (auch für Zusammenarbeit), Qualitätssicherung, Architektur.

Erst über ein gemeinsames Verständnis sollen dann Wege beschrieben werden, um zumindest mehr Kontrolle zu bekommen. Wobei man sich immer in zwei Spannungsfeldern bewegt: Team (Individuum vs. Team) und Zeit (heute vs. morgen).

Wenn am Ende die Teilnehmer mehr etwas in ihre Arbeit mitnehmen was die Zufriedenheit nachhaltig erhöht, hat der Vortrag sein Ziel erreicht.

Moritz Löser</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/f6c1e01c-b41b-438d-ba54-ced6b60cfc3f/94a73912-31a3-478b-96c6-aef66ad6731b-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/wtifNeRxR7XuK6HSAMtCie</video:player_loc><video:duration>2814</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T21:09:37.847Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/pF9U21XodT1eoycP39czJC</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/53701e84-3e20-494a-a18f-68632ed4e14f.jpg</video:thumbnail_loc><video:title>F4: Von der statischen Analyse zur nachhaltigen Qualitätssicherung</video:title><video:description>In den letzten Jahrzehnten wurden viele Werkzeuge zur statischen Analyse entwickelt. Passend konfiguriert schaffen diese Transparenz über technische Schulden und Qualitätsdefizite. Allerdings verbessert ein solches Werkzeug nicht eine einzige Codezeile. Deshalb hat eine bloße Einführung von statischer Analyse häufig keinen oder nur einen kurzfristigen Effekt. Dieser Vortrag stellt Praxiserfahrungen aus der Einführung von statischen Analysewerkzeugen vor, die wir in den letzten Jahren in dutzenden Kundenprojekten gemacht haben – unter anderem bei der Munich Re. Unserer Erfahrung nach muss ein statisches Analysewerkzeug in den Entwicklungs- und QS-Prozess eines Softwareteams integriert werden um eine nachhaltige Qualitätssicherung bzw. -verbesserung zu erreichen. Dies haben wir mit und für unsere Kunden durch folgende Aspekte erreicht: alltagstaugliche QS-Ziele sowie konkrete Verbesserungsvorschläge für Teams, schnelles Feedback für Entwickler, Teilautomatisierung für Reviewer sowie regelmäßige Transparenz und Planbarkeit für Manager. Und vor allem durch Abholung und Einbindung aller Beteiligten.

Dr. Tobias Röhm hat als Freelancer mehrere Jahre ERP-Software entwickelt, über Programmverstehen und Softwareanalysen promoviert und ist seit sieben Jahren Berater für Softwarequalität bei der CQSE. Zusammen mit seinem Team unterstützt er Kunden dabei, bessere Software zu entwickeln sowie Software besser zu entwickeln. Dies geschieht in der Regel durch die Einführung von Softwareanalysewerkzeugen und die Integration derselben in Entwicklungs- und QS-Prozesse um langfristigen Mehrwert aus diesen zu ziehen. Er spricht regelmäßig auf (inter-) nationalen Konferenzen wie OOP, JFS, Code Days, ICSE, ICSME und SANER.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/bfb9add8-e460-4c4d-8fef-5c2f3d2d4804/e64af381-9292-44f0-a612-ce3e7bec7c4f-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/pF9U21XodT1eoycP39czJC</video:player_loc><video:duration>2530</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T21:14:53.411Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/jVEDBxa2ULsHnSrkTCNVNX</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/fee70b16-1971-487d-a963-630b1be837a7.jpg</video:thumbnail_loc><video:title>F5: DevSecOps aber sicher - kontinuierlich sicherer entwickeln</video:title><video:description>DevSecOps aber sicher – kontinuierlich sicherer entwickeln Agile Softwareentwicklung hat sich die letzten Jahre weiterentwickelt. Mit DevSecOps steht der nächste größere Schritt an, um schneller auf Änderungen oder Sicherheitslücken reagieren zu können. Der durch DevSecOps eingeleitete Kulturwandel (shift left) ist ein wichtiger Baustein auf den Weg in die Cloud. Nur wer DevSecOps wirklich lebt, kann Cloud native Services kontinuierlich liefern und verbessern. Es wird eine Einordung von DevSecOps gegeben und die dabei verwendeten Methoden gegeben. Es wird eine typische Werkzeugkette vorgestellt und Vor- und Nachteile der verschiedenen Ansätze diskutiert.

Frank Pientka (@fpientka) arbeitet als Dipl.-Informatiker (TH Karlsruhe) bei der MATERNA SE in Dortmund.
Als Principal Software Architect sorgt er für mehr Qualität in der Software und kümmert sich, als Gründungsmitglied des iSAQB,
um eine verbesserte Ausbildung und Zertifizierung von Architekten.
Seit mehr als drei Jahrzehnten unterstützt er Firmen bei der Umsetzung effizienter und sicherer Software.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/9942bbd1-de9f-4797-9857-ed409ecf00a7/34c07c49-cd98-426c-943b-5a2cdd92b762-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/jVEDBxa2ULsHnSrkTCNVNX</video:player_loc><video:duration>2556</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T21:27:09.697Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/tEvTsnEzPwzGgruZbvvAaH</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/43a76454-a2be-4714-8c80-c5cc65283ab4.jpg</video:thumbnail_loc><video:title>F6: Kubernetes für Entwickler</video:title><video:description>?Mit Kubernetes wird alles ganz toll, und alles, was ihr tun müsst, ist eure Anwendung in einen Container packen!? So ein Versprechen macht hoffentlich keiner! Trotzdem fangen viele Projekte, die später in einer Kubernetes-Umgebung laufen sollen, in etwa so an: Man verpackt sie in einen Container… und dann sieht man mal weiter. Und im Laufe der Zeit stößt man dann auf Kleinigkeiten und Spitzfindigkeiten, Überraschungen bei Ressourcenlimits, den Tücken des viel gelobten automatischen Skalierens, etc. Der Vortrag bündelt zwei Jahre Projekterfahrung und gibt Hinweise darauf, was Entwickler über das Verhalten des Clusters und dessen Anforderungen an die Anwendung wissen sollte – damit die Entwicklermannschaft nicht irgendwann die Hände über dem Kopf zusammen schlägt: ?Wenn ich das nur vorher gewusst hätte…!?

Dr. Stefan Schlott ist Advisory Consultant bei der Firma BeOne Stuttgart GmbH und betreut dort die Schwerpunkte Java-Entwicklung, Security sowie Themen rings um CI/CD und Containerplattformen. In seiner Freizeit ist er Dozent an der Dualen Hochschule Baden-Württemberg. Er begeistert sich für funktionale Programmierung und moderne Sprachen wie Scala und Rust und ist überzeugter Open-Source’ler.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/e0076cfa-0d3e-4060-8c82-4e1cf0b61bd3/7317e41b-cff0-43e0-81f2-2bc2c2067fb9-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/tEvTsnEzPwzGgruZbvvAaH</video:player_loc><video:duration>2747</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T21:46:21.520Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/ivKRWS3hEYfDFiDS2k4VcR</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/a6187ccc-609a-4d90-ae70-d26515be9c7f.jpg</video:thumbnail_loc><video:title>F7: GitOps für Machine Learning</video:title><video:description>Künstliche Intelligenz und Machine Learning stehen auf jeder Agenda weit oben. Und die schöne neue Cloud-Welt eröffnet der Entwicklung von Microservices enorme Flexibilität und Geschwindigkeit. Aber speziell beim Thema Machine Learning hat man es auch mit einer großen Zahl an komplexen Aufgaben und fein abgestimmten Prozessen zu tun. Um Machine Learning Modelle effizient von der Entwicklung in den Produktivbetrieb zu bringen, benötigt es einen automatisierten Lifecycle, der transparent und stabil ist. Dazu bietet sich GitOps als ideale Brücke zwischen Data-Science, Anwendungsentwicklung und Betrieb an. Der Vortrag vermittelt einen Einstieg in das Thema GitOps mit Kubernetes und erläutert wesentliche Prozess-Schritte bei der Bereitstellung eines Machine Learning Backends. Als Beispiel dienen eine Reihe von Spring Boot Microservices die sich um das Datenmanagement und die Verwaltung des Lebenszyklus von ML Modellen kümmern. Zum Einsatz kommen Helm Charts und GitOps Operatoren wie ArgoCD und Flux. Gerichtet ist der Talk an alle die Interesse an Microservices, Machine Learning und Cloud-Architektur haben oder einfach die Vorzüge von GitOps an einem komplexen Anwendungsfall kennenlernen möchten.

Ob als Physiker und Data Scientist, Softwareberater oder DevOps Entwickler widme ich mich seit über 10 Jahren am liebsten möglichst komplexen Problemen. Dabei versuche ich immer viele verschiedene Blickwinkel einzunehmen und so das Thema von allen Seiten zu beleuchten, um dann als Vermittler zwischen Technik und Fachbereich optimal zu unterstützen. Ich begeistere mich für clevere Build-Tools, Infrastructure-as-Code und moderne Softwarelösungen im Cloudumfeld.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/8dd2f4f9-b9b2-4f71-9511-26a25fee3f6b/3e2f9898-1004-4372-a2d4-a7da9f18a8e4-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/ivKRWS3hEYfDFiDS2k4VcR</video:player_loc><video:duration>2660</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T22:04:24.016Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/96tcRvXQhTEqKC9KmhfcXZ</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/6ce0cf2b-2fa9-411b-bef2-7437027d23bd.jpg</video:thumbnail_loc><video:title>G1: 10 Muster für resilientere Anwendungen</video:title><video:description>Heutige Systemlandschaften sind hochgradig verteilt: Viele Systeme, die online Daten austauschen. Microservices, Cloud Native, mobile Geräte und der wachsende Einfluss von IoT und Edge Computing verstärken die Herausforderungen der Verteilung: Fehler passieren regelmäßig zur Laufzeit und wir können nicht vorhersagen, wann. Auch unsere Infrastruktur kann die Fehler nicht vollständig vor uns verbergen. Sie treffen uns auf Anwendungsebene. Wir müssen mehr Resilienz in unsere Anwendungen einbauen. Aber wie macht man das? In dieser Session werde ich 10 einfache Muster vorstellen, die Ihnen helfen werden, Ihre Anwendungen resilienter zu machen. Ich zeige Ihnen, wie Sie diese Muster implementieren können sowie was die Trade-Offs und versteckten Risiken sind. Lassen Sie uns gemeinsam auf den Weg zu mehr Resilienz begeben!

Uwe Friedrichsen ist seit vielen Jahren in der IT-Welt unterwegs, immer auf der Suche nach innovativen Ideen und Konzepten. Seine aktuellen Schwerpunkte sind Systemdesign, Resilienz, Nachhaltigkeit und die IT (ein bisschen) besser zu machen. Oft findet man ihn auf Konferenzen, wo er seine Ideen teilt, oder als Autor von Artikeln, Blogbeiträgen, Tweets und mehr.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/418c97ea-7912-498b-8c3a-65dffb342fab/9e53ad83-a703-440f-a397-2515b4046889-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/96tcRvXQhTEqKC9KmhfcXZ</video:player_loc><video:duration>2597</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T22:28:12.338Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/rkinVecFskyztVJjsPKQnR</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/2758f840-ef57-45a0-b296-9eeb684955c4.jpg</video:thumbnail_loc><video:title>G2: Mit WebAssembly in die Cloud</video:title><video:description>Nach wie vor verbinden viele den Begriff WebAssembly mit dem Browser. Allerdings gibt es seit mehreren Jahren bereits die Möglichkeit WebAssembly nativ auf einem Computer, ohne Browser, auszuführen. Das WebAssembly System Interface beschreibt hierfür eine einheitliche Schnittstelle und neben Wasmtime oder Wasmer existieren noch weitere Implementierungen um WebAssembly nativ auszuführen. Jetzt stellt sich die Frage, warum noch eine Laufzeitumgebung benötigt wird, wo wir doch schon Docker (containerd, cri-o) haben. Was kann WebAssembly was Docker Container nicht können? Der Gründer von Docker meinte dazu: „If WASM+WASI existed in 2008, we wouldn’t have needed to created Docker. That’s how important it is. …“. Was ist da also dran? In diesem Vortrag möchte ich eine kurze Einführung in WebAssembly geben, die Unterschiede und Vorteile gegenüber Containern erläutern um dann auf verschiedene Modelle einzugehen, wie diese Artefakte in der Cloud betrieben werden können. Außerdem werfen wir auch einen Blick auf den aktuellen Stand der Möglichkeiten Java nach WebAssembly zu compilieren.

Nicolai Mainiero ist Diplom-Informatiker und arbeitet als Software Developer bei der sidion GmbH. Er entwickelt seit über dreizehn Jahren Geschäftsanwendungen in Java und Kotlin für unterschiedlichste Kundenprojekte. Dabei setzt er vor allem auf agile Methoden wie Kanban. Außerdem interessiert er sich für funktionale Programmierung, Microservices und reaktive Anwendungen.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/cd264ec1-3b75-4117-8b3a-b02b7660691b/7963337d-fa6c-40a6-9cd4-227a2e52d70d-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/rkinVecFskyztVJjsPKQnR</video:player_loc><video:duration>2541</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T22:34:15.424Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/bYJcjCsLCNDsYUi3rgpLss</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/a7adb998-00d0-4226-b6b1-45372c211204.jpg</video:thumbnail_loc><video:title>G3: Kubernetes Developer Survival Kit</video:title><video:description>Immer mehr Entwicklerinnen schreiben Anwendungen, die später in einem Kubernetes Cluster laufen sollen. Was kann dabei so schwierig sein? Angefangen „Wie strukturiere ich meine Repositories?“, „Wo lege ich meinen Code für das Deployment ab (Containerfiles, Helm Charts, Config Values)?“, „Was muss bei der Entwicklung der Anwendung beachtet werden?“, „Wie bekomme ich den Code lokal getestet?“, „Wie bekomme ich mit, was im Test-Cluster passiert?“ Dieser Vortrag geht am Beispiel einer Java-Anwendung die typischen Entwicklungschritte von der Ablage im VCS bis hin zum Deployment auf einem Cluster aus Sicht einer Entwicklerin durch.

Sandra Parsick ist Java Champion und ist als freiberufliche Softwareentwicklerin und Consultant im Java-Umfeld tätig. Seit 2008 beschäftigt sie sich mit agiler Softwareentwicklung in verschiedenen Rollen. Ihre Schwerpunkte liegen im Bereich der Java Enterprise Anwendungen, Cloud und in der Automatisierung von Softwareentwicklungsprozessen. Darüber schreibt sie gerne Artikel und spricht gerne auf Konferenzen. In ihrer Freizeit engagiert sie sich in verschiedenen Programmkomitees und Community-Gruppen.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/58e70a9b-3f51-448a-a235-cfdd464af556/4b0073be-f02b-436c-87f1-6af483291928-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/bYJcjCsLCNDsYUi3rgpLss</video:player_loc><video:duration>2684</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T23:11:01.782Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/bNcCSun1Lr5AtbsQYvQxVZ</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/9f4439aa-7c4a-4ead-a716-d21875f8fa1c.jpg</video:thumbnail_loc><video:title>G5: Hätt‘ ich das früher gewusst – Good Practices bei API-Konzeption &amp; -Entwicklung</video:title><video:description>Wenn du diese API noch einmal konzipieren könntest, würdest du alles nochmal genauso machen? Nicht ganz, ich würde von Anfang an…ja, was eigentlich? Im Vortrag ziehe ich eine Zwischenbilanz aus über drei Jahren API-Entwicklung bei der DB Systel GmbH, indem ich unsere Vorgehensweisen bei API-Design und -Implementierung analysiere und praktische Ratschläge daraus ableite. Unser Vorhaben war, viele APIs für generische Aufgaben (wie Bezahlung oder Routing) und Daten (wie von Bahnhöfen oder Sharing-Fahrzeugen) zentral bereitzustellen. Doch wieso erwies sich dies in vielen dieser Fälle als ungeeignet? Das Einhalten von Paradigmen wie API-first und REST stand anfangs im Fokus aller Produkte. Aber warum ist API-first gar nicht immer optimal? Und wieso können wir heute mit imperfekten REST-APIs ruhig schlafen? Mittlerweile nutzen wir Tools und Frameworks wie den OpenAPI-Generator, MapStruct, Lombok und OpenFeign. Was hat uns anfangs davon abgehalten? Ich beantworte euch all diese Fragen in meinem Vortrag und ihr nehmt erprobte Ansätze und Vorgehensweisen mit.

Sven Hesse arbeitet als Software-Entwickler bei der DB Systel GmbH. Sein Schwerpunkt liegt im Bereich der Entwicklung und Betreuung von Web-Services auf Basis von Spring Boot.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/576ec551-6d55-4ed4-add6-2de257387de7/89d055c9-0aa1-4d3d-9faa-21c26dbacbfb-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/bNcCSun1Lr5AtbsQYvQxVZ</video:player_loc><video:duration>2567</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T23:25:14.153Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/kiYYPCVyqseKooPhwwu8Gb</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/6ab1a19b-1e38-47d4-810f-6af7d3aeddcf.jpg</video:thumbnail_loc><video:title>G7: Docker Who: Small Containers Through Time and Space</video:title><video:description>Have you recently moved to microservices? Your team is deploying the code much faster, but data transfer costs are going up as well, aren’t they? That’s because the size of containers matters the most, and keeping them lightweight means saving on bandwidth usage. BellSoft’s engineers have come up with a solution, which is full-fledged Alpine Linux support in OpenJDK. By that, we’ve also invented a real-life TARDIS: Containers that take only a few MB of storage but carry enormous potential. With the release of JDK 16, the Portola Project has been integrated into the OpenJDK mainline as part of our JEP 386. Duct-taping with a glibc layer will become a thing of the past, as all the processes will connect flawlessly. Your company will get to use tiny container images independently of the distribution kit vendor. They have been available for a long time, but the official HotSpot port status for the musl library will expand the scope and simplify related development. My talk is going to touch upon the benefits that Alpine Linux is bringing to the OpenJDK community. It will also explain how to optimize Docker images for free by changing just one or two lines of code. Lastly, I’ll offer a tool for choosing an optimal container that will suit your project perfectly.

Dmitry Chuyko is a Performance Architect at BellSoft, one of the most active corporate OpenJDK developers. Before joining BellSoft, he worked on HotSpot JVM in Oracle. His previous experience with Java showed that the most interesting problems in applications find their solutions in the underlying platform. Dmitry is currently mainly optimizing HotSpot for x86 and ARM, and also contributed to the development of JEP 386 to make the smallest Java containers even better. Dmitry is a committer in OpenJDK and a speaker at conferences such as Oracle Code One, Devoxx, GeeCON or JPoint, as well as at JUG meetups in different countries.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/9c6064c3-3b11-4047-8925-cc63e1d50996/e9c9459c-0052-45d5-8c58-3ea3e276e85a-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/kiYYPCVyqseKooPhwwu8Gb</video:player_loc><video:duration>2770</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T23:43:31.359Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/5aA6YgSbpYYFDMyfX93udL</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/9f4ab56c-87b9-4356-9550-d00a8bc3ac3d.jpg</video:thumbnail_loc><video:title>A1: Rock Solid Software Architecture with ADRs, arc42 and Microsites</video:title><video:description>Das arc42-Architektur-Template verleitet dazu alle Kapitel von oben nach unten durchzuarbeiten. Ein Architektur-Review offenbart aber eine sinnvollere Herangehensweise, um Softwarearchitektur zu erarbeiten. Dabei wird zuerst der In-Scope und Out-Of-Scope des Vorhabens definiert, anschließend Qualitätsattribute aufgenommen um schließlich konkrete Qualitätsszenarien abzuleiten. Die Dokumentation dieser Ergebnisse im arc42 stellt uns vor viele Aufgaben und Fragestellungen: Wie erarbeite Architekturentscheidungen, Qualitätsattribute und Qualitätsszenarien? Und wie dokumentiere ich sie effizient? In diesem Vortrag zeigen wir anhand des Docs-as-Code Ansatzes, wie wir mit dem arc42-Template effizient arbeiten und die Dokumentation als Microsite jedem zur Verfügung gestellt wird. Durch diese Vorgehensweise ist es effizient möglich eine Architekturdokumentation zu erstellen, die jedem Review standhält.

Johannes Dienst ist Softwarecrafter aus Leidenschaft bei der DB Systel GmbH. Sein Tätigkeitsschwerpunkt liegt im Bereich Content Management, DevOps und Softwarequalität.

Ralf D. Müller ist ambitionierter Groovy &amp; Grails-Entwickler und versucht stetig, seine Arbeit weiter zu vereinfachen. Zurzeit beschäftigt er sich insbesondere mit der Verbesserung der ganzheitlichen Dokumentation von Systemen, vor allem mit Hilfe des arc42-Templates und AsciiDoc. Er arbeitet als Software Engineering Advocate bei der DB Systel, der IT-Tochter und Digitalpartner der Deutschen Bahn.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/21bb43e7-739e-4a08-8627-9dfaaa06c784/546b9ad2-6327-42d6-bcd7-867bb1cab994-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/5aA6YgSbpYYFDMyfX93udL</video:player_loc><video:duration>2687</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T23:45:42.098Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/8inqMjvMejU852UJq2daot</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/4e74ae42-6c1d-4b86-8ff3-5e5c3ccb39fb.jpg</video:thumbnail_loc><video:title>B6: Oh Keptn, my Keptn</video:title><video:description>Keptn, a CNCF project, is reducing custom coding and integrations needed for automating delivery and operation sequences by 90%. Keptn uses a declarative, event and data-driven orchestration to connect and orchestrate your favorite tools (GitLab, Jenkins, Selenium, Prometheus, Litmus, Ansible, Jira …) as part of your DevOps &amp; SRE automation without you having to worry about writing and maintaining tool integrations. In this session you learn how Keptn works, how the community is adopting it, how you can get started in minutes and how you can contribute to this open-source project.

Andreas Grabner (@grabnerandi) has 20+ years of experience as a software developer, tester and architect and is an advocate for high-performing cloud scale applications. He is a contributor and DevRel for the CNCF open source project keptn (www.keptn.sh). Andreas is also a regular contributor to the DevOps community, a frequent speaker at technology conferences and regularly publishes articles on blog.dynatrace.com or medium. In his spare time you can most likely find him on one of the salsa dancefloors of the world (will resume once Covid is behind us)!</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/3b1cd1d9-e5f0-4631-8371-5dd76e5af6cb/9ce4bc39-c5eb-4d37-9cf2-defb46bbb081-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/8inqMjvMejU852UJq2daot</video:player_loc><video:duration>2771</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-04T23:47:30.808Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/rDCaWPBD3XkSwvYGT2BT7J</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/252940e2-2265-4cfc-94a7-276eef5d1106.jpg</video:thumbnail_loc><video:title>C2: Götterdämmerung – Valhala, Panama, Loom und Co.</video:title><video:description>Java wird — immer noch — noch immer besser. So verspricht das Projekt Valhalla Werte-Klassen, primitive Klassen und vereinheitlichte Generics, die das Boxing von primitiven Datentypen überflüssig machen. Mit Panama wird die Anbindung an Fremdbibliotheken einfacher, neue Zugriffsmöglichkeiten auf den Hauptspeicher heben u. a. die int-Limitierung von Array-Größen und endlich kann direkt auf Vector- und SIMD-Befehle moderner Prozessoren zugegriffen werden. Und Loom mit seinen virtuellen Threads lässt dann bezüglich der Nebenläufigkeit keine Wünsche mehr offen. In diesem Vortrag wird — neben einer eher kurzen Vorstellung der offiziellen neuen Java 18 Features — ein Blick auf das geworfen, was bereits im Inkubator heranwächst, schon genutzt werden kann und schon bald die Java-Welt erhellen wird.

Michael Wiedeking ist Gründer der MATHEMA GmbH und Java-Programmierer der ersten Stunde. Er schreibt Artikel und spricht auf Konferenzen. Am liebsten aber „sammelt“ er Programmiersprachen und beschäftigt sich mit ihrem Design und ihrer Implementierung — besonders mit seiner eigenen: Aalgola.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/cfb54706-ec39-4a10-9e48-2a7e55a86e1a/061df08a-73c7-4950-8361-6cae7ccee6da-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/rDCaWPBD3XkSwvYGT2BT7J</video:player_loc><video:duration>2881</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-05T00:22:10.701Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/r5RudXs7DdBZopyQx82ca6</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/36cb0ad6-b24c-480f-aaf0-1afb534b270c.jpg</video:thumbnail_loc><video:title>E4: Wandel gestalten, Digitalisierung leben!</video:title><video:description>Natürlich kann eine erfolgreiche Transformation nur gelingen, wenn die neusten Technologien eingesetzt werden, die letzten Applikationsserver heruntergefahren sind und wir alle so arbeiten wie die Unicorns! Ist das wirklich so?
Die Mercedes-Benz-Bank hat eine 35-jährige erfolgreiche Historie als „Onlinebank“. Unsere IT-Systeme sind über die Jahre mit uns gewachsen – mit vielen positiven, aber auch negativen Aspekten. Wir geben Euch einen Einblick, wie wir mit dieser „Legacy“ umgehen und wie wir unsere Systemlandschaft technologisch weiterentwickeln.
Doch die Technik ist nur ein Aspekt: Der Wandel kann nur gelingen, wenn wir uns auch organisatorisch und kulturell verändern – beides muss zusammenspielen.

Dr. Steffen Kram entwickelt und betreibt seit den frühen 2000er webbasierte Applikationen in Java, seine Leidenschaft gilt seit 2010 funktionalen Sprachen insbesondere Scala und Rust. Im Rahmen seiner Forschungstätigkeit und Dissertation beschäftigte er sich mit dem Mining von Software Repositories zur ad-hoc Analyse von Open Source Software Komponenten im Entwicklungsprozess, sowie langlebigen Softwaressystemen. Bei der Mercedes-Benz-Bank ist er 2015 als Systemverantwortlicher und Architekt für das Händlerportal eingestiegen und verantwortet dieses seit 2021 als Teamleiter Ende zu Ende zusammen mit seinem gemischten BizDevOps-Produktteam.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/cb21f054-53b6-486c-8022-996202179193/e79130a0-75f0-4750-a973-80b39bd19386-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/r5RudXs7DdBZopyQx82ca6</video:player_loc><video:duration>2642</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-05T00:24:27.343Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/7jdh4fBU5bUKnG6SFAsXP8</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/672f3f9f-c432-4c9c-86d1-dfd33de61ef5.jpg</video:thumbnail_loc><video:title>F3: Von Ärzten, Piloten und Flugzeugen</video:title><video:description>Immer noch fühlt es sich häufig so an, als wüssten wir noch immer nicht, wie Softwareentwicklung denn nun „richtig“ funktioniert. Wir nutzen gerne Analogien und Vergleiche mit anderen Professionen: Wir „bauen“ Anwendungen, „verdrahten“ Systeme, „schrauben“ an Infrastruktur und „basteln“ Workarounds um Probleme zu lösen. Doch häufig werden Dinge, die für andere Berufsgruppen selbstverständlich sind, in der Softwareentwicklung nur schlecht beachtet. Manches wird großzügig übersehen, anderes ignoriert oder „kreativ“ (um)gedeutet. Doch warum eigentlich? Viele Berufe haben seit Jahrhunderten, passende Hilfsmittel und „Best Practices“ entwickelt um für sie typische Herausforderungen und Probleme besser und einfacher zu lösen. Gerade in der Luftfahrt kommt es auf Präzision und Verlässlichkeit an. Wer möchte schon hören, dass der Flug in den Urlaub gestrichen wurde, nur weil die Wartung nicht korrekt durchgeführt wurde oder ein letzter Check fehlgeschlagen ist? Ähnlich verhält es sich bei Ärzten oder Pflegepersonal: Fehler oder Nachlässigkeit können hier im wahrsten Sinne des Wortes tödlich enden. Für uns Softwareentwickler lohnt es sich daher einen genaueren Blick auf die Arbeit von Flugzeugmechanikern, Piloten sowie Ärzten zu werfen und uns von ihnen die ein oder andere Inspiration zu holen. Anregungen, die uns helfen unseren Entwicklungsprozess zu optimieren und den Stress, der sich immer wieder in Entwicklungsprojekten zeigt, zu bändigen. Ich möchte hierzu Tipps und Hinweise geben, wie man gewohnte Prozesse innerhalb der Entwicklung hinterfragen, optimieren und vereinfachen kann. Nicht ohne ein wenig Selbstironie werden Konzepte, Methoden und Werkzeuge vorgestellt, die es allen Beteiligten ermöglichen unsere Software-Produkte stabiler und langlebiger zu bauen.

Christian Seifert ist Software Engineer mit über 20 Jahren Erfahrung in der Entwicklung und dem Support von Individualsoftware. Ob beim Schreiben von Code, der Analyse von Anforderungen oder der Ideenfindung m...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/3321c922-9e77-4921-86ce-e517ebf4aff9/2d566739-6c11-4364-a24a-fa2e2b521718-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/7jdh4fBU5bUKnG6SFAsXP8</video:player_loc><video:duration>2783</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-05T00:40:05.740Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/15PxPv2cNrZFWs4HZg8Jxc</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/5cc6e77a-6153-4dba-8880-a48e968c3a78.jpg</video:thumbnail_loc><video:title>G4: Java Microservices – Lieber mit Framework, Service Mesh oder beidem?</video:title><video:description>Die Software Entwicklung basierend auf einer verteilten Microservice Architektur bringt sowohl für „Dev“ als auch für „Ops“ zahlreiche Herausforderungen. Das Netzwerk hat eine zentrale Rolle und umfasst Problemstellungen im Bereich von Transparenz (Observability), Routing, Sicherheit und Resilienz. Frameworks wie Micronaut, Quarkus oder Spring Boot haben modulare Lösungen für die einzelnen Aspekte wie z.B. API Gateways, Service Discovery, Circuit Breakers uvm. Die Funktionalitäten werden hierbei als Abhängigkeiten deklariert, sind daher oft Framework-spezifisch und müssen zur Build Zeit feststehen. Im Umfeld von Kubernetes gibt es hier auch die Option der Service Meshes um diese Problemstellungen zu adressieren. Diese sind unabhängig vom Code und interagieren auf der Netzwerkebene der Container. Eine ganz neue Möglichkeit stellt hier die eBPF Technologie dar, die Service Meshes mit einem geringeren Overhead verspricht. Die Frage, die sich hier stellt ist ob eine „code-agnostische“ Lösung die gleiche Funktionalität und Qualität bringen kann wie „built-in“ Lösungen. In diesem Talk werden die Optionen verglichen und in einer Live Demo dargestellt, die Abgrenzung der Technologien verdeutlicht und sinnvolle Anwendungen und Integrationen aufgezeigt.

Matthias Haeussler ist Chief Technologist bei der Novatec Consulting, Dozent an der Hochschule für Technik in Stuttgart im Fach „Verteilte Systeme“ und Organisator des Cloud Foundry Meetups Stuttgart. Er berät Kunden bei deren Cloud Strategie, unterstützt aktiv Implementierungen und Migrationen. Davor war er über 15 Jahre bei der IBM R&amp;D beschäftigt. Er hält regelmäßig Vorträge auf nationalen sowie internationalen Konferenzen und Meetups wie z.B. Open Source Summit, WJAX, OOP, den IT Tagen sowie der KubeCon &amp; Cloud Foundry Summit.</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/00ac4727-94ff-4ecf-96f8-b2f3630fc461/da611cd9-5aff-4fa0-8ea6-fd44b1e06699-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/15PxPv2cNrZFWs4HZg8Jxc</video:player_loc><video:duration>2416</video:duration><video:rating>0</video:rating><video:view_count>0</video:view_count><video:publication_date>2026-07-05T01:10:18.280Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/w/7FLnGJWQgTpPTHkA8BfM9v</loc><video:video><video:thumbnail_loc>https://videos.ijug.eu/lazy-static/thumbnails/35c18dee-72d6-484d-be3d-884257d6791b.jpg</video:thumbnail_loc><video:title>G6: Was können 4 Threads, was 600 nicht können?</video:title><video:description>Als Teil der Microservice-Landschaft eines in der Entwicklung befindlichen E-Commerce-Systems für Millionen Kunden haben wir einen zentralen Java-Spring-Service schrittweise von einer synchronen WebMVC- in eine reaktive Webflux-Anwendung überführt. Während vorher je ein Thread pro Request für die Verarbeitung benötigt wurde, teilen sich nun alle Anfragen einen kleinen Pool von Worker Threads und nutzen die vorhandenen Ressourcen so deutlich effizienter. Dank Webflux blockieren ausgehende HTTP-Requests keine Threads mehr, sondern setzen die Ausführung zu späterem Zeitpunkt bei Erhalt der Antwort vom Server fort. Damit ändert sich auch das zugrundeliegende Programmierparadigma fundamental: Mithilfe von Reactor, unserer Reactive Streams-Implementierung der Wahl, werden Operationen auf funktionale Weise verkettet, um Fachlogik abzubilden. Der Code drückt aus, welche Berechnungsschritte in welcher Reihenfolge notwendig sind, wobei die Logik vom tatsächlichen Zeitpunkt der Ausführung entkoppelt bleibt. In diesem Vortrag möchten wir unsere Erfahrungen im Team im Umgang mit dem reaktiven Technologiestack teilen und eine Einführung geben, wie mithilfe von reaktiven Java-Anwendungen Performance-Bottlenecks vermieden werden können. Am Beispiel eines kleinen fiktiven Microservices stellen wir die nötigen Codeanpassungen vor und werten Leistungsmetriken im Rahmen eines kurzen Lasttests aus. Den Zuhörenden werden die nötigen Hintergründe vermittelt, um zu entscheiden, ob sich in ihren Projekten ein Umstieg auf den reaktiven Stack lohnt, sowie Grundlagen für einen schnellen Start in die Welt hochperformanter, reaktiver Webservices an die Hand gegeben.

Jonas Nagy-Kuhlen unterstützt als agiler Softwareentwickler führende Unternehmen aktiv bei der Neu- und Weiterentwicklung von komplexen Systemlandschaften basierend auf dem Java-Spring-Stack. Nach seinem Einstieg in die .NET-Entwicklung vor acht Jahren konnte er insbesondere Erfahrung mit performancekritischen, nebenläufigen Syst...</video:description><video:content_loc>https://videos.ijug.eu/static/streaming-playlists/hls/36242f80-3102-437b-b7ae-3e6ee8713701/11549ba3-34c6-49f2-a7fd-ccad49e7345b-master.m3u8</video:content_loc><video:player_loc>https://videos.ijug.eu/videos/embed/7FLnGJWQgTpPTHkA8BfM9v</video:player_loc><video:duration>2875</video:duration><video:rating>0</video:rating><video:view_count>1</video:view_count><video:publication_date>2026-07-05T01:12:49.892Z</video:publication_date><video:family_friendly>YES</video:family_friendly><video:uploader info="https://videos.ijug.eu/c/jug_stuttgart/videos">Java User Group Stuttgart</video:uploader><video:live>NO</video:live></video:video></url><url><loc>https://videos.ijug.eu/c/jugch/videos</loc></url><url><loc>https://videos.ijug.eu/c/java_vienna/videos</loc></url><url><loc>https://videos.ijug.eu/c/jug_stuttgart/videos</loc></url><url><loc>https://videos.ijug.eu/a/mcpringle_jugch/video-channels</loc></url><url><loc>https://videos.ijug.eu/a/tfrech_jugs/video-channels</loc></url><url><loc>https://videos.ijug.eu/a/ddorn_jsug/video-channels</loc></url></urlset>