TV-Serien: Mister Robot

TV Serien Mr Robot Hacker

Bugs sind keine Fehler.

Der Begriff Bug hat sich in der deutschen Sprache schon sehr vertieft und man verwendeten ihn synonym für Fehler. Ursprünglich entstammt der Bug dem angloamerikanischen und könnte so viel bedeutet haben wie: „ein Käfer hat sich eingenistet“. Im Deutschen würde dies vergleichbar mit der Aussage: „ein Fehler Hat sich eingeschlichen“ – sein.

In den Anfängen der Softwareentwicklung wurde dieser Begriff dann häufig für Softwarefehler verwendet. Genau genommen handelt es sich dabei um keinen Fehler. Ein Fehler liegt dann vor, wenn eine Funktion falsch programmiert wurde oder sie nicht dem Anforderungsprofil entspricht. Sofern eine fertige Software allen Funktionen gerecht wird und diese fehlerfrei ausgeführt wird, wird sie freigegeben – eine Release. Wenn dieses Programm dann auf einem Computer des Anwenders ausgeführt wird und dann erst tritt ein Fehler auf dann spricht man meistens von einem Bug. Es ist also doch ein Fehler jedoch einer der ersten im System des Anwenders auftritt. Also nicht im Kontext der Entwicklungsumgebung. Genau damit beschäftigt sich Elliot Alderson in der ersten Staffel der dritten Episode. Seine erste Aussage dazu: „das schwierigste ist es den Bug zu finden und nicht ihn zu beheben“. Da spricht er von der Hackerszene. Angreifer suchen Fehler in Programmen die sich erst im System des Anwenders auswirken. Diese werden dann genutzt um eine Schadsoftware damit einzuschleusen.

Menschen, so auch Programmierer machen nie absichtlich was falsches. Es passiert entweder unbewusst oder durch Nichtwissen. Wenn bewusst etwas falsch gemacht wird dann ist es ja nicht falsch für denjenigen.

Programmierfehler die sich unbewusst einschleichen und dann in anderen Systemen zu Fehlern führen sind also die Bugs. Sofern ein Programm nur in der Entwicklungsumgebung-also im eigenen Kontext ausgeführt wird, tritt der Bug nicht in Erscheinung. Erst durch einen Kontextwechsel ist dieser zu finden. Man stelle sich den Entwickler einer Android App vor. Es gibt etwa 100 Android Derivate, sicher 100 verschiedene Hardwarehersteller und Anwender mit 100 installierten Apps. Daraus ergeben sich dann 1 Million verschiedener Kontexte. Beim Software Engineering werden die Häufigsten dieser System Umgebungen nachgestellt. Nur so ist es möglich dass in dieser Komplexität die Apps halbwegs zuverlässig funktionieren.

Je offener also ein System ist – wie zum Beispiel Windows – umso anfälliger ist es. Damit ist es auch offensichtlich warum bei Microsoft Systemen immer ein Virenschutz und sonstige Sicherheitseinrichtungen erforderlich sind. Umgekehrt aber auch warum Apple Systeme weniger anfällig sind – weil eben ein restriktiveres System.

Elliot macht sich über die Bugs in einem größeren ganzem Gedanken. Er sagt: „ein Bug ist niemals nur einen Fehler, sondern er repräsentiert etwas größeres“. Bugs in einem völlig anderen Kontext treten z. B. bei Gesetzen und Verordnungen auf. Gesetze werden von Juristen, Beamten und Parlamentariern zum Wohle aller entwickelt. Eigentlich brauchen Sie nur in einem einzigen Kontext funktionieren – dem jeweiligen Staat. Sie sind also Programme für die Staatsbürger. Wenn man sich an die Gesetze hält hat man ein relativ freies Leben. Kommt man mit dem Gesetz in Konflikt so braucht man einen Spezialisten – also einen Juristen. Dieser versucht nun einen Formulierungsfehler im Gesetzestext zu finden der einen wieder frei spricht. Er sucht also einen Bug im Gesetz. Die Gesetzgeber haben also das Problem, dass sie nicht genügend Fälle haben um die Formulierung auszutesten. Meist ist dies auch nur ein analytischer Prozess. Umgekehrt verwenden Rechtsanwälte immer mehr Computerunterstützung um sich an Fallbeispielen anzulehnen. Juristen wenden also Gesetzestexte in verschiedensten Kontexten an, suchen dort die Bugs und bauen daraus ihre Anklagen oder Verteidigungen auf.

Bugs in Beziehungen: Das wären dann auch Störungen in der Beziehung die erst im Laufe der Zeit auftreten. Man verliebt sich in einen Menschen – eine wunderschöne Zeit. Wie aber das Sprichwort sagt; sie macht auch ein bisschen blind. Je mehr verschiedene Erlebnisse man gemeinsam hat also Kontexte umso weniger unbekannte Bugs gibt es dann im späteren Leben. Elliot hat dazu folgende Erkenntnisse: „Bugs haben für gewöhnlich einen schlechten Ruf – wenn er aber sichtbar wird kann er anregend sein. Als hätte man etwas entfesselt eine große Möglichkeit die darauf wartet ergriffen zu werben“.

Gedankliche Bugs bezeichnet Elliot als: „Ein Denkfehler der dich zudem macht was du bist“. Denken findet in einem geschlossenen System statt. Man kann seine eigenen Gedanken nicht mit einem andern in Gehirn denken lassen. Man kann sich höchstens vorstellen wie ausgesprochene Gedanken bei jemand anderen wirken. Ob Sie dort das gewünschte Ergebnis bringen, ist lediglich mit einer gewissen Wahrscheinlichkeit gegeben. Gedanken sollten also auch in verschiedenen Kontexten getestet werden. Mit einer Portion Kreativität ist hier schon viel erreicht. Noch besser ist es wenn man sich wirklich in verschiedenen Kontexten bewegen kann. Verhaltensweisen die man in einem bestimmten Rahmen erlernt hat, waren dort immer richtig und sinnvoll – haben also funktioniert. Sofern sich der Rahmen ändert (beruflich, privat, erwachsen) kann es sein, dass diese nicht mehr das gewünschte Ergebnis zeigen. Die Menschen bleiben aber häufig trotzdem dabei. Daraus entwickeln sich dann die Bugs. Elliot schließt mit: „Ich war der Bug der zu all diesem führte – und sie haben mich gefunden.“

Gesponserte Beiträge