Netter Artikel, vielen Dank! :-)
Ein paar Anmerkungen noch dazu:
- Subversion ist kein "geht gerade noch so"-Tool, der Eindruck wird hier erweckt. Nicht jeder braucht eine dezentrale Versionskontrolle; es gibt hier Vor- und Nachteile je nach Umgebung. Außerdem ist das Tooling für Subversion derzeit noch IMHO um einiges besser als für die dezentralen.
- One-Click-Installation: Es genügt, wenn der Prozess dokumentiert und einfach ist; eine Versteifung auf einen Schritt halte ich für übertrieben und - wenns doch mal Schwierigkeiten gibt - ggfls. sogar für kontraproduktiv. Bitte mal den Blick über den PHP-Einfach-Anwendung-Suppenteller heben.
- Continous Integration: Eine moderne IDE wie Eclipse checkt das Projekt bei jedem Save auf Fehler; genügt das? Ich kenne, Fälle, in denen das Continous Integration Team ständig anderen Entwicklern auf den Sack ging, weil diese bei einem größeren Umbau mal für 5 Minuten den heiligen Build zerschossen haben.
- Unit-Tests: Sicher immer gut, aber keine Blanko-Versicherung: Die meisten (nicht-trivialen) Fehler passieren nun mal in komplexen Umgebungen und genau das deckt ein "Unit"-Test eben nicht ab; hier sind andere "Vorgehensweisen" (oder Tools) gefragt. Weiterhin habe ich die Erfahrung gemacht, dass viele Unit-Tests nichts taugen (testen das falsche (die API) und keine Grenzfälle, werden nicht aktualisiert, ...); also wie gesagt: Immer gut, aber mit Verstand verwendet und immer ergänzt für die "Nicht-Unit"-Sachen.