Highlights von der W-JAX 2017

10 Take-aways von der W-JAX 2017: Von Microservices, Alexa Skills, Led Zeppelin und Java!

Hartmut Schlosser, Carina Schipper, Melanie Feldmann

© Shutterstock / Kim Reinick (modifiziert)

Microservices, Docker, Cloud oder lieber Angular, Agile und Arduino? Die Fülle an Themen auf der W-JAX 2017 war riesig und machte die Auswahl für die Teilnehmer nicht einfach. Wir fassen hier kurz und knackig zusammen, was wir auf der W-JAX Neues gelernt und Spannendes gesehen haben. Wie immer erheben wir keinen Anspruch auf Vollständigkeit.

1. Don’t do projects! Hear more Led Zeppelin!

Sander Hoogendoorn rockte den Auftakt der W-JAX mit einer Hommage an Led Zepellin

Den richtigen Schwung brachten zu Beginn der W-JAX die Rockklassiker Led Zeppelin in die Konferenz. „Was bedeutet Bron-Y-Aur Stomp?“, fragte Sander Hoogendoorn das Publikum seiner Eröffnungskeynote. Schweigen im Saal. Die Bedeutung dieses Led-Zeppelin-Songtitels blieb auch dem Agile Coach von ditisagile.nl lange Jahre verborgen. Bis irgendwann in den 2000ern Wikipedia kam und das Wissen der Menschheit im Crowdsourcing-Verfahren allgemein verfügbar machte.

Diese Episode ist nach Hoogendoorn ein Beispiel dafür, wie heute Dinge zu unserem Alltag gehören, die vor wenigen Jahren noch undenkbar waren – durch den Fortschritt der Informationstechnologie. Wenn nun aber die Aussage von Andreessen Horowitz gilt „Software is Eating the World“, die IT also immer mehr zum entscheidenden Faktor für den Erfolg eines Unternehmens wird, ist im Softwarebusiness eine immer größere Flexibilität gefragt, um mit der rasanten Innovationsgeschwindigkeit Schritt halten zu können.

Auch etablierte Unternehmen müssen sich anpassen, um nicht von den jungen Wettbewerbern überholt zu werden, die neue Technologien besser nutzen als sie. Dabei verändert sich momentan jeder Aspekt der Softwareentwicklung in Richtung kleinerer, agilerer Einheiten: schmalere Teams, reduziertes Management, flachere Hierarchien, kürzere Releasezyklen, kleinere Softwarekomponenten (aka Microservices).

Was in diese Schrumpfbewegung nicht mehr passt, ist das Denken in groß angelegten, vorbudgetierten Softwareprojekten. Diese tendieren nämlich dazu, aus dem Ruder zu laufen und nach den drei oder vier Jahren bis zur Fertigstellung nicht mehr zeitgemäß zu sein. Was ursprünglich sinnvoll erschien, wird allzu oft von der Innovationswelle der IT oder des Markts weggeschwemmt. Besser also, mit einem „Minimum Viable Product“ schnell auf den Markt zu gehen und Kundenfeedback einzuholen, als komplett vorgeplante, langfristig angelegte Projekte hinter verschlossenen Türen (und am Kunden vorbei) zu entwickeln.

Unser Take-away hier: „Don’t do projects! Hear more Led Zeppelin!“ Doch was hat es nun mit Bron-Y-Aur Stomp auf sich? Siehe hier: https://en.wikipedia.org/wiki/Bron-Y-Aur_Stomp

2. Immer wieder Microservices

Das Thema Microservices war auf der W-JAX 2017 natürlich breit vertreten. Über die allgemeinen Architektursessions und „Warum eigentlich Microservices“-Vorträge hinaus ging es weiter in die Tiefe. So warf Wolfgang Strunk (iterac) einen genauen Blick auf die Security bei Microservices. „Macht Security auf gar keinen Fall selbst“, beschwor er sein Publikum.

Gleichzeitig legte er den anwesenden Entwicklern die bekannten Securitytools OAuth 2.0 und Open ID Connect ans Herz. Außerdem empfahl er Apache Fediz. Fediz ist ein Teilprojekt von Apache CXF. Es hilft bei der Absicherung von Webanwendungen und delegiert die Sicherheitsregeln an den zugrunde liegenden Applikationsserver. Mit Fediz wird die Authentifizierung von der Webanwendung an einen Identitätsanbieter ausgelagert, der als dezidierte Serverkomponente installiert ist.

Ebenfalls einen Blick ins Detail warf Thorsten Maier (Orientation in Objects): Er konzentrierte sich auf das UI. Wenn man sein Backend schön sauber modularisiere, dürfe das UI kein Monolith bleiben, so seine Aussage. Dafür sei wichtig, dass Backend- und Frontend-Entwickler in einem Team sitzen. Denn so sei das Wissen zu einem Service komplett in einem Team vorhanden. Die Frontend-Entwickler müssen sich aber auf jeden Fall team- und serviceübergreifend austauschen, damit das UI nicht wie Kraut und Rüben aussieht.

3. Nach DevOps kommt DevDoms

Wenn über Microservices geredet wird, ist der große Bruder Domain-driven Design (DDD) meist nicht weit. Das 2003 von Eric J. Evans eingeführte Prinzip bildet das theoretische Fundament für das in Microservices-Architekturen angestrebte Ziel, die Software in fachlich zusammengehörige Teile zu zerlegen. Carola Lilienthal (WPS – Workplace Solutions) und Michael Plöd (innoQ) berichteten aus ihrer Praxis bei der Umsetzung von DDD im Spannungsfeld zwischen Business und IT.

Doch warum eigentlich Spannungsfeld? Welche Widerstände gilt es bei einer Einführung von Domain-driven Design zu überwinden? Nun, Entwickler müssen bereit sein, sich tiefer mit der Fachlichkeit auseinanderzusetzen, als ihnen vielleicht lieb ist. Domänenexperten sind angehalten, ihr Fachwissen aus einer ungewohnten, technischen Perspektive neu zu denken. Businessentscheider müssen bereit sein, jahrelang etablierte Unternehmensstrukturen ein Stück weit aufzubrechen und neue Kommunikationswege zuzulassen.

Michael Plöds Rat lautete an dieser Stelle, sich geeignete Stakeholder zur Seite zu nehmen und in ungezwungener Atmosphäre einen Austausch zwischen Developern (Devs) und Domänenexperten (Doms) zu initiieren. Vielleicht mündet das ja dann in kleine DDD-Pilotprojekte, von deren Erfolgen sich auch das Management überzeugen lässt. Klingt irgendwie nach DevOps, oder? Aber vielleicht sollten wir es lieber „DevDoms“ nennen?

4. Security muss keine Bürde sein

Meistens scheitert das Ding mit der Security ja nicht am guten Willen, sondern an der fehlenden Unterstützung im täglichen Arbeiten. Deswegen hat sich Dominik Schadow (bridgingIT) in seinem Talk das Thema Sicherheit im Build vorgeknöpft. Dabei ging es ihm zum einen darum, den Sourcecode zu checken, und zum anderen darum, die laufende Anwendung zu analysieren, bevor Code in der Produktion landet.

Mit der Erweiterung „Find Security Bug“ von FindBugs durchläuft der Code eine statische Analyse, bei der nach bekannten Problemen gesucht wird. Und das Tool OWASP Zed Attack Proxy (ZAP) stöbert bekannte Sicherheitslücken in Third-Party-Tools auf.

In die gleiche Kerbe schlug auch Christian Schneider (Freelancer) mit seinem Talk „Schlimmer geht immer“, in dem er die schlimmsten Hacks des letzten Jahres vorstellte. Denn ganz oft scheitert es an den einfachsten Dingen. Dass man zum Beispiel nicht jedes Dateiformat in einem Uploaddialog erlauben sollte. Und natürlich der Klassiker: Input immer validieren.

5. Das ist eine High Performance Company

Jez Humble (DevOps Research & Assessment) zeigte in seiner Keynote, was er unter einer „High Performance Company“ versteht. Derartige Unternehmen deployen mehrmals am Tag, Änderungen im Code brauchen weniger als eine Stunde bis in die Produktion, und die MTTR (Mean Time to Recovery) liegt ebenfalls unter einer Stunde. Zusätzlich beträgt die Fehlerrate des Systems nur maximal fünfzehn Prozent.

Um das zu schaffen, müssen aber einige Voraussetzungen geschaffen werden, warnte Jez. Ohne Konfigurationsmanagement, Continuous Integration und automatisierte Tests geht gar nichts. „Releases sollten langweilig sein“, stellte er als Ziel in Aussicht. Kein Bibbern mehr, ob der Code in Produktion auch wirklich läuft. Er malte auch das Bild einer strahlenden Zukunft für Entwickler. Wenn dies geschafft sei, müsse nie wieder jemand abends oder am Wochenende arbeiten, um Software zu releasen.

6. Wie die Digitalisierung unsere Software-Architekturen verändert

Was bedeutet die sogenannte Digitalisierung für die Software, die wir entwickeln? Welche Implikationen hat der digitale Wandel auf die Architekturen und den Entwicklungsprozess unserer Anwendungen?

Uwe Friedrichsen (Codecentric) zeigte auf der W-JAX 2017, dass wir es im Zuge der Digitalisierung mit einer völlig neuen Art von Software zu tun bekommen, die viel näher an den Architekturen moderner Unicore-Unternehmen angelehnt ist als an traditionelle Enterprise-Anwendungen.

Wird die IT nicht mehr nur als Dienstleistungsabteilung verstanden, die den Business-Zielen untergeordnet ist, sondern als integraler Bestandteil der ausgelieferten Produkte, hat das weitreichende Folgen für die Organisation und Struktur unserer Software. Im Interview zeigt Uwe die technischen und nicht-technischen Herausforderungen auf, denen sich moderne Digitalisierungslösungen stellen müssen.

7. Alexa Skills sind die neuen Apps

Mobil war gestern, heute braucht jeder einen Alexa Skill. So ungefähr könnte die Flut von Skills im Store von Amazon erklärt werden. In ihrem Talk sprachen Dr. Adam Giemza und Mark Wester von der Schenker AG darüber, wie Alexa Skills auch für Unternehmen interessant sein können und welche Technologiekenntnisse nötig sind, um selbst Alexa Skills zu entwickeln.

Zum Starten einer Musikplaylist oder Dimmen der Zimmerbeleuchtung kann sich wohl jeder noch einen Skill vorstellen. Aber wozu brauche ich Alexa im Unternehmenskontext? Adam und Mark hatten einige Beispiele parat. Ganz natürlich könnte etwa der Status der letzten Produktsendung geprüft werden. Auch unternehmensintern sind interessante Anwendungen denkbar, z. B. das Abfragen, ob der Konferenzraum, in dem man sich befindet, für die nächsten dreißig Minuten noch frei ist. KPI-Dashboards lassen sich mit einem Skill ergänzen, sodass vor einem Meeting schnell noch die aktuellen Verkaufszahlen geprüft werden können, während man sich die Krawatte richtet.

Die beiden Speaker demonstrierten live vor dem Publikum die Entwicklung eines Skills für die Berechnung von Preisen für Transporte. Zunächst mussten dafür einige Konfigurationen im Webinterface vom AWS vorgenommen werden. Dann folgten Einstellungen in einem Dialogmodell sowie die Implementierung der Logik. Zu nutzen ist dafür im Grunde jede beliebige Programmiersprache, da die Alexa-Plattform über ein JSON-Protokoll mit dem jeweiligen Skill kommuniziert. Es gibt unter anderem für Java und Node.js gute Bibliotheken, die das Protokoll abstrahieren und die Entwicklung stark vereinfachen.

Die Kernbotschaft der beiden Entwickler lautete: Skills sind die neuen Apps. So wie anfangs jeder eine mobile App haben musste, so braucht heute jeder einen eigenen Skill. Und das Wichtigste dabei: Skills entwickeln kann jeder lernen und es macht einfach Spaß!

8. Seine Architektur kennen

Gernot Starke in seinem Element: der Softwaredokumentation

Der Raum ist brechend voll, überall gespannte Gesichter. Das Thema des Talks ist wirklich ein Hot Issue. Dr. Gernot Starke (innoQ) hat von einem fiktiven Hersteller von Customized-Schränkchen und seinem Softwaresystem berichtet.

Zunächst läuft alles super, aber dann … Das Unternehmen wächst, kauft andere dazu. Diese anderen Unternehmen bringen ihre eigenen Systeme mit, und es entsteht ein ziemlicher Organisation-Team-Wirrwarr. Und weil es einfacher ist, sich ein neues Problem zu suchen, anstatt das alte zu lösen, gründet unser Schränkchenhersteller einfach ein Start-up.

An der Start-up-IT wird kräftig gewerkelt. Plötzlich ist das System fertig – per Managemententscheidung. Sie ahnen es, ein Softwareentwickler hatte den Fehler gemacht, von „fast fertig“ zu reden. So, wie kommen unsere Beteiligten jetzt halbwegs unbeschadet aus der ganzen Misere heraus? Gernot weiß Rat: analysieren, analysieren und nochmal analysieren. Und zwar alles, vom kleinsten Baustein bis hin zur gesamten Systemarchitektur – aber natürlich am besten von Anfang an, nicht erst, wenn das System anfängt zu bröckeln.

9. Darum JavaScript

Nils Hartmann (EOS) hat seine Session mit einem sehr bekannten Bild begonnen, das wohl die Gefühle eines Java-Entwicklers, der das Wort JavaScript hört, ziemlich genau auf den Punkt bringen dürfte. Raten Sie mal … Genau, es ist Edward Munchs „Der Schrei“.

Natürlich konnte der Meister 1893 noch nicht wissen, dass es fast 125 Jahre später perfekt auf die Beziehung von Java-Programmieren zu JavaScript passen würde. Eine ganze Menge W-JAX-Teilnehmer hat sich für das Feindbild JavaScript interessiert.

Kommen wir erst einmal zu den Vorwürfen, mit denen JavaScript leben muss: Außer Sprache sei da nichts drin, heißt es oft. Es gibt keine zentrale Organisation, keine Standardbibliothek, keinen Compiler, keine einheitliche Laufzeitumgebung, kein Modulsystem und kein Threading. Außerdem ist alles so kurzlebig und schnell. Stimmt, sagt auch Nils Hartmann und stellt die Frage, warum dann überhaupt JavaScript? Aus zwei Gründen: Weil das Web die Zukunft und JavaScript die Plattform dafür ist. Die ersten Erfahrungen, die er damit gemacht hat, seien auch nicht unbedingt positiv gewesen, berichtet Nils. Allerdings hat sich im Vergleich zu den ersten Tagen von JavaScript einiges getan. In der aktuellen Version bringt die Sprache viele Verbesserungen mit. Dazu gehört z. B., dass Browser sie besser unterstützen.

10. Spannende Zeiten für Enterprise-Entwickler

Für Java-Enterprise-Entwickler sind es momentan spannende Zeiten. Das Spring Framework ist soeben in der Version 5 erschienen und bringt neue Möglichkeiten für die reaktive Programmierung mit. Java EE wurde der Eclipse Foundation übergeben und wird damit zukünftig wohl ein gutes Stück weit offener entwickelt werden.

Wir haben mit Oliver Gierke (Pivotal) über diese jüngsten Entwicklungen gesprochen. Im Interview stellt er die Neuerungen in Spring 5 vor, berichtet über bislang weniger beachtete – aber umso nützlichere – Features im neuen Spring-Framework und kommentiert Oracles Entscheidungen bzgl. Java und Java EE.

Wir hoffen, dass alle Teilnehmer in München eine wunderbare und informative Zeit hatten und freuen uns auf ein Wiedersehen in Mainz auf der JAX 2018!

 

Geschrieben von
Hartmut Schlosser
Hartmut Schlosser
Content-Stratege, IT-Redakteur, Storyteller – als Online-Teamlead bei S&S Media ist Hartmut Schlosser immer auf der Suche nach der Geschichte hinter der News. SEO und KPIs isst er zum Frühstück. Satt machen ihn kreative Aktionen, die den Leser bewegen. @hschlosser
Carina Schipper
Carina Schipper
Carina Schipper ist seit 2017 Redakteurin beim Java Magazin, Business Technology und JAXenter. Sie hat Germanistik und Europäische Ethnologie / Volkskunde an der Julius-Maximilians-Universität Würzburg studiert.
Melanie Feldmann
Melanie Feldmann
Melanie Feldmann ist seit 2015 Redakteurin beim Java Magazin und JAXenter. Sie hat Technikjournalismus an der Hochschule Bonn-Rhein-Sieg studiert. Ihre Themenschwerpunkte sind IoT und Industrie 4.0.
Kommentare

Hinterlasse einen Kommentar

Hinterlasse den ersten Kommentar!

avatar
400
  Subscribe  
Benachrichtige mich zu: