Debugging  - Ein Skill für alle?

Debugging - Ein Skill für alle?

Autor: Hendrik Belitz Veröffentlicht: 8. September 2023

Teaser: Das ist kein technischer Artikel. Also egal aus welcher Ecke du kommst, nimm dir ruhig die 3-4 Minuten Zeit, ihn zu lesen. ;)

Heute habe ich mich mit einem meiner Entwickler etwas länger über das Thema Lösungsfindung und in dem Zuge natürlich auch über Debugging. Und das brachte mich auf die Idee, dazu doch mal ein wenig etwas zu schreiben.

Als Debugging bezeichnen wir in der Regel das systematische Nachvollziehen, Verstehen und Beheben von Fehlern in Software- oder anderen technischen Systemen.

Für Softwareentwickler:innen ist das eine ganz essenzielle Fähigkeit, denn jede Software hat Fehler. Und auch wenn es sich nicht um echte Fehler handelt – oft zeigen komplexe Softwaresysteme auch einfach so ein etwas unrundes Verhalten, das erklärt und verbessert werden will.

Debugging (auch wenn viele es dann gerne etwas vollumfänglicher Reverse Engineering nennen) hilft uns auch, Softwaresysteme besser zu verstehen. Und erlaubt uns dadurch, diese nicht nur zu warten, sondern auch zu erweitern – auch und gerade, wenn wir nicht die ursprüngliche Person sind, die sie geschrieben hat. Oder es erlaubt uns, Informationsflüsse zu verfolgen, beteiligte Subsysteme zu identifizieren und darüber Flaschenhälse oder Sicherheitslücken zu finden und zu beheben.

Zielführend (und nicht noch mehr Ressourcen fressend als es das ohnehin schon ist) ist Debugging aber nur, wenn es eben systematisch durchgeführt wird. Wir identifizieren gezielt Stellen, die wir uns anschauen wollen, überlegen uns, wie Sollzustand und Arbeitshypothese aussehen, bauen eine Laborumgebung auf und recherchieren mögliche Ursachen und Lösungsmöglichkeiten (dies übrigens immer häufiger mit KI-Unterstützung). Ausgehend vom beobachteten Verhalten, forensischen Untersuchungen (also zum Beispiel der ausgiebigen Analyse von Logdateien) kommen wir damit Problemen auf die Spur.

Theoretisch.

Denn handelsüblich ist dagegen, auch in den besten Entwicklerkreisen, etwas, dass man wohl eher als erratisches Debugging bezeichnen könnte. Wildes Herumklicken, zufälliges Ändern von Eingabedaten oder Datenbankinhalten, willkürliches Ein- und Auskommentieren von Code. Und natürlich zusätzliche Ausgaben. Jede Menge zusätzliche, oft auch recht wüste Ausgaben, die dann später nach erfolgter Behebung auch mal vergessen werden und auf ewig im Code verbleiben.

(Rant und Anmerkung alter weißer Informatikmann an) Teils mag das der Tatsache geschuldet sein, dass man Entwickler:innen immer gröber und mit immer weniger Sachverstand zu Programmierautomaten ausbildet, anstatt Ihnen einen (mitunter ziemlich spannenden, aber auch ziemlich kompizierten) Beruf beizubringen – ein Umstand, der im Übrigen sicherlich im Zusammenhang mit recht hohen Entlassungszahlen im Technologiebereich steht (Rant und Anmerkung alter weißer Informatikmann aus).

Wichtiger ist aber der Faktor Zeit. Debugging ist nicht plan- und abschätzbar. Wir können höchstens Grenzen setzen. Sonst dauert es ewig und wird beliebig teuer. Einer absoluten Planbarkeit oder das Setzen einer Deadline ist dagegen nur selten möglich, es sei denn, es geht um triviale Fehler. Dies wiederum erzeugt Stress und verursacht dann eher wilde Impulshandlungen als ein systematisches Vorgehen.

Nur ein Softwarebranchenproblem?

Warum dich das interessieren sollte, auch wenn du selbst überhaupt kein:e Entwickler:in bist? Einerseits, weil die Chancen gut stehen, dass du mit Leuten arbeitest (oder Leute für dich arbeiten), für die Debugging zum Tagesgeschäft gehört.

Aber noch viel mehr sollte dich das interessieren, weil jede komplexe Begebenheit eigentlich nur angegangen werden kann, wenn man sie gelegentlich debuggt. Und dafür auch Ressourcen abstellt. Egal, ob IT, Prozesse, Lieferketten, Marketingkampagnen oder Unternehmensstrategien. Systeme müssen debuggt werden. Das erfordert Fähigkeiten, die man lernen kann. Und muss.

Denn wenn man etwas debuggt, dann sollte man tunlichst systematisch tun – sonst bleibt das Ergebnis Glückssache und ist oft nicht sonderlich ansehnlich (im Gegensatz zu dem tollen Marienkäfer im Titel), sondern einfach nur teuer.

Schönen Freitag noch!

Sie möchten mehr zu diesem Thema wissen?

Kontaktieren Sie uns gerne für ein unverbindliches Gespräch. Wir freuen uns darauf, gemeinsam mit Ihnen die passende Lösung für Ihre Herausforderungen zu entwickeln.

Jetzt Kontakt aufnehmen