Blog

Ein Leitfaden für Entwickler zur programmatischen Überwindung der Angst vor dem Scheitern

von Mandeep Kaur 20. Oktober 2021 | 12 Minuten Lesezeit

Die Menschen sprechen sehr gerne über ihre Erfolge, aber wenn man sie nach ihren Misserfolgen fragt, sind sie viel zurückhaltender, darüber zu berichten.

Scheitern ist ein Thema, das interessanterweise eng mit Scham verbunden ist. Dennoch ist es unerlässlich für alles Neue, und die Erkenntnisse, die man aus Fehlern gewinnt, sind unübertroffen. Lasst uns also Wege finden, mit dem Scheitern besser umzugehen und herausfinden, warum so viele Menschen Angst davor haben.

Definition von Misserfolg

Zunächst müssen wir den Begriff „Scheitern“ definieren. Zu diesem Zweck beschränken wir uns auf eine sehr einfache Definition: etwas zu versuchen und dabei nicht erfolgreich zu sein.

Diese Definition ist zwar zutreffend, aber nicht alle Fehler sind gleich. Es gibt viele verschiedene Möglichkeiten, Fehler zu kategorisieren. Ich werde es einfach halten und in drei Kategorien unterteilen.

Vermeidbares Versagen Ein Versagen, bei dem man das Wissen und die Fähigkeit hatte, es zu verhindern, es aber trotzdem passiert ist.

Beispiel: Sie bringen eine Funktion auf den Markt und stellen dann fest, dass sie für Kunden mit einem bestimmten Tarif nicht funktioniert, obwohl dies allgemein bekannt war.

Zu den Vorteilen eines solchen Fehlers kann die Möglichkeit gehören, den aktuellen Prozess anzupassen.

Diese Art von Fehler ist besonders ärgerlich, weil sie nichts Neues ist. Wir wollen solche Situationen unbedingt vermeiden, aber wir können daraus lernen und sie in Zukunft verhindern. Checklisten und automatisierte Tests sind dafür sehr hilfreich.

Komplexes Versagen Eine Kombination aus internen und externen Faktoren führt auf neue Weise zu einem Misserfolg.

Beispiel: Zwei Dienste werden live geschaltet, und dass beide gleichzeitig aktiv sind, führt zu einer Überlastung einer gemeinsam genutzten Ressource, was einen Absturz der Ressource zur Folge hat.

Zu den Vorteilen eines solchen Fehlers können gehören:

  • Möglichkeiten, den aktuellen Prozess anzupassen und Fehler künftig zu vermeiden
  • Erkenntnisse über das System und seine Funktionsweise, die Ihnen zuvor nicht bewusst waren

Dieser Fehler wäre möglicherweise vermeidbar gewesen, doch es ist schwierig, sich auf jeden einzelnen Sonderfall vorzubereiten, wenn man gleichzeitig schnell handeln muss. Solche Fehler passieren, und man kann daraus lernen und sich weiterentwickeln. Beispielsweise könnte man in diesem Fall dieser Ressource künftig mehr Aufmerksamkeit schenken, ihre Kapazität erhöhen oder vielleicht sogar die Architektur überdenken.

Innovatives Scheitern Wenn Antworten nicht im Voraus bekannt sind, weil diese genaue Situation noch nie aufgetreten ist und vielleicht auch nie wieder auftreten wird.

Beispiel: Sie bringen eine brandneue Funktion auf den Markt, und die Nutzer interagieren überhaupt nicht damit.

Zu den Vorteilen eines solchen Fehlers können gehören:

  • Gelegenheit für Innovation, Veränderung und Reflexion
  • Die Möglichkeit, Dinge zu lernen, die man vorher nicht hätte lernen können.

Das ist genau die Art von Fehlerumgebung, in der man sich aufhalten möchte. Sie ist neu, aufregend und, was am wichtigsten ist, sie bietet Ihnen die Möglichkeit… Gelegenheit, Dinge zu lernen, die man vorher nicht hätte lernen können Die

Hier entsteht Innovation. Sicherlich gäbe es Möglichkeiten, solche Fehler zu vermeiden. Man hätte mehr mit den Nutzern sprechen, die Daten genauer analysieren können, aber letztendlich hat man ein Risiko auf sich genommen und daraus gelernt. Man hat nun weitere Fragen, wie zum Beispiel: „Warum beteiligen sich die Nutzer nicht?“, und kann die bisherigen Arbeitshypothesen anpassen.

Für mich ist es immer besser, sich in diesem Zustand des Scheiterns zu befinden, als sich zu fragen: „Was wäre, wenn dies der nächste große Hit sein könnte?“ und es nie zu versuchen.

TL;DR :

Jetzt verstehen wir, was Scheitern ist und welche verschiedenen Formen es annehmen kann. Wie können wir damit umgehen? Ähnlich wie bei der Softwareentwicklung gehen wir Schritt für Schritt vor.

  1. Normalisierung des Fehlers
  2. Versagen verstehen
  3. Akzeptiere das Scheitern

Normalisierung des Versagens

Damit wir uns mit einem Thema wohlfühlen, muss es uns vertraut sein. Um also Scheitern zu normalisieren, müssen wir uns damit vertraut machen.

Jeder Mensch scheitert irgendwann im Leben. Als du deine ersten Schritte gemacht hast, bist du hingefallen. Als du lesen gelernt hast, bist du über die ersten Wörter gestolpert. Du kannst scheitern und darüber hinwegkommen. Du hast es immer wieder geschafft, auch wenn du es vielleicht vergessen hast. Solche Misserfolge sind ganz normal, und die meisten Menschen haben dafür Verständnis.

Das Abstürzen einer App, das Einbringen eines Fehlers oder die Einführung einer nicht akzeptierten Funktion sind weniger akzeptable Arten von Fehlern, aber sie sind auch Teil des Wachstumsprozesses.

Wenn du wunderschönen, sauberen, gut strukturierten und getesteten Code schreiben willst, rate mal? Du musst zuerst schlechten Code schreiben. Überträgt man das auf jedes andere Handwerk oder jede Kunstform – sei es Musizieren, Malen oder Songschreiben –, werden deine ersten Versuche ebenfalls Schrott sein.

Mach dir keine Sorgen, es ist okay. Versuch es weiter. Scheitern gehört dazu.

Erinnerst du dich an deinen ersten großen Bug? Nicht etwas, das von der Qualitätssicherung entdeckt oder von einem erfahrenen Entwickler bei einer Code-Überprüfung angesprochen wurde, sondern etwas, das es in die Produktionsumgebung geschafft hat?

Ich teile meine.

Als ich meine Karriere als Softwareentwickler begann, arbeitete ich für ein Fintech-Startup, das Fahrzeugkredite vergab. Ich entwarf eine Abfrage, die Fahrzeuge mit doppelten Fahrzeugidentifikationsnummern (FIN) fand und diese während des Kreditgenehmigungsprozesses anzeigte. Hier ist ein einfaches Beispiel, wie dieser Code aussah:

Sobald diese Änderung übernommen wurde, sah ich diese nette kleine Nachricht auf Slack.

Ich war entsetzt und völlig verwirrt. Das war mein Ticket, mein Code, aber ich hatte keine Ahnung, wo der Fehler lag. Der Code hatte die Codeprüfung bestanden und sah korrekt aus.

Worin bestand also das Problem?

Es stellte sich heraus, dass einige Händler, um Zeit zu sparen, Fahrzeuge mit einer fiktiven Fahrgestellnummer (z. B. 0000000) inserierten und diese erst nach Erreichen eines bestimmten Kreditstadiums aktualisierten. Das wäre an sich kein Problem, nur dass mein Code jedes einzelne dieser Fahrzeuge mit einer fiktiven Fahrgestellnummer erfasste und die Seite dadurch so lange zum Laden brauchte, dass sie praktisch unbrauchbar war.

Die Lösung? Ein Limit einführen.

Ganz ehrlich, als ich mit dem Programmieren anfing, hatte ich mir über Performance und Abfragelimits keine Gedanken gemacht. Seitdem habe ich in Unternehmen gearbeitet, in denen Skalierbarkeit wichtig ist, aber auch an Anwendungen, bei denen jede eingesparte Sekunde zu mehr Nutzerinteraktion führt – Performance steht also immer an erster Stelle.

Das war etwas, was ich lernen musste, und aus Fehlern kann man viel lernen.

Ich möchte auch die Reaktion meines Teams hervorheben. Wir haben den Fehler behoben, ihn in die bestehende Version integriert und anschließend besprochen, wie er überhaupt entstehen konnte. Das Wichtigste bei Fehlern ist oft nicht der Fehler selbst, sondern wie man und alle Beteiligten darauf reagieren. Es gab keine Schuldzuweisungen, kein „Du hättest es besser wissen müssen“, und ich wurde für meinen Fehler nicht beschämt.

Versagen verstehen

Wir haben uns damit beschäftigt, wie man mit Misserfolgen umgeht. Nun wollen wir uns eingehender mit dem Verständnis von Misserfolgen und ihrem Gegenstück, der Scham, auseinandersetzen.

Scham :

  1. „Scham ist eine äußerst unangenehme emotionale Erfahrung, die eng mit Vermeidungs- und Rückzugstendenzen verbunden ist.“ Mascolo & Fischer, 1995 )”
  2. „Vorwürfe, die wir uns selbst gegenüber empfinden, wenn wir unseren eigenen Ansprüchen nicht gerecht geworden sind.“ HB Lewis, 1971 )
  3. „Das Versagen, den eigenen Rollen oder Zielen gerecht zu werden.“ M. Lewis & Haviland-Jones, 2000 ),
  4. „Wenn eine Person das Gefühl hat, zu ihrem unerwünschten oder gefürchteten Selbst zu werden.“ Gilbert, 1998 ; Ogilvie, 1987 )

Alle oben genannten Definitionen von Scham stammen aus wissenschaftlichen Artikeln. Auch wenn die Formulierungen je nach Autor und Publikation variieren, herrscht in einem Punkt nahezu Einigkeit:

Scham ist ein Beziehungsgefühl Die

Was bedeutet das? Man kann wütend sein, weil man mit dem Fuß gegen einen Stein getreten ist, oder traurig, weil sich das Wetter geändert hat. Scham ist jedoch anders, denn man kann sie nur in einem bestimmten Kontext erleben. Beziehung zu anderen Menschen Ich kann keine Scham empfinden, wenn ich kein Publikum habe oder mir nicht vorstelle, ein Publikum zu haben.

„Aus dieser Perspektive besteht die Funktion der Scham darin, Verhaltensweisen hervorzurufen, die darauf abzielen, das Selbst vor der genauen Beobachtung wichtiger Bezugspersonen zu verbergen und so die Wahrscheinlichkeit von Liebesverlust und Zurückweisung zu minimieren.“ McGregor & Elliot, 2005 )

Wenn wir die Bedeutung der obigen Formulierung weiterführen, können wir annehmen, dass Scham ihren Ursprung in einer evolutionären Reaktion aus Stammeszeiten hat. Anders ausgedrückt: Man empfand Scham, verbarg die Ursache dieses Gefühls und wollte daher nicht vom Stamm verstoßen werden, da dies im Grunde den Tod bedeutete. Auch wenn sich die Zeiten geändert haben, ist die Wirkung dieser Emotion auf uns nach wie vor tiefgreifend.

Angst vor dem Scheitern

Eine wissenschaftliche Studie definierte die Angst vor dem Scheitern wie folgt: „Die Fähigkeit oder Neigung, bei einem Misserfolg Scham zu empfinden“ ( Atkinson 1957 Eine andere Studie postulierte: „Personen mit hoher Versagensangst berichteten von stärkerer Scham nach einem wahrgenommenen Misserfolg als Personen mit geringer Versagensangst.“ McGregor & Elliot, 2005 ).

Dies lässt sich anhand des Scham-/Versagenskreislaufs veranschaulichen.

  1. Du scheiterst bei etwas.
  2. Du schämst dich wegen dieses Versagens.
  3. Scham ist ein starkes, negatives Gefühl, das man nicht erleben möchte, deshalb will man Misserfolge vermeiden.
  4. Du hast Angst vor dem Scheitern.
  5. Beim nächsten Scheitern empfindest du noch mehr Scham.
  6. Deine Angst vor dem Scheitern wird noch stärker.

Vergessen wir auch nicht, dass man, um bei diesem ersten Misserfolg Scham zu empfinden, andere Menschen (oder die eigene Wahrnehmung anderer Menschen) braucht, die einem zusehen.

Dies ist eine mögliche Erklärung für die Angst vor dem Scheitern, und ich persönlich finde sie sehr überzeugend. Wie so vieles in der Psychologie hat auch diese Angst ihren Ursprung möglicherweise in der Kindheit, insbesondere wenn Eltern bei Misserfolgen sehr stark reagieren, Erfolgen aber gleichgültig gegenüberstehen (McGregor & Elliot, 2005). Sie kann aber auch zu jedem anderen Zeitpunkt im Leben auftreten. Erinnern Sie sich an das, was wir zuvor besprochen haben?

Es geht nicht so sehr um das Scheitern selbst, sondern darum, wie Sie und alle um Sie herum auf das Scheitern reagieren. Die

Okay, super. Wir verstehen, dass Scheitern existiert, wir verstehen, warum Menschen Angst davor haben könnten… Wie können wir offen dafür werden, Scheitern zu akzeptieren?

Das Scheitern akzeptieren

Zum Umgang mit Misserfolgen gehört auch, Wege zu finden, um widerstandsfähiger dagegen zu werden.

Wie können wir also Resilienz aufbauen?

Scheitern entkatastrophisieren Wenn wir scheitern, neigen wir dazu, drei dominante Denkmuster zu haben.

  1. Persönlich: Das ist alles meine Schuld.
  2. Allgegenwärtig: Das passiert immer.
  3. Endgültig: Alles ist jetzt ruiniert.

Wir können diese Annahmen jedoch genauer untersuchen. Hatte sonst noch jemand Mitwirkung oder war beteiligt? Gab es jemals einen Zeitpunkt, an dem dieses Versagen nicht eingetreten ist? Ist an dieser Situation wirklich nichts mehr zu retten?

Wenn wir verstehen, wie unser Gehirn funktioniert und welche Gedanken wir in unangenehmen Situationen häufig haben, können wir uns auf Misserfolge vorbereiten und sie akzeptieren. Es ist nicht immer unsere Schuld, wir scheitern nicht ständig, und am Ende wird alles gut.

Sei mitfühlend mit dir selbst. Stell dir vor, du tröstest einen Freund in genau derselben Situation. Würdest du jemals jemandem, der einen Fehler gemacht hat, sagen, dass er alles ruiniert hat? Natürlich nicht. Tu das anderen nicht an und tu es dir selbst auch nicht an.

Vor dem Tod Eine Pre-Mortem-Analyse wird vor einem Projekt oder einer Initiative durchgeführt, bei der die Einzelperson oder das Team davon ausgeht, dass das Projekt oder die Initiative gescheitert ist, und von diesem Punkt aus rückwärts arbeitet, um zu verhindern, dass diese Fehler erneut auftreten.

Post-Mortem Nach dem Eintreten des Ereignisses sollte eine Zeitleiste der Ereignisse erstellt und Maßnahmen erarbeitet werden, um herauszufinden, wie es zu dem Fehler kam und wie ähnliche Vorfälle künftig verhindert werden können.

Fragendes Selbstgespräch Eine gängige Methode, sich selbst Mut zuzusprechen, besteht darin, sich mit Aussagen wie „Ich schaffe das“ zu motivieren. Es gibt jedoch starke Hinweise darauf, dass Selbstzweifel eine effektivere Methode sein können.

Das ist der Unterschied zwischen der Frage „Werde ich?“ und „Ich werde.“ Indem du dich fragst: „Werde ich das schaffen?“, bekräftigst du, dass du es kannst und die nötigen Fähigkeiten dafür besitzt.

Eine Reihe von Experimenten ( Senay, Albarracin & Noguchi, 2010 Es wurden Studien durchgeführt, in denen sich die Gruppen durch Fragen oder Behauptungen vorbereiteten. Fragende Einstiege erzielten dabei stets bessere Ergebnisse. Das Stellen dieser Fragen motiviert zielgerichtetes Verhalten.

Psychologische Sicherheit schaffen Ein Umfeld, in dem man sich sicher fühlen kann, Fehler zu machen, ist unerlässlich, wenn man Risiken eingehen und innovativ sein will. Psychologische Sicherheit aufzubauen ist schwierig, aber ungemein wichtig.

Hier sind einige Vorschläge, die dabei helfen, eine solche Umgebung zu schaffen.

  1. Führungskräfte müssen bereit sein, sich verletzlich zu zeigen.
  2. Fördern Sie Empathie und geben Sie Ihren Teamkollegen Sicherheit, wenn sie diese benötigen.
  3. Integrieren Sie Feedbackschleifen, damit jeder eine Stimme hat und sich gehört fühlt.
  4. Führen Sie eine Veranstaltung ein, bei der Menschen über ihre eigenen Misserfolge sprechen.
  5. Schaffen Sie einen Raum, in dem Sie Menschen dazu ermutigen, neue Dinge auszuprobieren, wie zum Beispiel einen Hackday oder eine Hackweek (wir veranstalten hier bei PagerDuty einmal pro Quartal einen).

Abschluss

Ich möchte Sie bitten, für einen Moment die Softwareentwicklung einmal beiseitezulassen und über Ihr Leben im Allgemeinen nachzudenken. Scheitern ist etwas, das sich in jeden Bereich unseres Lebens einschleicht. Haben Sie jemals etwas von den folgenden Aussagen gemacht oder von einem Freund gehört?

  • Ich kann absolut nicht kochen, deshalb hole ich mir einfach Essen zum Mitnehmen.
  • Ich kann nicht singen, also verzichte ich auf Karaoke.
  • Ich bin eine furchtbare Tänzerin, deshalb lasse ich es einfach.

Könnte hinter diesen Aussagen eine unterschwellige Versagensangst stecken? Sie erwähnen nicht, ob ihnen diese Tätigkeit Spaß macht, sondern nur, dass sie darin nicht gut sind. Schleicht sich da etwa Scham ein?

Ich habe darüber gesprochen, als ob es etwas wäre, dessen man sich ständig bewusst ist, aber vieles davon kann so verinnerlicht sein, dass es unterbewusst abläuft. Man könnte diese Ängste haben und Sie sind sich ihrer nicht einmal bewusst. Die

Lasst uns die ursprüngliche Definition von Scheitern noch einmal betrachten: etwas versuchen und nicht erfolgreich sein. Auch wenn ein Scheitern wahrscheinlich ist, hoffe ich inständig, dass du es wenigstens versuchst. Denk daran, Scheitern ist nichts Neues für dich. Sprechen, Autofahren, Kochen und jede andere Fähigkeit, die du erlernt hast, beinhaltete irgendwann auch Misserfolge. Die alte Weisheit „Übung macht den Meister“ gilt nach wie vor. Hoffentlich traust du dich heute, etwas auszuprobieren, wovor du Angst hast!