I just focus on bulding it to a MVP and putting it out. If it sticks, it was a good idea. If not, I move on to the other.
People, stop worrying about the idea and get working.
Here, let me help you with getting ideas.
Write the first three words that come to mind.
Example: Fruit, baby, car.
Now, think about each one.
I'd say fruit: Apple, car: app.
An app to use in the car? For the car? Baby
I got a couple of ideas already.
An app to unlock your car (through an afyermarket alarm) if your baby is locked inside with the keys.
An app that allows you to watch your kids through the in car navigation.
An app that plays a given set of songs for babies depending on the mood of the baby. Crying? hit the crying button. Sleepy? hit the sleepy button. etc.
And so on.
That's just stuff I came up while writing this post.
Use the technique, it works.
Seriously. Just come sit by my desk with a notebook and scribble down what I'm doing anytime I curse at my computer.
More practically... join a startup, or tickle people who are knee-deep in one for ideas.
At any organisation you'll experience this if you have your mind open.
The difference, I think (and from my own experience), is that at a start-up you are far more receptive to the opportunities.
The other side of the coin is this: don't forget the value of domain knowledge. Sometimes you need to work in an industry for a bit to understand what's holding people back. Not every startup has to be the next big consumer product - there are (and have always been) a lot of people quietly doing very well for themselves servicing specific industry needs.
(a gentle troll to some HN readers: Of course, that might involve building a "real" revenue driven business instead of hunting for a big close-out paycheck ;D)
One of the huge lessons I've learned from LiberWriter is how vast the world beyond "tech startups" is. If you can do something like that, or bingo cards, or whatever, that makes life easier for 'ordinary people', you'll get rave reviews.
If you build something for other techies, you run some real risks that if it's good, someone will build an open source competitor, others will complain about how they could "build it in a weekend", and so on.
Listen to what people are complaining about. Can you do something about it?
The trap is getting caught up with the solution (the what) too soon. The process should really start with the problem and who you believe it impacts.
Next you get out the building (as described by Steve Blank) and speak to potential customers. This way you quickly evaluate your early idea and determine if anyone will use it and importantly buy it.
Usually a strong sign of a winner is when customers are willing to buy the product before it is even built - sell first, build second. 1
For more inspiration, read up on customer development and Steve Blank.
There are many more strategies and it can be refined but as a core set in one place, that's pretty handy.
Personally however I've found great strategy to be, "solve for x".
Where x is some fucking annoying thing day in and day out, and no-one is doing anything about it.
Well, apply to YC of course, they'll give you an idea. It's that simple.
If you can't come up with good ideas for a startup, then you shouldn't be running a startup. There are enough startups. Find someone who is smarter than you, or creative enough to come up with their own ideas, and help them.
Or maybe you are just confused about what an idea is. "Creativity is taking known elements and putting them together in unique ways." http://www.youtube.com/watch?v=GKEgf0BV7Qg
Anyway I love talking about my many ideas, and if I had lots and lots of money, I think I would have several very interesting projects going on. But since I don't have money, I am just working alone trying to get a prototype ready for one particular idea.
Here are some free ideas:
justkittens.com : web page that just shows kittens on camera all day.. you can sign up and show off your own kittens, or browse kitten cams. Probably could make a hundred bucks a month just from Google Ads. Now, is this the first time that anyone thought of this, or the only one of its kind? No, but you could make it better than most, and probably popular. Is it a "good" idea? Sure, if you like kittens and have time to build it out.
Completely open source weebly/wix competitors: I am working on something like this, but I believe there is always room for better website/web application builders, especially if they are totally open source and easily extensible like WordPress and you can get some people authoring plugins/components. Mine is being built on Node.
Hydroponic gardening for your apartment/any sort of ultralocal food production: inspired by http://www.windowfarms.org/ .. or maybe even something more high-tech, based on in-depth knowledge of human nutritional needs and bioprogramming or something .. along those lines, fiber optic solar lighting, I don't see a lot of that at Walmart yet.
Solar panels you can install yourself.
A new non-linux, non-unix based operating system with a 3D HMD and VR glove interface.. like a "deck" from a cyberpunk novel/movie.. Maybe write the whole OS in CoffeeScript or something (slightly modified to allow for types or pointers to be inserted where necessary) . Find the specs and linux code for interfacing with SATA and ATI/Nvidia and start with that. I want to boot up to a wizard's tower or whatever 3D scene I specify, rather than a flat desktop.
Electric/Hydrogen fuel cell conversions for cars. Or little cars that run on electricity. Or charging stations for electric cars. Better batteries for electric cars.
An inexpensive LIDAR system.
I'm curious as to why it has to be "non-linux, non-unix". Going with that would leave you rewriting large portions of code for little gain.
If you're concerned about licensing, then BSD would be a good start. However, even using Linux, you'd only really have to release the hardware drivers. You can build your own GUI on top of Linux and not be bound by the GPL.
The other reason is just to get rid of the legacy complexity.. true that a lot of stuff that is in Unix you really do have to have for an operating system, but there are also a number of different varying approaches to problems that have been duplicated over the years so that there is extra complexity that really isn't necessary. Also doing things from scratch would allow me to take exactly the approach that I wanted to every major decision, which in some cases really might be better served by taking a different approach from linux. Also I could just say "well, not going to support any of this other Linux stuff, you have to use a remote desktop for that" which would eliminate a huge amount of code.
There is actually some stuff for Compiz loading models in the middle of the cube, I could just start messing with that, would be the most straightforward.
I still contend that you should leverage a lot of existing code, and build on top of that; if for no other reason than it gets you to a working system ASAP.
There are too many promising-looking projects that try to start from first principles and end up achieving nothing but a poor, half-rewrite of existing systems.
If you find an existing system is holding you back, try to improve that, then do your own as a last resort - preferably after you have a user/customer base.