Developers, developers, developers.
They’re what makes or breaks a phone, even entire platforms.
Think about it: if you have a smartphone, odds are you rely on its apps for everything. Otherwise you would have bought a regular phone.
What if I wanted to switch to another platform? Now I need to find replacements for all of those apps.
It comes down to developers. If they see the iPhone and the App Store as the best way to get their apps on the most devices, they’re not going to write apps for another platform. It’s a waste of resources for them.
If the iPhone continues to be the premiere platform, it will grow exponentially in the face of Google’s, RIM’s, Palm’s, Microsoft’s, and all the other platforms.
This introduces a chicken-or-the-egg conundrum: I have an iPhone and I want to switch to the Verizon Droid. I want all the apps that I rely on to be there. But they won’t be there unless there is significant demand, which there won’t be until I switch.
By simply getting there first, Apple has basically guaranteed themselves first place in the smartphone market. Not only that, their platform has hundreds of new apps released every single day. Hundreds of more reasons a day to stay on the iPhone, and not switch to another smartphone.
Robert Scoble also has something to say on this subject.

