Why has the Mac and Mac OS X been so successful? Because apple has supported developers by giving away commercial grade development environments, and publishing huge amounts of information about the OS so that you can build any app you can think of.
How is apple screwing the pooch on the iPhone? Because they are messing around with developers income streams. I sight two cases from last week:
First Nullriver, which built a tethering app to allow you to use your "unlimited data" from your iPhone contract on any computer. It was a clever little hack, Nullriver got it into the app store, and downloaded by a bunch of people before Apple pulled the app from the store shelves. This in itself might have been OK, but Apple didn't see fit to communicate at all with the developer:
We still haven't gotten any answer from Apple as to why NetShare was removed from the App Store. Calls to ADC yield wait times of a few hours and we're forced to give up. E-mails to various contacts at Apple and the developer program have also given us no response. Is this acceptable business practice? We don't think so. When an application fails to be approved or even more importantly so, when an application gets removed from sale, Apple should be required to provide a valid reason.Second Box Office is also pulled from the App store. This case may be due to a name change for the App, but the basic issue is similar, a lack of communication from Apple:
I'm currently investigating why Now Playing/BoxOffice was pulled from the app store. Hopefully i'll get some actionable information soon.In each case Apple could have avoided trouble by responding to developer questions. In both cases the developers have tried to get in touch with Apple to find out what is going on with their applications, and in neither case have they received any information from Apple.
This is just poor customer service on the part of Apple for it's developer customers. These are the people that Apple is planning to use to make the new iPhone an unmitigated success, but Apple is going to find it a lonely road if they don't start paying attention to their developers.
Support is about more than splitting a revenue stream, it's about responding to issues as they arise, and answering questions. Support is about not leaving your developers out to dry when they are depending on you.