← Back to Blog

From a Piece of Wood to the App Store

About twenty years ago, my university roommate and I pulled a piece of wood out of a skip, drew a grid on it with a ruler, bought some glass stones from an arts and crafts shop for about three quid, and started playing Go. I had no idea what I was doing. I still don't, really. But something about the game grabbed me immediately — the way something so seemingly simple could be so impossibly deep. A 19×19 grid. Black and white stones. Rules you can learn in five minutes. And yet, at that time, the most powerful computers on earth couldn't beat a strong human player. That fascinated me.

An Early Obsession

That fascination ran deep enough that my final year project at Kingston University was in computer vision — I hand-coded an algorithm to read the state of a Go board from a photograph, achieving over 87% accuracy. For the early 2000s, before the deep learning explosion, I was quietly proud of that.

Around the same time, I visited Japan for two weeks specifically to experience Go culture first-hand and play against local players. I lost every single match. One game stands out: a young man, probably dan-level, very shy, with strikingly long fingernails, accompanied by his father. I was completely annihilated before I even realised what had happened — it took me a while to notice I needed to resign.

Every Go salon I visited was so thick with cigarette smoke it was almost impossible to get through a game without fresh air — and I'm a smoker myself. The players were almost exclusively elderly. Go seemed to be a pastime for those in their golden years, which puzzled me given Japan's reputation for technology and innovation. Nobody seemed to be connecting Go to computing. Not yet, anyway.

The Long Gap

Life moved on. I worked as a Java developer, spent a year at Accenture during university (during which all my hair fell out from stress), and eventually found myself unemployed for a long stretch following health difficulties. My Java skills became increasingly irrelevant as the industry moved on without me. I tried to catch up, but the gap had grown too wide — and discovered that wages in that part of the industry had actually gone down. It wasn't worth it.

Through all of it, I kept playing Go. Not seriously — I've been attending Exeter Go Club on and off for about fifteen years, and I'm an average player at best. But the game never let go of me.

Everything Clicked at Once

Then, over a remarkably short period, several things happened at once.

The COVID lockdown hit. I was climbing the walls with nothing to do, but I was fortunate enough to have three Apple devices — gifts from family and my partner. I watched the AlphaGo documentary and was electrified. The thing I'd been fascinated by at university — the impossibility of a machine mastering Go — had been solved. And the AI revolution it kicked off was just getting started. ChatGPT arrived. Then Claude. Then Apple announced the Vision Pro.

I started playing with KataGo and noticed it didn't have a proper App Store interface. I looked at the Go apps available for iPhone and iPad and they were... fine. Functional. But none of them had any accessibility features. Not a single Go app on the entire App Store declared support for VoiceOver, Voice Control, Dynamic Type, or any of Apple's accessibility standards. Not one.

For a game that has been played by blind people for decades — using raised-line tactile boards in Japan, at the French Go Federation, in Korea — the complete absence of any digitally accessible version felt like a gap that shouldn't exist. Blind Go players had been completely locked out of the app ecosystem.

Everything conspired at once and just clicked into place. I would teach myself iOS development from scratch, using AI tools to accelerate the learning, and I would build a Go app that anyone could play — sighted or not.

Starting from Zero

On 1 July 2024, I created a blank Xcode project called "RenderedGoApp" — not a very inspiring name. I knew nothing about Swift, SwiftUI, RealityKit, or any of Apple's development technologies. I taught myself everything through Apple's official documentation and free WWDC sessions, without formal training, bootcamps, or developer events.

Two weeks later, on 17 July, I renamed it "Goban3D". A goban is the traditional Japanese name for the thick wooden board with legs that Go is played on. The name felt right — it conformed to Apple's naming standards and it said exactly what the app was.

I received dyslexia support from primary school all the way through college. I know what it's like when tools aren't built with you in mind. So from the very first line of code, accessibility wasn't an afterthought — it was the reason the project existed.

The SceneKit Disaster

One of the hardest moments came when Apple deprecated SceneKit — the 3D framework I'd built the entire board scene in. I'd got good at it. The scene had a butterfly flitting around, grass swaying, physically-based lighting. It ran beautifully with minimal CPU. Then Apple announced it was being replaced by RealityKit.

I was livid. But with a commitment to shipping something cutting-edge, and zero tolerance for technical debt, I knew every line of SceneKit had to be ripped out and replaced. The butterfly didn't survive. RealityKit is Apple's new poster child, but it's a far hungrier beast than its predecessor — something I'd love to discuss with an Apple engineer one day.

Where Things Stand

Today, Goban3D is in external beta on the App Store for iOS and macOS. It has 100% accessibility coverage across all seven of Apple's accessibility categories — VoiceOver, Dynamic Type, Voice Control, Reduce Motion, Reduce Transparency, Sufficient Contrast, and Differentiate Without Color. It runs on every iPhone from the 3.5" SE to the 6.9" Pro Max, every iPad from 9.7" to 13", and natively on Mac via Catalyst. The 3D board is rendered in RealityKit with physically-based materials that catch light like real wood and stone. There's also a clean 2D mode for when you want simplicity or battery life.

No one outside the development process knows it exists yet. No press coverage, no community awareness, no external beta testers. This blog post is, in a way, the first time I'm telling anyone about it publicly.

What's Next

The single biggest priority is finding beta testers with real accessibility needs — blind players, people with low vision, motor impairments. The app has been built to Apple's standards, but standards are only the beginning. I need real people to tell me what works, what doesn't, and what I haven't thought of. Finding them will be like finding a unicorn, but I won't give up. Everyone should be included.

If you'd like to try Goban3D, or know someone who would benefit from an accessible Go app, I'd love to hear from you. Send an email to support@goban3d.com with the subject line "Beta Tester" and the Apple ID email address for your iPhone, iPad, or Mac. You'll receive a TestFlight invitation shortly after.

This has been the hardest and most rewarding thing I've ever done. From a piece of wood in a university flat to the App Store — it took twenty years, but we got here.