By Zigao Wang • August 16, 2025
Note: I'm just a programmer sharing what I've researched and learned from experience. This isn't 100% right, but it's what's worked for me.
I've been through this loop too many times: ask AI for project ideas, get garbage like "smart toothbrush" or "weather app with dancing man." Here's what I've learned actually works for finding ideas worth building.
If you're building something to solve a real problem, don't just jump into coding. Use this rough process (borrowed from design thinking):
- Understand the User - Who actually has this problem? Talk to them, not just yourself
- Define the Real Problem - What's the core issue? Not what you think it is, but what it actually is
- Research Existing Solutions - What's already out there? Why do they suck?
- Ideate Solutions - Now brainstorm your approach
- Prototype Small - Build the smallest thing that tests your idea
- Test with Real Users - See if it actually solves their problem
This isn't just theory - even as a programmer, understanding the problem properly saves you from building the wrong thing.
Cool Factor Ideas: Start with "wouldn't it be cool if..." - these are the projects that make people go "wow, how did they do that?" Perfect when you want to build something impressive.
Problem-Solving Ideas: You actually need this thing. Like fixing slow WiFi at your dorm, making group projects less painful, or building a better budgeting app because existing ones are confusing. Both types are valid - just don't force it.
- Generic AI suggestions: If ChatGPT gave you "smart toothbrush," it's probably boring
- Already exists and works: Do 5 minutes of research first
- Forced practicality: If you have to convince yourself it's useful, it's not
- Natural idea: It just popped into your head while doing something else
- You're genuinely excited: Not because it's "smart" but because it's cool
- Solves your actual problem: You'd use this yourself
Don't dismiss AI entirely - it's terrible at generating ideas but decent as a critique partner. Use it to:
- Poke holes in your idea
- Ask "what could go wrong?"
- Challenge your assumptions
- Help refine your concept
Try these prompts:
- "What are the biggest flaws in this idea: [your idea]"
- "What would make someone NOT want to use this?"
- "What existing solutions am I competing with?"
- "What would be the hardest part to implement?"
Just don't let it come up with the original idea.
For general tools, talk to people who aren't like you. Your roommate, someone from a different major, your parents. They'll spot obvious flaws you missed and ask questions that matter. If you can't explain your idea simply to someone outside tech, it might be too complicated.
For specialized tools (dev tools, niche software), skip this - you know your audience better than they do.
This is crucial. Before you start building, write a simple description: "A [type] app that [does what] for [who]."
Examples:
- "A mobile app that splits restaurant bills instantly for friend groups"
- "A browser extension that blocks distracting websites during study hours for students"
- "A web app that tracks shared expenses for roommates"
If you can't write this clearly, your idea isn't clear enough yet.
Before building anything, ask yourself:
- Am I actually excited about this? (Not just thinking it's a "good idea")
- Has someone done this exact thing already? (Google it)
- Did this idea come naturally or did I force it?
- Would I stop scrolling if I saw this on social media?
- Can I actually build this with my current skills?
- Technical challenge that seems impossible but isn't
- Makes people feel smart or powerful when they use it
- Completely new way of doing something familiar
- Adapting solutions that work elsewhere to your local context
- Visually impressive or surprising
- Solves a real problem (doesn't have to be daily life)
Building for "everyone" - If your target user is "anyone who uses a computer," you're screwed. Get specific.
Solving problems you don't have - Building a dog-walking app when you don't have a dog is a recipe for failure.
Feature creep before launch - "Just one more feature" has killed more projects than bad ideas. Ship the smallest thing first.
Ignoring the boring stuff - Authentication, payments, hosting. The cool part is 20% of the work.
Building in isolation - Spending 6 months coding without talking to anyone, then wondering why nobody uses it.
Rate your idea 1-5 on each:
- Personal excitement level
- Technical feasibility
- Market need (real, not imagined)
- Your ability to reach users
- Competitive advantage
If you score below 15 total, probably skip it.
Kill it if:
- You've been working on it for months but can't explain it simply
- You keep adding features instead of getting users
- You're the only person excited about it
- The problem was harder than you thought and you've lost interest
- You built it but don't use it yourself
Don't kill it because:
- Someone else is doing something similar (execution matters more)
- It's "been done before" (usually it hasn't been done well)
- Your friends don't get it (they might not be your users)
If you're trying to squeeze an idea out of your brain, stop. The best ideas come when you're not looking for them. Keep a notes app open and write down random thoughts. The projects that stick in your head for weeks are usually worth building.
Remember: if you have to convince yourself it's a good idea, it probably isn’t.