There is an an interesting debate going on in the mobile developer community regarding the app stores for the different mobile platforms. Most of the discussions revolve around how many customers the sites have, or will have, and the quality of the apps on the sites. I don't think those issues address the real question that developers should be asking:
Where is the user for MY application?
Sure the iPhone App Store has more current subscribers, and the BlackBerry App World probably won't catch up for a while. It is also true that an application may stand out more in the BlackBerry App World with fewer fart and beer applications to compete with. To me, the real question is: Where is MY user? If my application is designed to track international travel expenses, I will probably start with a BlackBerry application. If I have an application that uses an accelerometer to enhance a game of rock/paper/scissors, I'll probably start with an iPhone application.
But there are many other criteria to consider:
BlackBerries and iPhones are not available in all of the same countries. If I have a language translation application, is the platform I am programming for even available in countries that speak that language?
While there are legitimate concerns about deploying apps over the air in a BlackBerry enterprise environment, the same scenario can play in a developer's favor. More than once I have pointed large corporations at developers who wrote applications that could be managed remotely. BlackBerry supports remote management, iPhone (currently) does not.
(Note: All BlackBerry Enterprise Server customers can manage remote applications to a very, very granular level. My large corporate BES customers allow their users to install applications over-the-air, but they block or disable PIM (calendar, contacts, tasks, etc.) access within those applications. This means that users can download games or any other application that doesn't hook into the PIM. An application like Google Maps for Mobile will still run, but it won't give you a "map this contact" option in the Address Book.)
Who is my prospective customer? If the customer is in government, legal or finance, I will probably start on the BlackBerry. If the customer is in marketing, the arts or design, I will probably go with the iPhone. BUT WAIT, some of the best application successes came from going against the normal use of the platform. VisiCalc on the Apple ][, adding voice calls to a text pager (BlackBerry 5810), VoIP over cellular (O.K., this example will prove out in 3 to 5 years). A "business app" that makes legitimate use of an accelerometer (no gimmicks) could create new market
penetration for the iPhone.
Also remember that you are not developing for the storefront, you are developing for the customer. In Apple's case, you have one distribution venue. In RIM's case, you don't have to distribute through the App World, you could partner with an organization and distribute directly. Sell a real estate application through your local realty company or an MLS. Some customers may not want a custom application of theirs available to the public in an app store.
I'm sure that you are all aware of all of these considerations. I just wanted to make sure that more important project development factors don't get pushed too far out of frame: the customer and the application itself.