Montag morgen. Ich bin nach über einer Stunde Stau mit einer kleinen Verspätung in Mainz angekommen. Leider keine Zeit mehr für eine Tasse Kaffee, der Workshop hat bereits begonnen. Also setze ich mich in eine der hinteren Reihen und merke, dass ich nicht allzuviel verpasst hatte.

Um was ging es im Workshop? Ich besuchte den Power Workshop “Einführung in das Spring Framework 3.0”. Eberhard Wolff, Referent des Workshops und Autor des Buchs Spring 3: Framework für die Java-Entwicklung, gab zunächst eine Einführung in die Konzepte von Spring 3 und zeigte den Teilnehmern eindrucksvoll die Anwendung dieser Konzepte in Life-Demonstrationen. Der interessanteste Teil war für mich die Einführung in die apektorientierte Programmierung (AOP) mit dem Spring Framework. Auch die Vorstellung von SpringRoo war beeindruckend. Aber irgendwo hab ich das schonmal gesehen: Codegenerierung und Scaffolding :-)

Zusammenfassend kann ich sagen, dass mir der Workshop einen guten Einblick und Einstieg in die Welt von Spring gegeben hat. Die Fragen, die ich mir stelle und die ich noch nicht beantwortet habe und auch noch nicht beantworten kann ist folgende: Sind EJB3 und Spring gegensätzliche Technologien? Welche Vorteile bietet mir die eine Technologie gegenüber der anderen? Wann ist es Sinnvoll einen ebedded Container zu verwenden und wann macht es Sinn auf JEE zurückzugreifen? Wie gesagt, für den Einstieg war der Workshop eine gelungene Veranstaltung, die in mir auf jeden Fall das Interesse an Spring geweckt hat.

Am nächsten Tag begann die eigentliche JAX2010 Konferenz mit diversen Vorträgen. In der ersten Keynote sprach Mike Piech (Oracle) über Java, die Community, die Technologien, über bisherige und zukünftige Entwicklungen in dem Javauniversum und gab einen Ausblick in welche Richtung die Wege der Kombination aus Sun und Oracle führen.

Im Anschluss daran ging es zum nächsten Vortrag: “Die richtige Architektur bei AJAX-Anwendungen” von Alois Reitbauer (dynaTrace Software). Der Vortrag war irgendwie nicht das, was ich bei dem Titel erwartet hatte, dennoch gab der Vortrag interessante Impulse. Gezeigt wurde vor allem, was man generell beachten sollte, um (subjektiv) performante AJAX-Applikationen zu erstellen.

Der nächste Vortrag den ich besuchte wurde gehalten von Jason van Zyl (Sonatype) mit dem Thema “Developing for the Enterprise with Maven, M2Eclipse, Nexus und Hudson. Dieser Vortrag bestätigte mich im Einsatz dieser bzw. ähnlicher Technologien (Eclipse IAM statt M2Eclipse, Artifactory statt Nexus). Es wurden die Tools im Einzelnen vorgestellt und darüberhinaus vermittelt, wie diese zusammenarbeiten und ineinandergreifend den Softwareentwicklungsprozess unterstützen. Außerdem sprach Jason van Zyl in seinem Vortrag über die derzeitigen und zukünftigen Entwicklungen dieser Technologien, insbesondere über Maven 3.

Nach dem Mittagessen gab es die nächste Keynote. Die “Vorstellung”, die die beiden Herren von der Accenture GmbH auf der Bühne präsentierten, war irgendwie nicht das Gelbe vom Ei. Neben der Selbstpräsentation und einem Video (Did you Know? 3.0) war die Message des Vortrags “From Art to Engineering – Designing technical Architectures for industrialized Software Development” nichts neues. Die Kommentare und Kritiken, die es im Anschluss an die Keynote über Twitter hagelte, war gelinde gesagt nicht die nettesten. :-)

Der nächste Vortrag behandelte das Thema Refactoring. Manuel Bork (Yatta Solutions GmbH) präsentierte in “Text to Model to Text” eine in Eclipse integrierte Modeling IDE (UML Lab), mit der aus bestehendem Quelltext ein Modell generiert werden und aus diesem Modell wieder exakt der selbe Code generiert werden kann. Dadurch erhält der Entwickler ein Werkzeug, mit dem er ein bestehendes Programm über Manipulation des generieten Modells verändern kann. Änderungen am Modell spiegeln sich im Code wieder und auch Änderungen am Code werden direkt in das Modell übernommen. Ein weiterer Schritt in Richtung MDD.

Der letzte Vortrag “Continuous Deployment and agile Testing”, den ich mir auf der JAX2010 angehört habe, wurde von Alexander Grosse (Nokia) gehalten. “Continuous Deployment” ermöglicht Entwicklern Software jederzeit auszuliefern. Alexander Grosse sprach in seinem Vortrag über seine Erfahrungen dieses Konzept in seinem Bereich einzuführen und stellte uns Best Practices in dieser Domäne vor.

Nach dem Abendessen endete der Konferenztag für mich. Die Abendveranstaltung habe ich nicht mehr miterlebt, da ich mich dafür entschieden hatte, nicht zu spät nach Hause zu fahren. Insgesamt kann ich sagen, dass es sich für mich gelohnt hat, die Konferenz zu besuchen, da ich allein an dem einen Tag viele Eindrücke und Impulse sammeln konnte. Falls es klappt, würde ich auch nächstes Jahr wieder die JAX besuchen.