The FIP Journal #3: Vorsichtig ausliefern, schnell lernen

Marc & Patrik
4 min read

Patrik

Kluge Worte der Woche

«Ich bin nicht gescheitert. Ich habe einfach 10'000 Wege gefunden, die nicht funktionieren.» (Thomas Edison)

Journal

Auch wenn ich dieses Projekt wirklich liebe, bereiten mir zwei Dinge Albträume. Das erste ist ein Rechenfehler, der meinem Ruf schaden könnte, das zweite ist Datenkorruption. Reden wir über das zweite. Weil das Projekt noch in den Anfängen steckt, ist unser Datenschema noch nicht stabil und ändert sich oft.

Viele Features sind von ihrer Natur her ziemlich trivial: Können wir neue Ereignisse hinzufügen oder einen Teil der Konfiguration detaillierter machen? Zum Beispiel ist es relativ einfach, ein Flag einzubauen, um auszuwählen, ob der Lohn inflationsangepasst ist, aber es verändert, wie die Daten gespeichert werden, und erfordert eine Schema-Änderung in der Datenbank.

Das sind tiefe Einschnitte im Release-Prozess. Wenn etwas kaputt geht und Daten beschädigt werden, kann ich meinen Code nicht einfach auf die vorherige Version zurücksetzen. Die Daten in der Datenbank bleiben beschädigt. Im schlimmsten Fall, wenn alles komplett verloren geht, muss ich ein Backup einspielen und den Kunden sagen: «Sorry, ich habe es verbockt und alles verloren, was du in den letzten X Tagen gemacht hast.»

Aktuell verfolge ich einen besonders vorsichtigen Ansatz: Ich lasse die alte und neue Datenbank-Schema-Version parallel laufen, bis ich mich sicher genug fühle, um umzuschalten. Das heisst, wir schreiben noch in die alte Version des Datenbankschemas, damit ich im Bedarfsfall mit minimalem Datenverlust zurückkehren kann (nur die neuen Features gehen verloren).

Das macht den Code für manche einfachen Features ziemlich code-lastig, darum neige ich dazu, alle Features, die eine Daten-Migration brauchen, in einem einzigen Release zu bündeln. Ich mache nur jeden zweiten oder dritten Release mit Daten-Migration, um diesen mühsamen, aber notwendigen Prozess im Griff zu behalten.

Wie habe ich AI diese Woche genutzt?

  • Ich habe viel refaktoriert. Viel Boilerplate-Code und triviale Änderungen werden immer wieder gemacht. Ich nutze Cursor, als hätte ich eine Praktikantin, der ich sage, welche Änderungen sie machen soll, die ich danach durchschaue.
  • Hat nichts mit diesem Projekt zu tun, aber meine Frau hat mich gefragt, ob ich Rechnungen für ihr Business generieren kann. Der Schweizer Standard ist die QR-Rechnung mit QR-Code für die Zahlung. Verschiedene Dienste (wie unsere Bank) bieten das an, sind aber meist irgendwie eingeschränkt. Aus Neugier habe ich Google AI Studio geöffnet und ziemlich genau das eingegeben, was sie von mir wollte, und wir haben zweimal iteriert, hauptsächlich für Feinschliff und Umsortieren. In weniger als 15 Minuten hatte ich eine komplette Lösung, um die Rechnung in Echtzeit zu bearbeiten und auf Knopfdruck als PDF zu exportieren. Ich bin beeindruckt.

Marc

Produktseite

Zwei grosse Wins diese Woche:

  • Neue fiplanner.ch-Homepage! Wir haben unsere statischen Screenshots durch ein richtiges Demovideo ersetzt, das dich durchs Produkt führt. Das ist wie Tag und Nacht: Eine Video-Produkttour vermittelt so viel mehr als ein Screenshot jemals könnte.
  • Die Inline-Dokumentation ist live. Wir haben endlich unsere winzigen Tooltips durch eine richtige In-App-Dokumentation ersetzt, die tatsächlich lesbar und vollständig ist. Das ist das «richtige Zeit, richtiger Ort»-Dokumentationssystem, das ich in der letzten Ausgabe erwähnt habe, es ist ausgeliefert! (naja, am Montag ;))

Was mich beschäftigt

Was mir gerade unangenehm ist? Die Zeit. Schon wieder. Wir haben eine so klare Vision davon, wo wir das Produkt hinbringen wollen, vor allem rund um eine spielerischere UX, aber die Woche hat einfach nur eine begrenzte Anzahl Stunden. Das Backlog an Ideen wächst schneller, als wir es abarbeiten können. Aber wie wir uns immer wieder in Erinnerung rufen: Wir sind eine Calm company. Nicht alles muss in diesem Sprint passieren.

Notiz an einen Freund

OMG-Moment der Woche: Ein Nutzer hat uns eine Bildschirmaufnahme von sich selbst geschickt, wie er FI Planner nutzt. Gold. Pures Gold. Patrik und ich stecken so tief im Produkt, dass wir blind für Dinge geworden sind, die für einen frischen Blick überdeutlich sind. Dieses eine Video hat UX-Probleme aufgedeckt, die wir mit 3 bis 4 Mikro-Änderungen beheben können. Dinge, die wir selbst nie entdeckt hätten.

Also hier mein Rat an meinen Freund: Frag nicht nur nach Feedback per E-Mail (das ist schon toll). Frag nach Bildschirmaufnahmen. Jemandem beim tatsächlichen Nutzen deines Produkts zuzuschauen, ist ein komplett anderes Insight-Level. Wir planen jetzt, unseren Scenario-Bereich genau auf Basis dieser Art von Feedback zu verbessern.

Tool der Woche

Nicht wirklich KI an sich, aber teilenswert: Ich habe Screen Studio auf dem Mac genutzt, um unser Produkt-Demovideo zu erstellen. Das Ding ist ein Game-Changer. Was mich sonst entweder einen Freelancer oder Stunden an Mühe mit älteren Tools gekostet hätte, habe ich in 2 Stunden für CHF 29 erledigt. Sauber, professionell, fertig.

Grösser anzeigen