You have an idea for an iPhone app. You believe it's great. You can think of so many ways it will be successful. In fact, you can only think of how your app will become a huge success.
You constantly search the App Store for similar apps, but they all seem to have a few things wrong. Either they lack a couple of features or they might be doing something in an obscure way.
You probably think that your app is very simple, and it's probably easy to create.
But you also have a problem. None of "your App" is real. It exists in your mind, and in your mind only.
Your mind changes the idea all the time. One day it's the best thing since sliced bread. The next day, it's useless and it lacks important features. So you dream up new features to add on top.
Before you know it, your app is a swiss army knife!
Forget your idea
Stop thinking about your idea, and make it real. I know you probably can't make it yourself, but you can at least try to make your idea more tangible. So instead of thinking and dreaming about your idea, find yourself some paper and a pen and start drawing raw sketches of how you'd envision the app to look.
Trust me, you don't even have to put in a huge effort for a paper sketch to get more real than your thoughts. The great thing is, that now you can actually start to feel how it would work, and you can more easily talk to people about it.
Since you've spent so much time thinking about your idea, it has evolved into a giant thing that does so many things even you can't keep track of it anymore.
That's when it's time to cut it down, and focus on only the very, very essentials. If you can't demonstrate a valuable idea on paper with 5 app sketches, you need to get more specific or cut it down even further.
The whole point of a prototype is to give you feedback. Does this idea make sense and does it work? You don't want a lot of assumptions to test, only one or two.
When you focus on a single part of your idea, you make it easier to design, create and adopt.
By focusing on a single thing, you'll make it easier to think about the value your app will deliver.
When you've drawn some raw sketches on paper, start talking to someone who can help you achieve the next step. Preferably you want someone who can code, and still make it look decent. Your priority should be to move forward one step at a time towards a real app. The sooner you get something working in your hands, the sooner you can start iterating and do the real work.