Skip to content
SPEN10
All posts

I'm Not a Developer — Here's How I Build Apps With AI Anyway

No computer science degree? You can still build real apps with AI. Here's the honest, step-by-step process I use, and the parts AI still can't do for you.

9 min read

Overhead view of a hand holding a pen over a laptop, with an open notebook and a phone on a white desk
Photo by Burst on StockSnap

I'll be upfront: I'm not a software developer. I don't have a computer science degree, and if you sat me down with a blank file and no internet, I couldn't write an app from memory.

And yet I've built and shipped real things, including LimitKeep, a credit utilization tracker. AI is the reason. Not because it does everything for me (it doesn't), but because it fills in the part I was always missing.

The moment it really clicked for me was when I had an idea for LimitKeep and realized I could actually build it myself. I wasn't sitting there with years of professional programming experience or a team of developers behind me. I was using AI to help me write the code, explain what it was doing, and troubleshoot the things I didn't understand.

Then something happened that sounds pretty simple, but was a huge deal to me: I made a change, ran the app, and it actually worked.

I could see something I had imagined in my head sitting there on the screen as a real, functioning app. That's when I realized AI wasn't just something I could use to answer questions or generate snippets of code. It could help me turn an idea into an actual product.

This post is about how that actually works day to day, so you can decide whether it could work for you too.

What "not a developer" really means

When I say I'm not a developer, I mean I can't write much code from scratch. But building an app takes a lot more than typing code. Someone has to:

  • Decide what the app should do, and for whom
  • Describe it clearly enough that it can be built
  • Try it, notice what's wrong, and explain the problem
  • Make the calls: is this good enough, or does it need another pass?

None of that needs a degree. It needs curiosity, patience and a willingness to click around and break things. AI handles most of the code-writing. My job is to be the person who knows what we're building and whether it works.

That's a real shift. A few years ago, "I can't code" was the end of the conversation. Now it's more like "I can't code from memory" — and that's a much smaller problem.

How I build apps with AI, step by step

My process is pretty simple, and it's the same whether I'm building a small feature or a whole app:

Idea a real problem Plan a short brief Build one small piece Test click through it Ship put it online fix and repeat — most of the time is spent here
The loop I use for every app: plan once, then build, test and fix in small pieces until it's ready to ship.

1. Start with a problem you actually have

LimitKeep started as a problem I wanted solved: each credit card reports its balance on its own statement closing date, and keeping track of what to pay, and when, across several cards is a pain. That's specific. "An app for finances" is not.

A real, specific problem makes every later step easier, because you always know what "working" looks like.

2. Plan with the AI before writing any code

Before any code, I describe the idea to the AI and ask it to poke holes in it. A prompt like this works well:

I want to build a web app that does X for Y. Before writing any code,
ask me questions until you understand what I need. Then write a short
plan: the main features, the pages, and what data we need to store.

The questions it asks are often things I hadn't thought about. The plan becomes the project brief I keep coming back to. (The prompting guide covers how to write instructions your assistant will actually follow.)

3. Use popular, well-documented tools

I build on a pretty standard stack: Next.js for the app, Supabase for the database and logins, and Vercel to put it online. LimitKeep and this site both run on it.

I didn't pick those because I'd compared every option. I picked them because they're popular, which means AI assistants have seen a lot of examples and there's plenty of documentation when something goes wrong. When you can't judge the code yourself, boring and well-trodden is your friend.

4. Build one small piece at a time

This is the habit that matters most. Don't ask for the whole app in one prompt. Ask for one thing — "add a page that lists my cards" — then check it works before moving on.

After every piece that works, I save a checkpoint with Git, the version control tool that tracks every change to your project:

git add -A
git commit -m "Add the cards list page"

If the next change breaks everything, you can roll back to the last good version instead of untangling a mess.

5. Test it like a real user

AI will tell you something works. Sometimes it's right. Always check. Click every button, fill in forms with weird input, try it on your phone. You're the quality control, and you don't need to read code to notice that a page is broken.

6. When it breaks, give the AI the full picture

Things will break. That's normal, not a sign you're doing it wrong. When something fails, paste the full error message and say what you did, what you expected and what actually happened. "It doesn't work" gets you guesses. Details get you fixes.

One of the biggest headaches I ran into while building LimitKeep was the charts. They looked like they should be simple, but they became surprisingly complicated. Dates weren't always lining up correctly, some updates appeared at the wrong point on the chart, and the way different transactions were displayed wasn't always consistent.

At first, it was frustrating because I could describe what I wanted to the AI, but getting the chart to actually behave that way was another story. I eventually had to stop treating it like something AI could simply "fix" for me and start breaking the problem down into smaller pieces. I looked at how the data was being stored, how the dates were being calculated, and how that information was being passed to the chart.

The important lesson for me was that AI doesn't eliminate the need to understand what you're building. It makes it possible to build things that would have been far beyond my reach before, but I still need to understand enough to recognize when something is wrong, ask better questions, and guide it toward the right solution.

An open notebook in front of a laptop and a coffee mug on a dark desk
Photo by Negative Space on StockSnap

What AI still can't do for you

AI makes building possible for people like me, but it doesn't replace you. A few things are still your job:

  • Deciding what to build. AI will happily build whatever you ask for, including a bad idea. Knowing what's worth building is on you.
  • Judging whether it's good. Does it feel right? Would you use it? The AI can't answer that.
  • Keeping secrets secret. Never paste passwords, API keys or customer data into a prompt. If you're storing user data, take security seriously and ask the AI to explain how your data is protected.
  • Asking why. When the AI makes a change, ask it to explain. You'll pick up more than you'd expect.

If you're starting today

Pick something small, something you could describe in two sentences. A personal tool, a simple website, a tracker for something you care about. Finishing a small project teaches you more than abandoning a big one.

If you want a step-by-step walkthrough, start with the first AI-assisted web app guide. And when you're picking tools, everything in the resource directory is something I've actually used.

I'm still learning this stuff every week, and that's kind of the point. You don't have to be a developer to build things anymore. You just have to start.

— Spencer

Share this post

Found this useful?

Get the next one in your inbox. No spam, unsubscribe anytime.