If you're going to spend years working on something, you'd think it might be wise to spend at least a couple days considering different ideas, instead of going with the first that comes into your head. You'd think. But people don’t.
Part of the problem is that big projects tend to grow out of small ones, and you don’t do much vetting for small ones. This is fine, but the problem is when you stick with something that isn’t working out because you’ve already put so much time into it.
You can’t go forth with a business idea just because it seems cool. You have to make “business” the priority over “cool”, and you have to be committed.
Don’t be timid. Don’t assume that the “big guys” are unbeatable. Don’t avoid the competition.
The hard part about figuring out what customers want is figuring out that you need to figure it out.