Im März war es endlich wieder so weit. Seit meinem ersten Besuch im letzten Jahr freue ich mich nun jedes Jahr aufs Neue, an der Javaland teilnehmen zu können. Auch wenn die Veranstaltung nicht gerade in Hamburger Umgebung liegt, ist die Konferenz durch Ihre Besonderheiten jede Reise wert: Man kann viel an Fachwissen hinzugewinnen, interessante Leute kennen lernen, viel Abwechslung genießen und für beste Verpflegung ist ebenfalls gesorgt.
Javaland4Kids
Die Anreise erfolgte dieses Mal bereits am Sonntag, da ich glücklicherweise die Möglichkeit hatte bereits bei der Javaland4Kids aktiv als Mentor teilhaben zu können. Angereist sind zwei Schulklassen (eine Gymnasialklasse aus Brühl und eine Grundstufenklasse aus Sankt Augustin), die jeweils an zwei Workshops teilgenommen hatten. Insgesamt ca. 20 Mentoren betreuten die ca. 40 Schüler durch folgende Themen:
- Die Grundschüler konnten Sonic Pi sowie Scratch kennenlernen
- Die Gymnasialstufe lernte entweder den programmatischen Umgang mit Neo4J oder die Erstellung von Mods mit Minecraft
Die Schüler sollten die Möglichkeit bekommen möglichst viel kennen zu lernen. Der Plan war die jeweilige Klasse in zwei Gruppen zu teilen, sodass Sie die Möglichkeit hatten, jeweils beide Themen kennen zu lernen. Die Zeit pro Kurs war somit recht knapp. Normalerweise führen wir den Sonic Pi, sowie den Scratch-Kurs in 3 Stunden durch. Nun blieben uns jeweils 1,5 Stunden je Kurs. Die Schüler machten die Kurse jedoch so gut mit, dass wir mit den Grundschülern im gegebenen Zeitrahmen sehr gut durchgekommen sind. Ich denke, dass es insbesondere ein Vorteil war, dass sich die Schüler untereinander bereits kannten und somit die Zusammenarbeit der jeweiligen Gruppe extrem gut war. Bei unseren "gewöhnlichen" Kids4IT-Kursen, kennen sich die 2er-Gruppen meist nicht gegenseitig, was durchaus andere Herausforderungen mit sich bringen kann.
In den beiden neuen Kursen für die Gymnasialstufe lief dies nicht ganz so wie geplant, da die Zeit für die jeweils sehr großen und neuen Vorhaben hier nun doch wirklich knapp war. Organisatorisch hatte man sich für diese Klasse in der Mittagspause daher entschlossen, die Gruppen nicht zu tauschen, sondern die jeweils begonnenen Themen in der gleichen Gruppe weiterzuarbeiten. Daher konnten auch hier zum Glück recht abschließende Erfolgserlebnisse erzielt werden.
Es hat mich sehr gefreut dieses Jahr nicht "nur" als Konferenzteilnehmer, sondern in durch die Javaland4Kids in aktiver Rolle an der Javaland teilhaben zu können. Mein Dank geht hierfür an die DOAG bzw. der JavaLand GmbH als Organisator, sowie an Kids4IT.
Das Konferenzprogramm
Auch wenn sich die Javaland natürlich auf die Programmiersprache Java konzentriert, ist ein buntes und vielseitiges Programm entstanden. Selbstverständlich geht es nicht nur um die Sprache selbst, sondern auch um andere JVM-Sprachen, sowie um alles, was mit den hierdurch erstellen Anwendungen zu tun hat (z.B. Architektur, Tooling, Test und Betrieb).Das Programm konnte man sich individuell zusammenstellen: Am ersten Tag gab es 8 Zeiten, zu denen gleichzeitig bis zu 8 Vorträge gestartet sind. Zusätzlich kam noch die Begrüßung, sowie die Keynote (dieses Jahr von Holly Cummins, IBM) hinzu, die jeweils im riesigen und dennoch überfüllten Silverado Theater stattfanden. Am zweiten Tag war mit 7 Vortrags-Zeiten (ebenfalls mit 8 parallelen Tracks) und einer Community-Keynote einiges an Programm hinzu. Parallel zum eigentlichen Vortragsprogramm konnte man die Stände der Aussteller bewundern, an verschiedenen Community-Aktivitäten teilnehmen oder seine oder andere JUGs im Café kennenlernen. Langeweile hat somit kaum Chancen.
Insgesamt hatte die Javaland auf die Person genau 1900 angemeldete Teilnehmer. Somit konnte die Teilnahme an den jeweiligen Talks nicht immer gewährleistet werden. Trotz sehr geschickter Verteilung der Vorträge auf die zur Verfügung stehenden Räumlichkeiten, konnte es somit vorkommen, dass man zum Talk vor verschlossenen Türen stand. Frühes erscheinen war somit teilweise wichtig - insbesondere für die Vorträge, die im Programm mit einer Chili-Schote markiert waren. Auch die App konnte in diesem Jahr in Echtzeit Auskunft darüber geben, ob der gewünschte Talk bereits überfüllt ist. Durch die Informationen darüber, wie viele Teilnehmer ein Raum aufnehmen kann und wie viele Personen den Vortrag als Favorit gekennzeichnet hatten, konnte man ebenfalls recht gut abschätzen, ob man nicht eventuell doch einem nicht so gefüllten Vortrag den Vorzug geben möchte. Mir persönlich ist es zumindest nicht vorgekommen irgendwo vor verschlossenen Türen zu stehen und konnte mein geplantes Vortragsprogramm ohne Schwierigkeiten "durchziehen". Mein persönliches Programm gestaltete sich wie folgt:
- Core Java & JVM basierte Sprachen
- Kotlin in Practice
- Unveränderliche Daten im Griff
- Architecture & Security
- Die Liga der Außergewöhnlichen Anti-Patterns
- Crypto 101
- Microservices Data Patterns: CQRS & Event Sourcing
- Self-Contained Systems Reloaded
- Verteilte Probleme sind die schönsten Probleme
- Enterprise Java & Microservices
- Benchmarking Spring 5 Reactive Microservices
- Eventing mit Kafka - Haben ist besser als brauchen
- Frontend & Mobile
- Progressive Web Apps mit der Service Worker API
- Mittendrin statt nur dabei: Offline-First Architekturen
- Cloud & Container
- Kubernetes und Docker Patterns und Antipatterns
- DockAir - Ein Rundflug durch das Kubernetes Ökosystem
- IDE's & Tools
- Making the Most of Your Gradle Build
- Methodology, Culture & Quality
- Property-Based Testing unter Java
- Community Activities
- Refactoring mit der Mikado-Methode
Mittlerweile sind die Slides zu allen Präsentationen veröffentlicht.
Im Anschluss an den ersten Konferenztag konnte man durch verschiedene Fahr-Attraktionen des Phantasialands für etwas Abwechslung zum ständigen Wissens-Input sorgen. Dies wurde von einigen gerne entgegengenommen. Im Vergleich zum letzten Jahr waren die Black Mamba und Talocan leider nicht vertreten. Zumindest sorgte das Colorado Adventure und "Temple of the Night Hawk" für annehmbaren Ersatz.
Wer sich einen optischen Eindruck verschaffen möchte, kann sich die Bilder zu beiden Konferenztagen und auch zur Javaland4Kids ansehen.
Der Schulungstag
Im Anschluss an die beiden Konferenztage wurde ein Schulungstag angeboten, für den man sich für einen von 8 Kursen entscheiden konnte. Ich persönlich hatte mich für "Java & AWS - Microservices in der Cloud" entschieden. Der Vormittag bestand größtenteils aus einer Einführung in AWS und den dort angebotenen gängigsten Services und der Vorstellung der vorbereiteten Beispielanwendung. Nachmittags wurde die Provisionierung eines Services über das AWS-Frontend vorgestellt und die Möglichkeit der Provisionierung als "Infrastructure as Code" über Terraform. Die folgenden praktischen Übungen sollten die Provisionierung mit Terraform weiter festigen.
Die Trainer hatten die Schwierigkeit, einen möglichst für alle passenden Kurs zu halten. Dies war bei über 30 Wissensbegierigen mit sehr unterschiedlichem Vorwissen sichtlich schwierig. Hinzu kamen anfängliche technische Probleme mit dem WLAN, dem man bis zum Nachmittag recht gut entgegnen konnte. Zusätzlich war der zur Nutzung vorgesehene Account nicht auf die Teilnehmerzahl ausgelegt. Glücklicherweise konnten einige (wie auch ich) auf eigene AWS-Accounts umsteigen, allerdings gab es Spezifika, die nur für den ursprünglichen Testaccount vorgesehen waren.
Insgesamt blieb der Lerneffekt hierdurch leider hinter dem Möglichen zurück. Den Trainern kann man hierfür allerdings wenig Vorwürfe machen (vielleicht abgesehen davon, sich bei der Teilnehmerzahl nicht auf die eigenen Annahmen zu verlassen). Sie hatten sich sichtlich gute Gedanken und viel Mühe in der Vorbereitung des Kurses gemacht und den Kurs im Rahmen des wirklich schwierigen Kontexts gut bewältigt.