My first attempt at vibe coding was a bust.
I had the brilliant idea to build a video recording tool like TikTok but on desktop.
I LOVE the start/stop/start recoding interface of TikTok and Instagram because it lets you get a whole video done without needing to memorise the script. And bizarrely there’s no way to do it on a desktop/laptop - which would allow high quality camera to be used.
So I thought - I’ll just whip one up myself!
The project quickly spiralled into a nightmare of video capture APIs, encoding issues, and something called "transmuxing" (I still don't fully understand what that is).
After days of (sorta fun…) struggle, I did eventually get it working, but only because I'm pathologically stubborn and was actively trying to avoid doing my actual work.
Don't do what I did!
This experience taught me a valuable lesson: your first vibe coding project should be carefully chosen to set you up for success, not a multi-day exercise in teeth-grinding determination.
Let's get started:
The project you choose for your first vibe coding experience will largely determine whether you:
This isn't about your intelligence or ability—it's about setting yourself up for success by choosing a project that aligns with the current capabilities of AI tools and your comfort level with them.
Honestly if we get this part right we’ve dealt with 95% of the struggle.
Once we have a solid basic project in place then the AI tools will do a LOT of the heavy lifting, allowing us to build both the project and confidence very quickly.
But if we choose the wrong project we’ll get crappy results and probably abandon the whole idea. No bueno.
We want option #1, where you finish the project, see tangible results, and build momentum that carries you forward to increasingly kick-ass projects.
OK that’s all well and good but what makes a good starter project.
I’m not just going to tell you to do a dumb “Hello World” project. AI tools and vibe coding let us actually build something genuinely awesome very quickly.
So here are a couple of criteria to think about follow by (of course) a prompt to bring it all together.
Choose something that solves a real problem you face regularly. It could be a small business or productivity issue you encounter daily.
Why? Because motivation matters. When you're building something with actual utility for yourself, you're far more likely to push through obstacles.
Like my stupid video recording tool. I pushed through for days because I knew it would save me countless hours of time later and allow me to up my video production quality.
Most textbooks give you random coding exercises. There’s no skin in the game - who cares if it works or not? An abstract exercise is easy to abandon when challenges arise, but a tool that will make your life better tomorrow? That's worth a bit of struggle.
As a bonus, you'll have a much clearer vision of what "good" looks like if it's solving your own problem. Because you’ll run it and know whether or not it’s fit for the job or…a. bit crap!
This could also be called “Don’t build a video recording app like me…”
For your first project, stick to applications that primarily deal with text—both as input and output.
Sure, it's absolutely possible to build apps that handle video, audio, or images (like thumbnail generators or screen recorders), but these involve additional complexity that's best avoided when you're just starting out.
Once you've got a text-based project under your belt, by all means, tackle those more complex media types in your next project. But for now, let's keep it simple.
This might sound counterintuitive. After all, we're using AI to code, so why not build an AI app?
The reason is straightforward: building an app that connects to OpenAI, Anthropic, or Gemini's APIs adds extra layers of complexity. You need to handle API keys, manage prompt engineering, and deal with token limitations and costs.
Again - all very doable but as a next step.
Instead, focus on creating a "static" application first—one that doesn't need to make calls to external AI services. We're using AI to create the app, but the app itself doesn't need to be AI-powered just yet.
Stick to building a “web app” (web application) for your first project, not an iOS or Android app. Web apps are significantly easier to develop, test, and deploy—especially for beginners. Don’t worry if you aren’t sure what this is.
With a web app, you can focus on core functionality without worrying about app store approvals, platform-specific requirements, or device compatibility issues. Plus, you can easily run it locally during development and deploy it simply with services like Vercel, Netlify, or Replit.
The tech stack is usually simpler too—typically HTML, CSS, JavaScript and perhaps a bit of Python. These are languages that AI coding assistants excel at generating.
Your first project shouldn't take more than a couple of hours from idea to functional prototype. This isn't the time to build your unicorn startup's entire platform.
You can always expand your app later. Starting small and growing is far more satisfying than starting ambitious and getting stuck.
Remember: Zuckerberg’s Facebook (sorry, The Facebook!) started as a profile page for drunk Harvard students. It took time to get to what we now know as Meta.
Here's a prompt to help you generate and evaluate some potential project ideas:
You are an experienced software developer and entrepreneur who specialises in helping non-technical founders build their first applications. I need your help identifying a small, useful project I can build as my first vibe coding experience.
Please ask me these questions one by one, waiting for my answer to each before proceeding:
1. What are 2-3 repetitive tasks or minor frustrations you encounter in your daily work or personal life?
2. Do you have any specific business or productivity tools you use regularly but find lacking in certain features?
3. Is there any information you regularly need to process, organise, or transform?
After I answer these questions, please:
1. Suggest 3-5 potential project ideas based on my answers, prioritising:
- Text-based input and output
- Practical utility in my daily life
- Low technical complexity, single functionality, not a mobile app
- No requirement for external AI API integration
2. For each idea, provide:
- A clear title and one-sentence description
- The core problem it solves
- A simple explanation of how it would work
- A "complexity score" from 1-10, where 1 is very simple and 10 is very complex
- Why it's a good (or bad) candidate for a first vibe coding project
3. Help me choose the best option based on:
- My level of technical comfort
- The utility of the solution
- The likelihood of completing it within 2-3 hours
Use this prompt with your preferred AI assistant to help you identify a suitable first project. Remember to be honest about your technical comfort level - it’s totally ok to say “I have no idea what I’m doing” because (as we’ll see) we can work with that when vibe coding.
Still not sure what to build? Here is a mega list of simple projects that make excellent first vibe coding experiences - https://github.com/karan/Projects
In Part 3, we'll explore the vibe coding toolkit—the specific tools and approaches that make this new development paradigm possible.
We'll also tackle an important question: "Do you need to learn to code?" (Spoiler: not exactly, but there's nuance here we'll unpack…)