Pair - Programming ist für fast alle Programmierer sehr ungewohnt. Als Einzelkämpfer am Code ist der Gedanke, daß jemand dazwischen pfuscht, unerträglich. Man teilt sich, im ständigen Wechsel programmierend, nämlich einen PC. Hierzu muß zunächst aufwändig in dem Kopf jedes einzelnen ein Umdenkprozeß stattfinden, bevor überhaupt jemand die enormen Vorteile für das Gesamtteam erkennen kann, sprich - man muß es zusammen geübt haben, und sich persönlich von den Vorteilen überzeugt haben. Es ist für eine Einzelperson nicht zu verstehen, daß persönliche Nachteile beim Programmieren sich in der Gruppe als Vorteil erweisen können.
Programmieren ist ein schöpferischer Prozess, in welchem jeder Mensch stets seine Ruhepausen zum Nachdenken benötigt. Die Zeit des Nachdenkens darüber, wie nun etwas kodiert wird, sind oft viel länger, als die eigentliche Eingabe. So ähnlich, wie man während eines Gespräches Wortfindungsprobleme hat, hat jeder während des Programmierens auch mal ein "Brett vor dem Kopf". Ähnlich, wie wir nicht auf die algorithmische Lösung des Zwergenproblems kommen, findet man alleine fast nie die optimale Lösung. (Beispiel: Der Suchbaum des Spiels "Nimm" läßt sich stark vereinfachen! Zwei Spieler nehmen aus einer Reihe von 10-30 Hölzchen abwechselnd 1-3 Hölzchen. Wer das letzte H. nehmen muß, hat verloren. Es muß theoretisch ein Suchbaum mit 3^30 Möglichkeiten aufgestellt werden...es geht aber auch viel, viel einfacher!). Die besten Lösungen, die effektivsten Algorithmen und den kürzesten Code findet man immer durch offene Kommunikation und Diskussion. Pair - Programming erzwingt dies. Da viel weniger Code generiert wird, dieser viel besser durchdacht ist, viel weniger Code wieder verworfen werden bzw. überarbeitet werden muß, ist Pair - Programming im Endeffekt sehr viel effektiver, insbesondere auch bei der nachfolgenden Wartung der Releases. Zudem ist derjenige, der dem anderen zuschaut, erst einmal aus der Verantwortung, kann entspannt zuschauen, und sich dabei stressfrei auf den Code konzentrieren, der gerade vor seinen Augen vom Partner geschrieben wird. Es hat sich herausgestellt, daß Pair - Programming im Endeffekt die Kosten nicht erhöht, obwohl zu Beginn augenscheinlich die Leistung zweier Programmierer an einem PC geringer erscheint.
| Zurück | Inhaltsangabe | Weiter |
| Extreme Programming | Unit Testing |