I'm a computer science student, and I've become stuck when trying to choose projects. For the past two years, I've usually asked AI or searched online for ideas, then evaluated those suggestions based on their usefulness, impact, and portfolio value. I rarely generate the initial idea myself anymore.
What's a good process for coming up with project ideas independently? Not every idea needs to belong on a portfolio, but I'm unsure how to distinguish a worthwhile project from something irrelevant or too ambitious. How did developers find project ideas before AI tools became common, and how can I rebuild that skill so I'm not dependent on AI?
4 Answers
The simplest way to rebuild this skill is to stop asking AI for ideas for a while. Pay attention to repetitive tasks, annoyances, and things you wish worked differently in your own life. Write every thought down, even the silly ones. Coming up with ideas is a skill, and it gets weaker when you always outsource the first step—but it comes back with practice.
Projects can come from coursework, hobbies, existing software, or everyday frustrations. A useful starting sentence is: “I wish I had a program that could…” Then define a very small first version. For example, you might build a local tool that tracks a manual workflow, automates a repetitive task, or collects information you currently manage by hand. Once you use it, you’ll naturally find things to improve.
Keep a separate list of ideas and add to it whenever something occurs to you. Some will be bad or unfinished, but the list will eventually give you options.
If you’re struggling to choose a direction, ask professors or professionals what problems they see in their work. Small businesses and research groups often have simple tasks involving data cleanup, dashboards, web scraping, internal tracking, or automation. These may not sound glamorous, but they can demonstrate useful skills because they solve a real need.
For a portfolio, the quality of the explanation matters as much as the novelty: describe the problem, your design decisions, what you built, what didn’t work, and what you would improve next.
Don’t start by asking whether something belongs on your portfolio. Start with a real problem: what do you need to do, who has the problem, and what would make it easier? Talk to classmates, professors, small business owners, or other people around you. If several people have the same annoyance, build a small solution and let actual use suggest the next features.
You also don’t need a completely original concept. Improving an existing tool, automating a boring process, or building a focused version for a specific group can still be an excellent project.

That makes sense. I’ve been judging ideas before building anything, and that seems to be making me lose confidence too early. I’ll try focusing on real problems and starting with smaller experiments.