Agiles Mindset – aber bitte nur zu 100%

Es überrascht mich immer wieder wie viele Hardliner der agilen Welt darauf pochen, zu 100% und damit bedingungslos alle Aspekte des agilen Manifests bzw.  der jeweiligen Methodik umzusetzen. Meist quittiert mit dem Urteil:

„Sonst bist du nicht agil!“ oder „Andernfalls funktioniert Agile nicht!“

Irgendwie stellen sich mir dann die Nackenhaare. Warum? Weil Hardlinertum meiner Ansicht nach kontraproduktiv für agile Denkweisen ist. Denn es werden zwei wichtige Aspekte außer Acht gelassen: Die Sichtweise und die Reife des Teams!

Agiles Mindset vs. Dogmen

Im agilen Manifest werden meiner Ansicht nach Werte und Prinzipien beschrieben, die notwendig sind, um auf Veränderung mutig und selbstbewusst reagieren und gemeinsam im Team Großes leisten zu können. Passend dazu die ersten Worte im Agilen Manifest.

Individuals and interactions over processes and tools

Und dennoch wird von einigen schon fast dogmatisch das Gegenteil  gefordert. 100 %ige Umsetzung aller Regeln und Prinzipien! Klingt das nicht nach einem Dogma und damit nach einem Verstoß gegen dieses schön formulierte Prinzip? Ich finde schon!

„Agiles Mindset – aber bitte nur zu 100%“ weiterlesen

Nix mit grüne Wiese! Berufseinstieg als Softwareentwickler meistern

Als Teamleiter erlebe ich häufig, wie sich selbst ausgezeichnete Studenten  der Wirtschafts- und Angewandten Informatik beim Berufseinstieg als Java Softwareentwickler schwer tun.  Warum der Einstieg so schwer fällt, hängt vermutlich damit zusammen, dass die Notwendigkeit durch viele Klassen und Projekte zu navigieren und damit die Fähigkeit Software effektiv zu analysieren im Studium oft nachrangige Behandlung findet.

„Nix mit grüne Wiese! Berufseinstieg als Softwareentwickler meistern“ weiterlesen

Refactoring? – Papperlapapp! Es läuft doch!

Das folgende Szenario erleben Softwareentwickler insbesondere zu Beginn ihrer Karriere häufig. Vielleicht hilft dir diese Geschichte, den Wert von Refactoring, TDD und Clean Code besser einschätzen zu können.

Eine vielleicht nicht ganz unbekannte Geschichte

Endlich geschafft! Du hast dich tagelang gequält und nun funktioniert endlich das Modul, das schon seit langem fertiggestellt sein sollte. Durch Versuch und Irrtum hast du viele Varianten durchgespielt. „Keine Zeit mehr für Aufräumarbeiten“ denkst du dir, checkst den Code ein und lieferst das Modul aus.

Die neue Klasse hat zwar 1000 Zeilen, ist zuständig für den Aufbau der Datenbankverbindung und weitere 100 Dinge aber was soll’s? Es läuft und Änderungen an diesem Modul sind sowieso unwahrscheinlich!

„Refactoring? – Papperlapapp! Es läuft doch!“ weiterlesen

Statische Methoden testen – Es müssen ja nicht Mocks sein!

Statische Methoden testen ist nicht so schwer wie man denkt! Liest man jedoch Artikel oder betrachtet man Videos zu statischen Methoden und JUnit, werden meist Mocking Frameworks als Lösung diskutiert. Beispielsweise wenn man die Diskussion bei stackoverflow.com verfolgt.

„Statische Methoden testen – Es müssen ja nicht Mocks sein!“ weiterlesen

Vom Absolvent zum Java Software Craftsman

Du stehst kurz vor dem Abschluss deines Studiums / deiner Ausbildung! Sehr gut! Deine Karriere als handwerklich versierter Softwareentwickler (vgl. Software Craftsmanship) kann nun Fahrt aufnehmen. Doch was zeichnet nun einen professionellen Softwareentwickler aus?

Um ein guter Softwareentwickler zu sein, muss man sich ständig weiterentwickeln. Nicht nur die Technik im Sinne von Betriebssystemen, Browsersoftware und Hardware entwickelt sich ständig weiter, auch Best Practices sind einem ständigen Wandel unterlegen. Um Software effizient zu entwickeln, bedarf es der Kenntnis aller Möglichkeiten innerhalb eines Technologieökosystems. Nur so lassen sich die richtigen Entscheidungen treffen und die besten Ergebnisse erzielen (Quelle: Björn Weinbrenner)

Diese Aussage von Björn Weinbrenner trifft meiner Meinung nach den Nagel auf den Kopf. Du musst Werkzeuge, Methoden und Technologien kennen, um deren Tauglichkeit in der Praxis einschätzen zu können (vgl. Abschnitt „Lese kontinuierlich…„). Für erste möchte ich dir ein paar Tipps mit auf den Weg geben, wie du diesem hohen Anspruch näher kommst.

„Vom Absolvent zum Java Software Craftsman“ weiterlesen