Montag, 24. Mai 2010

Überraschende Relevanzwellen [OOP 2010]

image Schon interessant, was zu Wellen im Twitter-Teich führt. Da stolpere ich während der Lektüre von “Projektmanagement” von Thorsten Reichert beim “Zusammenfassungsservice” getAbstract über den Satz

„Viele Unternehmen haben nie Zeit, Dinge richtig zu tun, aber stets Zeit, Dinge mehrmals zu tun.”

Den twittere ich – und erzeuge unerwartet weitreichende Reaktionen. Wow!

Nicht, dass mich die Funktionsweise von Twitter wundert. Nein, mich wundert, was die Gemüter hier in Resonanz versetzt. Ist nicht mein erster Tweet, aber der erste, bei dem ich aus so unterschiedlichen Ecken Retweets sehe. Das Thema schlägt offensichtlich einige Saiten in der Entwicklergemeinde an.

Was sind denn typische Beispiele, wo das DRY-Prinzip vom Management nicht eingehalten wird? Doppeltarbeit statt “einmal richtig tun”? Wer mag Situationen und Fälle benennen? Je mehr Konkretes zusammengetragen wird, desto eher ists möglich, daraus Ursachenmuster abzuleiten und vielleicht doch mal etwas dagegen zu tun. In kleinen Schritten.

4 Kommentare:

Anonym hat gesagt…

Vor kurzem fand ich in der Backendsoftware meiner Firma mehrere JavaScript Dateien in verschiedenen Ordnern. Die Dateien enthielten ähnlichen Code, jedoch von 3 unterschiedlichen Autoren. Die drei haben wahrscheinlich nicht von einander abgeschrieben, denn in fast jeder der Datei fand ich Implementierungen von LTRIM und RTRIM usw. die teils sehr einfach und teils unnötig kompliziert waren. Hinzu kamen auch noch weitere Funktionen wie beispielsweise Browserweichen oder Pseudo-Muster für AJAX Requests.

Als ich zufällig einen der Entwickler, den ich sehr gut kenne mal darauf ansprach, wieso da redundant Dateien rumlägen und nicht einfach MooTools oder jQuery zum einsatz käme, wurde mir gesagt, dass keine Zeit dafür gewesen wäre sich damit zu beschäftigen und zu evaluieren, ob es solche Codes schon gibt.

Ich fasse zusammen: Lieber 3 Leute 3x das selbe machen lassen als einen hinzusetzen und es 1x richtig machen zu lassen. Vllt. ein wenig langsamer, aber dafür dann endgültig.

Warum die Entwickler sich dann aber nicht wenigstens untereinander abgesprochen haben bleibt mir schleierhaft. Die Wurzel allen Übels scheint mal wieder mangelnde Kommunikation zu sein.

AlexOnASP.NET hat gesagt…

Hallo Ralf, das Problem erlebe ich auch im Maschinen- und Anlagenbau immer wieder.

Das Streben nach Wiederverwendung und Vereinfachung könnte auch hier noch größer sein - die Leute sind aber offenbar nicht in der Lage, Ihre Probleme ein Stück weit zu abstrahieren und so allgemeiner gültige und wiederverwendbare Lösungen zu schaffen.

Leider fehlt auch vielen Projektleitern der Sinn und Verstand für die Problematik, so dass sie das von den Ingenieuren auch gar nicht einfordern können.

Und so wird jedes Teil zum x-ten Mal (leicht geändert) neu konstruiert, gefertigt und verbaut... und am Ende des Tages hat keiner das Gefühl, vorangekommen zu sein und die Firma jammert, dass kein Geld verdient ist.

Wenn doch mal einer im Team ist, der ein Problem an der Wurzel packen will, hat er leider schnell den schwarzen Peter des "Besserwissers".

Unknown hat gesagt…

Ich hatte mal so ein pseudo OR Mapper. Der wurde einmal für Projekt A gemacht. Machte seine Arbeit für Projekt A auch gut.

Man musste ihn natürlich auch für Projekt B übernehmen. Allerdings klappte Das und Dies nicht. Tonnenweise Anpassungen damit der OR Mapper für Projekt B passte. Aber für Projekt A konnte man den nicht mehr nutzen.

Dann kam Projekt C. Auch Bei Projket C MUSSTE der OR Mapper genutzt werden. Wieder Tonnen an Anpassungen die nicht mehr kompatibel zu A oder B waren.

Statt einfach mal eine Technik einzuführen, z.B. NHibernate, musste man duzende Wochen in Anpassungen reinstecken die niemand mehr brauchte. Zudem ist die Stabilität und Flexibilität einfach nur schwach. Viel Zeit für nichts.

Golo Roden hat gesagt…

Hallo Ralf,

das gleiche Problem erlebt man doch auch häufig im Kleinen im Privatleben: Statt dass man die Lampen nach einem Umzug gleich aufhängt, lässt man die Fassungen für die nächsten drei Jahre hängen und ärgert sich jedes Mal darüber, dass noch keine Lampen hängen.

Egal, ob im Privaten oder im Beruflichen, es gilt immer: Es ist schwer, einen Stein erst mal ins Rollen zu bringen - rollt er dann einmal, dann ist es ein leichtes, ihn am Rollen zu halten.

Soll heißen: Man muss in solchen Situationen nur einfach mal den inneren Schweinehund überwinden und sich aufraffen, es gleich richtig zu machen, dann hat man langfristig weniger Aufwand.

Viele Grüße,


Golo

Kommentar veröffentlichen

Hinweis: Nur ein Mitglied dieses Blogs kann Kommentare posten.