Deferred Programming – verspätete Erkenntnis als Konzept

02.02.2007 09:01

In der Floskel "Manche Probleme lösen sich von selbst." steckt ein wahrer Kern. Ich glaube, diese Feststellung durfte jeder von uns schon einmal machen. Allerdings beschreibt dieser Satz nur eine passive Seite.

Die folgende Situationen dürfte jedem, der sich mit Softwareentwicklung beschäftigt, durchaus bekannt vorkommen.

  • Man hat ein Problem und schlägt sich schon mehrerer Stunden damit herum, ohne auf eine Lösung zu kommen. Man ist sich sicher, dass es eine Lösung gibt, aber irgendwie funktioniert es vielleicht nicht so, wie man das erwartet.
  • Man setzt irgendwas um. Am nächsten Tag fragt man sich, was man da eigentlich gemacht hat und warum das so kompliziert geworden ist. Man macht dann gleich mal ein Refactoring.
  • Man hat ein Problem und hat dazu gleich eine Reihe von Lösungen, die aber irgendwie nicht den Kern des Problems treffen.

In solchen Fällen hat mir geholfen, dass ich das Problem zu diesem Zeitpunkt einfach ungelöst weggelegt habe. Ich habe mich nicht mehr aktiv damit beschäftigt. Ja, ich habe nicht mal mehr darüber nachgedacht.

Ich konnte dann aber sehr häufig feststellen, dass mir für die meisten Probleme innerhalb von 24 Stunden eine recht gute Lösung eingefallen ist. Dabei habe ich, wie ich bereits beschrieben habe, nicht aktiv drüber nachgedacht. Ich vermute mal, dass man zumindest als Mann dann dabei auch mal die andere Hirnhälfte benutzt (ist für Frauen vermutlich überhaupt nicht geeignet (was zu prüfen wäre)).

Dabei kann ich folgende Vorteile feststellen:

  • Man hat weniger Kopfschmerzen, weil man sich weniger stark in ein Problem verbeißt (wenn man rechtzeitig diese Methode anwendet)
  • Man hat mehr Zeit um einfachere Probleme zu lösen. Man kann besser parallelisieren.
  • Die Lösungen sind im Schnitt besser und man spart effektiv Zeit, weil man meist eine Implementierung weniger umsetzen muss.
  • Man denkt doppelt so schnell (wenn das mit der Hirnhälfte stimmt) 🙂

Es gibt auch Nachteile:

  • Ich wüsste nicht wie man das erlernen kann. Man kann es nur ausprobieren und testen, ob der Effekt bei einem auftritt.
  • Wenn man leider keine 24 Stunden Zeit hat, ist das evtl. keine Option.

Ich vermute, dass sich dieses Konzept auch auf andere Bereiche übertragen lässt, denn es gibt eigentlich keine Abhängigkeit in Richtung Softwareentwicklung. Insofern bin ich gespannt darauf, ob jemand ähnliche Beobachtungen gemacht hat und ob die in anderen Bereichen angesiedelt waren.

Ansonsten: Ausprobieren. Und liebend gerne die eigenen Erfahrungen schildern.

 

 

 


Empfehlungen: handy taschen | Good Job - Bad Job