Mad Avenue Blues

Nicht von der Hand zuweisen: Die Medienbranche hat sich verändert… Wer es immer noch nicht glaubt, schlafe schön weiter.

via Nico

Why being an entrepreneur

Fabelhaftes Video!

via Loic.

-Felix

Continuous Integration - Hohe Qualität beim Testen

Das Testen der entwickelten Applikation gehört heute zum Handwerkszeug eines jeden Entwicklers und sollte selbstverständlich sein. Aber wie sollte das Testen in den Arbeitsablauf integriert sein? Für diese Frage liefert Continuous Integration (CI) einen hervoragenden Ansatz. CI ist ein Softwareentwicklungsprozess, bei dem die Berücksichtigung einer Versionsverwaltung und das Bauen und Testen  der Applikation im Mittelpunkt stehen.

Hudson

Hudson

Hierfür bietet sich die Verwendung eines CI-Servers an, der eben CI unterstützt und darüber hinaus auch dem Entwickler  den aktuellen Projektstand mit einem Blick erfassen lässt. Der Bau der Applikation erfolgt automatisch, z. B. bei jedem Commit. Eventuelle Abhängigkeiten werden automatisch installiert.

In Java-Projekten wird bei jedem Build der Sourcecode kompiliert. Bei Ruby on Rails-Projekten entfällt ja dieser Schritt. Es könnten stattdessen die Testklassen ausgeführt werden. Der CI-Server zeigt immer den aktuellen Stand der Software an.

Das wohl bekannteste CI-System ist das Open-Source-System CruiseControl, welches aus der Java-Welt kommt, aber mittlerweile auch für Rails-Projekte zur Anwendung steht.

Ein weiteres gutes CI-System ist Hudson, welches ebenfalls Open-Source ist. Der große Vorteil von Hudson ist, dass Hudson als generisches CI-System angeboten wird, d. h. es unterstützt unterschiedliche Programmiersprachen und Frameworks. Dadurch entfällt in Unternehmen, wo unterschiedliche Technologien eingesetzt werden, der Einsatz mehrerer unterschiedlicher CI-Server.

Bei Verwendung der kontinuierlichen Integration hat das Entwicklerteam jederzeit eine vollfunktionsfähige Applikation, die jederzeit dem Kunden zum Testen übergeben werden kann.

-Felix

Aufgabe des Product Owner in einem agilen Team

Der Product Owner ist der Kunde/Kundevertreter. Diese Rolle ist in einem agilen Team sehr wichtig. Allzu oft wird er immer noch als “notwendiges Überl” angesehen, statt als jemand, der maßgeblich zum Erfolg eines Projektes beitragen könnte. Die Marginalisierung (Randgruppierung) des Kunden ist mit Abstand die größte Gefahr, die auf ein agiles Team wartet. Der Kunde definiert, woran das Team arbeiten soll und welche Funktionalität Vorrang hat. Der Kunde darf in einem agilen Team nicht in die Rolle des Auftraggebers verfallen, der einen Auftrag erteilt und einen Vertrag unterscheibt und dann erwartet, dass er ein seinen Vorstellungen nach ideales Produkt erhält, ohne mehr dafür zu tun, als die finanziellen Mittel zur Verfügung zu stellen. Stattdessen muss der Product Owner das Boot, in dem sein Team rudert, steuern. Das Team muss den Kunden als Teil des Teams betrachten. Schafft ein Team das nicht, sind oft negative Konsequenzen die Folge:

Das alles muss nicht sein! Der Kunde im agilen Team ist zwar mehr gefordert, aber dafür kann er maßgeblich den Ausgang seiner Projekte beeinflussen. Eine bisher noch nicht da gewesene Freiheit!

Mehr darüber nachzulesen gibt es zum Beispiel hier oder hier.

-Felix

Web Service - Was ist denn das?

Ein Web Service ist eine technische Schnittstelle, um mit einer fremden Applikation in Verbindung zu treten. Web Services sind dadurch gekennzeichnet, dass die Interaktion mit dem fremden Programm über HTTP-Nachrichten funktioniert, technisch gesehen ähnelt das dem Aufruf eines URL in einem Browser. Im Gegensatz zum Aufruf einer HTML-Seite werden die gesendeten Daten (POST) und die empfangenen Informationen in XML-Form überliefert. Das festgelegte XML-Rahmenformat für diese Art der Kommunikation heißt SOAP (Simple Object Access Protocol). XML erlaubt dabei eine klare Strukturierung der Daten. Unter einem speziellen HTTP-URL ist normalerweise beim Anbieter (Provider) das Format für den Datenaustausch hinterlegt (WSDL - Web Service Description Language). Hier ist in einer programmiersprachenunabhägigen Form beschrieben, welche Felder mit welchen Namen und Typeigenschaften gesendet werden dürfen/müssen und welche Ergebnisse zu erwarten sind.

-Felix

RIA - mehr Anwendung im Web

oracle_adf_faces_demo1

Oracle ADF Faces File Explorer

Neuerdings wird immer mal wieder das Thema RIA diskutiert. Aber was versteht man eigentlich unter RIA?

Unter RIA (Rich Internet Applications) versteht man eine Webanwendung, die einer herkömmlichen Desktopanwendung in nichts nachsteht. Dabei geht es nicht nur um das “Look-and-Feel” der Anwendung, sondern auch um die Bedienbarkeit. So will jemand das GUI nicht nur über die Maus bedienen, sondern auch mithilfe der geliebten Shortcuts (Tastaturkürzel).

Beispiele für RIAs gibt es mittlerweile viele. Ganz vorn mit dabei ist Google Mail. Das Mailprogramm kommt wie ein Desktopanwendung daher - optisch und funktional. Dank Ajax führen Klicks auf der Seite zu Änderungen, wofür die Seite nicht neu geladen werden muss. Das Benutzen einer Ajax-basierten Webanwendung macht mehr Freude, weil sie dem Benutzer eine bessere Interaktion bietet. Zahlreiche Tastaurkürzel kann der Benutzer verwenden, um seine Arbeit zu beschleunigen. Und in regelmäßigen Abständen veröffentlicht Google Mail neue Funktionen, die den Ausbau der RIA weiter voran treiben. Ein weitere bekannte RIA ist Facebook, was sich mehr und mehr zu einem eigenständigen Betriebssystem entwickeln könnte. Dank der Facebook-API kommen täglich neue Anwendungen in Facebook hinzu.

Um eine RIA zu entwickeln, hat sich das Dojo Toolkit einen Namen gemacht. Es bietet eine umfangreiche JavaScript-Bibliothek, ist natürlich Open-Source verfügbar und ist sehr gut beschrieben.

Ich glaub es zwar kaum, aber selbst Oracle (ja, ich bin beruflich etwas voreingenommen) ist in Sachen RIA schwer unterwegs und bietet mit ADF Faces eine Fülle an guten JSF-Komponenten (JavaServerFaces) an. Demos und Dokumentationen sind ansprechend aufbereitet.

Zu guter Letzt verweise ich noch auf jQuery, welches sich einen großen Namen gemacht hat. Die Tutorials und Dokumentationen sind wirklich sehr umfangreich und gut.

-Felix

Cebit 2009 - nicht mehr das was es mal war

Die Cebit 2009 liegt nun schon eine Woche zurück. Auch ich war dort. Der Freitag war für mich Cebit-Tag. Meine Freude war groß, und auch meine Erwartung. Schließlich war ich seit nunmehr 9 Jahren nicht mehr auf der Cebit. Ich erinnere noch gut, wie voll damals vor 9 Jahren der Zug war und wie groß das Gedränge an den Ständen, wo es richtig was zu sehen gab! Die neuesten Entwicklungen, Tools und Trends konnte man dort aufspüren. Ich hatte das Gefühl, die ganze Welt zentriert sich auf die Cebit. Und auch in den Jahren danach war die Cebit ein Großereignis, worüber mit Kollegen und Freunden viel geredet wurde. Allerdings empfand ich in den Jahren danach eine immer kleiner werdende Begeisterung für die Cebit und auch meine Kollegen und Freunde, die die Cebit besuchten, waren nicht mehr so begeistert.

cebit2009_1Dieses Jahr wollte ich mir selbst mal wieder ein Bild von der Cebit machen und die vielen kostenlosen Tickets machen ja die Entscheidung leicht (hat überhaupt noch jemand dieses Jahr für ein Cebit-Ticket Geld bezahlt??). Was soll ich schreiben: Ernüchternd. Enttäuschend. Langweilig. Zunächst einmal war der Zug angenehm voll. Kein Gedränge, keine Menschengruppen auf den Gängen. Dann der Weg vom Bahnhof Hannover-Latzen zum Eingang der Cebit nicht übermäßig voll. Und vor den Eingängen zur Messehalle keine Warterei. Gleich reinmarschiert. Dann in den Messehallen wieder kein Gedränge. Alles hübsch übersichtlich. Wenn ich zu langsam an den Messeständen vorbei gegangen bin, wurde ich angequatscht, ob ich mir nicht eine Demo von irgendsoeinem tollen Tool zeigen lassen möchte.

cebit2009_2Da ich durchaus für einen bestimmten Bereich für einen Kunden eine Lösung suche und gehofft habe, dass ich auf der Cebit fündig werde, habe ich mich also auch mal mit Vertrieblern unterhalten. Aber es waren eben auch “nur” Vertriebler. Sobald meine Fragen aber etwas von deren winzigen Know-how-Umfeld abwich… Schulterzucken.

Also für meinen Geschmack eindeutig zu viele Vertriebler auf der Cebit. Etwas interessanter war es dann für mich in Halle 6 bei Webciety. Dort fanden Panels zum Thema Web 2.0 statt. Grundsätzlich gut aufgezogen und interessante Themen, allerdings fehlte es auch hier an Publikum.

Alles in allem ist die Cebit für mich kein Highlight gewesen und ich denke, nächstes Jahr wird die Cebit wieder ohne mich stattfinden. Wenn ich Informationen suche, nutze ich das Internet und spreche direkt die Unternehmen an. Dafür brauche ich nicht die Cebit. Einziger Hoffnungsschimmer für mich ist Webciety. Ich hoffe, dass dieser Bereich nächstes Jahr vergrößert wird. Mit meiner Meinung bin ich übrigens nicht allein. Nico zieht ein ähnliches Fazit.

-Felix

Warum Firmen Ihre Karriere-Seiten für Bewerber attraktiv halten sollten

Mit Befragungen ist das ja immer so eine Sache: Als Leser schaue ich immer etwas kritisch die Ergebnisse an, weil ich zu wenig über die Durchführung weiß. Aber mal angenommen, dieses Befragungsergebnis ist einigermaßen repräsentativ, so ergibt sich doch ein ziemlich einheitliches Bild: 96 Prozent der Befragten Studenten suchen Informationen zu Karrieremöglichkeiten im Internet und ca. 89 Prozent davon geben an, Karriere-Websites von Unternehmen zu nutzen. Und damit häufiger als Karriereportale und Netwerke wie StudiVZ. Wohlgemerkt: Bei den Befragten handelte es sich um Studenten. Also eine sehr wichtige Zielgruppe, aus der die sogenannten High-Potentials hervorgehen, eine sehr umworbene Bewerbergruppe von Unternehmen. Für die Unternehmen ist es daher umso wichtiger, die Karriereseiten aufzupolieren, am besten mit Web 2.0-Komponenten, um sich zeitgemäß im Internet zu präsentieren.

Übrigens geht auch aus der Befragung hervor, dass die Karriere-Seiten von Philips, Siemens und IBM für Job-Suchende am attraktivsten sind. Ein Blick auf diese Seiten lohnt sich für Unternehmen daher allemal, quasi als Benchmark.

Wer mehr erfahren möchte, kann dies nachlesen in diesem Artikel der Computerwoche.

-Felix

Was ist Twitter?

Für alle, die wissen möchten, was Twitter ist, lege ich diese hübsche Slideshow ans Herz. Viel Spaß beim Ansehen!

via Björn.

Agile Java-Entwicklung in der Praxis

Zur Zeit lese ich ja das Buch “Agile Java-Entwicklung in der Praxis” von Michael Hüttermann aus dem Hause O´Reilly und besonders gut hat mir bisher dieser Satz gefallen:

“Agil bedeutet auch, davon auszugehen, dass immer Veränderungen stattfinden. Je länger sich die Fertigstellung eines Projekts ohne Beteiligung des Kunden hinzieht, desto wahrscheinlicher wird es, dass das Ergebnis komplett danebengeht. Wir müssen unsere Vorgehensweise ständig an das anpassen, was der Kunde will. Oft weiß er ja erst, was er wirklich will, wenn er einen Teil der vorgeschlagenen Lösung gesehen hat.”

Dazu habe ich noch folgende Ergänzung zu machen: Der Kunde weiß häufig auch erst, was er NICHT will, wenn er einen Teil der vorgeschlagenen Lösung gesehen hat. Und das ist aus Kundensicht auch vollkommen in Ordnung so. Das Projektteam sollte aber auf diese Veränderungen eingehen können und das ist eben durch ein agiles Vorgehen sehr viel besser umzusetzen.

Ich bin gespannt auf die restlichen 390 Seiten.:-)

-Felix

Next Page →