Laden...

Wer Leerzeichen zum Einrücken von Code verwendet, verdient mehr!

Erstellt von herbivore vor 6 Jahren Letzter Beitrag vor 6 Jahren 3.268 Views
herbivore Themenstarter:in
49.485 Beiträge seit 2005
vor 6 Jahren
Wer Leerzeichen zum Einrücken von Code verwendet, verdient mehr!

Hallo Community,

der "Krieg" ist ja so alt, wie das Programmieren selbst: Soll man Code mit Leerzeichen oder mit Tabs einrücken? Jetzt gibt es eine ultimative Antwort: Wer Leerzeichen zum Einrücken von Code verwendet, verdient mehr! (*)

Hier gehts zur Untersuchung: Developers Who Use Spaces Make More Money Than Those Who Use Tabs

Ich hab ja schon immer gewusst, dass Leute, die Leerzeichen verwenden, die besseren Menschen sind 😃 (**)

Ok, jetzt wieder im Ernst. Das sollte keine Polemik sein, sondern einfach nur ein bisschen Spaß und die Einstimmung auf die folgenden interessanten Überlegungen! Vor allem möchte ich hier gerade keinen Krieg entfachen. Was allerdings nichts an den Ergebnissen ändert. Der Knackpunkt ist natürlich - wie immer - die Interpretation. Und erst dann zeigt sich, was die eigentliche Erkenntnis aus dieser und anderen Studien ist.

Und da muss man den Erstellern der Studie ein Kompliment machen. Sie unterscheiden klar zwischen Korrelation und ursächlichem Zusammenhang. Das kann man nämlich nicht oft genug sagen: Nur weil Daten korrelieren muss es noch lange keinen ursächlichen Zusammenhang geben.

Ein Beispiel: Wenn es heißt, dass sportliche Menschen länger leben, dann bedeutet das eben nicht automatisch, dass man einfach nur mehr Sport machen muss und dann länger lebt. Denn oft ist es so, dass Menschen, die regelmäßig Sport machen, auch sonst gesünder leben, insbesondere weniger rauchen. Und dass es einen ursächlichen Zusammenhang zwischen Rauchen und Lebenserwartung gibt, sollte mittlerweile ausreichend gesichert und bekannt sein.

Obwohl nun Sport und Lebenserwartung korrelieren, wenn man die Gruppe der sportlichen und der unsportlichen Menschen vergleicht, kann der ursächliche Zusammenhang eben ganz überwiegend darin liegen, dass in der ersten Gruppe weniger Raucher sind.

Wenn man nun seine Lebenserwartung erhöhen will, ist es wichtig, etwas zu tun, was ursächlich darauf einwirkt. Reine Korrelation reicht nicht. Also konkret würde ein Raucher, der anfängt Sport zu machen, vermutlich am Ziel vorbei gehen. Er würde wohl viel mehr erreichen, wenn er mit dem Rauchen aufhört, selbst wenn er weiterhin keinen Sport macht.

Bevor ihr das Sportbeispiel jetzt argumentativ zerfetzt, lest bitte erst weiter. Im Beispiel bleibt natürlich der Zweifel, ob Sport nicht auch für sich etwas positives für die Lebenserwartung bewirkt. Korrelation kann natürlich auf einem ursächlichen Zusammenhang basieren, nur ist es eben überraschend oft anders. Wichtig ist zu gucken, ob hinter einer Korrelation auch tatsächlich ein ursächlicher Zusammengang steckt oder es sich nur um eine zufällige oder indirekte Koinzidenz handelt. Sonst kann man mit seinen abgeleiteten Handlungen böse auf die Nase fallen. Machen wir ein klareres Beispiel:

Man betrachtet eine große Gruppe von verschiedenen Personen, die Nägel mit dem Hammer in Holz schlagen und stellt fest: je lauter diese dabei schreien, desto tiefer dringt der Nagel mit jedem Schlag in Holz. Lautstärke korreliert also mit Schlagtiefe. Aber deshalb gibt es - wie mal leicht einsieht - noch lange keinen ursächlichen Zusammenhang zwischen Lautstärke und Schlagtiefe.

Jemand, der sich sagt, ich schlage einfach weiter wie bisher, schreie dabei aber einfach (bewusst) lauter, wird keine besseren Ergebnisse erzielen. Andersherum wird jemand, der (bewusst) das Schreien unterdrückt, den Nagel trotzdem genauso tief ins Holz bringen, wenn er denn genauso kräftig schlägt.

Das Schreien ist hier eher die Folge des kräftigen Schlagens, keinesfalls seine Ursache und erst recht nicht die Ursache der Schlagtiefe.

Im Extremfall wird jemand, der die (vermeintliche) Erkenntnis der Studie wörtlich nimmt, scheitern, nämlich wenn er zu dem (falschen) Ergebnis kommt, dass er das lästige und anstrengende Schlagen ganz einstellen kann, da es laut Studie "offensichtlich" auf die Lautstärke des Schreiens ankommt. Er steht dann ohne Hammer schreiend neben dem Nagel und wundert sich, dass der erwünschte und erhoffte Erfolg nicht eintritt.

Es ist verblüffend, wie oft Leute genau das tun, wenn es nicht so offensichtlich ist, dass der auf Grund einer Korrelation oft stillschweigend angenommene ursächliche Zusammenhang gar nicht (d.h. eben nur scheinbar) existiert.

Das bedeutet zweierlei:

Zum einen sollte jeder, der Datenanalysen durchführt, sich des Unterschiedes zwischen Korrelation und ursächlichem Zusammenhang bewusst sein, um keine Fehlschlüsse aus den Ergebnissen zu ziehen. Aus Korrelation alleine folgt eben noch lange kein ursächlicher Zusammenhang. Dass gilt insbesondere bei den immer beliebter werdenden Big-Data-Analysen. Falsch angewendet und falsch interpretiert leitet man daraus leicht die falschen Handlungen ab und wundert sich dann, warum diese nicht zu den erhofften Ergebnissen führen.

(*) Zum anderen sollte man aus Schlagzeilen nicht leichtfertig irgendwelche Handlungen ableiten. Ich bin mir sicher: Keiner von euch wird mehr verdienen, nur weil er ab morgen anfängt, Leerzeichen statt Tabs zu verwenden, egal wie konsequent er dabei ist. Das gilt für alle Arten von Schlagzeilen, die auf Basis (tatsächlich) festgestellter Korrelationen irgendwelche (vermeidlichen) ursächlichen Zusammenhänge behaupten - wie es Journalisten leider nur allzu gerne machen und ich es hier einmal nachgeahmt habe, um auf diesen wichtigen Unterschied hinzuweisen.

(**) Und man sollte erst recht nicht über den nicht existierenden Zusammenhang hinaus noch weitergehende Zusammenhänge konstruieren, für die nicht mal eine Korrelation festgestellt wurde.

herbivore

6.911 Beiträge seit 2009
vor 6 Jahren

Hallo herbivore,

amüsant und doch sehr treffend den Nagel in ... äh... auf den Punkt gebracht 😃

V.a. den Schluss sollte wirklich jeder beherzigen, der mit dem Thema (Big-) Data zu tun hat.
Kausalität und Korrelation korrelieren nicht immer.

mfG Gü

Stellt fachliche Fragen bitte im Forum, damit von den Antworten alle profitieren. Daher beantworte ich solche Fragen nicht per PM.

"Alle sagten, das geht nicht! Dann kam einer, der wusste das nicht - und hat's gemacht!"

O
79 Beiträge seit 2011
vor 6 Jahren

[Narrenkappe]
Verdammt... Ich benutze immer TAB zum Einrücken, lasse das aber in den Einstellungen der IDEs immer durch Leerzeichen ersetzen. Werde ich jetzt gefeuert ?
[/Narrenkappe]

Man muß sich wundern, wie stark dieses Phänomen inzwischen um sich gegriffen hat. Bestes Beispiel: Wahlausgang Brexit, Wahlausgang Präsidentenwahl USA und auch die Wahlergebnisse der SPD, die so gar nicht den Analysen entsprachen...

F
10.010 Beiträge seit 2004
vor 6 Jahren

Wir benutzen durch die Bank für Firmware ( MSP430 mit IAR ) und PC ( C/C++ & C# ) immer AStyler, so haben wir immer Tabs ( wollen die HW junx ) , egal was du machst.