In der Welt der Softwareentwicklung ist die Kreation einer Fehlermeldung oft ein nachgelagerter Gedanke, eine Art notwendiges Übel. Aber was, wenn wir diesen Ansatz umdrehen und Fehlermeldungen als integralen Bestandteil des Nutzererlebnisses betrachten? In diesem Beitrag möchte ich die vielfältigen Vorteile von gut durchdachten, klaren Fehlermeldungen beleuchten. Auslöser für diesen Artikel ist ein Fehler, der…
Pair-Programming – Experiment
Gemeinsam stark: Unsere Reise ins Extreme Programming bei der SWE Zentrale Zwei Köpfe, ein Code – eine scheinbar einfache Idee, die unsere Art zu arbeiten völlig umkrempeln könnte. Das zumindest ist der Claim, den Kent Beck schon vor über 20 Jahren in seinem Buch Extreme Programming vorgestellt hat. Tatsächlich haben wir im Team schon oft…
Incus statt KVM
Mein alter „Keller“-Server, ein Intel-Nuc ist so langsam in die Jahre gekommen. Mit einer Intel(R) Core(TM) i5-7260U CPU @ 2.20GHz konnte ich immerhin 4 Kerne für meine Virtualisierungsexperimente verwenden. Bisher habe ich KVM verwendet und so inzwischen 11 VMs in Betrieb genommen. Und so langsam merkt man doch, dass die Leistung dafür nicht mehr ausreicht….
Cmd-E: Der Game-Changer in IntelliJ’s Keyboard-Shortcut-Arsenal
Als Entwickler in der Welt der Software sind wir ständig auf der Suche nach Wegen, unsere Effizienz zu steigern. Jede Sekunde, die wir sparen können, ist wertvoll – nicht nur für uns selbst, sondern auch für unsere Teams und Projekte. Heute möchte ich über eine kleine, aber mächtige Funktion in IntelliJ sprechen, die vielen vielleicht…
Fix It Now Or Delete It
Vor inzwischen mehr als 5 Jahren bin ich über ein Buch gestolpert, das ich inzwischen wieder vergessen hatte. Nach langer Zeit habe ich mal wieder meine leanpub Bibliothek durchstöbert. Und hier war es: https://leanpub.com/fixitnowordeleteit Vereinfacht beschreibt diese kurze Buch die Idee, Bugs entweder sofort zu löschen, oder sie zu löschen. In der Realität sieht es…
Programmieren – aber defensiv
Dieser Artikel entstand aus einer Diskussion im Team zum Thema Null-Safety in der Programmierung. Dabei haben wir uns über die Bedeutung von defensiver Programmierung und die Vermeidung von Nullpointer-Exceptions ausgetauscht. Im Speziellen ging es um die Verwendung von String.isEmpty: Die Verwendung von StringUtils in diesem Beispiel würde verhindern, dass eine Nullpointer-Exception auftreten kann. Diese Vorgehensweise…
Caddy again
Für das Evang. Waldheim Esslingen, in dem ich lange Jahre ehrenamtlich aktiv war, betreibe ich die Website und dahinterliegende Webanwendung (siehe Projekte – Waldheim). Bisher sorgte der apache2 als Webserver und Reverse-Proxy für die Auslieferung der Seiten. Um etwas mehr Performance zu erreichen habe ich in diesem Fall die meisten statischen Inhalte aus der Webanwendung…
Die Umsetzung der „Definition of Done“
Um bessere Qualität in der Entwicklung zu erreichen, gibt es ein Konzept, das sich „Definition of Done“ (DoD) nennt. Die Idee, dass das Team sich selbst Gedanken darüber macht, was alles nötig ist, damit eine Aufgabe (Story, …) wirklich erledigt ist, finde ich einen schönen Ansatz. Die Herausforderung sehe ich aber in der tatsächlichen Umsetzung….
Wer hat hier „Unit Tests“ gesagt?
Vor längerer Zeit habe ich als Product Owner mit einem Entwickler-Team zusammengearbeitet. Das Team entwickelte mit Java + Vaadin eine Webanwendung. Als sich die Probleme und Bugs häuften und auch teilweise wiederholten, erkundigte ich mich, ob zu den aufgetretenen Bugs auch dazugehörige Unit-Tests beim Beheben erstellt worden seien. Für jeden Bug ein Unit-Test Das Prinzip,…
Refactoring muss Spaß machen…
Gestern ergab es sich, dass ein Kollege und ich in eine Refactoring-Session gestolpert sind. Verschiedene Vorschläge ergänzten sich, aber eines hat mir besonders Spaß gemacht… Als erstes schlug mir IntelliJ folgendes vor: Danach ging es direkt mit dem nächsten Hinweis weiter … Meiner Meinung nach ist es extrem wichtig, die richtigen bzw. gute Werkzeuge zu…