Schwäbisches Kleinkind

Seit gestern kann sich der geneigte Kindle-Eigner auch in Deutschland Bücher aufs eigene Gerät laden. Irgendwie hatte ich dieses Ereignis erhofft, als ich mir vor etwas mehr als 2 Wochen einen in den USA bestellte. Aber auch ohne deutschen Kindle-Shop ist das Gerät eine Bereicherung gewesen. Mit dem Store steigt natürlich dessen Wert für mich.

Wieso ausgerechnet der Kindle? Andere Reader unterstützen das offene Format EPUB, der Kindle nicht. Dieser kennt an eBook-tauglichen Formaten nur Mobipocket und das DRM-Format AZW. Beide proprietär und unter Amazons Kontrolle. Ich stimme zu, dies war mein erster eigener Einwand gegen den Kindle. Inzwischen ist dieser Einwand aber nicht mehr so relevant für meine Bedürfnisse.

Mit einem eBook-Reader habe ich schon länger geliebäugelt. Besonders reizvoll ist es, einen ganzen Packen an Büchern in Form eines kleinen Geräts mitzunehmen. Das Haptische eines "echten" Buches geht dabei natürlich verloren. Dafür lassen sich Anmerkungen beliebig ins Buch integrieren, eine Suchfunktion ist ebenfalls sehr hilfreich. Für viele Texte ist ein eBook-Reader ein Gewinn. Ich kann ja trotzdem noch "echte" Bücher lesen, wenn ich es für angemessen halte.

Anfang des Jahres durfte ich für eine Woche ein iPad testen (noch die erste Generation). Schnell lernte ich dessen Begrenzungen. Das iPad mag ein tolles Gerät sein, aber der spiegelnde Bildschirm, das LCD-Display und das relativ hohe Gewicht (ca. 0,75 kg) erlauben kein längeres Lesevergnügen. Für ein lockeres Durchblättern kann es ausreichen. Ich bin aber eher selten in der Arztpraxis und muss mich dort auch nicht mit Blättern ablenken.

Nach einigen Recherchen (schön der Test in der c't) war mir klar, dass es de facto nur zwei wirklich vernünftige Geräte gibt. Zum einen den Kindle. Mehr noch favorisierte ich den Sony PRS-650. Beide besitzen ein Display mit E Ink Pearl-Technologie. Für die Augen nur das Beste! Alles andere ist dagegen Murks. Ich habe es in diversen Läden ausprobiert.

Gut fand ich beim Sony die einigermaßen vernünftige Bedienung. Mit Hilfe von seitlich eingebauten Infrarotsensoren ist ein touchscreen-artiges Bedienen gut möglich. Ein wenig hakelig zwar, aber um Welten besser, als sich tastengestützt durch Nokia-ähnliche Menüs zu hangeln. Offenbar der Standard bei den anderen Geräten.

Meine sehr geschätzte Stadtbibliothek verleiht eBook-Reader zum Testen. Ich bekam den kleinen Bruder, den PRS-350. Das Display misst nur 5 Zoll, besitzt aber die gleiche Auflösung (800x600) wie der PRS-650 oder der Kindle. Also vergleichbar, wenn auch nicht mein Wunschgerät.

So schön das Gerät, so schrecklich die mitgelieferte Software. Nur mit Müh und Not gelang es mir, ein DRM-geschütztes eBook der Stadtbibliothek auf dem Reader lesen zu können. Erst unter Windows funktionierte es teilweise so wie beschrieben. Nach einiger Zeit wollte die Software auch dort nicht mehr die Inhalte zwischen PC und Reader synchronisieren.

Zugegeben, im Vergleich zum iPad sollte sich der "Touch Screen" des Sony besser verstecken. Das Blättern und die meisten Aktionen auszuwählen funktioniert soweit gut. Aber mit dem Sony würde ich das Zeichnen besser lassen. Davon einmal abgesehen, dass ich die Zeichnung nicht auf meinen Mac synchronisiert bekomme.

Zu meinem Glück lief mir die Software Calibre über den Weg. Synchronisationsprobleme mit dem Sony gab es nicht mehr (bis auf die Zeichnungen). Mit Hilfe von Calibre können auch Webseiten automatisiert in ein eBook umgewandelt und auf den Reader kopiert werden. Klasse ist die Möglichkeit, die Wochenausgabe der ZEIT zeitgesteuert herunter zu laden. Einfach Benutzername und Passwort angeben, fertig. Super Funktionalität.

Nur mit DRM-geschützten Formaten kann Calibre nicht arbeiten. Aber wer möchte das schon? Ich glaube / hoffe, irgendwann wird auch bei (Buch-) Verlagen die Einsicht siegen. Sprich, in der Zwischenzeit kann es schon sein, dass ich Geld für die Nutzung eines Buches ausgebe und nicht, wie bei "echten" Büchern für deren Eigentum.

Der andere große Nachteil des Sony PRS-650 ist dessen (fehlende) Verfügbarkeit. Seit Anfang des Jahres offenbar ausverkauft, sollte dieser angeblich Ende Februar wieder verfügbar sein. Jetzt haben wir Ende April und noch immer steht auf der Webseite "Im Moment leider nicht lieferbar". Der Moment dauert jetzt schon lange an. (Der PRS-350 ist mir zu klein)

Nachdem ich von Sony keine Antwort bekam (möglicher Grund könnte ja die Katastrophe in Japan sein, auch wenn wenigstens das PRS-350 in China gefertigt wurde) beschäftigte ich mich dann doch mal mit dem Kindle. Preislich ist der Kindle 80 Euro günstiger als der Sony (ohne UMTS, hat der Sony auch nicht). Das Display ist, wie gesagt, das gleiche. Die Bedienung erfolgt über Tasten, nicht per "Touch screen". Was soll's, sagte ich mir. So viel mache ich damit nicht verkehrt. Ich lese viele Bücher lieber im klingonischen, äh, englischen Original. Hatte ich schon erwähnt, dass Calibre auch EPUB nach Mobipocket konvertieren kann? Also bestellte ich mir das Gerät bei Amazon USA.

Die Lieferung sollte innerhalb von 5 Tagen erfolgen, per UPS. International ist UPS sicher eines der leistungsfähigen Logistikunternehmen. Hier in Deutschland kann ich deren Lieferbedingungen nur schwer nachvollziehen. Ideal ist, wenn man den ganzen Tag zu Hause wäre. Nach dem ersten Lieferversuch am 4. Tag wechselte ich die Lieferadresse. Hochschule statt zu Hause. Mit geübtem Blick und einiger studentischer Hilfe (danke schön, #se1) konnte ich den UPS-Menschen gut abfangen. Endlich meins!

Der Kindle lässt sich trotz Tasten gut bedienen. Die Menüs sind kontextabhängig und gut sortiert. Für die wichtigsten Aktionen sind nur wenige Tastendrücke nötig. Einige Sondertasten unterstützen die schnelle Auswahl. Die Tasten zum Blättern eigenen sich auch für Linkshänder und liegen sehr ergonomisch. Der Kindle liegt sehr gut balanciert in der Hand.

Texte (z.B. Anmerkungen) sind schneller als mit dem Sony erfasst. Nur auf Umlaute muss ich verzichten. Amazon hat besser lesbare Schriftarten als Sony ausgewählt. Der Text sieht klarer aus. Schrifttechnisch: die Serifen sind nicht so ausgeprägt. Die Synchronisation via Calibe funktioniert ebenso gut. Ein wenig besser sogar, denn Calibre kann dem Kindle Bücher auch per Mail senden, Amazon's Whispernet sei dank.

Mit Hilfe des Whispernet überträgt Amazon eigentlich die frisch gekauften Bücher auf den Kindle. Aber auch andere können darüber Bücher übertragen. Dazu erhält jeder Besitzer eine eigene Email-Adresse. Absender müssen vorher autorisiert werden. Praktisch ist der Versand von ungelesenen Webseiten per Instapaper.

Zwei Dinge funktionieren allerdings nicht so wie gedacht. Erstens, das fehlende UMTS-Modul (ich habe den kleinen Kindle, der mit UMTS kostet 50 Euro mehr) lässt sich nicht durch Tethering ersetzen. Ebenso erlaubt das WLAN-Modul nicht das Einwählen in Unternehmensnetze. Dies ist für mich kein echter Nachteil. Dann kaufe ich Bücher nur zu Hause im heimischen WLAN. Verhindert Schnellkäufe ;-). Zweitens ist es in Deutschland (noch?) nicht möglich, Textstellen zur Twittern oder auf Facebook zu posten. Aktuell sehe ich dazu keinen Anwendungsfall.

Der Kindle verfügt über einen leidlichen Web-Browser, den man aber nur in Notfällen nutzen wird. Surfen macht mit dem langsamen E-Ink-Display wenig Spaß. Apropos langsam: das des Sony hat gefühlt doppelt so lange Umschaltzeiten. Über die Akkulaufzeit kann ich keine Angaben machen. Ich bin bisher nie unter 75% gekommen, beim Synchronisieren per USB lädt der Kindle automatisch auf.

Insgesamt bin ich mit dem Gerät sehr zufrieden. Mit dem deutschen Kindle-Shop wird sich das noch bessern. Die bisher von mir getesteten Leseproben gaben einen guten Eindruck über die Inhalte. Manche Bücher konnte ich dadurch von meinem Wunschzettel nehmen, andere erhielten eine höhere Priorität.

Das gedruckte Buch ist nicht tot, es ist aber nicht mehr die einzig gute Möglichkeit längere Texte in aller Ruhe zu lesen.

Jetzt müssen nur noch die deutschen Verlage zur Vernunft kommen. Aber das wäre ein eigener Blogpost.

Schlagworte: ebook, kindle.

Vermischtes

So eine Rubrik "Vermischtes" wollte ich schon immer mal im Blog haben. Nun habe ich mich durchgerungen und meine kleine Sammlung von Friseurnamen eingestellt.

Im Laufe der Zeit wird mehr dazu kommen.

Schlagworte: friseur, misc.

Wieder da: @dkreuz

Nach 621 Tagen hat Twitter meinen Account @dkreuz wieder hergestellt. Viele, denen ich vor 621 Tagen folgte, erhielten eine Email über mein erneutes Folgen. Manche waren erstaunt. Ich auch.

Offenbar hatte Twitter ein wenig aufgeräumt. Nicht nur mein Account funktionierte wieder. Tweets, die ich gerade noch durch Twacbak gesichert hatte, waren auch wieder verfügbar. Hat Twitter alte Backups eingespielt? Egal.

Meine Aktivitäten belasse ich aber auf @implizit. Inzwischen ist mir der Name ans Herz gewachsen. Und immer wieder für einen Running Gag gut. Was ich mit @dkreuz mache? Muss ich mir überlegen. Sooo schizophren bin ich ja doch nicht ;-)

Schlagworte: fail, twitter.

PersonalTrac: Installation

Ein beliebtes Werkzeug zur Durchführung von Softwareprojekten ist Trac. Es vereinigt ein Wiki mit einer Aufgabenverwaltung und erlaubt die Integration eines Versionskontrollsystems. Darüber hinaus lässt es sich (fast) beliebig mit Hilfe von Plugins und Macros erweitern. Die Integration von Drittanwendungen, z.B. Eclipse Mylyn oder Drupal, ist ebenfalls möglich.

Klassisch serverseitig

Trac wird fast immer auf einem Server installiert. Der Zugriff erfolgt über einen Browser. Mit Hilfe des XML-RPC Plugins können auch andere Systeme, z.B. Eclipse oder Vim, sehr flexibel auf Trac zugreifen. Die Installation auf einen Server ist nicht sehr schwer, sofern einige Vorbereitungen getroffen wurde. Wie eine Installation aussehen kann, ist sehr schön auf den Support-Seiten von Uberspace beschrieben.

Auf diese Art und Weise wird Trac auch in meinen eigenen eigenen Lehrveranstaltungen verwendet. Natürlich in der Projektstudie Softwareentwicklung, und zusätzlich immer dann, wenn ein gut zu nutzendes Wiki mitsamt Aufgabenverwaltung gefragt ist: Software Engineering 1 (Requirements Management), Software Engineering 2 (weitergehende Software-Technik), Seminar E-Business-Technologien. Andere Projektstudien von Kollegen scheinen ebenfalls vom Trac-Virus infiziert zu sein (aktuell: 7).

Persönliches Wissensmanagement

Trac unterstützt nicht nur Entwicklungsteams in Ihrer Arbeit, es kann auch als Werkzeug zum persönlichen Wissensmanagement eingesetzt werden. Über das Wiki werden Informationen abgelegt, es gibt einen Template-Mechanismus zur Vorstrukturierung der Informationen. Über die Aufgabenverwaltung bleiben einzelne Arbeitsschritte nachvollziehbar. Wiki und Aufgabenverwaltung sind in Trac integriert. Vom Wiki kann einfach auf einzelne Aufgaben verwiesen werden. Zur Beschreibung der Aufgaben und deren Lösung wird die Wiki-Notation ohne jede Einschränkungen verwendet.

(Bemerkung: ich weiß, manche mögen keine Wikis zum Wissenmanagement. Diese Diskussion möchte ich hier nicht vertiefen.)

Ich selbst nutze Trac für mein persönliches Wissensmanagement seit mehr als einem Jahr. Moment, ich schaue mal im Trac nach. Ganz genau seit dem 10.02.2010. Über die Journalfunktion bleibt alles nachvollziehbar.

Für meine Projekte lege ich im Wiki eine Projektseite an, in der Aufgabenverwaltung werden diese als "Komponenten" verwaltet. Auf der Projektseite kann ich mir über ein kleines Macro (TicketQuery) alle zum Projekt gehörenden Aufgaben anzeigen lassen. Sofern es sich um Entwicklungsprojekte handelt, binde ich ein eigenes Mercurial-Repository ein. Übrigens, im Wiki kann ich auf einzelne Versionen verweisen. Ein Klick zeigt mir dann die Inhalte und Änderungen an. Alles in allem ist das Arbeiten mit Trac auch für den persönlichen Bedarf sehr bequem.

Später vielleicht mehr darüber. Hier soll es zunächst um die Installation gehen.

Im Unterschied zu anderen Systemen besitzt Trac einen wesentlichen Vorteil: Sie benötigen keine externe Datenbank. Alles kann innerhalb eines Verzeichnisses installiert werden. Damit können Sie auch Trac mit Hilfe von Synchronisationsdiensten, wie z.B. Dropbox, Wuala oder SugarSync, auf mehreren Systemen gleichwertig nutzen. Ganz ohne Server.

Installation

Zur Installation von Trac werden zwei Softwarepakete benötigt. Zunächst muss Python installiert sein, mindestens in der Version 2.4. Unter OSX oder Linux ist dies zumeist der Fall. Unter Windows müssen Sie es explizit nachinstallieren. Optimal ist die Version 2.7.x, das unter OSX vorinstallierte Python 2.6.1 arbeitet ebenfalls gut mit Trac zusammen.

Für Windows können Sie entweder das normale Python unter http://python.org/download/ oder das etwas aufgepeppte ActivePython installieren. Aktuell sollten Sie darauf achten, nicht Python 3.x zu verwenden. Die Installation ist selbsterklärend.

Unabhängig vom Betriebssystem ist dann einer der beiden Python-Paketmanager zu installieren: easy_install oder pip. Eventuell ist schon einer der beiden Paketmanager installiert. Probieren Sie es einfach einmal auf der Eingabeaufforderung (Windows) oder in einem Terminal (Linux, OSX) aus. Welchen Sie nehmen, ist zum Teil Geschmacksache. Ich selbst bevorzuge pip, nutze aber auf meinem Desktopsystem (historisch begründet) easy_install. Zur Installation von easy_install unter Windows gibt es von mir einen Beitrag, der bei der Installation helfen kann.

Jetzt haben Sie die Werkzeuge zu Installation beisammen.

Sprachunterstützung

Trac kann mehrere Sprachen unterstützen, benötigt aber dazu das Paket Babel. Dieses sollten Sie vor Trac installieren:

easy_install babel

oder

pip install babel

Trac

Nun installieren Sie Trac mit Hilfe eines der beiden Paketmanager ebenso einfach, wie eben Babel:

easy_install trac

oder

pip install trac

Damit haben Sie die zunächst benötigte Software installiert.

Instanz einrichten

Jetzt gilt es die Projektinstanz einzurichten. Es kann beliebig viele, unabhängige Instanzen geben (serverseitig ideal: pro Team eine Instanz), aber für das persönliche Wissensmanagement ist eine Instanz ausreichend.

Wechseln Sie in der Eingabeaufforderung/Terminal in das Verzeichnis, dass Ihre Instanz enthalten soll. Keine Angst, Sie können das Verzeichnis später noch verschieben. Dort legen Sie eine Instanz an, die z.B. den Namen PWM (persönliches Wissensmanagement) erhalten soll:

trac-admin PWM initenv

Als erstes wird nach dem Projektnamen gefragt. Die anschließende Frage nach dem "Datenbankverbindungsstring" lassen sie unbeantwortet und drücken einfach die Return-Taste. Es werden jede Menge Daten ausgegeben. Am Ende steht dann eine kleine Anleitung, wie Sie Ihre Instanz ("Projektumgebung") experimentell in Betrieb nehmen können. Probieren Sie es aus:

tracd --port 8000 PWM

Geben Sie in Ihrem Browser die Adresse http://127.0.0.1:8000/PWM/ ein und sehen Sie sich ein wenig um. Sie werden feststellen, dass Sie sich leider nicht anmelden können, um Daten einzugeben. Dazu müssen Sie die Anmeldung konfigurieren und eine erste Berechtigung vornehmen.

Beenden Sie die Instanz durch einen beherzten Tastendruck auf STRG und C.

Übrigens, Sie können eine Instanz, die vorher auf einem Server lief, in den meisten Fällen einfach auf Ihr lokales System kopieren, es konfigurieren (wie gleich beschrieben), und dann weiternutzen.

Anmeldungsverfahren konfigurieren

Angenommen, Ihre Benutzerkennung soll onkeljonas lauten. Geben Sie zunächst dem Benutzer onkeljonas alle Rechte:

trac-admin PWM permission add onkeljonas TRAC_ADMIN

Benutzername und Kennwort müssen irgendwo abgespeichert werden. OSX und Linux bringen schon alles mit: htapsswd. Geben Sie im Terminal ein:

htpasswd -c PWM/userpass onkeljonas

Geben Sie das gewünschte Passwort an. Als Ergebnis wird eine Datei userpass mit Benutzername und Kennwort im Verzeichnis der Instanz abgelegt.

Windows-Benutzer müssen das Programm htpasswd nachinstallieren. Alternativ kann einer der vielen Generatoren für .htpasswd-Dateien verwendet werden. Wichtig ist, den Inhalt als Datei PWM\userpass abzulegen.

Darüber hinaus müssen Windows-Benutzer noch das Modul fcrypt installieren:

easy_install fcrypt

oder

pip install fcrypt

Instanz starten

Jetzt ist alles bereit, um die konfigurierte Instanz zu starten. Unter OSX und Linux erfolgt der Start mit:

tracd --port=8000 --basic-auth="*",PWM/userpass,PWM PWM

Probieren Sie es aus. Wenn die Anmeldung funktioniert, können Sie die Instanz mit STRG-C abbrechen und den Parameter --daemonize zusätzlich angeben. Damit wird die Ausführung in den Hintergrund geschickt, das Terminal kann beendet werden. Ein wenig mehr Sicherheit bringt der Parameter --hostname=127.0.0.1. Damit kann nur vom lokalen System auf die Instanz zugegriffen werden. Alle Parameter können auch abgekürzt werden:

tracd -p 8000 -d -b 127.0.0.1 --basic-auth="*",PWM/userpass,PWM PWM

Unter OSX kann das Ganze auch automatisiert werden, indem Sie diesen Befehl in ein Automator-Skript eingeben und das Skript als "Anmeldeobjekt" registrieren. Unter Linux gibt es, je nach Distribution, einen ähnlichen Mechanismus.

Unter Windows ist das Vorgehen ähnlich, aber leicht anders. Zunächst müssen Sie die Datei tracd-script.py lokalisieren. Sofern Sie Python in der Version 2.7 installiert und dabei die Pfade nicht geändert haben, befindet sich diese Datei im Verzeichnis C:\Python27\Scripts. Starten Sie Ihre Instanz mit Hilfe des Befehls pythonw von der Eingabeaufforderung:

pythonw c:\Python26\Scripts\tracd-script.py -p 8000 -b 127.0.0.1 --basic-auth="*",PWM/userpass,PWM PWM

Sollte pythonw nicht gefunden werden, so sollten Sie vermutlich eine neue Eingabeaufforderung starten, da der Suchpfad nicht aktualisiert wurde.

Auch unter Windows lässt sich der Startvorgang automatisieren. Dazu legen Sie im Autostart-Ordner ein Skript mit obigem Inhalt an.

Erste Anpassungen

Wenn Sie das Logo links oben anpassen oder gar ein Favicon anlegen wollen, müssen Sie die Konfigurationsdatei PWM/conf/trac.ini anpassen. Legen Sie vorher im Verzeichnis PWM/htdocs das gewünschte Logo (z.B. unter logo.jpg) und das Favicon (unter favicon.ico) ab. Ändern Sie in der Konfigurationdatei folgende Abschnitte:

[header_logo]
alt = Logo
src = site/logo.jpg

und

[project]
icon = site/favicon.ico

Fertig. Sie brauchen dazu die Instanz nicht einmal beenden und neu starten.

(Kleiner Hinweis: innerhalb von Trac wird der Pfad site auf das Verzeichnis htdocs abgebildet.)

Vielleicht möchten Sie auch den Port 8000 auf einen anderen Wert ändern. der Port 8000 wird häufig von frisch installierter Software verwendet, die sich dann mit Ihrer Instanz stören würde. Sie sollten für den Parameter --port (bzw. -p) nur einen Wert größer 1024 (und kleiner 32000) angeben. Bei Portänderungen müssen Sie die Instanz natürlich neu starten.

Sie können auch weiteren Benutzern einen Benutzernamen und Passwort zuweisen. Die Rechte verwalten Sie innerhalb von Trac im Admin-Bereich.

Wie geht es weiter?

In weiteren Artikeln möchte ich zeigen, wie Sie Ihre Instanz mit Hilfe von Plugins und Macros erweitern können. Wünsche und Anregungen nehme ich gerne entgegen.

Schlagworte: python, tool, trac, tutorial.

Projektstudie Softwareentwicklung WS 2010/11: Lessons Learned

Auch dieses Semester haben alle, die Teilnehmer und ich als Veranstalter, viel gelernt. Wir haben zwei Retrospektiven durchgeführt: eine zur Halbzeit, die andere zum Abschluss. Das war angemessen, konnte insbesondere ich auf die Erkenntnisse zur Halbzeit in Teilen reagieren. Ich denke, die Teilnehmer konnten dadurch Ihre Arbeiten vertiefen.

Ich möchte allen danken, die sich für die Projektstudie engagiert haben. Wir haben zu einem guten Miteinander gefunden. Es hat mich gefreut, dass wir offen miteinander reden und diskutieren konnten, so gut es in einer vermeintlich permanenten Prüfungssituation möglich ist. Dazu ist eine gehörige Portion Vertrauen nötig. Ich hoffe es nicht enttäuscht zu haben.

Danke schön!

Was hatten wir uns aufgeschrieben (meine Anmerkungen in kursiv)?

Halbzeitretrospektive

Was war aus Ihrer Sicht gut?

  • Projekte mit externen Firmen
    • Ein Projektteam hat für SAP Consulting die im Wintersemester 2009/10 weiterentwickelte Anwendung um Workflow-Aspekte erweitert. Eigentlich erst ein Thema für das 4./6. Semester.
  • Coaching bei Projektbeginn
    • Wir hatten das Glück, rechtzeitig einen sehr engagierten Coach zu finden. Ich halte diese Art des studentischen Engagements für alle sehr hilfreich.
  • Aufwand ist mit "realen" Projekten vergleichbar
    • So soll es sein: eine gute Simulation der Praxis.
  • Erlangen von praktischem Wissen & Erfahrungen
    • Dito
  • Vergleich mit vorherigen Semestern ist nützlich
    • Das ist das Prinzip: keine Geheimnisse.
  • Gelerntes konnte ins Projekt eingebracht werden
    • Für einen Erfolg in der Projektstudie benötigen Sie die Kenntnisse aller Informatikfächer des Grundstudiums. Schön, wenn Sie das eher theoretische Wissen endlich vertiefen konnten.
  • Die Projektstudie findet zu gutem Zeitpunkt statt (im 3. Semester)
  • Umgang mit Trac, Liferay und Maven gelernt
    • Alles für die Softwareentwicklung wichtige Werkzeuge. Nicht zu vergessen: Mercurial und Hudson ;-)
  • Selbstständige Themenwahl
    • Das war dieses Semester ein Experiment. Sie haben sich schöne Aufgaben gestellt, um das Studiengangsportal aufzubauen.

Was war auch Ihrer Sicht verbesserungswürdig?

  • Teamzusammenstellung nach Stärken / Schwächen
    • Einige Teams waren in der Tat, was entwicklungsstarke Teilnehmer angeht, eher schwach besetzt. Manchmal stellt sich das auch erst im Verlauf des Semesters heraus. Die zufällige Zusammensetzung soll Sie zum einen im Grundstudium ermuntern, sich mit Programmierung zu beschäftigen. Zum anderen ist auch in der beruflichen Praxis die Teamzusammensetzung immer wieder "verbesserungswürdig".
  • Zu wenig Räume (vor allem Dienstags)
    • Die Anzahl der Studierenden wächst leider schneller, als Gebäude gebaut werden können. Ich denke trotzdem, dass wir mit der Aufteilung in Montag (viele freie Räume) und Dienstag (eher gemeinsame Termine) das gut hinbekommen haben.
  • Mehr Projekte mit externen Firmen
    • Ich versuche gerne Ihre Interessen mit denen der Unternehmen in Einklang zu bringen.
  • "Test-Projekte" schon vorher? (z.B. im 2. Semester?)
    • Das ist ein Punkt der sog. "Studien- und Prüfungsordnung", den ich selbst nicht alleine beeinflussen kann. In der nächsten Ordnung wird es aber schon im 1. und 2. Semester Freiräume für Projekte geben. Lassen Sie sich überraschen. Wir als Studiengang haben dies im Blick.
  • Teamgröße sollte bei allen gleich sein
    • Das lässt sich nicht immer einhalten. Noch problematischer wird es, wenn mehrere Teilnehmer aus einem Team die Projektstudie vorzeitig beenden wollen. Aber ich probiere es immer.
  • Zeitplanung
    • Ja, ein wichtiger Punkt. Fangen Sie von Beginn an mit einer angemessenen Planung an. Lassen Sie gerade am Anfang die Zügel nicht schleifen. Einmal im Rückstand lassen sich die zu erledigenden Aufgaben sehr schwer nachholen.
  • Mehr Hilfestellungen bei Liferay
    • Stimmt, da habe ich Sie ins kalte Wasser geworfen. Ab kommenden Semester sollten alle Teilnehmer schon im 2. Semester eine erste Einführung durch einen Kollegen (in Web Engineering 2) erhalten haben. Siehe auch den nächsten Punkt.
  • Ggf. Coach für Entwickler
    • Eine gute Idee. Bisher rekrutierte sich der Coach eher aus der Reihe der früheren Projektleiter und konnte daher weniger bei der eigentlichen Entwicklungsarbeit helfen. Im kommenden Semester wird es einen Coach für Entwickler geben.
  • Detaillierte Aufforderungen vielleicht später formulieren
    • Eine gute Taktik, sich nicht zu früh zu verzetteln. Passt auch zu dem meist iterativ, inkrementell ausgestalteten Vorgehensmodell.
  • Unstimmigkeiten zwischen Professor und Coach
    • Das kann passieren, wenn zwei Menschen nicht identisch sind. Durch mehr Kommunikation mit den Coaches werde ich versuchen, widersprüchliche Aussagen zu vermeiden.
  • Projekttools sollten vorgestellt werden
    • Wurden sie doch. Aber ich gebe zu: das eine oder andere Werkzeug könnte eher vorgestellt werden.

Was gab es für Ideen?

  • Teameinteilung über "Gruppenköpfe"
    • Hier ist die Idee, ähnlich wie bei der Fußball-WM/-EM, sicherzustellen, dass entwicklungsstärkere Teilnehmer in allen Teams vorkommen. Offen ist aber, wie gute Entwickler zu Beginn des Semesters verlässlich erkannt werden können. Es gab immer wieder Fälle, bei denen jemand sich gesteigert hat oder sich dann doch als schwächer herausstellte. Ich werde diesen Punkt im nächsten Semester einmal ausprobieren.
  • zusätzlicher Coach für Entwicklung / QS / Dok.
    • Siehe oben
  • Ab nächstem Semester sind alle Entwickler
    • Die feste Rolleneinteilung mag zum einen eine gewisse Sicherheit geben. Zum anderen fördert sie aber das Scheuklappendenken. Ein geschätztes Viertel macht den Eindruck, als müssten sie nur die eigenen Aufgaben erfüllen, ohne auf das Gesamtergebnis zu schauen. Wenn jeder für das gesamte Projekt verantwortlich ist, so ist meine Hoffnung, erhöht sich die Teamleistung. Probieren wir es aus.
  • möglichst 6-7 Mitglieder pro Team, eher nicht 5
    • Ja, sehe ich auch so.
  • PM2-Skripte erweitern mit Beispielen
    • Siehe oben ("Projekttools")
  • Bessere Einleitung von Tutorials
    • Siehe oben ("Projekttools")
  • Teilnehmer schon im 2. Semester Trac arbeiten lassen (Software Engineering 1, Projektmanagement 1)
    • Guter Punkt. Habe ich für SE1 eingerichtet.

Abschlussretrospektive

Viele Punkte aus der Halbzeitretrospektive fanden sich in der sehr gut moderierten Abschlussretrospektive wieder. Eine Punkte wurden relativiert, einiger verstärkt.

Rechtzeitig anfangen

Das Semester ist mit 15 Wochen eher kurz. Der erste Monat wird für die Teamfindungsprozesse und die Ermittlung der Anforderungen benötigt. Die letzten drei Wochen sind für den Test und den Projektabschluss nötig. Dazwischen bleibt nicht viel Zeit. Für einige Teams war es sehr hilfreich, dass einige Teilnehmer sehr früh mit der (persönlichen) Codepräsentation begonnen haben. Dabei gab es wichtiges Feedback.

Kann ich nur bestätigen. Ich weiß, gerade in der ersten Zeit ist es schwierig von dem eher passiven Konsum der Vorlesungen auf die Aktivität der Projektstudie umzuschalten. Es ist schwierig, sich die Finger im Projekt "schmutzig" zu machen, aktiv zu werden. Üben Sie das. Im Berufsleben kommt man mit Passivität nicht weiter. Passiv wird nicht gelernt. Ich kann Sie nicht lernen.

Auslosen der Teilnehmer

Dies wurde rückblickend nicht mehr so sehr kritisch gesehen, wie noch zur Halbzeit.

Ich probiere es trotzdem einmal mit den "Gruppenköpfen" ;-)

Eigene Rollenverteilung

Sie sahen es als gut an, dass Sie selbst Ihre Rollen bestimmen konnten. Natürlich innerhalb der von mir gezogenen Grenzen: 1 Projektleiter, maximal 1 Dokumentator, maximal 1 Teilnehmer für Qualitätsmanagement, Rest Entwickler.

Im nächsten Semester soll es, wie oben angesprochen, diese starren Rollen nicht mehr geben. Jeder Teilnehmer soll Software entwickeln, jeder leitet über einen kurzen Zeitraum das Projekt, jeder schreibt ein Besprechungsprotokoll, jeder macht Qualitätssicherung, ... Lediglich für den ersten Monat wird es einen fest bestimmten Projektleiter geben.

Erfahrungen

Wie von mir zu Beginn versprochen ("Die Projektstudie ist auf eine gewisse Art und Weise ein Selbsterfahrungstrip") erkannten Sie, wie viel Sie in diesem Semester gelernt haben. Eine Teilnehmerin meinte letztens zu mir: "Zuerst glaubte ich dem Coach nicht, was man alles lernt. Aber gegen Ende hat sich alles zusammengefügt". Die Einführungen und Tutorials in Projektmanagement 2 fanden Sie ebenfalls gut, wie auch die nun vertieften Kenntnisse in den Werkzeugen.

Es freut mich, dass meine Anstrengungen fruchtbar waren ;-). Ich nehme das fürs nächste Semester mit und versuche die Teilnehmer eher zu Erfolgserlebnissen zu bringen.

Literatur

Das in der parallel stattfindenden Veranstaltung Software Engineering 2 verwendete Buch war für einige Teilnehmer gut geeignet, um z.B. das Wissen zu Softwaretests zu vertiefen.

So soll es sein.

Studentischer Coach

Der studentische Coach hat mit seiner Coachingarbeit allen Teams sehr geholfen.

Ich finde es gut, dass sich immer ein guter Coach findet und wir die Mittel haben, ihn zu finanzieren.

Vorgehen nach PMI

Die Kenntnis der 9 Wissensgebiete nach PMI, die im 2. Semester in Projektmanagement 1 behandelt werden, hat vielen sehr in ihrer Projektarbeit geholfen.

Eher Schluss

Die Deadline für die Projektstudie sollte nicht ans Ende des Semesters gelegt werden, sondern eine Woche früher. So ist es für alle Teilnehmer einfacher, sich auf die anschließende Prüfungszeit vorzubereiten.

Für die nächste Projektstudie plane ich dies so ein.


Falls ich etwas vergessen oder ungeschickt dargestellt habe, einfach eine E-Mail an mich. Oder hinterlassen Sie einen Kommentar zu diesem Blogeintrag.

Schlagworte: Java, PMOT, Projektmanagement, Projektstudie, Softwareentwicklung.