There are a lot of posts about developers being unhappy with the App Store. The main causes are the NDA and the review process with Apple as gate keeper. There are also a lot of people who then turn around and say "Well if you don't like the iPhone then go develop for Android or Windows Mobile". These people act like Apple's biggest fans and are willing to defend Apple's actions no matter what.
In reality Apple's biggest fans are the developers for its platforms. Many users put a lot of investment into their platform of choice, but almost no users put more investment in than developers. On the Mac they work together to try and make the platform better. And because they put all this investment of time and money into Apple's platforms they are often amongst the harshest critics of Apple. But this doesn't mean we dislike Apple, quite the opposite. We criticise Apple because we care about it succeeding. We are stake holders in the success of its platforms.
The misfits, the rebels, the trouble makers...
Now the Mac is well renowned for innovation. Mac developers are some of the best in the world when it comes to creating innovative, fun and easy to use applications. They push the boundaries and try things that others aren't willing to. They are also in this for the enjoyment they get out of it. Sure, we all want to make money so that we can feed, clothe and house ourselves and our families, but it isn't the primary reason why Mac developers choose this as their job.
The PC on the other hand is flooded with developers who are in this for the money. They do as much work as they have to in order to get a sale and often don't strive to push their software or the platform beyond the current boundaries. That is not to say that developers who are in it primarily for the enjoyment and satisfaction don't exist on Windows, they're just often drowned in the deluge of mediocrity.
So obviously when Mac developers first saw the iPhone we were thinking about how we can push the boundaries. Then we got the SDK and we could start putting our ideas into code. Unfortunately this is where the good times ended. The NDA and their role as gatekeeper is seriously damaging the iPhone and pushing it much closer to the PC's software landscape than the Mac's.
The round pegs in the square hole...
Developers are becoming too scared to push boundaries on the iPhone. If we get too close then we aren't guaranteed to get on the App Store and to make matters worse, those boundaries are ill defined. When you get punished for pushing the boundaries and you don't even know what those boundaries are exactly you become scared of doing too much, or even doing anything at all. And this is the potential death knell for the iPhone.
That isn't to say that the iPhone will stop selling well, or software will stop being developed for the iPhone. I believe the iPhone will become one of the biggest platforms around pretty quickly, no matter whether Apple keeps the restrictions or not. However, I don't believe it will be the best platform. Microsoft showed that being the biggest doesn't mean you're the best.
The ones who see things differently...
The stories of how much money developers are making from the iPhone are quite staggering. People are making 1000s of dollars a month from their apps and these aren't even rare stories. And as someone who wants to make a living writing software this makes the iPhone a very appealing platform to me. I'm not yet at the point where I can live off my software sales, but one or two iPhone apps could potentially change that. And yet I'm hesitant to develop for the iPhone.
I want to get an iPhone version of Lighthouse Keeper out, but does this cross the invisible line of "duplicating functionality in Apple's software"? After all, I'm just letting you accessing lighthouseapp.com, you can do that already in Safari. Odds are it wouldn't, but if Podcaster duplicates functionality in iTunes then you just cannot be sure.
This doubt is even making me consider Android. Just a few weeks ago this would've been unthinkable to be considering another mobile platform when the iPhone allows me to write apps in my favourite API and language. I don't think I would really start developing for Android, but the fact that I'm considering it, despite the fact that I could use an API I already know on a platform that is making many people a hell of a lot of money is telling.
And it isn't just me. Many developers are doubting the iPhone as a platform they are completely comfortable with. If these developers decide to stay away from the iPhone then there will just be those mediocrity loving money grabbers who don't ever try to innovate left. For a company that prides itself of building the best and trying to innovate where it can, this would be a huge blow. Unfortunately this is the way Apple is heading.
So when you see a developer criticising Apple over the NDA or the App Store, then don't tell them to go develop elsewhere. They want to develop for the iPhone, not just for the money, but to try and make it the best mobile platform out there. They may seem crazy to not just go with the flow and earn lots of money and try and change Apple's policies, but as Apple once said: the people who are crazy enough to think they can change the world, are the ones who do.
Back in June I wrote a small Perl script for creating build numbers in Xcode from the revision number of your Bazaar repository. I noticed recently that this doesn't seem to have been working. Whether this is due to moving to a new computer or installing Xcode 3.1.1 I don't really know, but it seems the regex I was using doesn't work anymore. I've updated it and you can find the updated script in the original post.
Unfortunately my webhost decided to disable important scripts on my server about an hour after I went to bed last night, so all M Cubed sites have been partially down for several hours. I'm just bringing them all back up now, so hopefully everything will be back to normal within the hour. Sorry for any inconvenience caused.
"Without Apple's prior written approval, an Application may not provide, unlock or enable additional features or functionality through distribution mechanisms other than the iTunes Store."
"I cited section 3.3.3 of the iPhone SDK as the most basic reason why Apple denied the Podcaster app from App Store distribution."
That's very nice, but what Dilger cites or what I cite is irrelevant, it is not what Apple cited. If they HAD cited 3.3.3 then people would've been pissed off but it would've been understandable. The problem is that Apple flat out said that "this duplicates functionality in iTunes" was the reason for the denial.
"Apple doesn’t want any apps that require users to go to a website and pay money in order to unlock or enhance them. Apple wants all revenues flowing through the App Store, where it can get its cut."
How does Podcaster do that? People don't pay for podcasts downloaded through Podcaster nor through iTunes, so it's not like Apple is losing any money or Podcaster is circumventing Apple for making money.
"Refusing to allow Podcaster to bypass iTunes is pretty straightforwardly an obvious defense of the relevance and prominence of iTunes among podcasters."
Apple didn't invent podcasts. Apple doesn't own the concept of podcasts. All a podcast is, is an RSS feed with audio attachments. Most podcasts offer RSS feeds of their own so you don't have to go directly through iTunes if you don't want to, a fact that Apple acknowledges by letting you add a podcasts by just adding an RSS feed URL.
iTunes isn't going to lose any relevance in downloading podcasts at all if Podcaster is released. And any discussion of this being the cause for Apple rejecting Podcaster is coming back to the fact that this is an incredibly anti-competitive act that is harming innovation on the iPhone, stunting its growth and scaring away developers to other platforms.
"The problem is that those apps are all only using the network when the user is actively using them. Podcaster is designed to queue up huge podcast data files and truck them over the network nonstop in the background. "
Well this bit is bullshit. Applications can't run in the background on the iPhone, I would love for Dilger to explain around that fundamental fact. Again, if downloading in the background was the reason for rejection then why didn't Apple say that?
"Gruber recommends that the app could be made WiFi only, but it was not. This is all really immaterial however, because first and foremost, Podcaster was declined because it provides a downloads as "feature through a distribution mechanism that is other than iTunes.""
It was not made WiFi only because it was not asked to be made WiFi only and there is nothing in the terms and conditions that states what can and cannot be done over the mobile networks. If Apple had asked the developer to make it WiFi only I'm sure they would have obliged, but they didn't. They also did not decline it because it had a distribution mechanism that wasn't iTunes, but that it duplicated functionality in iTunes. And not just that, but functionality in iTunes on a different platform.
"Sure, a lot of the restrictions also protect users, Apple’s partners, and really even developers, but Apple is a corporation in business to make money."
But the question is, what is the money that Apple is losing out on with Podcaster. Podcasts make a loss for Apple, there is no revenue from them. Apple hosts them and delivers them to users for free. What is Apple afraid of losing, traffic to the iTunes store? As I've previously stated there are ways to add podcast feeds to iTunes without the need for the store, and if you do subscribe via the store then you don't need to go back to the store after that point.
"The original Macintosh shipped without a Lisa Office suite of productivity apps because third party developers demanded that Apple provide them with a competition-free market to make money in."
Well that was pulled from somewhere where the sun doesn't normally shine. How does this relate to the Podcaster issue? I'm not entirely sure but Dilger seems to have some strange idea that it does. Do any readers know of anyone who has been calling for Apple to remove iTunes over the Podcaster incident? I definitely don't.
"In Apple’s case, its own best interests are often aligned with those of the consumer, because smart products, elegant design, and competitive innovation are things that benefit both. Developers benefit by catching the wave of Apple’s surging popularity."
A platform without developers is a product. The most important people in any platform should be developers. These should come first on any platform. THEN users come next. This may sound backwards to many people, but it is developers that make a platform attractive to users. Apple usually does realise this, just look at any OS X release and you'll see that a huge number of the changes have nothing to do with users at all and are aimed squarely at developers. But with the iPhone Apple isn't putting the developers first. It isn't even putting users first. It is Apple first and then everyone else can pick at what is left.
"For decades, Mac writers have been blaming Apple with ”moral transgressions“ for not providing third party developers a welfare handout for being smaller. This is inappropriate when addressing any rational, intelligent adult audience. Talking about what Apple "should do" is just more of the same."
And this one paragraph sums Dilger up perfectly... well actually this tweet does but that paragraph does a pretty good job. How would Podcaster harm Apple? The developer isn't some big company, it is no real threat to Apple. People would have had to find Podcaster and choose to pay the money to buy it and download it. Apple not only provides but requires iTunes in order to use your iPhone and also puts its stores on the home page of every one.
Dilger is playing the über fanboy and trying to position Apple as the poor defenceless company trying to survive against mean developers who want to destroy it, like those who develop Podcaster. In reality the Podcaster developer just wants to give a few people some functionality they really want and make some money on the way. Apple has an absolutely huge advantage over the Podcaster developer without needing to block them.
The biggest flaw in Dilger's argument is that he is trying to give reasons for why Podcaster was rejected by Apple. The thing is that Apple has given the reason and that reason is nowhere in the terms and conditions. Dilger is putting words into Apple's mouth and you cannot make any sort of valid argument with anyone, if you're attempting to speak for them.