Es scheint heute ein sonniger Tag in Mainz zu werden.  Allerdings ist es empfindlich kühl geworden. Auf dem Weg zur Rheingoldhalle konnte ich noch ein paar schöne Fotos machen. Dann alles wieder wie gehabt.  Einen Becher mit Kaffee fassen, sich durch die Menge wühlen und auf zum ersten Vortrag.

Mainz

Catering

wayne beaton

Wayne Beaton (Eclipse Foundation, Ottawa) wird etwas zum Thema 'Hot Topics at Eclipse' erzählen. Der Raum ist gut gefüllt und das WLAN funktioniert auf Anhieb. Twitter ist startbereit und nun geht es los! :-) Die Nasa setzt für ihren Mondbuggy ein RCP-Panel ein! Eclipse ist tatsächlich fast überall zu finden.  E4 (noch Incubator)  ist der nächste Quantensprung in der Eclipse-Technologie. Im Juli gibt es das erste Release. Ich hatte es ja gestern bereits erwähnt. Für die wachsende Bedeutung von Eclipse als Runtime Plattform zeichnet nicht zuletzt die Integration von Jetty verantwortlich. Interessant ist auf jeden Fall noch das Projekt Gemini. Es stellt eine OSGi-Variante (lightweight) eines JEE -Servers zur Verfügung. Weitere spannende Projekte sind Virgo, Remus, Git-Integration (eGIT), Scala Modules (Scala based OSGi development), Scout, Nebula (Widgets), Graphiti (graphical model editor), Woolsey (IP Log Tool).

So, dass wäre geschafft. Allerdings habe ich gleich den ersten Konflikt, mich zwischen Polyglott Programming mit Andes Almiray und Mylyn 3.4 zu entscheiden. Letztendlich siegt die Bequemlichkeit, da ich einfach im Raum bleiben kann.

mik kersten

Davon abgesehen ist Mylyn ein ganz aktuelles Thema und Mik Kersten ein sehr kompetenter Speaker. Mylyn fokussiert auf die aktuellen Aufgaben und reduziert die Vielzahl an Views und Perspektiven auf das Wesentliche. Hier ein paar Highlights:

  • Es gibt eine Menge Konnektoren zu SCM- Tracker- und Email-Systemen und es arbeitet auch offline.
  • Alle Daten werden als persönliches Profil gespeichert und nicht per Workspace. Das macht es möglich, die Tasks auch zwischen verschiedenen Workspaces zu 'sharen'. Allerdings sollten die beiden Workspaces nicht gleichzeitig geöffnet sein.
  • Es werden nur die Packages und Klassen angezeigt, die aktuell bearbeitet werden müssen. Das sieht natürlich wesentlich übersichtlicher aus.

Am Schluss hat sich das WLAN mal wieder verabschiedet.  Jetzt kommt eine Keynote zum Thema 'Open Source in the Enterprise' . Interessant, der Speaker kommt von der SAP, die ja weniger für OS bekannt ist. Danach ist Mittag.

Das nächste Thema hört sich auf den ersten Blick nicht so anheimelnd an.  Die Dokumentation von Architekturen in einem Wiki.  Immerhin hat es bei mir einge spannende Java oder Cloud-Themen geschlagen. Referent ist Stefan Zörner von der Firma OOSE.
So habe ich wohl nicht alleine gedacht. Die letzten Zuhörer müssen sich ihre Stühle mitbringen und es ist nicht der kleinste Raum. Wer danach kommt, sitzt auf dem Boden.

Die ersten zwanzig Minuten sind vorüber und es wurde bisher ein imaginäres Versteigerungssystem vorgestellt. Ein erstes Template wird vorgestellt: arc42 (http://arc42.de). Für die Umsetzung der einzelnen Punkte wird hier MagicDraw verwendet. Es regiert das Lego-Prinzip, alles in immer kleinere Bausteine zerlegen! Wichtig auch hier, Design-Entscheidungen sollten immer mit dokumentiert werden.  Das Warum ist oft wichtiger als das Wie.  Eine Viertelstunde vor Ende kommen wir zu den Wikis. Reichlich knapp, wenn ich die Überschrift des Vortrags lese.  Es gibt hier auch einige Probleme:

  • Wie erstelle ich Diagramme?
  • Wie versioniere ich die gesamte Dokumentation (nicht nur die Seiten)
  • Wie druckt man die gesamte Doku aus?

Möglich ist auch der Einsatz von Templatesprachen wie Velocity im Zusammenspiel mit Magic Draw und OpenDocument.  Der ganz große Aha-Effekt kam bei mir jetzt allerdings nicht auf!

Die nächste Keynote hat das Thema Flex und Java und wird von Adobe getriggert.  Der Ansatz ist gewöhnungsbedürftig. Man nehme Photoshop und designe eine Oberfläche. Werfe diese in Flash Catalyst und hauche ihr Leben ein.  Dann kommt Java, respektive Eclipse ins Spiel. Import des Projekts über das Eclipse-Plugin Flashbuilder und tränke es mit Daten.  Ob sich tatsächlich jemand dazu überreden lässt?  Entwickler sind selten erstklassige Designer, also denke ich nicht.

Nun widme ich mich wieder meinem Lieblingsthema Eclipse. Zweigeteilte Sesscion. Zuerst Boris Bokowski mit 'OpenSocial Gadgets' in Eclipse.  Es gibt eine gadgets-API, genauso wie eine opensocial - API zur Verwendung in einem gadget.xml File. Apache Shindig liefert den 'canonical container'. In Eclipse gibt es ein OSDE Projekt, dass den Container bereits mitbringt. Allerdings sehen Twitter und Google Maps in Eclipse etwas gewöhnungsbedürftig aus. Es Merks hat im zweiten Teil über den Build-Prozess einen Abriss gegeben. Kurz und knapp und etwas farblos, wie ich fand.

eberhard wolff

Eine der größten Sessions findet jetzt wieder im Kongress-Saal statt: Moderne Enterprise Architekturen-Ansätze im Vergleich mit Eberhard Wolff. Die Resonanz ist groß und der Saal gut gefüllt. Hier muss ein Spring-Verfechter auch mit JEE argumentieren. Aber er hat sich gleich klar positioniert, finde ich gut. Einer der Schwerpunkte beim Deployment ist die Modularisierung. Anforderung, komplexe Anwendungen ein 'kleinen Häppchen' zu aktualisieren. Kann letztendlich mit OSGi  aufgelöst werden. Dies ermöglicht sowohl die Zerlegung in Bausteine, als auch den Austausch zur Laufzeit. Allerdings ist es ein viel komplexeres Deploymentmodell nötig (einfache war-Files reichen nicht mehr). Problematisch sind parallel laufende Versionen, dazugehörige Datenbankschemen, usw.

Zweiter Punkt ist eine etwas nähere Beleuchtung der Cloud! Aus seiner Betrachtung ist es 'IT as service'.
Genau genommen:

  • IaaS - Infrastructure as Service
  • PaaS - Platform as Service
  • Saas -  Software as Service

Das hat ökonomische Vorteile, bietet mehr Flexibilität (Loadbalancing), Testumgebung kann einfach erstellt werden. Als Resultat werden sich Prozesse und Verantwortlichkeiten ändern.

Fazit:

  1. Die Schwachstelle von JEE ist der Classloader
  2. Modularisierung und Aktualisierung zur Laufzeit können durch OSGi gewährleistet werden
  3. Die Cloud kommt!

Letzte Keynote und vorletzter Vortrag für  heute:  Enterprise IT und WWW mit Stefan Tilkov. Seine These: In fünf bis zehn Jahren sollte es keine Webapplikationen mehr geben.  Eine Webanwendung sollte das Web auch benutzen! Die Mechanismen des WWW sollten auch bei Unternehmen erfolgreich sein. Grundlage dafür ist, dass jede Informationseinheit adressierbar sein muss. Auf jeden Fall ein sehr innovativer Denkanstoss in eine ganz andere Richtung.

Endspurt! Von der Cloud wird ja auch hier eine ganze Menge geredet. Doch welche Datenbankkonzepte stecken dahinter? Trend noSQL: nichtrelationale Datenbanken in der Praxis reißt dieses Thema ein wenig an.  Generell werden für BigTable keine RAIDs eingesetzt, es gibt auch keine Virtualisierung oder VMs. Nachfolgend ein paar Begrifflichkeiten:

  • Jackrabbit - Speicherung in Nodes, import beliebiger Dokument, Streaming von Binärdaten, WebDAV. Wird im DMS Bereich angewendet.
  • Apache Lucene - Dokumente werden in Token zerlegt und  indiziert. Vorteile sind Echtzeitsuche, Unterstützung für viele Sprachen, mit Solr gibt es einen Server, die auch geclustered werden können. Ist sehr stark für große Mengen an Text geeignet.
  • BigTable - haben im Gegensatz zu RDBMS Millionen von Spalten und Millionen bis Milliarden Zeilen, die auf vielen Servern 'hochverteilt' sind (geschachtelte Maps). Redundanz ist hierbei das Prinzip.
  • MapReduce - extrem parallelisierbarer Algorithmus / Pattern
  • CouchDB - dokumentenorientierte  Datenbank auf JSON basierend. HTTP / RESTful API, incremental Views, föderierte Server, automatische Konfliktlösung. Parallele Verarbeitung großer Datenmengen möglich . Ideal für Webanwendungen mit skalierbaren Daten und Servern.
  • Hadoop HBase - läuft auf HBase DB (Web-Crawl-DB, DWH)
  • Cassandra - Sortierung der Spalten konfigurierbar, erprobt im Inter-Data-Center-Betrieb (verteilter Cluster). Wird bei Facebook eingesetzt und ist auch als OSS freigegeben. Ist hochverfügbar und skaliert linear.

So, 21.45 Uhr. Schluss für heute und gute Nacht!