Poking Dead Bodies Anti-Pattern

Zur Entwicklung korrekter Unit Tests gibt es zwei ganz unterschiedliche Motivationen. Die ehrenhafte, der Entwickler möchte seinen Code absichern und die andere, der Programmierer wird zum Schreiben von Tests gezwungen. Im Beitrag Tolle Test habe ich einige Grundsätze für das Schreiben guter Unit Tests und die dabei üblichen Fehler skizziert. In diesem Beitrag möchte ich … Read more

Enums für die Ewigkeit

Ein schönes Feature der Persistenz unter Java ist das automatische Speichern von Enum-Werten. Wenn nicht weiter spezifiziert, wird der Ordinalwert der Enum Konstante in der Datenbank gespeichert. In unserem Beispiel gäbe es also den Wert 0 für GROUCHO und den Wert 3 für KARL in der Datenbank. Beim Rückmapping wird der Ordinalwert verwendet um wieder … Read more

Viereckige Räder und Miniaturen

I’m constantly surprised when people say, ‘But you haven’t changed!’ It’s like saying, ‘You’ve got a wheel. Now why don’t you make it a square?’ Angus Young In der Software Entwicklung arbeiten Kreative, Schöpfer, Künstler und Leute, die sich dafür halten.  Tagtäglich werden von ihnen neue Bibliotheken und Frameworks ersonnen um dem User ein paar … Read more

Ein alternativer Blick mit Jackson Views

Java Bibliotheken

Liest ein Entwickler seine Source ein zweites Mal, dann findet er mindestens drei Dinge die ihm nicht gefallen. Es gibt immer ein Design-Pattern, das hätte verwendet werden können, eine Bibliothek, die den Code kompakter gestaltet hätte oder ein Algorithmus, der alles vereinfachen würde. Die tatsächliche Implementierung eines Features ergibt sich aus Erfordernissen, Erfahrung und Eingebung des Moments. So kann es immer wieder passieren, dass dem Entwickler die ein oder andere gute Idee nicht in den Sinn kommt.

Wir malen einen Stammbaum

“I’ve been looking so long at these pictures of you That I almost believe that they’re real” — The Cure Nachdem wir in den ersten beiden Beiträgen Stammbäume für Entwickler und GEDCOM im Detail etwas über die Datenquellen erfahren haben, wenden wir uns nun dem eigentlichen Wunsch der beiden agilen Kunden zu. Meine Töchter Alicia und Fiona … Read more

Programmieren auf Französisch – Tourette

“Die Behandlung dieser einzigartigen Störung oder mehr oder weniger ihre vollständige Behandlung bleibt noch zu entwickeln.” — Georges Gilles de la Tourette Kennen Sie diese Entschuldigungen? “Wir hatten wenig Zeit“, “Für Reviews stand kein Kollege zur Vergütung“, “Da reglementiert uns keine Checkstyle Regel“, “Was Sonarqube nicht bemerkt, hat ausreichende Qualität“? Und natürlich die die Mutter … Read more

Und noch ein Fluent Builder

Nachdem wir schon zwei Ansätze für einen Fluent Builder angeschaut haben, wollen wir uns diesmal den Einsatz einer Chain in einem Builder anschauen.

Häufig möchte man einen Builder wiederverwenden, statt ihn jedes Mal für eine Instanz neu zu erzeugen, zu konfigurieren und dann wegzuwerfen.

Read more

Verwalter – oder wie Organisationen verrotten

Sind sie auch schon einmal an einen früheren Tätigkeitsbereich zurückgekehrt und es hat sich dort nichts verändert? Dutzende von Buzzword-Hype-Changes, aber unter dem frischen Anstrich von Agilität und digitaler Transformation schaut immer noch die alte Kontroll Mentalität durch?

Sie sind in das Reich der Verwalter eingedrungen, hier finden keine Veränderungen statt, neue Prozesse und Methoden werden hier den “Erfordernissen” angepasst. Egal ob Kanban, Scrum oder XP, hier wird nur nach dem Sinatra Prozess gearbeitet (“I did it my way”).

Überall nur Bäume hier, Entscheidungsbäume

Meinen letzten Text zur Künstlichen Intelligenz schrieb ich in den neunziger Jahren, als Werkstudent am Lehrstuhl für Künstliche Intelligenz. Jetzt also widme ich mich, dem aktuellen Hype geschuldet, wieder einmal diesem Thema. Es ist mehr als 25 Jahre vergangen und eine Menge hat sich getan, die Verfahren sind qualitativ und quantitativ besser geworden, die Rechner schneller und der Speicher größer.

Immer Ärger mit Hierarchien

“Es dürfte Ihnen schwer fallen zu erklären, warum Sie eine Leiche vergraben, die Sie nicht getötet haben.” aus dem  Film “Immer Ärger mit Harry” In Scrum arbeiten selbstorganisierte, selbständige Teams an der Entwicklung der Software. Sie stellen am Ende eines jeden Sprints ein neues lauffähiges System für den Kunden bereit. Auf diesem System kann der … Read more