Anschließend gab Rod Johnson noch eine Keynote, in der es darum geht, wie man die Vision von Spring und Interface21 umsetzten kann.
Zur Zeit wird an einer Roadmap für die nächsten 18 Monate gearbeitet. Schon jetzt ist Spring deutlich besser als das traditionelle Java EE Modell. Aber es muss weitergehen: Hin zu einem echten objektorientierten Programmiermodell. Middleware muss intelligenter und einfacher werden. Eine wesentliche Triebkraft ist dabei Domain Driven Design.
Die Spring Entwickler-Community bringt viel interessanten Input und Spring bietet auch schon eine sehr mächtige Basis, die man ohne größere Probleme zum Beispiel für die Implementierung des EJB 3 Containers von BEA nutzen kann und man muss dabei nicht das halbe System umschreiben.
Weitere ging es mit dem Thema "Open Source in the Enterprise". Hier räumte Rod mit einigen falschen Vorstellungen auf, die es bezüglich Open Source gibt. Die erste ist, dass Open Source eine Commodiziation ist: Produkte sind erst nur gegen Geld zu bekommen und später gibt es dann Open Source Lösungen, die preiswerter sind. Dies ist offensichtlich nicht der Fall bei AspectJ und bei Spring. Es gibt eben keine anderen Lösungen in diesem Bereich und die Lösungen sind auch von sehr guter Qualität.
Die zweite falsche Wahrnehmung ist, dass Open Source irgendwie auf magische Art und Weise von einer Ansammlung von Entwicklern geschrieben wird. Dies ist natürlich nicht so, auch bei Open Source benötigt man eine Vision und Führung. Interessanterweise sind es auch bei Spring nur einige wenige Leute, denen die Entwicklung im wesentlichen zu verdanken ist. Man benötigt auch eine Organisation, Engagement und Ausdauer. Viele Sachen sind dabei nicht spannend wie zum Beispiel die Features dann später auch bei Kunden zu unterstützen, sie zu warten und zu dokumentieren. Übrigens ist es auch bei anderen Open Source Projekten wie z.B. Linux inzwischen so, dass die Entwicklung im wesentlichen von Firmen finanziert wird.
Eine weitere falsche Wahrnehmung ist, dass Open Source nur aus Spaß geschrieben wird (obwohl zum Beispiel der Titel des Buches von Linux Thorvalds schon in diese Richtung weißt). Zumindest bei Spring ist das ganze jedoch weit mehr als ein Hobby. Inzwischen umfasst Spring 600.000 Zeilen Code, es gibt ein echtes Ökosystem rund um Spring und Integration in verschiedene Enterprise-Produkte wie Application Server oder Datenbanken. Gerade die Integration lässt sich nicht so eben mal zwischendurch testen, weil dazu schon nicht triviale Umgebungen notwendig sind. Das kann man nicht als Nach-Job machen, vor allem, wenn man nebenbei dann noch eine Familie oder Hobbies haben will...
Dann das Thema, dass Open Source nichts kostet. Das ist nicht wirklich richtig, denn die Lizenzkosten sind nur ein Teil der Total Cost of Ownership. Dazu kommt auch Training, Support und Skills, die man aufbauen muss. Allerdings konkurriert Spring hier meiner Ansicht nach oft mit In-House-Entwicklungen, bei denen gerade diese Themen deutlich teuerer werden, da man sie selber leisten muss und nicht am Markt kaufen kann.
Rod unterbrach dann die Keynote für Steven Schuurmann (dem widme ich einen eigenen Post). Am Ende kam er noch auf das Thema zu sprechen, dass durch die Spring-Community auch die Möglichkeit besteht, interessante und gute Leute anzustellen. Dazu gehören natürlich Adrian Colyer, der das Aspect-Projekt leitet und 13 Jahre lang bei IBM im Bereich Middleware gearbeitet hat. Dann noch Costin Leau, der auch schon in Pitchfork deutliche Spuren hinterlassen hat und im Spring Community Forum extrem aktiv ist. Außerdem leitet er das Spring Modules Projekt. Eine weitere Neueinstellung ist Ramnivas Laddad, der "AspectJ in Action" geschrieben hat und außerdem an einem Aspect Refactoring Buch arbeitet.
Ziel von Interface21 ist also, eine kritische Masse an außergewöhnlichen Leuten zu haben und so ein großes ganzes zu erzeugen. Man kann also sicher sein, dass hier noch viele spannende Dinge passieren...