BEGIN:VCALENDAR
VERSION:2.0
PRODID:-//switzerland//switzerland Calendar 1.0//EN
CALSCALE:GREGORIAN
METHOD:PUBLISH
NAME:Java User Group switzerland
X-WR-CALNAME:Java User Group switzerland
BEGIN:VTIMEZONE
TZID:Europe/Berlin
TZURL:http://tzurl.org/zoneinfo-outlook/Europe/Berlin
X-LIC-LOCATION:Europe/Berlin
BEGIN:DAYLIGHT
TZOFFSETFROM:+0100
TZOFFSETTO:+0200
TZNAME:CEST
DTSTART:19700329T020000
RRULE:FREQ=YEARLY;BYMONTH=3;BYDAY=-1SU
END:DAYLIGHT
BEGIN:STANDARD
TZOFFSETFROM:+0200
TZOFFSETTO:+0100
TZNAME:CET
DTSTART:19701025T030000
RRULE:FREQ=YEARLY;BYMONTH=10;BYDAY=-1SU
END:STANDARD
END:VTIMEZONE
BEGIN:VEVENT
UID:1000@www.jug.ch
DTSTAMP:20260114T134527Z
DESCRIPTION:
DTSTART:20260828T170000
DTEND:20260828T235900
LOCATION:Zürich-Bogen
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch jug.ch Sommerparty 2026
END:VEVENT
BEGIN:VEVENT
UID:1001@www.jug.ch
DTSTAMP:20260112T155858Z
DESCRIPTION:Moderne Webanwendungen auf einfache Weise erstellen – in reinem
DTSTART:20260305T181500
DTEND:20260305T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Dein Backend verdient ein Gesicht
END:VEVENT
BEGIN:VEVENT
UID:1002@www.jug.ch
DTSTAMP:20260112T155858Z
DESCRIPTION:Moderne Webanwendungen auf einfache Weise erstellen – in reinem
DTSTART:20260304T181500
DTEND:20260304T193000
LOCATION:Luzern-Hochschule
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Dein Backend verdient ein Gesicht
END:VEVENT
BEGIN:VEVENT
UID:1003@www.jug.ch
DTSTAMP:20260114T154500Z
DESCRIPTION:
DTSTART:20260401T181500
DTEND:20260401T193000
LOCATION:Luzern-Hochschule
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch 1000x Mehr Threads - Virtual Threads in Java 21 bis 25
END:VEVENT
BEGIN:VEVENT
UID:1004@www.jug.ch
DTSTAMP:20260115T130720Z
DESCRIPTION:How ACP Removes the Pain from IDE Integrations
DTSTART:20260210T181500
DTEND:20260210T191500
LOCATION:Basel-Markthalle
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Your AI Agent in Any Editor
END:VEVENT
BEGIN:VEVENT
UID:1005@www.jug.ch
DTSTAMP:20260115T205538Z
DESCRIPTION:Testing non-deterministic systems with PUnit
DTSTART:20260303T181500
DTEND:20260303T191500
LOCATION:Basel-Markthalle
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Banishing the flaky LLM test
END:VEVENT
BEGIN:VEVENT
UID:1006@www.jug.ch
DTSTAMP:20260121T100508Z
DESCRIPTION:How ACP Removes the Pain from IDE Integrations
DTSTART:20260211T180000
DTEND:20260211T191500
LOCATION:Bern-vatter
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Your AI Agent in Any Editor
END:VEVENT
BEGIN:VEVENT
UID:1007@www.jug.ch
DTSTAMP:20260209T151241Z
DESCRIPTION:Wie schlägt sich Agentic Coding in der Praxis?
DTSTART:20260319T181500
DTEND:20260319T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Agentic Coding in the Wild
END:VEVENT
BEGIN:VEVENT
UID:1008@www.jug.ch
DTSTAMP:20260209T151241Z
DESCRIPTION:Wie schlägt sich Agentic Coding in der Praxis?
DTSTART:20260318T180000
DTEND:20260318T191500
LOCATION:Bern-vatter
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Agentic Coding in the Wild
END:VEVENT
BEGIN:VEVENT
UID:1009@www.jug.ch
DTSTAMP:20260209T151241Z
DESCRIPTION:Wie schlägt sich Agentic Coding in der Praxis?
DTSTART:20260505T181500
DTEND:20260505T191500
LOCATION:Basel-Markthalle
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Agentic Coding in the Wild
END:VEVENT
BEGIN:VEVENT
UID:1010@www.jug.ch
DTSTAMP:20260209T151241Z
DESCRIPTION:Wie schlägt sich Agentic Coding in der Praxis?
DTSTART:20260506T181500
DTEND:20260506T193000
LOCATION:Luzern-Hochschule
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Agentic Coding in the Wild
END:VEVENT
BEGIN:VEVENT
UID:1011@www.jug.ch
DTSTAMP:20260212T145321Z
DESCRIPTION:Conquering Booking Chaos with a Resilient Architecture
DTSTART:20260428T181500
DTEND:20260428T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Tickets to Ride
END:VEVENT
BEGIN:VEVENT
UID:1012@www.jug.ch
DTSTAMP:20260216T150532Z
DESCRIPTION:How a decade of technical debt is addressed in version 4.0
DTSTART:20260512T181500
DTEND:20260512T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch What's wrong with AssertJ?!
END:VEVENT
BEGIN:VEVENT
UID:1013@www.jug.ch
DTSTAMP:20260216T190054Z
DESCRIPTION:Reliable Agentic AI with Embabel
DTSTART:20260421T181500
DTEND:20260421T191500
LOCATION:Basel-Markthalle
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Stop Prompting\, Start Planning
END:VEVENT
BEGIN:VEVENT
UID:1014@www.jug.ch
DTSTAMP:20260223T153653Z
DESCRIPTION:AI can help\, but we’re still the ones accountable for architec
DTSTART:20260520T180000
DTEND:20260520T183000
LOCATION:Online-Bigmarker-
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Consistency and Coordination Patterns in Event-Driven Archi
END:VEVENT
BEGIN:VEVENT
UID:1015@www.jug.ch
DTSTAMP:20260302T155640Z
DESCRIPTION:
DTSTART:20260602T181500
DTEND:20260602T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Null Safety in Java
END:VEVENT
BEGIN:VEVENT
UID:1016@www.jug.ch
DTSTAMP:20260302T160452Z
DESCRIPTION:
DTSTART:20260609T181500
DTEND:20260609T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch 1000x Mehr Threads - Virtual Threads in Java 21 bis 25
END:VEVENT
BEGIN:VEVENT
UID:1017@www.jug.ch
DTSTAMP:20260304T122235Z
DESCRIPTION:Architektur\, Entscheidungen und Learnings aus einem Inhouse OI
DTSTART:20260625T181500
DTEND:20260625T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Migros Account – Die Geschichte hinter dem Login
END:VEVENT
BEGIN:VEVENT
UID:1018@www.jug.ch
DTSTAMP:20260309T125858Z
DESCRIPTION:Applying Statistical Testing to LLMs in Java using PUnit
DTSTART:20260521T181500
DTEND:20260521T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch AI Broke my Test Suite
END:VEVENT
BEGIN:VEVENT
UID:1019@www.jug.ch
DTSTAMP:20260309T125858Z
DESCRIPTION:Applying Statistical Testing to LLMs in Java using PUnit
DTSTART:20260507T180000
DTEND:20260507T191500
LOCATION:Bern-vatter
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch AI Broke my Test Suite
END:VEVENT
BEGIN:VEVENT
UID:1020@www.jug.ch
DTSTAMP:20260309T125858Z
DESCRIPTION:PUnit fixed it
DTSTART:20260603T181500
DTEND:20260603T193000
LOCATION:Luzern-Hochschule
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch AI Broke my Test Suite
END:VEVENT
BEGIN:VEVENT
UID:1021@www.jug.ch
DTSTAMP:20260330T121249Z
DESCRIPTION:Früher bauten wir Chatbots in unsere Apps. Bald bauen wir unser
DTSTART:20260521T180000
DTEND:20260521T191500
LOCATION:Bern-vatter
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Model Context Protocol (MCP)
END:VEVENT
BEGIN:VEVENT
UID:1022@www.jug.ch
DTSTAMP:20260401T163155Z
DESCRIPTION:
DTSTART:20260611T180000
DTEND:20260611T191500
LOCATION:St.Gallen
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Software-Betrieb ohne Overengineering
END:VEVENT
BEGIN:VEVENT
UID:1023@www.jug.ch
DTSTAMP:20260401T211526Z
DESCRIPTION:Wie schlägt sich Agentic Coding in der Praxis?
DTSTART:20260519T180000
DTEND:20260519T191500
LOCATION:St.Gallen
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Agentic Coding in the Wild
END:VEVENT
BEGIN:VEVENT
UID:1024@www.jug.ch
DTSTAMP:20260409T152759Z
DESCRIPTION:
DTSTART:20260430T180000
DTEND:20260430T191500
LOCATION:Bern-Hotel
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Event Sourcing and the End of DDD Tactical Patterns
END:VEVENT
BEGIN:VEVENT
UID:1025@www.jug.ch
DTSTAMP:20260421T155150Z
DESCRIPTION:Building a SaaS Product With Paying Customers Alongside a Full-
DTSTART:20260901T181500
DTEND:20260901T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Agentic Coding
END:VEVENT
BEGIN:VEVENT
UID:1026@www.jug.ch
DTSTAMP:20260427T193716Z
DESCRIPTION:
DTSTART:20260609T181500
DTEND:20260609T191500
LOCATION:Basel-Markthalle
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch I Didn't Know You Could Do That With Java Streams!?
END:VEVENT
BEGIN:VEVENT
UID:1027@www.jug.ch
DTSTAMP:20260430T161829Z
DESCRIPTION:Multithreading in Java beherrschbar machen
DTSTART:20260917T181500
DTEND:20260917T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Deterministische Tests für nicht-deterministischen Code
END:VEVENT
BEGIN:VEVENT
UID:1028@www.jug.ch
DTSTAMP:20260501T164349Z
DESCRIPTION:Wie wir den E2E-Sumpf mit KI-Agenten endlich trockenlegen
DTSTART:20261027T181500
DTEND:20261027T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Kill your Tests
END:VEVENT
BEGIN:VEVENT
UID:1029@www.jug.ch
DTSTAMP:20260501T164349Z
DESCRIPTION:Wie wir den E2E-Sumpf mit KI-Agenten endlich trockenlegen
DTSTART:20261028T180000
DTEND:20261028T191500
LOCATION:Bern-vatter
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Kill your Tests
END:VEVENT
BEGIN:VEVENT
UID:1030@www.jug.ch
DTSTAMP:20260501T164349Z
DESCRIPTION:Wie wir den E2E-Sumpf mit KI-Agenten endlich trockenlegen
DTSTART:20261029T180000
DTEND:20261029T191500
LOCATION:St.Gallen
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Kill your Tests
END:VEVENT
BEGIN:VEVENT
UID:1031@www.jug.ch
DTSTAMP:20260511T163234Z
DESCRIPTION:
DTSTART:20260616T181500
DTEND:20260616T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Rethinking 'Schritt für Schritt den Berg hinauf' im Zeitalt
END:VEVENT
BEGIN:VEVENT
UID:1032@www.jug.ch
DTSTAMP:20260529T135251Z
DESCRIPTION:Modernizing a Java Monolith with Agentic AI
DTSTART:20260630T181500
DTEND:20260630T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch A Story of a Painful Migration
END:VEVENT
BEGIN:VEVENT
UID:980@www.jug.ch
DTSTAMP:20251002T154338Z
DESCRIPTION:
DTSTART:20260121T180000
DTEND:20260121T191500
LOCATION:Bern-vatter
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Back to Basics
END:VEVENT
BEGIN:VEVENT
UID:983@www.jug.ch
DTSTAMP:20251020T155328Z
DESCRIPTION:
DTSTART:20260114T181500
DTEND:20260114T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Implementierung von DDD leicht gemacht mit Spring und jMole
END:VEVENT
BEGIN:VEVENT
UID:984@www.jug.ch
DTSTAMP:20251022T130210Z
DESCRIPTION:
DTSTART:20260115T180000
DTEND:20260115T191500
LOCATION:St.Gallen
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch I Didn't Know You Could Do That With Java Streams!?
END:VEVENT
BEGIN:VEVENT
UID:990@www.jug.ch
DTSTAMP:20251203T165733Z
DESCRIPTION:
DTSTART:20260219T180000
DTEND:20260219T191500
LOCATION:St.Gallen
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Entwicklung serverseitiger Webanwendungen mit HTMX und Spri
END:VEVENT
BEGIN:VEVENT
UID:991@www.jug.ch
DTSTAMP:20251203T165733Z
DESCRIPTION:
DTSTART:20260217T181500
DTEND:20260217T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Entwicklung serverseitiger Webanwendungen mit HTMX und Spri
END:VEVENT
BEGIN:VEVENT
UID:992@www.jug.ch
DTSTAMP:20251203T165733Z
DESCRIPTION:
DTSTART:20260218T180000
DTEND:20260218T191500
LOCATION:Bern-vatter
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Entwicklung serverseitiger Webanwendungen mit HTMX und Spri
END:VEVENT
BEGIN:VEVENT
UID:993@www.jug.ch
DTSTAMP:20251210T132436Z
DESCRIPTION:
DTSTART:20260204T181500
DTEND:20260204T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Domain-centric? Why Hexagonal And Onion Architecture Are An
END:VEVENT
BEGIN:VEVENT
UID:994@www.jug.ch
DTSTAMP:20251210T144812Z
DESCRIPTION:
DTSTART:20260204T181500
DTEND:20260204T193000
LOCATION:Luzern-Hochschule
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Null Safety in Java
END:VEVENT
BEGIN:VEVENT
UID:995@www.jug.ch
DTSTAMP:20251222T102821Z
DESCRIPTION:
DTSTART:20260211T181500
DTEND:20260211T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Deep dive into data streaming security
END:VEVENT
BEGIN:VEVENT
UID:996@www.jug.ch
DTSTAMP:20260105T141317Z
DESCRIPTION:Local Language Models and Models-as-a-Service with Open Source
DTSTART:20260416T181500
DTEND:20260416T193000
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Running Your Own AI
END:VEVENT
BEGIN:VEVENT
UID:997@www.jug.ch
DTSTAMP:20260112T145132Z
DESCRIPTION:Wie KI alles (und nichts) verändert
DTSTART:20260326T160000
DTEND:20260326T171500
LOCATION:Zürich-PH
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Spec-driven Development
END:VEVENT
BEGIN:VEVENT
UID:998@www.jug.ch
DTSTAMP:20260112T155858Z
DESCRIPTION:Moderne Webanwendungen auf einfache Weise erstellen – in reinem
DTSTART:20260303T180000
DTEND:20260303T191500
LOCATION:Bern-vatter
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Dein Backend verdient ein Gesicht
END:VEVENT
BEGIN:VEVENT
UID:999@www.jug.ch
DTSTAMP:20260112T181728Z
DESCRIPTION:
DTSTART:20260422T180000
DTEND:20260422T191500
LOCATION:Bern-vatter
ORGANIZER:https://www.jug.ch
SUMMARY:jug.ch Rethinking 'Schritt für Schritt den Berg hinauf' im Zeitalt
END:VEVENT
END:VCALENDAR
