Wie im letzten Jahr war ich auch dieses Jahr auf dem Java-Forum Stuttgart als Speaker eingeladen. Auch heuer waren die 1200 Karten lange vor der Veranstaltung ausverkauft, das Interesse an der Veranstaltung ist ungebrochen hoch.
In meinem letztjährigen Vortrag ging es um den Entwurf von REST-APIs, dieses Jahr drehte sich der Talk um die ersten Schritte mit dem Skalierungs-Framework Akka.
Das war mein Besuchsprogramm:
Stratos - Cloud-Plattform für WSO2
Ich weiß: "Sponsored Talks" beinhalten immer das Risiko, zur reinen Verkaufsveranstaltung zu geraten. Da ich aber in einem Projekt möglicherweise Kontakt mit WSO2 haben werde, hielt ich es für eine gute Idee, diesen Vortrag zu besuchen. Vielleicht habe ich mir das falsche versprochen - gewünscht hätte ich mir eine (technische) Übersicht über WSO2 und Stratos, und Informationen darüber, was das für Entwicklung, Architektur und Betrieb bedeutet. So blieb mir nur hängen, daß jedes WSO2-"Produkt" nur eine Kombination verschiedener WSO2-OSGi-Komponenten ist. Schade.
Java-based GUI - quo vadis?
Thick client oder Web-GUI? Um dieses Thema drehte sich dieser sehr unterhaltsame Vortrag. Nach einem herzhaften Rant über html5 ging es einmal quer durch die Entwicklung von Oberflächen mit Swing, SWT, JavaFX und auf der Android-Plattform. Der Vortrag schloß mit dem versöhnlichen Fazit, daß sowohl für Web-GUIs als auch für native Clients ihre Existenzberechtigung haben: Webanwendungen brillieren durch einfaches Deployment (Browser genügt), native Clients müssen nicht Browser-Inkompatibilitäten von zukünftigen Browsergenerationen hinterherarbeiten, was vor allem bei langlebigen Anwendungen ein großer Vorzug sein kann.
Integration Frameworks
Ein schöner Überblick über die Integration Frameworks Spring Integration, Mule ESB und Apache Camel. Take-Home-Message: Ein Enterprise Service Bus bereitet als reine Integrationslösung mitunter mehr Schmerzen als er Probleme behebt - ein reines Integration Framework funktioniert hier häufig besser. Spring Integration ist primär dann sinnvoll, wenn man sich ohnehin in einer reinen Spring-Welt bewegt; die Integrations-Bibliothek von Mule ESB brilliert durch die Anbindung von Produkten wie Facebook oder LinkedIn, ansonsten ist Apache Camel die Waffe der Wahl.
Eclipse 4
Ein Überblick über die Neuerungen beim Entwickeln mit Eclipse 4 - ein Lars-Vogel-Klassiker: Entweder an der Tastatur, oder mit der Kaffeetasse in der Hand auf der Bühne stehend :-)
Da ich bis dato keine Berührpunkte mit SWT hatte, konnte ich natürlich nur einen Grobeindruck mitnehmen. Das Fazit, daß man für neue Projekte auf das aktuelle Framework setzten kann (und sollte), war mir dennoch eingängig.
Sichere Software
Ein Diagonalflug über die OWASP Top 10. Hätte spannend werden können, blieb aber leider eher angestrengt-trocken.
Git, Gerrit, Hudson mit Eclipse und Mylyn
Gerrit ist ein sehr schönes Code-Review-Tool, das das Einchecken von Code in den Trunk quasi einem "vier-Augen-Prinzip" unterwirft. Ein Commit landet erst dann im Entwickler-Repo, wenn Hudson "grünes Licht" meldet (je nach Hudson-Config bedeutet das bestandene Unittests, Sonar-Kriterien erfüllt, etc.) und eine bestimmte Anzahl Entwickler ein "Daumen nach oben" dafür gibt. Die Integration in Eclipse ist inzwischen sehr schön, sowohl Hudson als auch Gerrit haben da schöne Anbindungen. Die Kombination eines Ticket-Systems mit Mylyn ist schon eine große Erleichterung bei der Entwicklung, das Feedback aus Sonar, Hudson und der Workflow via Gerrit klingen sehr vielversprechend.
Gegenüber dem Vortrag vom Vorjahr gab es leider nur relativ wenig Neuerungen.
Baby Steps mit Akka
Ok, mein eigener Vortrag war natürlich Pflichtprogramm ;-)
Ich hatte zunächst die Befürchtung, daß das Publikum eher spärlich werden dürfte: Letzter Programmslot im am weitesten entfernten Raum (4. Stock, Nadelöhr Aufzug) mit der schlechtesten Luft (nicht klimatisiert und nach 6 Sessions entsprechend stickig)... dennoch war der Raum gerammelt voll. Das Thema hatte wohl den Nerv getroffen: Es gab reges Interesse an Akka und ersten Schritten mit der Java-API. Edit: Eben lese ich, daß der Vortrag beim Vortrags-Ranking auf Platz 8 gelandet ist! Wow! Freut mich, daß es wohl wirklich gefallen hat!
Ich muß zugeben, daß die Vorbereitung des Vortrags mir auch extrem viel Spaß gemacht hat: Akka ist eine geniale, sehr elegante Bibliothek, und ich konnte mir beim Durcharbeiten der Doku den Ausruf "Genau so! Genau so muß man das machen!" mehr als einmal nicht verkneifen ;-)
Die Beispielsquelltexte liegen auf Github, die Folien gibt es hier zum Download.