Andrew Davison is a British founder who built and sold an app by learning to code with ChatGPT. He had a problem with exporting multiple tables from Airtable databases so he built a tool to help him automate the process. Andrew used new tools like ChatGPT and Replit to a) figure out the code he would need and b) host the app online with ease. Check out his interview below for more details:
Can you introduce yourself?
I’m originally from the UK, but left to travel in 2012 and never went back. A year later I ended up Hungary and have called it home ever since.
Before that I started - and eventually dropped out of - a computer science degree. The theory fascinated me, but I couldn’t get my head around coding. So I bounced round various jobs, in a brand design agency, a media company and then an app development shop before travelling and eventually gravitating to being a Zapier consultant which I’ve done for the last 6 years now.
Why did you create Export My Base?
As it was my first ‘proper’ project since taking up coding, I wanted it to be a single feature app that solved a small problem - something that I had a good chance of seeing through! Previously I've needed to download multiple tables from an Airtable base and found there's no native way to do this - so that seemed like a good candidate.
How did you learn to code your site?
My aborted computer science degree finally came back around here. Although I couldn’t code, I knew what code looked like, and I had an idea of how concepts like functions, loops, variables etc worked - in my head I could visualise what different pieces would be needed to make my app work.
Then it was a case of just describing that to ChatGPT and asking to to show me code. Early on I asked it to recommend a tech stack and it suggested Python and Flask so that’s what I went with.
It was quite the iterative process. That app was a single python file and single HTML template which kept things simple. It probably took 5-10 hours to get a first version working, but it was using API key authentication (for when people connect their Airtable account) which I quickly realised wouldn’t be very secure for the user - so I decided I’d implement OAuth.
This proved to be the hardest part of the process. ChatGPTs context window made it quite hard to feed in all the Airtable API docs, so I forced myself to learn how OAuth works and then I was able to build it up part by part in my app with ChatGPT helping with errors.
When that was (finally!) working I had something that worked, but looked pretty ugly, so then I must have spent another 10 hours or so playing around with CSS to get a good layout that worked well on both desktop and mobile. To be honest I don’t love the final result, but there came that moment where I’d had enough building and just wanted to ship!