I work on boring enterprise software for my day job, and in my free time I try really hard to come up with project ideas that are manageable, completable, inspiring, and entertaining if not useful. But no matter how hard I try, I always end up brainstorming a bunch of ideas, then having to toss them out because of infeasibility, or because the idea already exists in some form and thus wouldn't be interesting to make, or because the idea flat out isn't interesting enough to work on.
Here are some examples of my ideas and justifications for tossing them out:
* Something for managing my bookmarks - nah, Chrome's built-in Bookmark Manager is fine for my purposes
* Trello allows people to make lists of lists. What other data structure could I draw from as inspiration for a web app? - nah, can't think of anything
* Make some software that makes chiptunes - nah, this exists already, and all the Michael Jackson chiptunes I want to make already exist (heh)
* Make a tiny dog food firing catapult - maybe, but I'd have to spend some time reading about Arduino or something
* Make an app that visualizes acne outbreaks over time - maybe, but the result isn't worth the effort. I don't want to look at my face anyway.
* Do some OCR - sounds boring
* Make a better DataTables - don't need it
* Write a GLSL parser and evaluate things in JavaScript for debugging purposes - would be cool, but don't really need it
* Make a web app to send yourself an email in the future - Google Calendar does this
* Write a program to control your laptop's fan speed - sounds boring
* What's this React nonsense - ehhh don't care, won't need it if I'm not making a single page app
And there's always game projects and procedural generation-ish stuff and graphics, but that's kinda it's own category of project and doesn't fit my criteria of being something useful.
Does anyone else have this problem? How do you go about getting ideas for projects? Please discuss.
1. Are you building something for fun? Look at what you do for fun. Narrow down on these topics and then decide to build something. For e.g. spend a lot of time on HN? Build an HN Chrome/Firefox add-on that does things you want in HN.
2. Are you building something for learning a new technology? Narrow down on the technology that you want to learn about. Now think of apps to build using that technology.
3. Are you building something for additional revenue? Find pain points in your industry and create apps to solve them.
Without the right amount of motivation, even if you had started with any of the projects mentioned above, it is very likely that you would not be able to follow it through.