Prinzip: Pragmatismus 1


Verbreitet die Message!

Ich habe heute den Blog gestartet.
Etwas neues zu starten ist immer schwierig. Man zweifelt, fragt sich: “Wird das wieder eines dieser Sachen, die ich motiviert beginne und irgendwann vergesse?”. Das kann leider nur die Zeit zeigen, aber wie schlimm wäre das wirklich?
Ist der Versuch, jeder Versuch, nicht an sich schon etwas wert, gerade wenn man sich der Öffentlichkeit präsentiert?

Ich kenne einige sehr intelligente und fähige Personen (ich würde sagen, intelligenter als ich), die jedoch in der Praxis irgendwie blockiert oder unfähig zum “einfach mal machen” sind. Ein gutes Beispiel ist einer meiner Kommilitonen, der sehr erfahren im Bereich der Programmierung ist, jedoch leider ein Fan von allem ist, was “underground” ist. Das bedeutet, dass er Windows, Apple oder auch WordPress rigoros ablehnt, denn <Grund xyz einfügen>. Beobachtet man diesen Kommilitonen lernt man wie oft man Linux neu oder rekonfigurieren kann – nichts gegen Linux, ich sitze selbstgerade vor Ubuntu – oder stellt fest, dass man sich 50% der Arbeitszeit mit winzigsten Konfigurationsproblemen beschäftigen kann. Natürlich ist im Gegensatz dazu der übliche Windows-User nicht der Erfahrenste, aber eine Mischung aus Pragmatismus und Theorie führt meiner Ansicht zum Erfolg – oder überhaupt zu vorzeigbaren Resultaten.

Ein ähnliches Phänomen findet man in Diversen Codingforen. Man hat einen Ansatz oder eine solide, gute Lösung für ein Problem, doch anstatt diese zu verwenden, wird krampfhaft versucht maximal viel Expertise in möglichst wenig Code darzustellen. Ob der Fragesteller etwas lernt, oder irgendjemand diesen Code noch warten kann ist dann egal.

for (int i=0;i<length;i++){bool_val = (arr[i] mod 2 == 0) ? True : False;}

(Pseudocode)

So ein Codestück schaut man sich dann erstmal ein bisschen an, nur um dann nach der Verdrängung der Suizidgedanken festzustellen, dass hier keine Magie passiert. Dem Compiler ist das egal: Von der Laufzeit her, macht folgender leserlichere Code keinen Unterschied:

for (int i=0;i<length;i++){
  if ( (arr[i] mod 2) == 0){
    bool_val = True;
  }
  else {
   bool_val = False;
  }
}

Aber man sieht sofort was man hier verbessern kann..

for (int i=0;i<length;i++){
  //if a value of the array is even
  if ( (arr[i] mod 2) == 0){
    //Set bool_val to True;
    bool_val = True;  
  }
  else {
   //value is odd
   bool_val = False;
   break;
  }
}

Kommentare & Laufzeitverbesserung.

//Check if all values in array are even
for (int i=0;i<length;i++){
  //if one value of the array is odd
  if ( (arr[i] mod 2) != 0){
    //result is false and we can stop
   bool_val = False; 
   break;  
  }
}

Im Vergleich zum Anfang list die Laufzeit geringer (es kann im Durchschnitt ab der Hälfte abgebrochen werden).

In den allermeisten Fällen ist es kein Gewinn die Codezeilen krampfhaft zu minimieren. Code muss verstehbar sein, denn heutzutage wird irgendjemand deinen Schriebs immer nocheinmal lesen – also stell sicher, dass das Einarbeiten in deinen Code wirtschaftlich möglich ist.


Das Prinzip des Pragmatismus ist nötig um schnell genug Resultate zu erzielen. Resultate motivieren und sind in der agilen Softwareentwicklung nötig um das Ziel dynamisch anpassen zu können. Aber auch in anderen Bereichen sind Resultate eine sehr gute Möglichkeit um den Fortschritt und Erfolg zu messen.

Wie immer gilt natürlich: Im Extremen ist nichts gut. 🙂

Verbreitet die Message!

Schreiben Sie einen Kommentar

Ein Gedanke zu “Prinzip: Pragmatismus