Gedankenlosigkeit
Wir machen uns Gedanken
über die Verbesserung der Welt
und machen sie durch unsere
Gedankenlosigkeit schlechter.Emanuel Geibel
Gedankenlosigkeit ist die unangenehmste Todsünde, jedenfalls für die mistreitenden Softwareentwickler. Mechanisch werden arbeiten erledigt und bei neuen Problemen einfach nicht “Vorgedacht”. Es wird einfach eine unausgereifte und fehleranfällige Problemlösung “ausgekotzt” ohne einen Gedanken an der Richtigkeit bzw. der Zweckmässigkeit verschwendet zu haben. Es werden sich keine Gedanken zu den Laufzeitbedingungen bzw. Abschätzungen über die Datenmengen oder Performance gemacht. Es mag richtig sein, dass man sich im Allgemeinen erst im weiteren Entwicklungsverlauf um Performance kümmert. Doch in den meisten Fällen genügt eine Überschlagsrechnung um festzustellen, dass ein Programmteil wirklich Probleme machen wird. Da ist es sinnvoll sich vorher Gedanken zu machen als sich im Deckmantel der “Später wird alles besser”-Ausrede einzuhüllen und die schlechteste aller Möglichkeiten zu wählen. Und das nur, weil dabei die Gedankenarbeit erfreulicherweise auf Null sinkt. Wie ist es sonst zu erklären, das ein Programmierer allen ernstes für das Sortieren von schätzungsweise bis zu 250000 Elementen bei Vollast schmerzfrei den Bubblesort-Algorithmus verwendet? In diesem Fall kann natürlich durch einen neuen Algorithmus alles “gerettet” werden. Doch oft wird durch manche, nicht so unabhängige Programmteile, der Aufwand für die spätere Verbesserung bis zur Unerträglich- bzw. Unwirtschaftlichkeit gesteigert. So ist es nicht selten, dass man für viele gedankenlose Entscheidungen das ganze, restliche Programmleben büßen muss.