Joining Interface21Ich werde in kürze bei Interface21 als Consulting Manager für Deutschland anfangen. Auf diese neue Herausforderung freue ich mich und ich denke, Interface21 ist ein interessanter Arbeitgeber.
Dafür gibt es mehrere Gründe:
- Java und vor allem Enterprise Java ist immer noch eine sehr vielversprechende Technologie und wahrscheinlich die einzige moderne Technologie für große Enterprise Anwendungen.
- Interface21 hat sehr großen Anteil am Spring Framework und dieses Framework sehe ich als wesentlichen Schritt hin zu einfacherer und produktiver Java EE Entwicklung. Aus diesem Grund war es in der letzten Zeit auch ein Schwerpunkt meiner Tätigkeit. Ich glaube nicht, dass es einen konkurrierenden ähnlich eleganten Ansatz gibt.
- Mit Adrian Colyer arbeitet auch einer der Köpfe hinter AspectJ für Interface21. AspectJ und AOP sind ebenfalls ein sehr wichtiges Thema für einfachere und bessere Java EE Entwicklung.
- Weitere Produkte wie Spring Web Flow, Spring Web Services oder Grails sind auch schon in der Pipeline.
- Ein Open-Source basiertes Geschäftsmodell ist sehr interessant, wie man zum Beispiel an den letzten Zukäufen von Oracle oder der Positionierung von JBoss sehen kann.
- Bei Interface21 arbeitet eine Reihe sehr interessanter Leute: Rod Johnson (Spring-Urheben, Autor von "Expert One-on-One J2EE Development", "J2EE Development without EJB" ...), Jürgen Höller (Chef-Entwickler von Spring und Autor verschiedener Werke in diesem Bereich), Rob Harrop (Autor "Pro Spring", JMX Expert Group Member), Adrian Colyer (führender AspectJ-Entwickler)... (siehe auch hier. Dies ist mit Sicherheit eine sehr spannende Konstellation.
Ingesamt denke ich, dass es eine interessante, spannende Herausforderung werden wird.
Spring Buch nimmt Formen an...Wen es interessiert: Mein Spring Buch wird virtuell anfassbar :-) . Das bedeutet, das es
hier Leseproben gibt.
Die JBoss Issue?Gut ein halbes Jahr nach der
JBoss Issue lohnt es sich, nochmal einen Blick darauf zu werfen. Es ist bei diesem isolierten Fall geblieben, es gab keine massenhaften Abmahnungen, was den Verdacht nahe legt, dass es ein Ausrutscher war. Für JBoss wird der Application Server sowieso in Zukunft nicht mehr so wichtig sein, weil Werkzeuge wie Drools, Hibernate oder jBPM wichtiger werden. Es bleibt aber ein fader Nachgeschmack. Letzendlich wird es JBoss wohl mehr geschadet als genutzt haben, dieses Thema vom Zaun zu brechen.
Außerdem ist es interessantes Lehrstück in Bezug auf freie Software, "Free as in Freedom" und "Free as in Free Beer". Gerade durch die scheibar freiere in Bezug auf "Free as in Freedom" LGPL-Lizenz kann man nicht ohne weiteres ein JBoss-Branch unter einen anderen Namen machen, um das Problem zu umgehen. Ein schönes Paradox...
JAX Innovation AwardsNoch bis zum 18.4.2006 kann man
hier innovative Sachen als potentielle Preisträger nominieren. Dabei geht es vor allem um europäische Beitrage zu Eclipse und Java. Da ich ein europäischer Patriot bin (oder zumindest ein Europäer), finde ich die Idee ganz cool. Ich habe schon ein bestimmtes Framework dort submittet, weil es wesentlich in Europa entwickelt wird. Von daher sicher eine gute Sache. Ich bin auch ehrlich gespannt, was dabei rauskommt und wer den Preis bekommt. Lassen wir uns überraschen!
In diesem Sinne ein schönes Wochenende!
Performance und SkalierbarkeitDie beiden Begriffe Performance und Skalierbarkeit werden teilweise synonym verwendet, was mich immer wieder wundert. Der Unterschied ist eigentlich recht einfach: Performance ist die Leistungsfähigkeit, Skalierbarkeit die Möglichkeit, durch mehr Ressourcen mehr Leistung zu erreichen.
Eine Anwendung sollte natürlich in beiden Bereichen ausreichende Qualität haben. Wenn man aber die beiden Ziele gegeneinander abwägt, ist Skalierbarkeit eigentlich wichtiger. Warum? Weil an verschiedenen Stellen das Hinzufügen von Ressourcen sehr billig ist. Wenn man davon nicht profitieren kann, dann hat man sich eine einfache Möglichkeit genommen, für wenig Geld mehr Leistung zu erhalten. Beispiele, wo Skalierbarkeit wichtig ist, sind zum Beispiel Blades, mit denen man für wesentlich weniger Geld als bei Mulit-CPU Maschinen neue CPUs bekommen kann. Wenn man nun zum Beispiel seine Web-Anwendung sinnvoll strukturiert hat, kann man so sehr billig viele Nutzer unterstützten.
Ein anderes Beispiel sind Multi-Core CPUs. Auch hier gilt, dass man nur bei Skalierbarkeit der Anwendung von den neuen CPUs profitiert. Gerade in der Mac-Community, die dieses Thema mit den G5s schon etwas länger hat, gab es lustige Ergebnisse und auch bei den Intel Multi-Core CPUs gab es Anwendungen, die damit nicht umgehen konnten. Die interessante Sache ist nun, dass wir in Zukunft wahrscheinlich noch mehr Cores sehen werden, Suns Niagara geht zum Beispiel in diese Richtung.
Das bedeutet, Parallelisierung wird ein Thema - ein klassisches Informatik-Problem. Meiner Meinung nach aber nicht auf der Ebene der Algorithmen, sondern auf der Ebene von parallelen Requests, die bearbeitet werden müssen. Dieses Thema wird noch wichtiger, als es heute schon ist.
CeBITTja, wie man
hier sieht ist sie jetzt 20 Jahre alt, die CeBIT. Ich war - wenn mich meine Erinnerung nicht trügt - damals vor Ort und um die Jahrhundert-Wende dann auch einige Male als Aussteller. Mittlerweile habe ich dieses Thema ad acta gelegt - zu groß, zu viel Streß, zu wenig Fokus, zu wenig für mich interessante Inhalte. Ich bin inzwischen ein Fan von Konferenzen. Aber vielleicht fahre ich doch irgendwann mal wieder hin...
Warum Ruby keine Bedrohung istMit dem Hype um Ruby gerät eines in Vergessenheit: Java ist ein Plattform, hinter der Oracle, IBM, Sun, SAP, BEA und noch viele weitere Firmen stecken. Unabhängig von der Qualität von Java gibt es schlicht nirgendwo am Markt eine ähnliche Macht für eine eine Plattform - vielleicht gab es auch noch nie eine. An dieser Stelle kann niemand mithalten - vielleich noch Microsoft mit .NET. Und der Bereich, von dem wir hier sprechen, ist definitiv nicht das Erstellen von Web-Oberflächen für Datenbanken, auf das beispielsweise Ruby on Rails abzielt. Von daher ist Java sicher auch in Zukunft eine wichtige Sache.
Auf einem anderen Blatt steht natürlich, ob wir auch in Zukunft Java EE Anwendungen mit der Programmiersprache Java schreiben, oder ober wir dann JRuby verwenden...
Spring ist nicht alleineDie Bedeutung des Spring Frameworks wird auch daran deutlich, dass es zunehmend darauf aufbauende Technologien gibt. Die Signifikanz dieser Frameworks usw. wir zum Beispiel daran deutlich, dass es schon ein
Buch über Spring MVC und Spring Web Flow gibt.
Außerdem glaube ich, dass durch Spring aspektorientierte Programmierung ihren Durchbruch haben kann. Mit Spring steht zum ersten Mal eine Sammlung von Enterprise-fähigen Aspekten frü Transaktionen und mit Acegi auch für Sicherheit zur Verfügung. Spring Modules fügt dann zum Beispiel noch Cachin dazu. Daher wird nun auch AspectJ wird nun interessant, da es durch die Arbeit von Adrian Colyer sicher mehr Integration in Spring geben wird und auch die Aspekte aus Spring eine gute Basis darstellen. An einigen Stellen wie der
Integration in EJB 3 kommt man ohne AspectJ nicht aus. Hier wird durch AspectJ beim Erzeugen der EJB Spring die Möglichkeit gegeben, Beans zu injizieren.
Was also gerade geschieht, ist nicht nur das Spring Framework, sondern wir sehen möglicherweise, wie sich AOP endlich durchsetzt und außerdem ein ganzes Set an Technologien, die auf Spring aufbauen - einen vollständigen Enterprise Java Stack sozusagen. Das bezieht sich natürlich nur auf das Programmiermodell - die Infrastruktur ist nach wie vor der gute alte Java EE Application Server.