Der Flow-Zustand

Achtung Spoiler: Der folgende Beitrag verrät Inhalte der Serie „The Walking Dead“ (Staffel 2 Folge 1) und des Buches „The Clean Coder“ von Robert C. Martin.

Jeder kennt das Gefühl: Man schaut sich eine Serie wie The Walking Dead an. Aus den TV-Lautsprechern zwitschern die Vögel. Das strahlende Grün des Waldes durchflutet das Wohnzimmer. Beim Zuschauer stellen sich Ruhe und Behaglichkeit ein. Die Kamera fährt langsam auf einen Hirsch zu. Er steht da wie der König des Waldes. Stark und majestätisch schaut er in die Kamera. Er wackelt leicht und freundlich mit den Ohren, während ein kleines Kind auf ihn zu geht. Dann, als das Kind fast nah genug ist, um das Tier mit seiner Hand zu streicheln, zerreißt ein ohrenbetäubender Schuss die Stille. Das Projektil eines Gewehres durchdringt  zunächst den stolzen Körper des Tieres, bevor des den Bauch des Jungen zerfetzt. Der Zuschauer sitzt kerzengerade auf seinem Polstermöbel und schaut fassungslos und schockiert auf den Abspann.

Genau so fühle ich mich während der Lektüre des Buches The Clean Coder von Robert C. Martin.

Ich habe gerade das Kapitel 4.2 Der Flow Zustand gelesen. Schon vor dem Lesen des Kapitels freute ich mich. Der der Flow war für mich immer ein erstrebenswerter Zustand. Im Flow schaltet ein Programmierer alles um sich herum aus. Er ist hochkonzentriert und denkt an absolut nichts mehr. Das Gehirn ist wie der Muskel eines Leistungssportlers. Es pumpt ununterbrochen Programm-Code heraus, der wie von selbst über die Tastatur in den Rechner fließt. Teilweise hat man das Gefühl, das eigene Gehirn sei mit der Maschine verbunden und drückt die Befehle ohne Umwege direkt in die CPU.

Entsprechend befriedigend ist dieser Zustand, der nach einer 12-Stunden-Schicht um 3 Uhr nachts genauso eintreten kann, wie um 7 Uhr morgens, während man sich den ersten Energy Drink des Tages einführt. Man fühlt sich einfach unglaublich produktiv und ist auf eine gewisse Art „high“ vom Programmieren.

So ähnlich beschreibt es auch Uncle Bob im Kapitel 4.2 von The Clean Coder:

Damit (Anm.: mit dem Flow) ist der höchst konzentrierte Bewusstseinszustand mit Tunnelblick gemeint. In diesem Zustand fühlen sie sich produktiv. In diesem Zustand fühlen sie sich unfehlbar.

Und ich denke mir beim Lesen nur: „Oh ja Baby! Genau so ist es. Unfehlbar wie der Gott im Programmierer-Himmel“.

Doch auf der nächsten Seite schlägt mir Robert C. Martin dann mit der blanken Faust mein Grinsen aus dem Gesicht:

Vermeiden Sie die Zone(Anm.: mit Zone ist der Flow gemeint). Dieser Bewusstseinszustand ist nicht wirklich hyperproduktiv und ganz gewiss nicht unfehlbar.

Im folgenden beschreibt Uncle Bob, dass der Flow eben nur ein Gefühl von Geschwindigkeit vermittelt, in dem man zwar viel Code produziert, dafür aber den Blick auf den größeren Zusammenhang verliert. Seiner Beobachtung nach muss man in Code, der im Flow geschrieben wurde, später viel mehr Zeit investieren.

Auch wenn ich Martin nicht 100% zustimmen kann, da mir viele Codebeispiele einfallen, die ich im Flow geschrieben habe und die ich danach nie mehr anfassen musste. Sie haben einfach getan was sie tun mussten und verrichten ihre Arbeit bis heute.  100% widersprechen kann ich ihm auch nicht.

Ist der Flow vielleicht auch eine dieser Sinnestäuschungen, die Entwicklern Produktivität vorgaukeln? Ähnlich wie Code, den man ohne Unit-Tests schreibt?

Ich habe auch 20 Minuten nach der Lektüre des Kapitels keine Antwort darauf. In jedem Fall hat mich Robert C. Martin mal wieder zum Nachdenken angeregt.