Es geht die Legende, dass auch ich mal jung war. Ja, sowas! Wenn das stimmt, war das wohl irgendwann gegen Ende des letzten Jahrtausends. Zu der Zeit hatte ich auch meinen ersten richtigen Job in der Softwareentwicklung. Was ich dabei lernen konnte, prägt mich bis heute.
Mein Mentor etwa brachte mir die drei Tugenden eines guten Entwicklers nahe:
- Faulheit
- Ungeduld
- Stolz
Insbesondere an der Faulheit lag ihm viel. Faulheit als gute Eigenschaft..
Faulheit ist die Tugend, langfristig möglichst wenig Energie aufzuwenden. Das bedeutet, Dinge nicht öfter oder aufwendiger zu tun als unbedingt notwendig - deswegen möglichst ordentlichen Code und ordentliche Dokumentation abzuliefern. Ein fauler Entwickler mag nicht ständig erklären, was sein Code warum wie tut - weder anderen noch irgendwann seinem zukünftigen Ich. Weil er faul ist, schreibt er zugänglichen, wartbaren, sinnvollen Code, der tut, was er tun soll.
Ungeduld ist die Tugend, Software abzuliefern, die keinen Anlass zur Ungeduld gibt - d.h. Lösungen, die in sich möglichst schlüssig sind und den Benutzer dabei unterstützen, schnurstracks das zu tun, was er eigentlich tun möchte.
Stolz ist die Tugend, seine Beiträge so zu gestalten, dass andere beim besten Willen nichts Schlechtes über sie zu sagen haben.
Wie viele andere Bonmots der Softwareentwicklung entstammt auch dieser Dreiklang von Laziness, Impatience und Hubris aus dem Umfeld von Larry Wall. Larry ist Linguist - und Schöpfer der Perl-Programmiersprachen. Seine Arbeit und die seiner Mitstreiter beeinflusst einen Großteil der modernen pragmatischen Programmiersprachen. Selbst, wenn man Perl nicht mag, die Vorträge, Artikel und Insights von Larry sind immer unterhaltsam und lehrreich.