KotlinConf 2026 in München - Konferenzrückblick

29. Mai 2026 - von Dinah Bolli

Die KotlinConf ist die offizielle Jahreskonferenz von JetBrains, dem Unternehmen hinter Kotlin und (unter anderem) der Entwicklungsumgebung IntelliJ. Kotlin ist eine moderne Programmiersprache, die in der Applikationsentwicklung - vor allem für Android - weit verbreitet ist. An der KotlinConf versammelt sich die gesamte Kotlin-Community, um mehr über die neuesten Features zu erfahren, spannende Präsentationen zu besuchen und natürlich, um sich mit anderen Entwickler*innen auszutauschen. Toll für uns, dass die KotlinConf 2026 in München stattgefunden hat!

Als Android-Team von Apps with love setzen wir Kotlin täglich ein, sowohl in der nativen Android-Entwicklung sowie mit Kotlin Multiplatform (KMP) auch plattformübergreifend. Entsprechend gespannt waren wir, Ossi, Miggi und Dinah, auf die zwei Konferenztage. Die Hauptthemen, die uns dabei besonders interessierten: die Neuigkeiten zu KMP und Compose Multiplatform (CMP) und alles rund um Kotlin als Programmiersprache.

Anreise

Am Mittwochabend, 18:30 Uhr haben wir uns beim Hauptbahnhof Bern mit Gepäck, Snacks und Vorfreude getroffen. Wir alle sind insgeheim Fangirls von Kodee, dem Kotlin-Maskottchen. Daher waren wir uns bereits bei der Abfahrt alle einig: Für die KotlinConf 2026 lautete unsere Mission, mit mindestens drei Kodee-Plüschtieren zurückzukehren.

Mit rund 30 Minuten Verspätung sind wir fünf Stunden später in München eingerollt, in die U-Bahn Richtung Messestadt Ost gehüpft und haben gegen 00:30 Uhr im Hotel direkt neben der Messe München eingecheckt.

Mit etwas wenig Schlaf machten wir uns am nächsten Morgen gegen acht Uhr auf den Weg zum Messegelände. Als Veranstaltungsort für eine Konferenz ist die Messe München gut geeignet: das Gelände ist so gross, dass sich die rund 2’200 Teilnehmenden gut verteilt haben und ausserhalb der Konferenzräume war es hell - so bekamen wir trotzdem etwas vom lange ersehnten schönen Wetter mit.

Da wir früh genug dran waren, erledigten wir das Wichtigste zuerst: Merch!😉 Nach dem Check-In sind wir direkt an den Swag-Stand verwiesen worden und siehe da: wir erhalten je ein T-Shirt (nicht unisex, yay!) und ein Mini-Kodee-Plüschtier! Wir haben nicht damit gerechnet, dass wir unsere Mission so schnell erfüllen würden. Neben dem Swag-Booth befand sich der Merchandise-Stand. Je ein Mini-Kodee ist nicht genug: wir brauchten ein grosses Kodee für im Büro. Gesehen, gekauft und happy.

Mini-Kodee Plüschtier Merch
Michel, Matthias und Dinah an der Konferenz

Danach haben wir andere Stände angesteuert, holten uns Gipfeli, Sandwiches und einen Kaffee und fanden JetBrains Pins. Kurz darauf war es bereits soweit für die Keynote, bei der wir uns tatsächlich Plätze in der ersten Reihe sichern konnten. Siehst du uns?

Kotlinkonferenz Publikum am sitzen
Dinah, Matthias und Michel im Publikum

Die Keynote war vollgepackt mit Zusammenfassungen und Statistiken zur Kotlin-Evolution, Informationen zu Partnerschaften und JetBrains Produkten und eine kleine Übersicht über KMP und CMP. Beispielsweise veröffentlicht nun auch JetBrains ein dediziertes ADE, also Agentic Development Environment ähnlich wie Cursor oder Google Antigravity: JetBrains Air. Mehr über die Keynote liest du auf dem JetBrains Blog.

Talks

Die KotlinConf bot ein dichtes Programm: 100 Speaker*innen und 108 Sessions verteilt auf parallele Tracks rund um KMP/CMP, AI-Integration mit Kotlin, Server-seitige Entwicklung und Kotlin-Sprachentwicklung. Wie immer haben wir vor allem die Talks besucht, an denen wir persönlich am meisten interessiert waren.

Lieblingstalk von Ossi: The Lord of Collection Functions - The Fellowship of Kotlin

von Ben Kadel

Der letzte Slot am ersten Konferenztag ist ja bekanntlich der härteste. Die Köpfe rauchten von den vielen Inputs, die Beine waren schwer und die Müdigkeit machte sich bei uns allen im Saal ordentlich bemerkbar. Da wir Ben Kadel aber bereits von der DroidCon vor zwei Jahren kannten, wussten wir: Das wird gut. Unsere Erwartungen waren hoch – und sie wurden absolut übertroffen!

Zu Beginn stand Ben noch ganz normal und unverkleidet auf der Bühne. Er startete ein perfekt inszeniertes Intro-Video, welches die epische Story einleitete, und verschwand klammheimlich im Backstage. Als das Video endete und das Licht im Saal wieder anging, folgte der geniale Reveal: Ben betrat die Bühne komplett als Gandalf verkleidet! 🧙‍♂️

Ben als Gandalf auf der Bühne
Ben als Gandalf verkleidet am präsentieren

Die ganze Präsentation war als Reise durch Mittelerde aufgebaut, stark angelehnt an Herr der Ringe. Die Mission: Frodo muss den einen Ring nach Mordor bringen, um ihn im Schicksalsberg zu vernichten. Der geniale Twist dabei? Der Ring war die .forEach-Funktion – und das Ziel war es, sie endgültig aus unserem Kotlin-Code zu verbannen.

Worum es im Kern ging, wurde schnell klar: .forEach wird viel zu oft als Allzweckwaffe missbraucht, obwohl uns Kotlin einen riesigen Werkzeugkasten an viel spezifischeren und eleganteren Collection-Functions bietet. Auf Frodos Reise wurden diese "Gefährten" nach und nach vorgestellt, um den Code vor der Dunkelheit zu retten.

Statt beispielsweise eine Map manuell über ein forEach zu befüllen (was sich im Code oft so mühsam anfühlt wie der Marsch durch die Totensümpfe), kam die Rettung durch .associateBy():

Code Beispiel Kotlin

Oder wenn es darum ging, Werte zu aggregieren, wurden Funktionen wie .sum() oder .sumOf { ... } ins Feld geführt, statt mühsam eine veränderbare Variable ausserhalb einer Schleife hochzuzählen.

Da der Talk durch dieses Storytelling so witzig, bildhaft und kreativ gestaltet war, war die Müdigkeit im Nu verflogen. Es war trotz des langen Tages super einfach, der Handlung zu folgen, und man hat richtig mitgefiebert, wie der Code Zeile für Zeile sauberer wurde und .forEach dem Untergang geweiht war.

Mein Fazit: Ein absolut genialer Abschluss für den ersten Tag! Ich werde bei den nächsten Code Reviews definitiv die Augen offenhalten, ob sich nicht irgendwo ein heimlicher "Ring der Macht" eingeschlichen hat, den wir lieber durch eine passendere Collection-Funktion ersetzen sollten.

Lieblingstalk von Miggi: Crafting delightful experiences

von Ian Leshan

Vor dem Talk war ich etwas skeptisch – zu oft wurde ich in Vergangenheit von UI Talks enttäuscht. Zum Glück habe ich mich dann doch dazu entschieden, diesen Talk zu hören und zu sehen! Und oh my, sobald ich die erste Slide gesehen habe, wusste ich: Das kann nur gut werden. Überzeugt euch selbst:

Man bemerke: Alle Animationen sind in Compose Multiplatform gemacht. Sogar die Slides sind Compose Multiplatform 🤯

Worum es gehen soll, wurde auch schnell klar. Coole Verwendung von Animationen und Haptic Feedback, um das Erlebnis für User*innen so klar wie möglich zu gestalten. 


Um das zu erreichen wurde erst mal klar gemacht, was wir alles schon an Tools in Compose zur Hand haben:

Code Beispiel Miggi

Diese Values können wir dann jeglichem Element als Modifier .clickable und .hoverable mitgeben und sie können dazu genutzt werden, UI changes anhand der beiden States durchzuführen. 


Und dann noch um custom Swipe Gestures zu nutzen:

Code Beispiel Miggi 2

Damit können wir unsere eigenen Swipe-to-dismiss Komponenten bauen. Hier ein Beispiel (Die Shake animations sollen Haptic Feedback darstellen, da diese über Video nicht gezeigt werden können) mit dem Haptic Feedback und der Intensivierung der Border Color. Dadurch wird dem User signalisiert: Wenn du hier loslässt, wird die entsprechende Aktion durchgeführt. Wenn vorher losgelassen wird, springt die Komponente zurück in den Ursprungs-State.

Um unnötige Onboarding- oder Erklärungsscreens zu vermeiden, können Animationen genutzt werden, um den Nutzer*innen Hinweise darauf zu geben, was gemacht werden kann. Im folgenden Beispiel seht ihr, wie den User*innen beigebracht wird, dass sich hinter der Komponente eine Swipe-Action versteckt und wie man den User*innen zeigen kann, dass eine Aktion nicht funktioniert hat:

Und so haben wir ein tolles Komplettpaket mit dem die User*innen bei der Nutzung der Applikation mit “Learning by doing" durch die Funktionalitäten geleitet werden. 

So kann man unnötig lange Onboardings vermeiden und bietet sinnvolles Haptic und Visual Feedback zusammen mit coolen Animationen und Designs.


Mal sehen, vielleicht mache ich meine nächste Präsentation auch mit Compose Multiplatform. Ich bin auf jeden Fall inspiriert mehr mit all diesen Möglichkeiten herum zu tüfteln.

Lieblingstalk von Dinah: What's New in Compose Multiplatform: Better Shared UI for iOS and Beyond

von Sebastian Aigner & Márton Braun, JetBrains

Mit Compose Multiplatform (CMP) können Entwickler*innen Benutzeroberflächen für Android, iOS, Desktop und Web bauen – das mit ein und demselben Code, da das Framework diesen für die jeweilige Plattform übersetzt. Das Ganze läuft über Kotlin Multiplatform (KMP), mit welchem die Businesslogik für die jeweilige Plattform programmiert wird.
Dabei kann CMP mittlerweile auf Mobilgeräten (Android & iOS) und auf Desktop produktiv eingesetzt werden. CMP für Web ist momentan im Beta-Status.

An diesem Talk wurden nun die neuesten CMP-Features präsentiert. Tatsächlich landen Neuerungen und APIs aus Jetpack Compose (das Android UI Framework) mittlerweile nach etwa drei bis fünf Wochen in CMP. Für alle vier Plattformen. Dieses Tempo ist beeindruckend und dient Entwickler*innen wie uns, die ihre Projekte immer up-to-date halten möchten.

Zuerst haben die zwei Referenten Navigation 3 erwähnt. Die neue Navigations-Library von Google für Jetpack Compose haben wir in einem KMP-Projekt bereits erfolgreich eingesetzt, der Inhalt war daher für uns nichts Neues. Es ist aber toll, dass die Library nun vollständig auf allen Plattformen einsetzbar ist.

In KMP-Projekten gibt es eine neue Projektstruktur, die vor allem für jedes Modul eine klar definierte Verantwortlichkeit und einen einzigen Zweck zum Ziel hat. Die Struktur soll möglichst konsistent sein und es soll für Entwickler*innen einfach sein, das Projekt weiter zu modularisieren. Weiter ist Compose Hot Reload nun direkt im Gradle Plugin integriert und muss von Entwickler*innen nicht mehr separat installiert werden. Yay!

Allgemein merkt man: KMP und CMP sind der klare Fokus der Strategie von JetBrains. Es gibt stetige Verbesserungen am Tooling und an APIs und es gibt neue Features, die uns Entwickler*innen wirklich etwas nützen – wir werden gehört. Die Strategie scheint zu ziehen: mittlerweile gibt es über 3’500 Kotlin-Libraries!

Im für mich spannendsten Teil der Präsentation ging es aber um iOS (I know, shocking!). Apples neues visuelles Design-System ab iOS 26, Liquid Glass, unterscheidet sich massgeblich von Android Material 3 Expressive, dem Design-System von Android (zu Liquid Glass siehe auch unseren Blog). So Fan ich als Android-Nutzerin auch von Material 3 Expressive bin: nutzt ein*e iOS-Nutzer*in eine CMP-App, die ausschliesslich auf Compose basiert, wirkt sie visuell ziemlich fremd, weil die gewohnte Glasoptik fehlt. Sie verhält sich auch in der Bedienung anders als native iOS Apps, weil manche Interaktionen nicht funktionieren wie gewohnt.
JetBrains hat das nun geändert: neu können die wichtigsten nativen iOS-Komponenten (Tab-Bar, Navigationsleiste und Toolbars) im Liquid-Glass-Look angezeigt werden.
Mit einem neuen Property können auch eingebettete native UIKit-Komponenten über der Compose-UI-Ebene gerendert werden und unterstützen so transparente Hintergründe sowie native Shader-Effekte. So passen auch eingebettete native Komponenten nahtlos ins Liquid-Glass-UI.
Das Resultat: Eine CMP-App, die sich für iOS-Nutzer*innen vertraut anfühlt. Liquid Glass, bzw. iOS 26, wurde Mitte September 2025 von Apple veröffentlicht. Dass JetBrains den Support für Liquid Glass so schnell geliefert hat, hat mich beeindruckt.

Weiter haben sie uns Neuigkeiten zur Texteingabe auf iOS gezeigt. Diese nutzt neu native iOS-Komponenten, was bedeutet, dass in Texteingaben (z.B. in ein Textfeld oder ein Suchfeld) nun präzise Cursorbewegungen sichtbar sind und Gesten, Auswahlfunktionen und Systemkontextmenüs („AutoFill“, „Übersetzen“ und „Teilen“, etc.) nativ erlebt werden können. Ergänzend dazu lässt sich nun eine eigene Eingabe Ansicht definieren, welche die Standard-Tastatur ersetzt - allgemein laufen iOS-Apps nun flüssiger. Also alles Implementationen, die Look-and-Feel für iOS-Nutzer*innen einer CMP-App massgeblich verbessern.

Dieser Talk war definitiv ein Highlight für mich. Dass JetBrains (in Zusammenarbeit mit Google) so viel in die UX für iOS-Apps investiert, zeigt, dass KMP und CMP keine experimentellen Spielwiesen mehr sind, sondern der strategische Weg, mit dem Android-Entwickler*innen heute Applikationen für alle Plattformen bauen können. Mit einer einzigen gemeinsamen Codebasis und kaum Kompromissen beim nativen Feeling. I like!

Unser Fazit

Die KotlinConf 2026 hat uns rundum begeistert. Sie war professionell organisiert, das Catering kam aus der Region und das Essen hat überzeugt. Die Messe München war einladend und besonders praktisch fanden wir die vierminütige Gehdistanz zwischen Messe und Hotel – für zukünftige Konferenzen merken wir uns das.

Der Fokus der KotlinConf liegt nicht auf Android-Entwicklung allein, dafür gibt es die DroidCon, sondern auf Kotlin und dem JetBrains-Ökosystem als Ganzes: Android, Backend, KMP, Desktop, IoT und mehr. Umso mehr hat es uns positiv überrascht, in wie vielen Präsentationen es um Mobile und Android gegangen ist. Da man auch an der Konferenz nicht alle Präsentationen besuchen konnte: JetBrains wird bald alle Talks aufschalten, sodass man in Ruhe nochmals reinschauen oder Verpasstes nachholen kann.

Als Agentur setzen wir im Moment weiterhin auf native Entwicklung und entwickeln teilweise plattformübergreifende Logik mit KMP. Aber der CMP-Ansatz ist eine spannende Sache. Nach dieser Konferenz ist klar: Es gibt viel auszuprobieren und teamübergreifend zu diskutieren.

Wir sind überzeugt: KMP und CMP sind keine Frameworks, die in ein paar Jahren auf einem Applikationen-Friedhof landen, sondern aktiv weiterentwickelt und verbessert werden. Zusammen mit stetigen Verbesserungen an Kotlin als Sprache und den Tools im JetBrains-Ökosystem freuen wir uns auf alles, was JetBrains sonst noch für uns bereithält. Vor allem freuen wir uns nun aber über unsere Kodee-Plüschtiere, die uns nun als Rubber duck dienen - oder einfach zur Deko auf unserem Pult sitzen.

Zum Schluss noch ein paar honorable mentions:

Der Input “We were meant to be” von Lena Reinhard beleuchtete die Versprechen und Vision der Tech-Industrie rund um KI, formulierte den Druck, den viele Software-Entwickler*innen momentan aufgrund von KI und der damit verbundenen Disruption in der Industrie erleben. Sie erzählte aus ihrem persönlichen Leben und gab uns vier Strategien mit, um als Entwickler*in mit den aktuellen Geschehnissen in der Welt umzugehen. Eine eindrucksvolle, witzige, inspirierende und vor allem ermutigende Botschaft und mein absoluter “Let’s go, girl!”-Moment an der KotlinConf 2026.

Zuletzt: der Most-Beautiful-Presentation Award geht an Hammad Akram, Lead Engineer bei H&M mit seiner Präsentation “Tiny Models, Big Impact: On-Device AI for Real Apps”.

Präsentationsslide mit Bildern
Ben als Gandalf auf der Bühne
Präsentations Slide an der Kotlinkonf mit Zitat: The best AI feature is the one users don't notice, but would miss if it's gone"
Dinah, Michel und Ossi draussen bei schönem Wetter
Keynote Eindrücke