← Zurück zum Blog

Vom Holzbrett in den App Store

Vor etwa zwanzig Jahren zog mein Mitbewohner in der Uni und ich ein Stück Holz aus einem Containerabfall, zeichneten mit einem Lineal ein Gitter darauf, kauften Glassteine aus einem Bastelbedarf für ein paar Euro und fingen an, Go zu spielen. Ich hatte keine Ahnung, was ich tat. Eigentlich habe ich das immer noch nicht wirklich. Aber irgendetwas an diesem Spiel hat mich sofort gepackt — diese Art, wie etwas so scheinbar Einfaches so unfassbar tief sein kann. Ein 19×19-Gitter. Schwarze und weiße Steine. Regeln, die man in fünf Minuten lernen kann. Und dennoch konnten zu jener Zeit die leistungsfähigsten Computer der Welt keinen starken menschlichen Spieler besiegen. Das hat mich fasziniert.

Eine frühe Besessenheit

Diese Faszination reichte so tief, dass mein Abschlussprojekt an der Kingston University dem Bereich Computer Vision gewidmet war — ich programmierte von Hand einen Algorithmus, der den Zustand eines Go-Bretts anhand eines Fotos auslesen konnte, und erzielte dabei eine Genauigkeit von über 87 %. Für Anfang der 2000er Jahre, vor der Explosion des Deep Learning, war ich insgeheim ein bisschen stolz darauf.

Ungefähr zur gleichen Zeit reiste ich für zwei Wochen nach Japan, ausdrücklich um die Go-Kultur aus erster Hand zu erleben und gegen einheimische Spieler anzutreten. Ich verlor jede einzelne Partie. Eine Begegnung ist mir besonders in Erinnerung geblieben: ein junger Mann, wahrscheinlich auf Dan-Niveau, sehr schüchtern, mit auffallend langen Fingernägeln, begleitet von seinem Vater. Ich wurde vollständig vernichtet, bevor ich überhaupt begriffen hatte, was gerade geschehen war — es dauerte eine Weile, bis mir klar wurde, dass ich aufgeben musste.

Jeder Go-Salon, den ich besuchte, war so dicht mit Zigarettenrauch gefüllt, dass es fast unmöglich war, eine Partie durchzuspielen, ohne zwischendurch frische Luft zu schnappen — und dabei bin ich selbst Raucher. Die Spieler waren fast ausschließlich ältere Menschen. Go schien ein Zeitvertreib für die Generation im Ruhestand zu sein, was mich angesichts Japans Ruf für Technologie und Innovation verblüffte. Niemand schien Go mit dem Computerwesen in Verbindung zu bringen. Zumindest noch nicht.

Die lange Pause

Das Leben ging weiter. Ich arbeitete als Java-Entwickler, verbrachte während des Studiums ein Jahr bei Accenture — in dieser Zeit fielen mir vor lauter Stress sämtliche Haare aus — und fand mich schließlich nach gesundheitlichen Schwierigkeiten für eine längere Zeit ohne Beschäftigung wieder. Meine Java-Kenntnisse wurden immer überholter, während die Branche sich ohne mich weiterentwickelte. Ich versuchte aufzuholen, doch die Lücke war zu groß geworden — und ich stellte fest, dass die Löhne in diesem Teil der Branche sogar gesunken waren. Es lohnte sich schlicht nicht.

Durch all das spielte ich weiter Go. Nicht ernsthaft — ich besuche den Exeter Go Club seit etwa fünfzehn Jahren sporadisch, und ich bin bestenfalls ein durchschnittlicher Spieler. Aber das Spiel ließ mich nie wirklich los.

Alles fügte sich zusammen

Dann geschah in einem bemerkenswert kurzen Zeitraum auf einmal ganz viel.

Der COVID-Lockdown traf ein. Ich saß zu Hause fest und wusste nicht, wohin mit mir — hatte aber das Glück, drei Apple-Geräte zu besitzen, Geschenke von Familie und meiner Partnerin. Ich sah den AlphaGo-Dokumentarfilm und war wie elektrisiert. Das, was mich an der Uni so fasziniert hatte — die Unmöglichkeit, dass eine Maschine Go meistert — war gelöst worden. Und die KI-Revolution, die dadurch angestoßen wurde, steckte noch in den Kinderschuhen. ChatGPT kam. Dann Claude. Dann kündigte Apple die Vision Pro an.

Ich fing an, mit KataGo zu experimentieren, und bemerkte, dass es keine ordentliche App Store-Oberfläche gab. Ich schaute mir die Go-Apps an, die für iPhone und iPad verfügbar waren, und sie waren … in Ordnung. Funktional. Aber keine von ihnen hatte irgendwelche Barrierefreiheitsfunktionen. Keine einzige Go-App im gesamten App Store deklarierte Unterstützung für VoiceOver, Voice Control, Dynamic Type oder irgendeinen anderen Barrierefreiheitsstandard von Apple. Keine einzige.

Für ein Spiel, das seit Jahrzehnten von blinden Menschen gespielt wird — auf tastbaren Brettern mit erhabenen Linien in Japan, beim Französischen Go-Verband, in Korea — fühlte sich das vollständige Fehlen einer digital barrierefreien Version wie eine Lücke an, die es nicht geben dürfte. Blinde Go-Spieler waren vollständig aus dem App-Ökosystem ausgesperrt.

Alles fügte sich auf einmal zusammen und ergab ein klares Bild. Ich würde mir die iOS-Entwicklung von Grund auf selbst beibringen, KI-Tools nutzen, um den Lernprozess zu beschleunigen, und eine Go-App bauen, die jeder spielen kann — ob sehend oder nicht.

Von null anfangen

Am 1. Juli 2024 legte ich ein leeres Xcode-Projekt namens „RenderedGoApp" an — kein besonders inspirierender Name. Ich wusste nichts über Swift, SwiftUI, RealityKit oder irgendeine der Entwicklungstechnologien von Apple. Ich brachte mir alles selbst bei — durch Apples offizielle Dokumentation und kostenlose WWDC-Sessions, ohne formale Ausbildung, Bootcamps oder Entwickler-Events.

Zwei Wochen später, am 17. Juli, benannte ich es in „Goban3D" um. Ein Goban ist der traditionelle japanische Name für das dicke Holzbrett mit Beinen, auf dem Go gespielt wird. Der Name fühlte sich richtig an — er entsprach den Namensrichtlinien von Apple und sagte genau das, was die App war.

Ich erhielt Legasthenie-Unterstützung von der Grundschule bis zur Berufsschule. Ich weiß, wie es sich anfühlt, wenn Werkzeuge nicht mit einem im Sinn entwickelt wurden. Deshalb war Barrierefreiheit von der allerersten Codezeile an kein nachträglicher Gedanke — sie war der Grund, warum das Projekt überhaupt existierte.

Das SceneKit-Desaster

Einer der härtesten Momente kam, als Apple SceneKit als veraltet einstufte — das 3D-Framework, in dem ich die gesamte Brettszene aufgebaut hatte. Ich war richtig gut darin geworden. Die Szene hatte einen Schmetterling, der umherflog, Gras, das sich im Wind wiegte, physikalisch basierte Beleuchtung. Sie lief wunderschön mit minimalem CPU-Verbrauch. Dann kündigte Apple an, es durch RealityKit zu ersetzen.

Ich war fuchsteufelswild. Aber mit dem Anspruch, etwas Zeitgemäßes zu liefern, und null Toleranz für technische Schulden wusste ich, dass jede Zeile SceneKit herausgerissen und ersetzt werden musste. Der Schmetterling überlebte das nicht. RealityKit ist Apples neues Aushängeschild, aber es ist ein weitaus hungriges Biest als sein Vorgänger — etwas, das ich eines Tages gerne mit einem Apple-Ingenieur besprechen würde.

Der aktuelle Stand

Heute befindet sich Goban3D in einer externen Beta im App Store für iOS und macOS. Die App hat eine 100-prozentige Barrierefreiheitsabdeckung in allen sieben Barrierefreiheitskategorien von Apple — VoiceOver, Dynamic Type, Voice Control, Reduce Motion, Reduce Transparency, Sufficient Contrast und Differentiate Without Color. Sie läuft auf jedem iPhone vom 3,5-Zoll-SE bis zum 6,9-Zoll-Pro-Max, jedem iPad von 9,7 bis 13 Zoll und nativ auf dem Mac über Catalyst. Das 3D-Brett wird in RealityKit mit physikalisch basierten Materialien gerendert, die das Licht wie echtes Holz und echter Stein einfangen. Außerdem gibt es einen sauberen 2D-Modus für Momente, in denen man Schlichtheit oder Akkulaufzeit bevorzugt.

Niemand außerhalb des Entwicklungsprozesses weiß bisher davon. Keine Presseberichterstattung, kein Community-Bewusstsein, keine externen Beta-Tester. Dieser Blogbeitrag ist gewissermaßen das erste Mal, dass ich öffentlich darüber spreche.

Was als Nächstes kommt

Die mit Abstand wichtigste Priorität ist es, Beta-Tester mit echten Barrierefreiheitsbedürfnissen zu finden — blinde Spieler, Menschen mit Seheinschränkungen, motorischen Beeinträchtigungen. Die App wurde nach Apples Standards entwickelt, aber Standards sind nur der Anfang. Ich brauche echte Menschen, die mir sagen, was funktioniert, was nicht funktioniert und woran ich noch gar nicht gedacht habe. Sie zu finden wird sein wie die Suche nach einem Einhorn — aber ich gebe nicht auf. Alle sollten einbezogen sein.

Wenn Sie Goban3D ausprobieren möchten oder jemanden kennen, dem eine barrierefreie Go-App zugutekäme, würde ich mich sehr freuen, von Ihnen zu hören. Schicken Sie eine E-Mail an support@goban3d.com mit dem Betreff „Beta Tester" und der Apple-ID-E-Mail-Adresse für Ihr iPhone, iPad oder Mac. Sie erhalten kurz darauf eine TestFlight-Einladung.

Das war das Schwierigste und Lohnendste, was ich je getan habe. Vom Holzbrett in einer Uni-Wohnung in den App Store — es hat zwanzig Jahre gedauert, aber wir sind angekommen.