The key factor to succeed in business is to find an unsatisfied market need. Before the phone was invented people needed to communicate, this is why almost everyone bought a phone when it was available for the public (See the top reasons businesses fail).
When Facebook was released there were already sites like Myspace and friendster. You don't have to be the first in the market but you have got to offer something that other businesses don't. If you find a poorly satisfied market need, then start a business that better satisfies it.
Most great business ideas come from frustrated customers who don't find what they are looking for. Use the available products and see if there are any frustrating problems with them. When you find one you can start a business to end that problem.
If you don't try many things then there is a slim chance you will discover a market need and as a result it might be very hard to come up with a great business idea. Try as many things as you can and your chances of finding a new business idea will become higher.
Sometimes brainstorming with people can yield great results. Someone you know might have already discovered a problem in a certain market but never thought about starting a business. Talk to as many people as you can and you will find more business ideas .
The more hobbies you have the more likely you are to discover a problem related to that hobby and as a result you can start a business to fix that problem. The more hobbies you try the more likely you are to find good business ideas (See how following your passion can help).
When you travel to a new place you will have a better chance of finding new unsolved problems. You might also find a great business idea that is not implemented yet in your hometown.
If you do the same things everyday then your chances of encountering a new problem will be much lower, and so will your chances of finding a new business idea. Change your habits to encounter new unmet needs (see also why some people love routine).
Many entrepreneurs do the mistake of starting businesses to solve problems they personally suffer from without making proper research to find out whether other people have the same problem or not.
After you believe you found an unsolved problem, conduct a market survey to find out whether people have the same problem or not. You can also use the market survey to find out about existing problems in a market you are interested in.
You should only start a business when you find out that enough people out there need your offering, not when you believe you should start or when you feel like you must start something.
Sometimes working for someone else for a short period of time can give you some new insights in new markets. While doing that job you might come across some information that can help you start a business.
Whenever you use a product, try to think of possible improvements. Sometimes customers won't know what they want before seeing it. Henry Ford said 'If i asked customers what they wanted they would have said faster horses' (See why marketing research can give incorrect results).