Systems Thinking.
I find out that it needs a thing called docker to run inside an app. Docker reminds me of the docking scene in my favourite movie, interstellar. That’s kinda what it felt like trying to get Learnhouse to work inside my app. Man with no coding experience whatsoever pulls off difficult technical feat to solve a problem. I got it done after many attempts. Move over McConaughey, McGettigans in town...
Anyone that has built an app knows you need a backend, a database and a frontend. They say there’s no learning curve like being forced to figure something out and that’s what August and September are for me.
AI systems are very helpful here. It literally would not have been possible for me to do any of this a few years ago. Mental.
My previous build in Google Apps Script copies across well to my Node.js backend. I’m busy building my backend and it’s going well.
I have now got a functioning chatbot, a database layer (PostGreSQL - more letters & I still don’t know what they stand for) and I’m building as much as I need to for my future users to have a good user experience.
Or as I’ve now learned - UX for short.
At night when I’m rate limited by Claude Code and have to wait for my next session, I scroll on X. The algorithm serves me AI content mixed with founder content. It feels like IV fluids flowing to a dehydrated man.
I scroll past a post talking about a database called Turso. The post says that it allows you to build an index and query via vector search, directly using the database itself.
That piques my interest.
In testing my current chatbot pipeline is slow. Like 15s for a reply for a message slow. I have to take the message content, , search Pinecone (the current index where all my course content is) then retrieve the results and pass that all to the LLM to generate a response.
Turso seems to allow me to cut Pinecone out altogether and query everything I need in one hit. Now I’m really interested.
I watch some videos, read some blogs and deep down I’m saying….
“FFS why didn’t you research your database earlier. This is going to take a crazy amount of time and work to change everything…”
I keep reading about how Turso is lightning fast and it reduces latency (fancy term for speed - who knew?!)
I give in to the inevitable.
Plan mode within Claude > here’s the database layer I want to change to. Estimate how long it will take to implement this across the app? Let’s duplicate the whole app and that way I have a comparison and an untouched - currently working - codebase.
……. Flogmozzling…….. (if you use terminal you’ll get this)
This will take 12 weeks to implement.
FFS.
12 weeks it is.
I run into another issue. I need a way to host my bigger than pain course content inside my app. I find a gorgeous LMS software called Learnhouse. And it’s open source so I can use it freely. Boom.
I find out that it needs a thing called docker to run inside an app. Docker reminds me of the docking scene in my favourite movie, interstellar.
That’s kinda what it felt like trying to get Learnhouse to work inside my app. Man with no coding experience whatsoever pulls off difficult technical feat to solve a problem. I got it done after many attempts. Move over McConaughey, McGettigans in town...
My confidence is misplaced though as I finally get to see the frontend of my app.
One one hand I’m actually blown away. This is actually working. It’s a REAL app. I might actually pull this off. I host it on Railway so I can see how the desktop version I’ve been looking at works on mobile.
Awesome. It needs tweaking obviously.
But I can see where this is travelling. Move over Zuckerberg, your boy is on a rampage.
Then I click the learn tab.
And nothing happens.
I investigate.
Where’s all my course content?
Oh…
Turns out I now need to host docker inside my production service as well as my app. I research how to do this.
Yeah, so this is the ridiculously hard and inefficient way to do things 🙈
Do you hear that sound?
That’s the sound of this Irishman shrinking back into the hole he came from. Mr Mc Conaugjey & Zuckerberg, my sincerest apologies…
Fuck it. Another error.
Luckily I recall reading on Reddit about something called a “headless CMS”. Sounds like a corporate money scheme that fought with a sword.
I google it. Sanity shows up as the first result.
Sanity. That’s what I need. What a great product name. Then I read what it does.
Exactly what I need. Then I get why they called it Sanity. (Further shrinking ensues).
I make the easiest call of the whole build. We ditch Learnhouse (thanking it on its way out for the inspiration for our font pairings) and get Sanity set up.
24 hours later I have my course living perfectly inside my learn tab. Crisis averted. Momentum reestablished. I’m starting to think there might actually be a chance that I pull this all together….
Occasional updates. No spam.