Montag, Januar 12, 2009

Perlen der Internationalisierung

Eine große Internetanwendung hat rechts oben zwei Links stehen: "Einloggen" und "Anmelden". Da kann man schon mal eine Weile drüber nachdenken.

Und ein bekanntes Internetsystem, mit dem man VOIP machen kann, sagt ständig "XYZ kam online". So begeistert sind also die Benutzer dieses Systems...

Post bewerten

Ubuntu für No-Details-Charaktere: Schritt 10 (Wine statt Windows)

Freitag hatte ich jetzt tatsächlich mal eine Situation, in der ich ein Programm benutzen musste, dass es nur unter Windows gibt. Man muss dazu aber Windows gar nicht starten. Man kann viele Windows-Programme mit Hilfe von Wine direkt unter Ubuntu laufen lassen.

Cool!

Post bewerten

Dienstag, Januar 06, 2009

Ubuntu für No-Details-Charaktere: Schritt 9 (Skype)

Jetzt kommt Skype dran. Es gibt eine Ubuntu-Version als Debian-Package. Leider steht Skype nur als 32-Bit-Version zur Verfügung und mein 64-Bit-Ubuntu will das nicht installieren.
Es gibt aber eine gute Doku, wie man es trotzdem hinkriegt im deutschsprachigen Ubuntu-Wiki. Soweit läuft auch alles. Aber beim Audio-Testpassiert nichts. Mal in die Skype-Optionen gucken. Und tatsächlich kann man dort zwischen verschiedenen Audio-Treibern wählen, die mir alle nichts sagen. Zum Glück sind es nur drei. Ich probiere einfach alle aus und der letzte (das war ja klar) funktioniert auch.
Jetzt habe ich nur noch das Problem, dass mein Mikro nicht funktioniert. Nach etwas Suchen stelle ich fest, dass in Ubuntu das Mikro ausgeschaltet ist. Das kann man einfach beheben im Ubuntu-Desktop. Hey, was ist das denn? Man kann dort einen Mikro-Boost einstellen. Was der wohl macht? Wenn man ihn zu hoch aufdreht, auf jeden Fall Rückkopplungen :-) Aber wenn man es nur etwas aufdreht, wird die Mikro-Aufnahme lauter. Das ist cool. Wenn ich das Mikro des Notebooks benutzt habe, war das unter Windows eigentlich immer zu leise. Jetzt hört es sich schon viel besser an.

Post bewerten

Ubuntu für No-Details-Charaktere: Schritt 8 (DVDs)

Nachdem ich bereits flackernde Videos beseitigt habe, sollte ich auch kommerzielle DVDs gucken können. Stimmt aber leider nicht. VLC beendet sich beim Versuch, eine DVD abzuspielen, kommentarlos selbst.
Durch Recherchen im Internet finde ich heraus, dass man anscheinend etwas namens libdvdcss2 braucht. Zum Gück ist gut beschrieben, woher man das Ding bekommt und wie man es installiert. Nicht beschrieben ist, dass man VLC danach neu installieren und dann den Rechner neu booten muss. Aber danach funktionieren auch DVDs.

Post bewerten

Montag, Januar 05, 2009

Ubuntu für No-Details-Charaktere: Schritt 7 (Applets)

Heute wollte ich dann mal gucken, ob Clipboard2Web nach meinem Redeployment auch noch korrekt funktioniert. Dabei habe ich festgestellt, dass im Firefox das Applet nicht funktioniert. Immerhin weiß ich jetzt, dass die Fehlermeldung in Clipboard2Web korrekt angezeigt wird, wenn der Browser keine Applets kann :-)

Aber warum will Firefox nicht? In den Optionen sind Applets aktiviert und eine aktuelle VM habe ich inzwischen ja auch installiert. Recherche im Internet führt mich auf Seiten, die mir Tipps geben, die ich viel zu technisch finde; so nach dem Motto: "Besorge Dir das JDK von SUN und mache ein Debian-Package daraus und benutze dazu Unmengen Kommandozeilentools, die Du noch nie gesehen hast und die teilweise noch gar nicht auf Deinem System installiert sind."

Gibt es das Problem vielleicht nur mit meinem Applet? Ich suche nach anderen Applets im Internet und probiere mal das von Self-Html aus. Das funktioniert auch nicht. Aber jetzt weist Firefox mich darauf hin, dass ihm ein Plugin fehlt und ich das jetzt installieren könnte. Also installiere ich das Plugin (IcedTea) und schon funktionieren auch die Applets.

Ich muss mir mal angucken, wie Self-Html das Applet eingebunden hat. Da muss ja etwas anders sein als bei Clipboard2Web. Schließlich hat mir Firefox bei meinem Applet keinen hilfreichen Hinweis gegeben.

Post bewerten

Samstag, Januar 03, 2009

Ubuntu für No-Details-Charaktere: Schritt 6 (Zwischenstand)

Heute habe ich mal wieder Windows gestartet und dabei auf die Uhr geguckt.

Aktueller Zustand meines Notebooks: Bis zum Login-Screen benötigt Ubuntu 1 Minute und Windows Vista 1 Minute und 30 Sekunden. Da sieht Windows gar nicht so schlecht aus. Aber nach dem Login passiert ja noch etwas, bevor man arbeitsfähig wird. Und da heißt es Hasta la Vista, Windows. Ubuntu braucht nach dem Login noch 30 Sekunden, bis ich arbeitsfähig bin. Windows Vista braucht 8 Minuten und danach rattert immer noch die Festplatte im Hintergrund.

In Summe dauert das Booten mit Ubuntu also 1:30 Minuten und Windows Vista 9:30 Minuten, also über das 6-fache.

Post bewerten

Dienstag, Dezember 30, 2008

Ubuntu für No-Details-Charaktere: Schritt 5 (Entwicklung)

mor.ph ruft. Dort habe ich Clipboard2Web in einem kostenlosen Paket gehostet. Als Gegenleistung verlangt der Hoster, dass ich meine Anwendung mind. monatlich aktualisiere. Ansonsten wird die Anwendung stillgelegt.
Wenn noch 14 Tage übrig sind, bekommt man eine E-Mail, dass man seine Anwendung mal wieder neu deployen sollte. Jetzt ist es soweit.

Downloads
Dazu muss ich Java und Grails unter Ubuntu installieren. Java lässt sich über die in Ubuntu eingebauten Nachlade-Mechanismen elegant und einfach installieren. Ich muss mir nicht mal Gedanken darüber machen, wohin das Zeug installiert werden soll. Ubuntu kennt den jeweils passenden Ort.

Grails muss ich manuell herunterladen. Glückerlicherweise kann ich das direkt als Debian-Package tun und mit dem Package-Installer auch auf Knopfdruck installieren.

JAVA_HOME
Java ist danach auch sofort einsatzfähig, bei Grails muss ich noch selbst Hand anlegen. Grails beschwert sich nämlich darüber, dass JAVA_HOME nicht gesetzt ist. Das macht der Java-Installer offensichtlich nicht selbst. Ist auch klar, weil es sehr viele Möglichkeiten gibt, wo man JAVA_HOME definieren kann. Ich bin da auch kein Experte und definiere es erstmal in /etc/environment. Das scheint das passende Ort für globales Zeug zu sein.

Grails
Danach lässt sich Grails aus der Kommandozeuge starten. Wenn ich allerdings etwas Produktives mit Grails machen will, funktioniert es nicht. Genaueres Hinsehen verrät, dass Grails als Versionsnummer null angibt. Das ist natürlich nicht OK. Kurze Recherche im Internet ergibt, dass das von mir verwendete Debian-Package korrupt ist. Es ist eine korrigierte Version hier, die aus mir unerfindlichen Gründen nicht über die Grails-Download-Page erreichbar ist.

grails upgrade
Allerdinge habe ich die Version 1.0.4 installiert und meine Anwendung habe ich mit Versionb 1.0.3, gebaut. Also beschwert Grails sich, dass die Versionen nicht zusammenpassen. Aber mit grails upgrade ist das Problem schnell behoben. Schnell noch bestätigen, dass Grails einige Dateien ersetzen darf - business as usual. Denkste! Grails hat mein build.xml überschrieben mit der völlig sinnfreien Vorlage. Argh! Naja, nicht so wild. Mein Original-Build-File habe ich ja in meinem Subversion-Repository. Also muss ich noch schnell meinen Lieblings-Subversion-Client installieren: Eclipse.

Eclipse und dann nochmal
Ecllipse kann ich über die Download-Features von Ubuntu elegant installieren. Als ich auf mein SVN-Repository zugreifen möchte, stelle ich fest, dass von Eclipse leider nicht die aktuellste Version installiert wurde. Also lade ich die manuell von eclipse.org herunter. Durch die vorherige automatischen Installation weiß ich jetzt immerhin, wohin ich Eclipse installieren sollte. Also lösche ich die alte Installation von Hand (rm -r), wechsle ins neue Eclipse-Verzeichnis und starte eclipse. Und belohnt werde ich mit einer Fehlermeldung, dass die Installation nicht korrekt ist. Die jetzt folgende Odysee durch das Internet erspare ich dem Leser lieber. Das Ergebnis wird dadurch nicht weniger peinlich für mich. Die Original-Eclipse-Installation hat in einem bin-Verzeichnis ein Shell-Script namens eclipse angelegt und das aktuelle Verzeichnis befindet sich unter Linux per Default nicht im Path. Also habe ich weiterhin das alte Shell-Skript aufgerufen. Nach Löschen des Shell-Skripts und Aufruf durch ./eclipse startet Eclipse schließlich.

Java-VM
Beim Start-Bildschirm warnt Eclipse mich, dass GCJ als Java-VM konfiguriert ist und Eclipse auf dieser VM nicht getestet wurde. Keine Ahnung, was GCJ ist, aber es wird schon klappen. Leider nicht sehr weit. Sobald ich versuche, das Update-Center in Eclipse zu öffnen, schmiert Eclipse ohne weiteres Feedback ab. java in der Shell zeigt, dass GCJ ein bei Ubuntu mitgeliefertes GNU-Java ist. Ich hatte Java 6 von SUN ja bereits installiert. Also schnell noch das passende bin-Verzeichnis in etc/environment zum PATH hinzugefügt und schon läuft auch das Update-Center wieder.

Subversive
Beim Versuch, Subversive als Subversion-Client in Eclipse zu installieren, fällt mir wieder ein, dass Eclipse mein Lieblings-CVS-Client ist. Daraus gleich zu folgern, dass es auch mein Lieblings-SVN-Client ist, war vielleicht etwas voreilig. Jetzt fällt mir wieder ein, wie grauenvoll die Installation von Subversive ist. Ich gehe auf die Installation-Webseite zu dem Subversive-Plugin. Dort steht Schritt für Schritt, was man tun muss. Leider sehr umständlich. So steht dort z.B. nicht, wie due URL für die Update-Site steht. Stattdessen steht dort die URL eine Webseite, auf der die URL für die Update-Site steht. Also muss man erst auf diese Seite und die URL dort suchen. Umständlich. Und wenn man dann das Plugin installiert hat, läuft es nicht, weil andere Plugins fehlen (Connectors, Integrators, ???). Und die finden sich nochmal auf einer anderen Seite. Viel komplizierter geht es wohl nicht. Am Ende bekomme ich das Zeug doch noch zum Laufen - ich habe einfach pauschal alles installiert, was Subversion im Namen hatte (außer das, was explizit Windows im Namen hat). Endlich kann ich mein altes Build-File aus dem Subversion-Repository restaurieren.

Grails in Eclipse
Jetzt öffne ich ein Grails-Projekt, das ich unter Windows erstellt habe. GRAILS_HOME zeigt auf einen Ort auf der Windows-Partition. Das muss ich in Eclipse umbiegen. Kein Problem, vor allem weil Grails so nett ist, mir beim Starten zu sagen, wo es installiert ist - das hat Java nicht von sich aus getan. Das musste ich erst auf der Platte suchen.

Deploy
Und jetzt kann ich aus Eclipse über das Build-File meine Anwendung neu deployen. Hurra, geschafft.

Fazit
Ich war davon ausgegangen, dass ich mit Ubuntu eher im Bereich Multimedia/Office Probleme bekomme als im Bereich Entwicklung. Aber das war weit gefehlt. Die meisten und schwierigsten Probleme hatte ich im Bereich Entwicklung. Aber sie waren auch noch zu meistern.
Ich werde mir aber mal ernsthaft überlegen, ob ich wirklich Subversion verwenden möchte. Gefühlt hatte ich mit CVS weniger Probleme (nicht nur, was den Client angeht). Oder ich gucke mir gleich mal was Innovativeres an, wie z.B. Bazaar.

Post bewerten

Sonntag, Dezember 28, 2008

Ubuntu für No-Details-Charaktere: Schritt 4 (multimedial)

Heute wird es multimedial.

Fotos
Zuerst möchte ich meine Fotos auch unter Ubuntu sehen und bearbeiten. Unter Windows habe ich Picasa2 benutzt. Das ist gut und das gibt es auch für Linux. Allerdings bringt Ubuntu bereits F-Spot Fotoverwaltung mit. Das sieht auf den ersten Blick gut genug aus für mich. Ich kann einfach die bisherigen Foto-Ordner importieren. Einfache Bildbearbeitungsfunktionen sind in F-Spot integriert, für alles kompliziertere wird Gimp gestartet. Ich versuche mal mit F-Spot mein Glück. Mal sehen, wie es sich in der Zukunft bewährt,

Importieren der Fotos von der Kamera ist auf jeden Fall genauso einfach wie unter Windows. Kamera mit dem USB-Kabel mit dem Rechner verbinden und schon kann ich die Bilder auf Tastendruck importieren.

Musik
Bei Musik ist es das gleiche Spiel. iTunes gibt es auch für Linux. Bei Ubuntu ist Rythmbox dabei. Auch hier kann ich einfach die existierenden Ordner mit Musik importieren. Das Programm sieht iTunes sehr ähnlich. Ich gebe auch Rythmbox eine Chance. Außer Musik abspielen mache ich fast nix. Also sollte es ausreichen.

Flackernde Videos
Videos sind etwas komplizierter. Der Ubuntu-Player Totem flackert bei der Videowiedergabe unerträglich. Kurze Suche im Internet ergibt: Die Kombination aus ATI-Grafikchip, Totem-Videoplayer und den coolen Grafikeffekten von compiz führt zu dem beschriebenen Flackern. Ich könnte die Grafikeffekte von compiz ausschalten. Wie ich bereits beschrieben habe, kommt das aber auf keinen Fall in Frage. Also ein neuer Videoplayer. mPlayer hat das Problem nicht, wenn man X11 als Ausgabegerät auswählt. Leider wird das Video dann immer in Originalgröße gezeigt und das ist i.d.R. zu klein. Skalieren lässt sich das Bild nicht. Gerüchteweise soll eine gepatchte Version des mPlayers das Problem lösen. Ich und gepatcht? Lieber nicht. Aber der VLC-Player soll es richten. Tut er auch, wenn man als Ausgabegerät X11 anwählt. Sieht soweit auch OK aus.

Fazit für heute
Bis auf den Stolperstein mit dem Video-Flackern also alles ganz easy im Bereich Multimedia.

Post bewerten

Samstag, Dezember 27, 2008

Ubuntu für No-Details-Charaktere: Schritt 3 (notwendiger Unsinn :-)

Nachdem Ubuntu in Schritt 2 meines Selbstversuchs seinen Job als Bürocomputer sehr gut gemeistert hat, lasse ich jetzt mal den Nerd in mir raus. Andreas hat mir auf seinem Notebook coole Gimmicks gezeigt. Die will ich auch.
Die Komponenten dazu (compiz) sind bereits auf Ubuntu mit installiert. Anscheinend fehlt aber das grafische Konfigurationsprogramm. Das hat man mit dem Paketmanager schnell nachgeladen und installiert. Danach kann man unzählige Effekte konfigurieren.
Ich entscheide mich dafür, dass neue Fenster hineingebeamt werden. Schließe ich ein Fenster, wird das verbrannt und die Fenster schwingen beim Verschieben hin und her. Außerdem kleben sie am Bildschirmrand, wenn man sie dort ablegt. Nicht zuletzt kann ich jetzt die virtuellen Desktops / Workspaces auf einen Zylinder legen und dreidimensional zwischen ihnen umschalten.
Das hat mind. Mac-Niveau, vielleicht sogar noch besser.

Post bewerten

Montag, Dezember 22, 2008

Ubuntu für No-Details-Charaktere: Schritt 2

Heute habe ich meinen ersten echten Arbeitstag unter Ubuntu verbracht. Ich habe erstmal mit dem nackt installierten System begonnen und will die benötigten Programme immer erst installieren, wenn ich sie benötige.

E-Mails
Zuerst beginne ich mit der Bearbeitung meiner E-Mails. Das läuft wie zu erwarten ohne Probleme. Google-Mail für Privatkram und der Webmail-Client unter Firefox funktioniert natürlich auch unter Linux - meiner Einbildung nach etwas schneller als unter Windows.

Spesenabrechnung: Excel und Drucken
Dann kommt die Spesenabrechnung. Spesenabrechnung läuft bei uns über Excel. Ich kann von Ubuntu aus einfach auf alle Dokumente zugreifen, die ich auf der Windows-NTFS-Partition liegen habe. Beim Finden des Ordners mit den bereits existierenden Spesen-Excel-Dateien hilft mir der "File Browser". Die dort eingebaute Suchfunktion kommt mir schneller und einfacher vor als das, was Vista so zu bieten hat. Die entsprechenden Excel-Sheets lassen sich inkl. Macros problemlos mit Open-Office öffnen und bearbeiten.
Aber jetzt muss ich die Spesenabrechnung ausdrucken. Wie installiert man unter Linux Druckertreiber und woher bekommt man die? Also beginne ich mit der Suche im Internet. Nebenbei stecke ich schon mal das USB-Druckerkabel ins Notebook. Und noch bevor ich mir ersthaft die Ergebnisse meiner Google-Suche ansehen kann, meldet das System, dass der Treiber für meinen Canon IP4300 installiert wurde und ich jetzt drucken kann. Und das kann ich tatsächlich. Respekt. Unter Windows musste ich die Treiber immer manuell installieren.
Äh, allerdings fehlt unten und oben etwas auf dem Ausdruck. Anscheinend wird beim Drucken nicht berücksichtigt, dass der Drucker nicht das ganze Blatt vollständig bedrucken kann. Aber auch das ist schnell beseitigt. In Open-Office entsprechende Ränder definiert und gut. Zwischendurch ist das Papier im Drucker leer und ich bekomme auf dem Rechner keinen Hinweis, wie ich es unter Windows gewohnt war. Ist das jetzt besser oder schlechter? Keine Ahnung. Der Drucker steht direkt neben meinem Rechner. Ich sehe auch so, dass kein Papier mehr drin ist.

Schulungsorganisation: PDF-Viewer
Jetzt muss ich eine Schulung organisieren. Der Trainer hat die Agenda per PDF geschickt. Muss ich jetzt einen Acrobat Reader installieren? Nö! Es gibt einen "Dokumentenbetrachter". Der zeigt das Dokument einwandfrei an. Nur startet das Ding sehr schnell und braucht nicht die Startzeiten eines halben Betriebssystems wie der Acrobat Reader. Der Rest an dieser Aufgabe ist E-Mail und Wiki - also wieder Firefox als Betriebssystem im Betriebssystem im Einsatz.

Angebot: FTP und Word
Jetzt muss ich ein Angebot erstellen. Dazu hole ich mir ein ähnliches Angebot von unserem Fileserver. Dazu brauche ich Secure-FTP. Hm, im Ubuntu-Menü kann ich nichts finden. Muss ich jetzt was im Internet suchen? Ich tippe einfach mal in den "File Browser" in die Adresszeile die URL mit sftp voran. Und schon bin ich drin. Alles ist nahtlos in den "File Browser" integriert. Ich kann die Dokumente sogar direkt mit Doppelclick vom Server aus öffnen und bearbeiten, ohne dass ich die Dateien nach dem Bearbeiten wieder manuell auf den Server schieben muss. Fast schon ein wenig unheimlich...
Das Angebot ist in Word geschrieben. Wieder erledigt Open-Office den Job einwandfrei. Natürlich schicke ich dem Kunden das Angebot nicht als Word-Dokument. Er bekommt ein PDF. Dazu muss ich nicht den Umweg über Free-PDF gehen, dass sich unter Windows als Drucker tarnt. Ich kann direkt aus Open-Office das PDF-Dokument erstellen. Das geht schneller und einfacher als mit FreePDF unter Windows.

Konferenz-Präsentation: Power-Point
Jetzt muss ich noch meinen Folien für die OOP 2009 den letzten Schliff geben und die Notizen ausdrucken. Doppelclick auf die Power-Point-Präsentation öffnet mal wieder Open-Office. Auf einigen Folien scheint mir der eine oder andere Text um ein paar Pixel verschoben zu sein. Das schadet aber nicht weiter. Ansonsten werden alle Folien korrekt angezeigt und auch die Hyperlinks zwischen einzelnen Folien sind noch intakt. Also drucke ich schnell die Notizen und beende auch diesen Arbeitsschritt ohne große Zwischenfälle.

Inzwischen habe ich ziemlich viele Fenster geöffnet. Die virtuellen Desktops schaffen aber schnell wieder Übersicht.

Aufwandsschätzung: Word und diesmal FTP mit Umlauten
Als nächstes soll ich mir ein Fachkonzept ansehen und eine Hausnummer für den Realisierungsaufwand nennen. Die Dokumente hat ein Kollege auf unseren Fileserver geladen. Mit dem "File Browser" komme ich da ja ohne Probleme dran. Naja fast. Einige Dateinamen enthalten Umlaute. Die werden bei mir nicht korrekt dargestellt und die Dateien lassen sich mit diesem Namen auch nicht vom Server auf meinen Rechner kopieren. Ich kann mir für den Moment damit behelfen, dass ich die Dateien zuerst mit dem "File Browser" auf dem Server umbenenne und dann kopiere. Das Problem mit den Umlauten hatte ich schon mal bei einem Kollegen gesehen, der einen Mac verwendet. Das legt den Verdacht nahe, dass nicht Ubuntu das Problem ist, sondern die Windows-Rechner die Dateien eigenartig anlegen. Diese These wird auch dadurch gestützt, dass der Server ebenfalls ein Linux-Rechner ist. Und Linux-Rechner untereinander sollten sich ja verstehen. Ich frage mal bei den Admins nach.

Abschluss für heute
Und zu guter letzt habe ich dann diesen Blogeintrag geschrieben - mit Firefox unter Ubuntu. Natürlich auch kein Problem.

Fazit: Mein erster kompletter Arbeitstag unter Ubuntu war erfolgreich. Natürlich kann man das alles (virtuelle Desktiops, in den Explorer integriertes FTP, schnellen PDF-Viewer etc.) auch unter Windows haben, aber man muss Unmengen Zeug installieren und konfigurieren. Und persönlich habe ich das Gefühl, dass dieses ganze Installieren von Hilfstools mitverantwortlich dafür ist, dass bei mir jede Windows-Installation nach 1,5 bis 2 Jahren lähmend langsam wird. Aber natürlich kann ich jetzt noch nicht behaupten, dass sowas unter Ubuntu nicht passiert - nach nur einem Tag.

Post bewerten

Sonntag, Dezember 21, 2008

Ubuntu für No-Details-Charaktere: Schritt 1

Ich liebäugele schon lange mit Linux, habe mich da aber noch nicht so richtig rangetraut. Ich bin eher das Typ für das große Ganze und scheue mich vor den Details - keine 10 Pferde würden mich dazu kriegen, einen Kernel zu compilieren.

Vor ca. einem Jahr hatte ich einen erfolglosen Versuch auf einem etwas älteren Notebook - ich konnte keine WLAN-Verbindung herstellen.

Jetzt hat mich ein Kollege erneut angefixt. Und ein anderer Kollege hat mich herausgefordert, weil er meinte, meine Detailignoranz wäre mit Linux inkomaptibel.
Also starte ich einen zweiten Versuch. Installiert habe ich Ubuntu von Windows aus mit Wubi. Super einfach. Da muss man eigentlich nur Username und Passwort für den ersten Ubuntu-Account wählen und nach der automatischen Installation ist man direkt arbeitsfähig: Partition wird automatisch eingerichtet, man kann von Ubuntu auf sein Windows-Laufwerk zugreifen, Firefox, Open-Office etc. sind gleich installiert und das WLAN wird automatisch erkannt und man muss nur noch den Key für die Verschlüsselung eingeben - einfacher als unter Windows Vista. Und Ubuntu startet schneller als Vista. Bisher bin ich ganz angetan.

Jetzt werde ich versuchen, schrittweise immer mehr Anteile meiner Arbeit am Rechner unter Ubuntu zu erledigen. Mal sehen, wie weit ich komme. Ich werde weiter berichten.

Mein Rechner ist übrigens ein Lenovo Thinkpad T60.

Post bewerten

Sonntag, Dezember 07, 2008

Rezension zu: Refactorings in großen Softwareprojekten

Ralph Johnson hat die englische Übersetzung des Refactoring-Buches von Martin und mir gelesen und findet es gut. Da fühle ich mich jetzt ja schon ein wenig geadelt...




Post bewerten

Donnerstag, Dezember 04, 2008

Ab in den Hyperraum


IBM hat in mein Notebook anscheinend viel fortschrittlichere Technologie eingebaut, als ich bisher dachte. Vor ein paar Tagen veränderte sich der Bildschirminhalt wie oben dargestellt. In der Mitte ist das Bild noch scharf an den Rändern wird es zunehmend unschärfer. Und wer sich mit Star*-Filmen (Star-Wars, Star-Treck, Star-Gate etc.) auskennt, weiß: So sieht die Welt aus, wenn man in den Hyperraum eintritt bzw. auf Warp-Geschwindigkeit geht.
Ich hoffe, mein Rechner hatte dort keinen Kontakt mit den Bösen (Sith, Borg, Replikanten) und hat sich am Ende noch einen Alien-Virus eingefangen.
Posted by Picasa

Post bewerten

Dienstag, Dezember 02, 2008

Stories schneiden

Bernd Schiffer hat in seinem Blog ausführlich und gut beschrieben, warum und wie man Stories zerschneiden sollte, um sie klein zu kriegen.
Dazu habe ich noch eine Ergänzung, die Straßenmetapher beim Dimensional Planning. Bei diesem Ansatz unterscheidet man die "Schönheit von Stories" und verwendet eine Straßenmetapher (Diese Art des Kleinschneidens ist in Bernds Ausführungen bereits implizit enthalten.) Stories können in vier Ausführungen realisiert werden:
  • Feldweg: minimal billige Lösung, die irgendwie funktioniert. Beispiel: Ich will eine Rechnung drucken. Dazu setze ich SQL direkt in der mySQL-Konsole ab. Die ermittelten Daten übertrage ich von Hand in MS-Word und drucke die Rechnung von dort aus.
  • Kopfsteinpflaster-Straße: sehr einfache Lösung, die schon Vereinfachung/Mehrnutzen bringt. Beispiel: Die Rechnung wird automatisch gedruckt, enthält aber nur die gesetzlich vorgeschriebenen Daten wie Kunde, Gesamtbetrag und MWSt.
  • Alphaltierte Straße: gute Standardlösung. Beispiel: Die Rechnung bekommt noch die Positionen dazu.
  • Autobahn: Top-Lösung. Beispiel: Der Kunde kann seine Rechnung personalisieren.
Diese Metapher kann man zum einen gut dazu verwenden, um mit dem Product Owner auszuhandeln, wieviel überhaupt notwendig ist. Das kann die Abschätzung des Product Backlogs vereinfachen.
Und dann kann man diese Ausbaustufen auch zeitlich betrachten (auch innerhalb eines Sprints). Zuerst baut man den Feldweg und erweitert ihn dann in Richtung Kopfsteinpflaster-Straße etc.

Post bewerten

Montag, Dezember 01, 2008

Studie zu Projektmanagement

Wissenschaftliche Untersuchungen sollte man unterstützen. Es nützt uns allen, wenn wir besser verstehen, warum welche Dinge (nicht) funktionieren.
Also bitte mitmachen.

Post bewerten

Dienstag, November 25, 2008

Blog-Einträge jetzt bewertbar

Die Einträge in diesem Blog kann man jetzt bewerten - jeweils unten im Blog-Eintrag. Das ganze ist experimentell. Mal sehen, was passiert...

Post bewerten

Pull und Kanban - über die Entwicklung hinaus

Das Pull-Prinzip stammt aus dem Lean-Production und ist ein (mehr oder weniger expliziter Aspekt) agiler Softwareentwicklung. Die Idee ist, dass man nicht Arbeit in eine Ressource (z.B. Team) hineindrückt (push), sondern die Ressource sich selbst neue Arbeit holt (pull), wenn sie keine mehr hat. So wird Überlastung der Ressource vermieden.

In Scrum holt sich das Team im Sprint-Planning soviel Arbeit ab, wie es meint, im Sprint realisieren zu können - auch wenn der Product-Owner gerne mehr realisiert haben möchte. Er darf nicht mehr Arbeit in die Sprint drücken. Das Team wendet also Pull an.

Wenn man das Pull-Prinzip weiterdenkt, muss man mind. die Prozesse nach der Entwicklung mit einbeziehen (upstream processes). Faktisch findet in vielen Organisationen nach dem Sprint noch abschließende Qualitätssicherung und Überführung in den Betrieb statt. Dort sollte man natürlich auch nach dem Pull-Prinzip verfahren. Das Team drückt also nicht mit einer festen Live-Deadline die Ergebnisse des Sprints in die Qualitätssicherung und den Betrieb. Stattdessen holen sich Qualitätssicherung und Betrieb ihre Arbeiten, wenn ihre Auslastung es zulässt.

Wie setzt man das konkret um? Ganz Basic-Lean gedacht würde sich der Product Owner an das letzte Element der Wertschöpfungskette wenden und seinen Feature-Wunsch äußern, z.B. "Ich möchte, dass ich die Kontakthistorie von Kunden einsehen kann." Diesen Auftrag würde er auf einen Zettel schreiben und an den Betrieb geben.

Der Betrieb würde daraus einen (Sub-)Auftragszettel an die Qualitätssicherung formulieren: "Ich möchte eine qualitätsgesicherte Funktionalität haben, die den Anwendern erlaubt, die Kontakthistorie von Kunden einzusehen. Außerdem muss die Funktionalität geclustert auf einem Tomcat mit mySQL betrieben werden können."

Die Qualitätssicherung macht daraus einen Auftragszettel an das Entwicklungsteam: "Ich möchte eine Funktionalität haben, die den Anwendern erlaubt, die Kontakthistorie von Kunden einzusehen. Außerdem muss die Funktionalität geclustert auf einem Tomcat mit mySQL betrieben werden können. Die ganze Funktionalität muss soweit möglich mit FIT akzeptanzgetestet sein und es muss Beschreibungen geben, was noch manuell zu testen ist."

Dann beginnt das Entwicklungsteam, diesen Arbeitsauftrag abzuarbeiten. Wenn es fertig ist, liefert es die Systemfunktion an die Qualitätssicherung zusammen mit dem zugehörigen Auftragszettel. Die Qualitätssicherung verfährt entsprechend an den Betrieb und dieser an den Kunden.

Der ganze Arbeitsfluss wird also über Auftragszettel gesteuert. Diese Auftragszettel heißen im Lean-Production Kanban.

Mit den Auftragszetteln wie beschrieben in der Softwareentwicklung vorzugehen, ist i.d.R. unnötig teuer. Es wird zu viele Missverständnisse geben. Viel besser ist das persönliche Gespräch. Also wendet sich der Product Owner direkt an das Team und erläuert, was er benötigt. Was uns dann der ganze Kanban-Ausflug bringt? Bei diesem Gespräch (Sprint Planning) müssen Qualitätssicherung und Betrieb einbezogen werden. Man faltet den Prozess mit den Auftragszetteln zusammen, um schneller zu sein. Die Beteiligten bleiben aber dieselben!

Post bewerten

Montag, November 24, 2008

Direkte Kommunikation in Konfliktsituationen

Es ist eigentlich ein alter Hut: Wenn ich ein Problem/Konflikt mit jemandem habe, versuche ich das direkt mit dem betroffenen zu klären und belästige damit nicht meinen oder seinen Vorgesetzten. Das stieht dem Vorgesetzten die Zeit und führt häufig zu noch größeren Problemen.
Quint Studer hat es in einem Blogeintrag sehr schön auf den Punkt gebracht: "If an employee at my organization is upset with another employee, who do they tell? If the answer is HR, or their boss, or that person’s boss – actually, if it’s anything other than the employee they’re upset with – then your culture is at risk of being derailed."
Wenn man dann im direkten Gespräch keine Lösung finden kann, holt man sich natürlich Hilfe - und da können Vorgesetzte dann wieder hilfreich sein.

Post bewerten

Pecha Kucha

Das Buch "ZEN oder die Kunst der Präsentation", das ich bereits in einem eigenen Blog-Eintrag beworben habe, hat mich auf eine interessante Präsentationsform aufmerksam gemacht: Pecha Kucha.
Bei Pecha Kucha besteht jede Präsentation aus genau 20 Folien und jede Folie wird genau 20 Sekunden lang angezeigt. Eine Präsentation dauert also genau 6 Minuten und 40 Sekunden.
Mehr Informationen zu Pecha Kucha gibt es auf der zugehörigen Web-Site (oder für Deutschland).
Wie so eine Präsentation dann konkret aussieht, kann man sich in diesem oder diesem You-Tube-Video ansehen.

Post bewerten

Präsentieren mit ZEN

Ich bin vor einigen Wochen durch Zufall auf das Buch "ZEN oder die Kunst der Präsentation" von Garr Reynolds gestoßen. Bevor ich es bestellen konnte, bekam ich es auch schon geschenkt, und zwar von einem Konferenzveranstalter. Nach dem Motto: "Guck' mal, vielleicht kannst Du damit die Präsentation bei uns noch besser machen." Nette Idee. Dummerweise kam das Buch erst nach der Abgabefrist für die Folien bei mir an.
Natürlich habe ich das Buch trotzdem gelesen - mit wachsender Begeisterung. Mir war schon länger bewusst, dass die klassische Form der Power-Point-Präsentation häufig suboptimal ist. Daher hatte ich selbst verschiedene Dinge versucht - weniger Text auf den Folien, keine Folien etc. Das schienen mir auch Schritte in die richtige Richtung zu sein. Und in genau diese Richtung geht auch das Buch: weniger Text, keine Bullet-Point-Listen, Vortragender im Vordergrund etc. Aber es deutlich über das hinaus, was ich mir da zusammenexperimentiert habe.

In diesem Sinne ist es ein sehr gelungenes Buch für multimedial-unterstützet Präsentation (also i.d.R. mit Power-Point oder Keynote). Ich habe in zwei Vorträgen die beschriebenen Ansätze ausprobiert und damit sehr gute Erfahrungen gemacht.

Gibt es auch einen Haken an der Sache? Klar, gleich mehrere.
  1. Da man viel weniger Text auf den Folien hat, muss man entweder seinen Vortrag sehr gut kennen oder mit Karteikarten arbeiten. Die Folien helfen einem nicht mehr so sehr dabei, sich zu erinnern, was man sagen wollte. Aber eigentlich sollte man seinen Vortrag ja doch schon gut können, oder?
  2. Man muss mehr Zeit in die Vorbereitung stecken. Ich kann einen Vortrag voll mit Bullet-Point-Listen in wenigen Minuten zusammenbasteln. Für Präsentieren mit ZEN brauche ich Stunden. Allerdings: Wenn ich die ganzen Mühen auf mich nehme, um z.B. auf einer Konferenz zu sprechen (Vortrag einreichen, An- und Abreise etc.), sollte ich dann nicht das Maximum aus der Zeit herausholen, die ich habe? Wenn das, was ich zu sagen habe, mitunter 100 Leute oder mehr interessieren soll, sollte ich das Publikum dann mit schlechten Folien quälen, um ein paar Stunden Zeit zu sparen?
  3. Die Folien müssen optisch attraktiv gestaltet werden und das bedeutet für die meisten von uns, dass wir Bilder kaufen müssen. Gemessen an der Zeit für Vorbereitung, Overhead und Vortrag sind die Kosten dafür aber nicht so hoch. Im Buch gibt es Hinweise auf verschiedene Dienste, die Bilder verkaufen.
Auf dem Buch-Cover steht ein Zitat von Seth Godin: "Dieses Buch dürfen Sie keinesfalls kaufen! Denn sobald alle Menschen bessere Präsentationen gestalten, gehen meine in der Masse unter..." Ich glaube, da muss Seth Godin keine zu große Angst haben. Die meisten Leute werden wahrscheinlich durch die o.g. drei Punkte abgeschreckt. Unberechtigt, aber irgendwie auch gut für diejenigen, die sich nicht abschrecken lassen.

Meine Empfehlung: Wer mit Power-Point/Keynote präsentieren will oder muss, sollte dieses Buch lesen.

Post bewerten