• März 01, 2017

Jfokus 2017 Entwicklerkonferenz in Stockholm

Ich hatte die Gelegenheit, meine alltägliche Arbeit zu unterbrechen und die größte schwedische Entwicklerkonferenz Jfokus2017 gemeinsam mit zwei meiner Kollegen am 7. und 8. Februar zu besuchen. Das war die erste „DevCon", an der ich teilgenommen habe. JFokus hatte dieses Jahr mehr als 1.700 Besucher, die meisten davon aus Schweden, aber auch aus entfernten Orten wie Hawaii. Bei dieser Veranstaltung geht es vorrangig um Java und JavaScript-Umgebungen, aber auch um einige allgemeinere Themen. Die Vortragenden stammten aus verschiedenen Branchenrichtungen. Ich kannte zwar keinen von ihnen vorher, aber die Vorträge, die ich gehört habe, waren gut und professionell.

Die Ausstellung

Das Waterfront Conference Center bot eine gute Ausstattung für eine Konferenz dieser Größenordnung. Obwohl es gelegentlich etwas eng wurde, funktionierte alles dank der hilfreichen und zahlreichen Mitarbeiter reibungslos. Und wie wir alle wissen, aber nur ungern zugeben, einer der Hauptgründe für die Teilnahme an dieser Art von Konferenz ist der Besuch der Stände, um so viele T-Shirts, Sticker, Taschen und andere Werbegeschenke wie möglich mitzunehmen, oder?

Unter den Ausstellern waren auch einige Big Player, wie Oracle, IBM, Microsoft, Red Hat, sowie einige kleinere Unternehmen. Das Angebot bestand vor allem aus cloud-basierten Plattformen und Lösungen, aber es gab noch etwas mehr Nischenangebote zu mobilen Zahlungsvorgängen, maschinellem Sehen und sogar Robotik. Das Essen war gut und fast immer verfügbar. Wir bekamen auch jede Menge Kaffee während der Veranstaltung, was uns sehr glücklich machte. 

Die Präsentationen

Die Konferenz dauerte zwei ganze Tage mit einer Abendfestveranstaltung dazwischen. Einige Workshops wurden auch schon am Tag vor unserer Ankunft abgehalten. Es gab normalerweise sechs Veranstaltungen gleichzeitig, also konnte man ziemlich gut die interessantesten Themen auswählen. Alle von mir besuchten Präsentationen wurden von begeisterten und unterhaltsamen Vortragenden gehalten, und so fragte ich mich, wie ich wohl selbst auf die gleiche Stufe von Präsentationsfähigkeiten kommen könnte. Andererseits verließen sich einige der Veranstaltungen zu sehr auf Humor und lustige Folien.

Was ist angesagt?

Hier sind die von mir handverlesenen Technologietrends von der Konferenz:

1) Reaktive Programmierung (RP) wird größer

Natürlich ist RP nichts Neues, aber sie wird allmählich populärer und hat einen echten Nutzen. Hinter diesem Trend steht eine stetig anwachsende Datenmenge in der Welt und die Notwendigkeit, diese effizient zu verarbeiten. Eine einzige Webseite hat heutzutage etwa so viel Verkehr zu bewältigen wie vor ein paar Jahren das gesamte Internet. Da die Rechenkapazitäten von Mikrochips den Anforderungen der neuen Echtwelt nicht standhalten können, ist der einzige Weg nach vorne derjenige, so weit wie möglich Rechenarbeiten zu verteilen und parallel durchzuführen. Es ist wirklich schwer, elegante Distributionssoftware mit herkömmlichen Prozessen zu entwickeln und daher brauchen wir neue Paradigmen. Ich habe die folgenden Vorträge zu RP besucht.

Herr Petersson präsentierte einen Weg, wie reaktive Programmierung in die Java EE-Umgebung eingebunden werden kann. Erreicht wurde dies mit asynchronem HTTP und WebSockets, Message-Driven-Beans, CDI-Ereignissen und asynchronen JA-RS-Reaktionen. Mir gefiel der praktische Aspekt dieser Veranstaltung.

  •  Asynchrone Stromverarbeitung mit Akka-Strömen von Johan Andrén von Lightbend.

Hier handelte es sich um einen klaren, praxisbezogenen Austausch zwischen Entwicklern, bei dem es um die Umsetzung verschiedener Nutzungsfälle geht, bei denen Akka-Ströme nützlich sind. Ich mag Akka sehr und habe das Aktoren-Modell verwendet, also war es gut, auch etwas über diese Ströme-Thematik zu erfahren. Vor allem die Scala-Streaming-API sah wunderschön und elegant aus. Sie können die Präsentation hier ansehen.

2) Mikroservices als ideale Architektur für verteilte Apps

Eng verbunden mit der reaktiven Programmierung ist die Mikroservice-Architektur, die ich als Spezialisierung der SOA ansehe, also auch hier nicht unbedingt etwas Neues. Soweit ich es verstanden habe, ist der größte Unterschied die Anforderung, dass Mikroservices unabhängig einsetzbar sind, während SOA dabei nichts zu sagen hat, und SOA ist etwas strenger bei der Servicevertragsseite. Jedenfalls passierte ziemlich viel um die reaktiven Mikroservices herum, was als die einzige Lösung verkauft wurde, um den ständig steigenden Anforderungen der simultanen Datenverarbeitung gerecht zu werden. Ich besuchte zwei Veranstaltungen, die sich mit dem Thema befassten.

  •  Reaktive Microservices mit Vert.x von Burr Sutter von Red Hat

Herr Sutter ist ein sehr wortreicher Vortragender, und die Themenfülle in diesem Bereich war überwältigend. Zunächst erhielt das Publikum einige Muster für den Entwurf von Mikroservice-Architektur, dann eine schnelle Einführung in Vert.X, Kubernetes und fabric8, um solche Entwürfe produktiv einzusetzen. Ziemlich beeindruckend, aber man hätte bei der Menge an Information mehr Zeit gebraucht. Sie können die Präsentation hier ansehen.

  •  Von Mikrolithen zu Mikrosystemen von Jonas Bonér von Lightbend.

Herr Bonér beendete die Konferenz mit einer fast ekstatischen Abschlussrede zur Architektur von komplex verteilten Systemen. Die Schlüsselthese der Veranstaltung war, dass es nicht ausreicht, Systeme von Microservices zu bauen. Er schlug vor, dass jeder Microservice auch in sich als verteiltes System konstruiert werden sollte - als „Microsystem". Nur dann kann ein System völlig elastisch und belastbar sein, wie das reaktive Manifest das vorsieht. Sie können die Präsentation hier ansehen.

Obwohl wir bei Arcusys derzeit nicht unbedingt ganz direkt den Herausforderungen ausgesetzt sind, für die reaktive Programmierung und Mikrosysteme gemacht sind, gab es auf jeden Fall viel, was man von diesen Sitzungen für weitere Gedankenarbeit mitnehmen konnte.

3) Java 9 + Java EE 8 kommen

Natürlich bekamen auch die anstehenden neuen Java-Releases ihre Aufmerksamkeit.

Hierbei handelte es sich auch um die Haupteröffnungsrede der Konferenz. Herr Reinhold, Chefarchitekt der Java Platform Group bei Oracle, stellte das Konzept von Modulen vor, die im Jigsaw-Projekt definiert werden. Das Hauptziel dieser Funktion ist es, die „JAR-Hölle" zu verlassen und die JDK-Größe für kleinere Geräte und Container herunterzubrechen. Eine wirklich sehr willkommene Neuerung! Sie können die Präsentation hier  ansehen.

Im Herbst wird eine neue Version der Java Enterprise Edition erwartet. Unter den neuen Funktionen sind (Überraschung!) Erweiterungen für reaktive HTTP-Client-API und servergesendete Ereignisse (JAX-RS 2.1), Unterstützung für HTTP/2 (SERVLET 4.0), neue JSON-bindende API (JSON-B) und viele Verbesserungen bei der CDI-Nutzung (CDI 2.0), mit der eine Nutzung außerhalb eines JEE-Containers einfacher wird. Sie können die Präsentation hier ansehen.

Weitere Themen waren das Internet der Dinge, DevOps, Typentheorie, nützliche Utility-Bibliotheken und sogar ein Cyborg, der über Mikrochipkörperimplantate sprach.

Nachspiel

Insgesamt war die Atmosphäre bei der Jfokus2017 herzlich, mit diesem besonderen Gemeinschaftsgefühl zwischen Menschen, die aus einer großen Bandbreite von verschiedenen Ländern und Unternehmen stammen. Ich weiß nicht, ob das so eine IT-Sache ist, aber ich glaube, dass dieses Gemeinschaftsgefühl nicht so häufig ist, wenn sich Menschen mit dem gleichen Beruf versammeln. Vielleicht liegt das an den Wurzeln in der Techie/Nerd-Kultur. In der Schlussansprache wurde ein schwedischer Professor und öffentlicher Redner geehrt, Hans Rosling, der am Tag zuvor an Krebs gestorben war. Es gab eine Spendenaktion für eine Krebsstiftung, die sofort ihren Zielbetrag erreichte. Ich hatte vorher noch nie von Rosling oder seiner Arbeit gehört, aber jetzt weiß ich viel über ihn.

Die Rückreise war recht angenehm, abgesehen davon, dass das Stockholmer Taxiunternehmen, das wir für die Rückfahrt zum Flughafen nahmen, uns doppelt so viel berechnete als wir bei der Anreise bezahlt hatten. Das war eine großartige Erfahrung und wir können die nächsten DevCons kaum erwarten :)

Matti Lupari
Softwarearchitekt