The Origin Story: Day One of My Holiday
I'm on a sun lounger. First day of holiday. Should be relaxing.
Instead, I'm trying to remember what's happening in Children of Ruin because I put it down three weeks ago and now I'm completely lost. I loved the Portiids (sort of spider aliens, stay with me here), but I couldn't remember who was doing what or why everyone was upset.
So I did what any reasonable person would do. Found a PDF online, used some dodgy free tool to cut it at my current page, and uploaded it to ChatGPT asking for a summary.
ChatGPT proceeded to gaslight me about the plot. It invented species. It got confused about the Portiids I'd grown to love. It made me more confused than when I started.
Lying there, genuinely annoyed at an AI chatbot for making things up, I thought: "I could build this better. And I've been wanting to play with RAG anyway."
So I did. On holiday. Instead of relaxing. Classic.
The ADHD Building Experience
If you don't have ADHD, building side projects probably looks like: plan → build → test → ship.
Here's what it actually looked like for me.
I spent an unreasonable amount of time building elaborate re-ranking algorithms. Implemented MMR, "lost in the middle" reordering, contextual relevance scoring. The UI? Barely functional. But those ranking algorithms were beautiful. Priorities.
Then there was the config file that ate my life. I built this massive YAML system for scoring weights, thresholds, and narrative markers. Super organized. Very engineered. Used about 10% of it. Should've started simpler, but where's the fun in that?
Testing avoidance is real. I kept adding features instead of testing the core thing. When I finally tested it on actual books, I found about ten obvious bugs I'd been completely ignoring. Turns out "it probably works" is not a QA strategy.
And then there was Cline. You know what's worse than not having AI coding assistants? Having them but being too scattered to track what they changed. Cline would generate code. I'd lose grip trying to review it all. The cognitive load of "what did this change and is it right?" was overwhelming. So I'd just... not use it. Or use it and hope for the best. Neither great.
Hitting the Wall
I could handle the backend. RAG pipelines? Vector stores? Re-ranking? That's my comfort zone.
The frontend? Absolute disaster.
Tried a bunch of frameworks. Learning curve was too steep. Every AI-fueled "vibe coding" session with Cursor or Cline resulted in janky UIs that looked like they were designed by a backend engineer. Because they were. By me.
I was stuck.
Enter: My Friend Adrian
Adrian and I used to work together. Platform engineer. Absolute breeze to collaborate with. We'd been on a few adventures together and became good mates, but lost touch after we stopped working together.
So I sent him a WhatsApp: "Fancy helping me build an AI app?"
He said yes.
We put in a weekly call. If we didn't have updates on the app, we'd just chat. The project became an excuse to reconnect, and having someone else invested meant I actually had to follow through. Adrian brought actual frontend skills, deployment knowledge, the ability to say "mate, that's over-engineered," and—crucially—accountability.
Turns out, ADHD building works way better with a friend. Body-doubling I guess you'd call it.
The r/ADHD Ban: An Injustice
Built this whole thing to solve my ADHD reading problem. Free tool. No monetisation. Genuinely trying to help people with the same struggle.
Posted it to r/ADHD: "Hey, made this tool for when you forget book plots."
Permanently banned for self-promotion.
I won't lie, I was properly annoyed. I'm not selling anything. It's free. I'm one of you. But their rules are their rules, I guess. Still salty.
The r/ADHD_Programmers community was way more chill and actually appreciated it, so not a total loss.
What I Actually Learned About RAG
RAG is kind of a brutalist approach to information retrieval. It works, but let's not pretend it's elegant.
The problem I kept hitting: generic queries yield garbage results. Searching for "plot points" as your retrieval query does not magically pull out the important narrative beats. You get sentences that contain the words "plot" and "points." Groundbreaking stuff.
What actually helped was semantic chunking (respecting narrative structure instead of splitting at arbitrary token counts), MMR for reducing redundancy in retrieved chunks, "lost in the middle" reordering to put the most relevant chunks at the start and end of context, and contextual relevance scoring that goes beyond pure semantic similarity.
But honestly? It's still messy. RAG is great for "find relevant information," but fiction summarisation needs way more narrative understanding than embedding similarity can provide. The model needs to grasp story structure, character arcs, tension—things that don't reduce neatly to vector space. I'm not sure anyone's really cracked this yet.
The Messy Reality
The thing they don't tell you about building side projects with ADHD: it takes longer than you think. Not because of technical challenges, but because of all the detours. You'll over-engineer things (that elaborate config system was a waste of time). You'll under-engineer other things (the UI, obviously). Solo ADHD building is hard mode. And shipping is more important than perfecting. I kept not shipping because "just one more feature."
What Actually Worked
Building something I actually use made a real difference. Every time I picked up a book I'd forgotten, I'd use my own tool. Broken things annoyed me enough to fix them. Dog-fooding works.
Having a friend involved was probably the biggest factor. Adrian didn't just bring skills I didn't have. He brought accountability. Weekly calls meant I couldn't just abandon the project mid-hyperfocus-cycle.
Railway deployment was a pleasant surprise. Coming from Google Cloud Run, Railway's simplicity was refreshing. railway up and it deploys. Hard spending limits meant no surprise bills. Went from £??/month on GCP to £5/month.
And no signup required. Just let people upload files without accounts. Removes friction, better UX, one less thing for my brain to build and maintain.
The Demand Avoidance Thing
In my r/ADHD_Programmers post, I crossed out "setting hard deadlines" because demand avoidance is real.
Tell me I have to ship by Friday? Suddenly I can't work on it at all. Actually, it's more "won't" than "can't".
Give myself permission to ship "whenever"? Actually gets done.
There was no time pressure. The project happened because I wanted it to, not because I forced myself to. That's the only way it works for me.
Try It If You Want
The tool is live at app.wherewasi.co.uk.
It's v0.1. The UI is basic (Adrian did an amazing job with my vague requirements). It might crash. But it works, and I genuinely use it.
For Fellow ADHD Builders
Hyperfocus will betray you. You'll obsess over the wrong things. Find a building buddy, because accountability plus skills you don't have equals actually shipping. Ship ugly, because perfect is the enemy of done. Build what you'll actually use, because dog-fooding keeps you motivated. Be careful with AI coding tools because they're great until you can't track what changed. Respect your demand avoidance as deadlines might work for you, but they don't work for me (hope my boss doesn't read this). And apparently, don't post free tools to r/ADHD.
Questions?
This got way longer than intended. If you're building side projects with ADHD, or dealing with similar challenges, drop a comment. Misery loves company.
Also, if anyone knows how to appeal r/ADHD permabans, asking for a friend. I'm the friend. I might have also burnt a bridge with the mods.
"Where Was I?" is built with: FastAPI, ChromaDB, OpenAI, Railway, friendship, and whatever the opposite of executive function is.
Top comments (0)