Aphantasia and Code: How I Design Visual Software Without Being Able to Picture It
Table of Contents
Close your eyes. Picture an apple. Is it red? Yellow? Is it in a bowl? Is there a shadow on the left side?
Most people can see an apple in their mind immediately. I can't. I've never been able to. I'm part of the ~4% of humans with aphantasia — a condition where the mind's eye is genuinely blank. No images. No movies. No mental rehearsal. Asking me to "visualize" something is like asking a blind person to describe a sunset.
This would be unremarkable except that I run ZSky AI, an AI video and image generation platform. 115,000+ creators. Seven dedicated GPUs. Image in 2 seconds. Video in 30. I spend all day building a product whose entire purpose is to help people see things.
The irony is not lost on me.
How I actually design UX
When I started building ZSky, I assumed I'd be at a permanent disadvantage. Most design advice assumes you can hold a UI in your head, rotate it, modify it, critique it — all mentally. I can't. My design process has to be physical.
Here's what actually works for me:
1. I draw badly on paper.
Not wireframes. Not Figma mocks. Actual pencil on paper, ugly sketches. The act of putting marks on a physical surface externalizes what I can't hold internally. It doesn't matter that the drawings are bad — they're load-bearing. I literally cannot think about a layout without them.
2. I build before I design.
While most designers iterate on mocks, I iterate on working code. I'll throw together a janky HTML prototype in 15 minutes, click through it, feel what's wrong, delete it, rewrite it. The working prototype replaces the mental image. If a designer spends 2 hours in Figma, I spend 2 hours in a text editor. The output is different but the thinking happens in both.
3. I take screenshots obsessively.
Every time I'm comparing two design options, I need both on screen at the same time, not sequentially. No "remember what it looked like a minute ago." If I can't see both simultaneously in my actual visual field, I can't compare them.
4. I test on myself, hard.
I use my own product constantly, because muscle memory is real to me in a way mental models aren't. I know the click path of every flow because I've physically done it 500 times, not because I can trace it in my head.
Debugging visual bugs without mental imagery
The hardest part isn't design. It's debugging. When a user reports "the button is weirdly offset when I hover over it," a sighted-minded developer can often imagine the issue and locate the bug before opening the file. I can't do that. I have to physically reproduce it, screenshot the broken state, screenshot what it should look like, and compare them side-by-side.
This is slower. Objectively.
But there's a compensating advantage: I never trust my mental model. I always go verify in the actual running UI. Bugs that slip past visualizing devs (because they pattern-match on a mental model that doesn't match reality) often don't slip past me, because I don't have that mental model to begin with. My first instinct is always to open the page and look.
Why I built an image tool I can't visualize
This is the question everyone asks. Why would a person who can't picture things build a product whose entire purpose is to help people picture things?
Because the camera was the first thing that let me see.
For most of my life I thought I had no art in me. I couldn't draw from imagination. I couldn't sketch a face from memory. I couldn't do the thing every art teacher expected of me. I was convinced I wasn't a visual person at all — until I picked up a camera in my late twenties.
The camera changed everything. Because a camera doesn't ask you to imagine anything. It asks you to look. To notice. To frame a real thing that already exists in the world. For someone with aphantasia, that's a different cognitive motion than drawing from imagination. It's extraction, not projection. And it turns out I was extremely good at extraction.
I became a professional photographer. I got shortlisted for the Sony World Photography Awards. I spent a decade as a fashion shooter.
Then AI image generation arrived. And here's what nobody talks about: text-to-image AI is the first visual medium in human history that's specifically better for people with aphantasia. You don't draw from imagination. You describe in words. You watch the machine extract a version of it. You iterate. You pick the best. It's camera-like — you're the eye, the prompt is the shutter, the AI is the film.
I knew I had to build one that didn't feel like a tool designed for people who could already see their ideas. I built ZSky for the 4% of us who can't.
Frequently Asked Questions
What is aphantasia?
Aphantasia is a condition where the mind's eye is genuinely blank. No mental images, no mental movies, no visualizing. About 4 percent of humans have it. Asking a person with aphantasia to picture an apple is like asking a blind person to describe a sunset. It is not a deficit or a medical problem, it is a different cognitive style that affects how a person plans, designs, and remembers visual information.
How does a developer with aphantasia design UX?
By externalizing everything. Ugly pencil-on-paper sketches replace wireframes. Working HTML prototypes replace Figma mocks. Side-by-side screenshots replace mental comparison. The designer iterates on real running code instead of imagined layouts because the code is the mind's eye. It is slower on mental rotation tasks and often faster on logic verification because there is no remembered mental model to fool you.
Why would someone with aphantasia build an AI image generator?
Because text-to-image AI is the first visual medium in history specifically better for people with aphantasia. You do not draw from imagination, you describe in words and the machine extracts a version for you. For someone whose mental imagery is text-based, prompting is a native cognitive motion. The camera already taught me extraction over projection. AI tools let me extend that motion into generation without ever needing to visualize first.
How do you debug visual bugs without mental imagery?
By physically reproducing the bug, screenshotting the broken state, screenshotting the intended state, and comparing them in the actual visual field side-by-side. This is objectively slower than pattern-matching in your head. The compensating advantage is that you never trust a mental model, so bugs that slip past sighted-minded developers because their mental model is out of sync with reality often do not slip past you. You always verify in the running UI first.
What is the One Million Minds Eye program at ZSky AI?
It is a free lifetime Ultra tier for the first one million people who have aphantasia or a traumatic brain injury and need full access to ZSky AI. No medical documentation required, honor system. The program exists because the founder, Cemhan Biricik, rebuilt his visual processing through photography after a TBI, and the platform is explicitly designed for people whose brains handle visual information differently. Details are at zsky.ai/one-million-minds-eye.
What advice do you have for developers with aphantasia working in visual software?
Externalize ruthlessly, because your IDE is your mind's eye.Build before you design, because working prototypes are faster for aphantasic minds than mocks.Trust your compensation strategies, because what the team calls unusual meticulousness is actually the survival pattern that catches real bugs.
And accept that some tasks are slower (mental rotation) while others are faster (logic review with no remembered shapes to pattern-match).Lean into the different cognitive profile, do not try to compensate yourself into being sighted-minded.