2021-03-23 Wortschatz für Superhirne

Indolent, drakonisch, lakonisch, jovial – was haben diese Worte mit unserem Sprint zutun? Nichts :P. Also nicht direkt mit unserem Projekt sondern mit unserem Zeitvertreib. Dieser Sprint war aus zweierlei Hinsicht besonders, als das wir A in unserem Urlaub fakultativ weiter an TeamSlimster gearbeitet haben und wir B nebenbei etwas unseren Wortschatz erweitert haben. Ein Buch, um eloquent, intelligent, eingebildet, hochgestochen zu klingen oder ein Buch um einfach ein bisschen Spaß bei der Arbeit zu haben?! Wofür auch immer. In jedem Fall hat es uns etwas die Zeit beim Abfragen, Raten und Lachen versüßt.

Und was haben wir noch gemacht? Wir arbeiten noch an der Umsetzung der Achievements im Allgemeinen und am Contributen im Speziellen.
Das UI hatte wir bereits letzte Woche überarbeitet. Zu Beginn des aktuellen Sprints ging es der Stepgröße zum Contributen an den Kragen. Wie bereits im letzten Blogeintrag erwähnt, macht es keinen Sinn beim Achievement „365 Tage im Jahr“ in 10er Schritten den zu contributenden Wert zu erhöhen. Wiederum ist die Chance groß beim Achievement „1000 Ball Catches“ die Murmel mehr als einmal von Partner A zu B zu werfen. Und was passiert mit Achievements, deren Aufgabe etwa erfüllt wurde oder eben nicht?
Wir haben uns entschieden die Information ContributeProposalStepSize an die Achievement-Templates zu hängen. Beim Erzeugen eines konkreten Achievements wird der Wert an das zugehörige Progress-Objekt übergeben. In der App haben wir unsere Plus- / Minus-Buttons an die Stepsize geknüpft. Ein Tag mehr Snowboarden im Jahr oder doch 100 Ballwechsel? Voilà, jetzt geht es und ist gleich schöner.
Bei der Stepgröße konnte wir es nicht belassen. Was ist mit der Darstellung? Für ein SingleContributeAchievement (ein Achievement, das mit einmal abgeschlossen werden muss – „Blog Eintrag geschrieben? Ja oder nein“) wird nun lediglich ein Button „Done“ angezeigt. Nicht zu vergessen ist der Switch aus der Contribute-Darstellung in die Finish-Darstellung, wenn das Achievement erreicht wurde.
Bugs bei der Eingabe des ContributeValues hatten wir auch einige. Denn bei jeder Eingabe muss der ProgressPreviewBar (zur Anzeige welchen prozentualen Beitrag ein Contribut auf den gesamten Progress hat) aktualisiert werden, was wiederum indirekt eine Änderung des Eingabewertes nach sich zog, was wiederum eine Aktualisierung des ProgressPreviewBars zur Folge hatte, dessen Update wieder indirekt eine Aktualisierung des Eingabefeldes auslöste, worauf hin es sich der ProgressPreviewBar nicht nehmen ließ sich zu refreshen … Endlosschleifen sind nicht dauerhaft unterhaltsam.
Ach und die Geschichte mit dem Cursor. Beim Setzen des Wertes für das Eingabefeld des ContributValues wurde der Cursor des Eingabefeldes permanent neu positioniert. Aber auch das haben wir in den Griff bekommen. Letztendlich hat die Implementierung einer schicken Extension geholfen, die uns auch zukünftig vor diesen Problemen schützen sollte.

Haben wir schon erwähnt, dass wir über Beschreibungen unsere Test-Achievements brüteten?
Unsere drei Contribute-Funktionen sehen nur wie folgt aus:

1. Achievement mit mehrfacher Contribute Funktion
2. Achievement mit einfacher Contribute Funktion
3. Abgeschlossenes Achievement

Was gab es sonst? Vielleicht gehen wir gerade wieder etwas durch das Tal der Tränen. Wir sehen, wir kommen voran. Aber vielleicht haben wir etwas unser Ziel aus den Augen verloren? Aber das wird wieder besser.

Ausblick: Mit den Achievements sind wir immer noch nicht durch. Was in jedem Fall fehlt ist die Übertragung der contributeten Werte ins Backend.